X-Git-Url: http://Server1/repobrowser/?a=blobdiff_plain;f=source%2Fobjects%2Fcalendarobject%2FCalendarObject.h;h=3647cb47b940fe622f2051595190e8177a1bcc98;hb=c49c6d127c18d190a8412ca7b8378d2954258377;hp=1c700c4dad3712fc8d30e0d938eb8b3f34010c55;hpb=1278c332f6292bd961155ad45029144c8a806a1e;p=xestiacalendar%2F.git diff --git a/source/objects/calendarobject/CalendarObject.h b/source/objects/calendarobject/CalendarObject.h index 1c700c4..3647cb4 100644 --- a/source/objects/calendarobject/CalendarObject.h +++ b/source/objects/calendarobject/CalendarObject.h @@ -10,21 +10,88 @@ #include #include "../../common/text.h" +#include "../../version.h" using namespace std; enum CalendarObjectLoadResult { - CALENDAROBJECTLOAD_UNITTESTFAIL = -1, - CALENDAROBJECTLOAD_OK, - CALENDAROBJECTLOAD_MISSING, - CALENDAROBJECTLOAD_INVALIDFORMAT, - CALENDAROBJECTLOAD_CANNOTOPEN + CALENDAROBJECTLOAD_UNITTESTFAIL = -1, + CALENDAROBJECTLOAD_OK, + CALENDAROBJECTLOAD_MISSING, + CALENDAROBJECTLOAD_INVALIDFORMAT, + CALENDAROBJECTLOAD_CANNOTOPEN +}; + +enum CalendarObjectSaveResult { + CALENDAROBJECTSAVE_UNITTESTFAIL = -1, + CALENDAROBJECTSAVE_OK, + CALENDAROBJECTSAVE_CANNOTOPEN }; enum CalendarObjectValidResult{ - CALENDAROBJECTVALID_UNITTESTFAIL = -1, - CALENDAROBJECTVALID_OK, - CALENDAROBJECTVALID_INVALIDFORMAT + CALENDAROBJECTVALID_UNITTESTFAIL = -1, + CALENDAROBJECTVALID_OK, + CALENDAROBJECTVALID_INVALIDFORMAT +}; + +enum CalendarAlarmAction{ + CALENDARALARM_UNSPECIFIED = -1, + CALENDARALARM_AUDIO, + CALENDARALARM_DISPLAY, + CALENDARALARM_EMAIL +}; + +struct CalendarAlarmDataStruct{ + + CalendarAlarmAction AlarmType = CALENDARALARM_UNSPECIFIED; + + string AlarmAction; + string AlarmActionTokens; + + string TriggerData; + string TriggerValue; + string TriggerRelated; + string TriggerTokens; + + string DescriptionData; + string DescriptionAltRep; + string DescriptionLanguage; + string DescriptionTokens; + + string RepeatData; + string RepeatTokens; + + string SummaryData; + string SummaryAltRep; + string SummaryLanguage; + string SummaryTokens; + + vector AttendeeList; + vector AttendeeListMember; + vector AttendeeListDelegatedFrom; + vector AttendeeListDelegatedTo; + vector AttendeeListRole; + vector AttendeeListRSVP; + vector AttendeeListDirectoryEntry; + vector AttendeeListSentBy; + vector AttendeeListCommonName; + vector AttendeeListCalendarUserType; + vector AttendeeListParticipationStatus; + vector AttendeeListLanguage; + vector AttendeeListTokens; + + string DurationData; + string DurationTokens; + + vector AttachList; + vector AttachListTokens; + vector AttachListEncoding; + vector AttachListFormatType; + vector AttachListValue; + + vector XTokensData; + vector XTokensDataTokens; + }; class CalendarObject{ @@ -32,6 +99,8 @@ class CalendarObject{ public: CalendarObjectLoadResult LoadFile(string LoadFilename); CalendarObjectLoadResult LoadString(string *LoadStringData); + CalendarObjectSaveResult SaveFile(string SaveFilename); + CalendarObjectSaveResult SaveString(string *SaveStringData); CalendarObjectValidResult ValidBaseObject(); void ProcessBaseData(); @@ -40,6 +109,7 @@ class CalendarObject{ virtual CalendarObjectValidResult ValidObject() { return CALENDAROBJECTVALID_OK; }; virtual void Clear() {}; + virtual void SaveObjectData(string *SaveData) {}; // Object data. @@ -223,11 +293,16 @@ class CalendarObject{ vector RequestStatusLanguage; vector RequestStatusTokens; + vector CalendarAlarmData; + protected: // Initial Loading Data. vector ObjectName; vector ObjectData; - + + vector> EventAlarmName; + vector> EventAlarmData; + private: virtual void ProcessData() {};