calendarsyncee.h
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #ifndef CALENDARSYNCEE_H
00022 #define CALENDARSYNCEE_H
00023
00024 #include <libkcal/calendar.h>
00025
00026 #include "syncee.h"
00027
00028 namespace KSync {
00029
00030 class CalendarSyncEntry : public SyncEntry
00031 {
00032 public:
00033 CalendarSyncEntry( KCal::Incidence *, Syncee *parent );
00034
00035 QString type() const { return "CalendarSyncEntry"; }
00036 QString name();
00037 QString id();
00038 QString timestamp();
00039
00040 bool equals( SyncEntry *entry );
00041
00042 CalendarSyncEntry *clone();
00043
00044 KCal::Incidence *incidence() { return mIncidence; }
00045
00046 KPIM::DiffAlgo* diffAlgo( SyncEntry*, SyncEntry* );
00047
00048 private:
00049 KCal::Incidence *mIncidence;
00050 };
00051
00056 class CalendarSyncee : public Syncee
00057 {
00058 public:
00059 CalendarSyncee( KCal::Calendar* );
00060 ~CalendarSyncee();
00061
00062 QString type() const { return "CalendarSyncee"; }
00063
00064 void reset();
00065
00066 CalendarSyncEntry *firstEntry();
00067 CalendarSyncEntry *nextEntry();
00068
00069
00070
00071 void addEntry( SyncEntry * );
00072 void removeEntry( SyncEntry * );
00073
00074 SyncEntry::PtrList added() { return SyncEntry::PtrList(); }
00075 SyncEntry::PtrList modified() { return SyncEntry::PtrList(); }
00076 SyncEntry::PtrList removed() { return SyncEntry::PtrList(); }
00077 Syncee *clone() { return 0; }
00078
00079 KCal::Calendar *calendar() const { return mCalendar; }
00080
00081 bool writeBackup( const QString & );
00082 bool restoreBackup( const QString & );
00083
00084 private:
00085 CalendarSyncEntry *createEntry( KCal::Incidence * );
00086
00087 void clearEntries();
00088
00089 KCal::Calendar *mCalendar;
00090 KCal::Event::List mEvents;
00091 KCal::Event::List::ConstIterator mCurrentEvent;
00092 KCal::Todo::List mTodos;
00093 KCal::Todo::List::ConstIterator mCurrentTodo;
00094 bool mIteratingEvents;
00095
00096 QMap<KCal::Incidence *,CalendarSyncEntry *> mEntries;
00097 };
00098
00099 }
00100
00101 #endif
This file is part of the documentation for kitchensync Library Version 3.3.2.