X-Git-Url: http://Server1/repobrowser/?a=blobdiff_plain;f=source%2Flibraries%2FCalendarDataStorage%2FCalendarDataStorage.h;h=fda46c7bca8e9b267a2a3c6756b43ff809c56ad7;hb=cba151c4b833a26c63984769f921bab5e755decd;hp=4b41b903cbfa31413d6b9e9029527c131ad530e2;hpb=e6eea22921711c24e4f37ea305d2b4a72bb83adb;p=xestiacalendar%2F.git diff --git a/source/libraries/CalendarDataStorage/CalendarDataStorage.h b/source/libraries/CalendarDataStorage/CalendarDataStorage.h index 4b41b90..fda46c7 100644 --- a/source/libraries/CalendarDataStorage/CalendarDataStorage.h +++ b/source/libraries/CalendarDataStorage/CalendarDataStorage.h @@ -1,3 +1,21 @@ +// CalendarDataStorage.h - CalendarDataStorage 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 __LIBRARIES_CALENDARDATASTORAGE_H__ #define __LIBRARIES_CALENDARDATASTORAGE_H__ @@ -49,6 +67,7 @@ enum CDSEntryResult{ struct CDSGetAccountInfo{ int accountID = 0; + int accountPreferencesID = 0; std::string accountName = ""; CDSAccountResult accountInfoResult = CDSACCOUNT_NOACTION; }; @@ -59,6 +78,7 @@ struct CDSGetCalendarInfo{ std::string accountName = ""; std::string calendarName = ""; std::string calendarTextID = ""; + std::string calendarDescription = ""; Colour calendarColour; CDSAccountResult accountInfoResult = CDSACCOUNT_NOACTION; CDSCalendarResult calendarInfoResult = CDSCALENDAR_NOACTION; @@ -69,12 +89,18 @@ struct CDSAddEntryResult{ CDSEntryResult addEventResult = CDSENTRY_NOACTION; }; +struct CDSEditEntryResult{ + int calendarEntryID = 0; + CDSEntryResult editEventResult = CDSENTRY_NOACTION; +}; + struct CDSGetCalendarEntryInfo{ int accountID = 0; int calendarID = 0; int calendarEntryID = 0; std::string entryName = ""; std::string entryDescription = ""; + std::string entryFilename = ""; int entryStartYear = 0; int entryStartMonth = 0; int entryStartDay = 0; @@ -125,6 +151,12 @@ struct CDSGetChecksumResult{ std::string checksumValue = ""; }; +enum CDSCleanupResult{ + CDSCLEANUP_UNITTESTFAIL = -1, + CDSCLEANUP_OK, + CDSCLEANUP_FAILED +}; + class CalendarDataStorage{ private: @@ -138,7 +170,7 @@ class CalendarDataStorage{ // Account functions. - CDSAccountResult AddAccount(std::string accountName); + CDSAccountResult AddAccount(std::string accountName, int accountPreferencesID); CDSGetAccountInfo GetAccount(std::string accountName); CDSAccountResult UpdateAccount(int accountID, std::string accountName); CDSAccountResult DeleteAccount(int accountID); @@ -146,11 +178,11 @@ class CalendarDataStorage{ // Calendar functions. - CDSCalendarResult AddCalendar(int accountID, std::string calendarName, std::string calendarID, Colour calendarColour); + CDSCalendarResult AddCalendar(int accountID, std::string calendarName, std::string calendarID, Colour calendarColour, std::string calendarDescription); CDSGetCalendarInfo GetCalendar(std::string accountName, std::string calendarTextID); CDSGetCalendarInfo GetCalendar(int calendarID); CDSCalendarList GetCalendarList(int accountID); - CDSCalendarResult UpdateCalendar(int calendarID, std::string calendarName); + CDSCalendarResult UpdateCalendar(int calendarID, std::string calendarName, Colour calendarColour, std::string calendarDescription); CDSCalendarResult DeleteCalendar(int calendarID); // Entry functions @@ -159,6 +191,7 @@ class CalendarDataStorage{ CDSGetCalendarEntryInfo GetEvent(int calendarEntryID); CDSEntryList GetEventList(int calendarID); CDSEntryList GetEventListByDate(int calendarYear, int calendarMonth, int calendarDay); + CDSEditEntryResult UpdateEvent(int eventID, std::string filename); CDSEntryResult DeleteEvent(int calendarEntryID); // Checksum functions. @@ -166,6 +199,10 @@ class CalendarDataStorage{ CDSChecksumResult AddChecksum(std::string checksumName, std::string checksumValue); CDSGetChecksumResult GetChecksum(std::string checksumName); CDSChecksumResult UpdateChecksum(std::string checksumName, std::string checksumValue); + + // Cleanup functions. + + CDSCleanupResult Clear(); };