29 #ifndef KCAL_CALENDARRESOURCES_H
30 #define KCAL_CALENDARRESOURCES_H
32 #include <tqintdict.h>
36 #include "resourcecalendar.h"
38 #include "libkcal_export.h"
40 #include <tderesources/manager.h>
66 public KRES::ManagerObserver<ResourceCalendar>
74 class DestinationPolicy
77 DestinationPolicy( CalendarResourceManager *manager,
78 TQWidget *parent = 0 ) :
79 mManager( manager ), mParent( parent ) {}
80 virtual ~DestinationPolicy() {}
83 virtual TQWidget *parent() {
return mParent; }
84 virtual void setParent( TQWidget *newparent ) { mParent = newparent; }
85 bool hasCalendarResources();
87 CalendarResourceManager *resourceManager()
91 CalendarResourceManager *mManager;
98 class StandardDestinationPolicy :
public DestinationPolicy
101 StandardDestinationPolicy( CalendarResourceManager *manager,
102 TQWidget *parent = 0 ) :
103 DestinationPolicy( manager, parent ) {}
104 virtual ~StandardDestinationPolicy() {}
116 class AskDestinationPolicy :
public DestinationPolicy
119 AskDestinationPolicy( CalendarResourceManager *manager,
120 TQWidget *parent = 0 ) :
121 DestinationPolicy( manager, parent ) {}
122 virtual ~AskDestinationPolicy() {}
139 {
return mResource; }
167 const TQString &timeZoneId,
168 const TQString &family = TQString::fromLatin1(
"calendar" ) );
187 bool reload(
const TQString &tz );
207 void closeJournals();
222 virtual bool save( Ticket *ticket,
Incidence *incidence = 0 );
262 void readConfig( TDEConfig *config = 0 );
268 void setStandardDestinationPolicy();
274 void setAskDestinationPolicy();
284 TQWidget *dialogParentWidget();
291 void setDialogParentWidget( TQWidget *parent );
310 virtual void releaseSaveTicket( Ticket *ticket );
331 bool addIncidence(
Incidence *incidence );
365 TDE_DEPRECATED
bool beginChange(
Incidence *incidence );
388 TDE_DEPRECATED
bool endChange(
Incidence *incidence );
417 bool addEvent(
Event *event );
457 bool deleteEvent(
Event *event );
480 Event::List rawEventsForDate(
const TQDateTime &qdt );
493 Event::List rawEvents(
const TQDate &start,
const TQDate &end,
494 bool inclusive =
false );
520 Event *event(
const TQString &uid );
534 bool addTodo(
Todo *todo );
574 bool deleteTodo(
Todo *todo );
595 Todo::List rawTodosForDate(
const TQDate &date );
605 Todo *todo(
const TQString &uid );
619 bool addJournal(
Journal *journal );
659 bool deleteJournal(
Journal *journal );
690 Journal *journal(
const TQString &uid );
702 Alarm::List alarms(
const TQDateTime &from,
const TQDateTime &to );
720 void setTimeZoneIdViewOnly(
const TQString& tz );
723 bool hasCalendarResources();
743 void signalErrorMessage(
const TQString &err );
762 virtual void doSetTimeZoneId(
const TQString &timeZoneId );
792 void beginAddingIncidences();
798 void endAddingIncidences();
805 void init(
const TQString &family );
809 KRES::Manager<ResourceCalendar>* mManager;
810 TQMap <Incidence*, ResourceCalendar*> mResourceMap;
812 DestinationPolicy *mDestinationPolicy;
813 StandardDestinationPolicy *mStandardPolicy;
814 AskDestinationPolicy *mAskPolicy;
815 bool mPendingDeleteFromResourceMap;
817 TQMap<ResourceCalendar *, Ticket *> mTickets;
818 TQMap<ResourceCalendar *, int> mChangeCounts;