X-Git-Url: http://Server1/repobrowser/?p=xestiacalendar%2F.git;a=blobdiff_plain;f=source%2Fobjects%2Fcalendarobject%2FCalendarObject.h;h=1b03eee5573b458d083a2b6f4c422d3993d00847;hp=2b450fc0f6b523d5b5c389bf4350050abfa09ef5;hb=49789773e2797383c866dca470fb99e80cb49e41;hpb=284c77ac5ae39b716dca3b88b365dc335759af22 diff --git a/source/objects/calendarobject/CalendarObject.h b/source/objects/calendarobject/CalendarObject.h index 2b450fc..1b03eee 100644 --- a/source/objects/calendarobject/CalendarObject.h +++ b/source/objects/calendarobject/CalendarObject.h @@ -1,3 +1,21 @@ +// CalendarObject.h - CalendarObject class header +// +// (c) 2016-2017 Xestia Software Development. +// +// This file is part of Xestia Calendar. +// +// Xestia Calendar is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by the +// Free Software Foundation, version 3 of the license. +// +// Xestia Calendar is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License along +// with Xestia Calendar. If not, see + #ifndef __OBJECTS_CALENDAROBJECT_CALENDAROBJECT_H__ #define __OBJECTS_CALENDAROBJECT_CALENDAROBJECT_H__ @@ -10,6 +28,11 @@ #include #include "../../common/text.h" +#include "../../version.h" + +#if defined(WIN32) +#include +#endif using namespace std; @@ -21,6 +44,12 @@ enum CalendarObjectLoadResult { CALENDAROBJECTLOAD_CANNOTOPEN }; +enum CalendarObjectSaveResult { + CALENDAROBJECTSAVE_UNITTESTFAIL = -1, + CALENDAROBJECTSAVE_OK, + CALENDAROBJECTSAVE_CANNOTOPEN +}; + enum CalendarObjectValidResult{ CALENDAROBJECTVALID_UNITTESTFAIL = -1, CALENDAROBJECTVALID_OK, @@ -36,61 +65,64 @@ enum CalendarAlarmAction{ struct CalendarAlarmDataStruct{ - CalendarAlarmAction AlarmType = CALENDARALARM_UNSPECIFIED; - - string AlarmAction; - string AlarmActionTokens; - - string TriggerData; - string TriggerValue; - 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; + 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{ public: - CalendarObjectLoadResult LoadFile(string LoadFilename); - CalendarObjectLoadResult LoadString(string *LoadStringData); + CalendarObjectLoadResult LoadFile(string loadFilename); + CalendarObjectLoadResult LoadString(string *loadStringData); + CalendarObjectSaveResult SaveFile(string saveFilename); + CalendarObjectSaveResult SaveString(string *saveStringData); CalendarObjectValidResult ValidBaseObject(); void ProcessBaseData(); @@ -99,198 +131,199 @@ class CalendarObject{ virtual CalendarObjectValidResult ValidObject() { return CALENDAROBJECTVALID_OK; }; virtual void Clear() {}; + virtual void SaveObjectData(string *saveData) {}; // Object data. - string MethodData; - string MethodTokens; + string methodData; + string methodTokens; - string CalendarScaleData; - string CalendarScaleTokens; + string calendarScaleData; + string calendarScaleTokens; - string UniqueID; - string UniqueIDTokens; + string uniqueID; + string uniqueIDTokens; - vector AttachList; - vector AttachListTokens; - vector AttachListEncoding; - vector AttachListFormatType; - vector AttachListValue; + vector attachList; + vector attachListTokens; + vector attachListEncoding; + vector attachListFormatType; + vector attachListValue; - vector CategoriesList; - vector CategoriesListLanguage; - vector CategoriesListTokens; + vector categoriesList; + vector categoriesListLanguage; + vector categoriesListTokens; - string ClassData; - string ClassDataTokens; + string classData; + string classDataTokens; - string CompletedData; - string CompletedDataTokens; + string completedData; + string completedDataTokens; - vector CommentList; - vector CommentListAltRep; - vector CommentListLanguage; - vector CommentListTokens; + vector commentList; + vector commentListAltRep; + vector commentListLanguage; + vector commentListTokens; - vector DescriptionList; - vector DescriptionListAltRep; - vector DescriptionListLanguage; - vector DescriptionListTokens; + vector descriptionList; + vector descriptionListAltRep; + vector descriptionListLanguage; + vector descriptionListTokens; - string GeographicData; - string GeographicTokens; + string geographicData; + string geographicTokens; - string LocationData; - string LocationDataAltRep; - string LocationDataLanguage; - string LocationDataTokens; + string locationData; + string locationDataAltRep; + string locationDataLanguage; + string locationDataTokens; - string PercentCompleteData; - string PercentCompleteTokens; + string percentCompleteData; + string percentCompleteTokens; - int PriorityData = -1; - string PriorityTokens; + int priorityData = -1; + string priorityTokens; - vector ResourcesData; - vector ResourcesDataAltRep; - vector ResourcesDataLanguage; - vector ResourcesDataTokens; + vector resourcesData; + vector resourcesDataAltRep; + vector resourcesDataLanguage; + vector resourcesDataTokens; - string StatusData; - string StatusLanguage; - string StatusTokens; - - string SummaryData; - string SummaryDataAltRep; - string SummaryDataLanguage; - string SummaryDataTokens; - - string DateTimeEndData; - string DateTimeEndDataValue; - string DateTimeEndDataTimeZoneID; - string DateTimeEndDataTokens; + string statusData; + string statusLanguage; + string statusTokens; + + string summaryData; + string summaryDataAltRep; + string summaryDataLanguage; + string summaryDataTokens; + + string dateTimeEndData; + string dateTimeEndDataValue; + string dateTimeEndDataTimeZoneID; + string dateTimeEndDataTokens; - string DueData; - string DueDataValue; - string DueDataTimeZoneID; - string DueDataTokens; + string dueData; + string dueDataValue; + string dueDataTimeZoneID; + string dueDataTokens; - string DateTimeStartData; - string DateTimeStartDataValue; - string DateTimeStartDataTimeZoneID; - string DateTimeStartDataTokens; + string dateTimeStartData; + string dateTimeStartDataValue; + string dateTimeStartDataTimeZoneID; + string dateTimeStartDataTokens; - string DurationData; - string DurationDataTokens; + string durationData; + string durationDataTokens; - vector FreeBusyList; - vector FreeBusyListType; - vector FreeBusyListTokens; + vector freeBusyList; + vector freeBusyListType; + vector freeBusyListTokens; - string TimeTransparencyData; - string TimeTransparencyDataTokens; + string timeTransparencyData; + string timeTransparencyDataTokens; - string TimeZoneData; - string TimeZoneDataTokens; + string timeZoneData; + string timeZoneDataTokens; - vector TimeZoneNameList; - vector TimeZoneNameListLanguage; - vector TimeZoneNameListTokens; + vector timeZoneNameList; + vector timeZoneNameListLanguage; + vector timeZoneNameListTokens; - string TimeZoneOffsetFromData; - string TimeZoneOffsetFromDataTokens; + string timeZoneOffsetFromData; + string timeZoneOffsetFromDataTokens; - string TimeZoneOffsetToData; - string TimeZoneOffsetToDataTokens; + string timeZoneOffsetToData; + string timeZoneOffsetToDataTokens; - string TimeZoneURLData; - string TimeZoneURLTokens; + string timeZoneURLData; + string timeZoneURLTokens; - 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; + 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; - vector ContactList; - vector ContactListAltRep; - vector ContactListLanguage; - vector ContactListTokens; - - string OrganiserData; - string OrganiserDataCommonName; - string OrganiserDataDirectoryEntry; - string OrganiserDataSentByParam; - string OrganiserDataLanguage; - string OrganiserDataTokens; - - string RecurranceIDData; - string RecurranceIDDataTimeZoneParam; - string RecurranceIDDataRangeParam; - string RecurranceIDDataValue; - string RecurranceIDDataTokens; - - vector RelatedToData; - vector RelatedToDataRelationType; - vector RelatedToDataTokens; - - string URLData; - string URLDataTokens; + vector contactList; + vector contactListAltRep; + vector contactListLanguage; + vector contactListTokens; + + string organiserData; + string organiserDataCommonName; + string organiserDataDirectoryEntry; + string organiserDataSentByParam; + string organiserDataLanguage; + string organiserDataTokens; + + string recurranceIDData; + string recurranceIDDataTimeZoneParam; + string recurranceIDDataRangeParam; + string recurranceIDDataValue; + string recurranceIDDataTokens; + + vector relatedToData; + vector relatedToDataRelationType; + vector relatedToDataTokens; + + string urlData; + string urlDataTokens; - vector ExcludeDateData; - vector ExcludeDateDataValue; - vector ExcludeDateDataTimeZoneParam; - vector ExcludeDateDataTokens; - - vector RecurranceDateData; - vector RecurranceDateDataValue; - vector RecurranceDateDataTimeZoneParam; - vector RecurranceDateDataTokens; - - string RecurranceRuleData; - string RecurranceRuleDataTokens; - - string TriggerDataList; - string TriggerDataValue; - string TriggerDataRelatedParam; - string TriggerDataTokens; - - string DateTimeCreatedData; - string DateTimeCreatedTokens; + vector excludeDateData; + vector excludeDateDataValue; + vector excludeDateDataTimeZoneParam; + vector excludeDateDataTokens; + + vector recurranceDateData; + vector recurranceDateDataValue; + vector recurranceDateDataTimeZoneParam; + vector recurranceDateDataTokens; + + string recurranceRuleData; + string recurranceRuleDataTokens; + + string triggerDataList; + string triggerDataValue; + string triggerDataRelatedParam; + string triggerDataTokens; + + string dateTimeCreatedData; + string dateTimeCreatedTokens; - string DateTimeStampData; - string DateTimeStampTokens; + string dateTimeStampData; + string dateTimeStampTokens; - string LastModifiedData; - string LastModifiedTokens; + string lastModifiedData; + string lastModifiedTokens; - int SequenceData = -1; - string SequenceTokens; + int sequenceData = -1; + string sequenceTokens; - vector XTokensData; - vector XTokensDataTokens; + vector xTokensData; + vector xTokensDataTokens; - vector RequestStatusData; - vector RequestStatusLanguage; - vector RequestStatusTokens; + vector requestStatusData; + vector requestStatusLanguage; + vector requestStatusTokens; - vector CalendarAlarmData; + vector calendarAlarmData; protected: // Initial Loading Data. - vector ObjectName; - vector ObjectData; + vector objectName; + vector objectData; - vector> EventAlarmName; - vector> EventAlarmData; + vector> eventAlarmName; + vector> eventAlarmData; private: virtual void ProcessData() {};