summaryrefslogtreecommitdiffabout
path: root/libkcal/calendar.h
Unidiff
Diffstat (limited to 'libkcal/calendar.h') (more/less context) (ignore whitespace changes)
-rw-r--r--libkcal/calendar.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/libkcal/calendar.h b/libkcal/calendar.h
index 3f6895d..4b8b3ff 100644
--- a/libkcal/calendar.h
+++ b/libkcal/calendar.h
@@ -130,251 +130,253 @@ public:
130 void setTimeZoneId( const QString & ); 130 void setTimeZoneId( const QString & );
131 /** 131 /**
132 Return time zone id. 132 Return time zone id.
133 */ 133 */
134 QString timeZoneId() const; 134 QString timeZoneId() const;
135 /** 135 /**
136 Use local time, not UTC or a time zone. 136 Use local time, not UTC or a time zone.
137 */ 137 */
138 void setLocalTime(); 138 void setLocalTime();
139 /** 139 /**
140 Return whether local time is being used. 140 Return whether local time is being used.
141 */ 141 */
142 bool isLocalTime() const; 142 bool isLocalTime() const;
143 143
144 /** 144 /**
145 Add an incidence to calendar. 145 Add an incidence to calendar.
146 146
147 @return true on success, false on error. 147 @return true on success, false on error.
148 */ 148 */
149 virtual bool addIncidence( Incidence * ); 149 virtual bool addIncidence( Incidence * );
150 150
151 // Adds an incidence and all relatedto incidences to the cal 151 // Adds an incidence and all relatedto incidences to the cal
152 void addIncidenceBranch( Incidence * ); 152 void addIncidenceBranch( Incidence * );
153 /** 153 /**
154 Return filtered list of all incidences of this calendar. 154 Return filtered list of all incidences of this calendar.
155 */ 155 */
156 virtual QPtrList<Incidence> incidences(); 156 virtual QPtrList<Incidence> incidences();
157 157
158 /** 158 /**
159 Return unfiltered list of all incidences of this calendar. 159 Return unfiltered list of all incidences of this calendar.
160 */ 160 */
161 virtual QPtrList<Incidence> rawIncidences(); 161 virtual QPtrList<Incidence> rawIncidences();
162 162
163 /** 163 /**
164 Adds a Event to this calendar object. 164 Adds a Event to this calendar object.
165 @param anEvent a pointer to the event to add 165 @param anEvent a pointer to the event to add
166 166
167 @return true on success, false on error. 167 @return true on success, false on error.
168 */ 168 */
169 virtual bool addEventNoDup( Event *event ) = 0; 169 virtual bool addEventNoDup( Event *event ) = 0;
170 virtual bool addAnniversaryNoDup( Event *event ) = 0; 170 virtual bool addAnniversaryNoDup( Event *event ) = 0;
171 virtual bool addEvent( Event *anEvent ) = 0; 171 virtual bool addEvent( Event *anEvent ) = 0;
172 /** 172 /**
173 Delete event from calendar. 173 Delete event from calendar.
174 */ 174 */
175 virtual void deleteEvent( Event * ) = 0; 175 virtual void deleteEvent( Event * ) = 0;
176 /** 176 /**
177 Retrieves an event on the basis of the unique string ID. 177 Retrieves an event on the basis of the unique string ID.
178 */ 178 */
179 virtual Event *event( const QString &UniqueStr ) = 0; 179 virtual Event *event( const QString &UniqueStr ) = 0;
180 virtual Event *event( QString, QString ) = 0; 180 virtual Event *event( QString, QString ) = 0;
181 /** 181 /**
182 Builds and then returns a list of all events that match for the 182 Builds and then returns a list of all events that match for the
183 date specified. useful for dayView, etc. etc. 183 date specified. useful for dayView, etc. etc.
184 The calendar filter is applied. 184 The calendar filter is applied.
185 */ 185 */
186 QPtrList<Event> events( const QDate &date, bool sorted = false); 186 QPtrList<Event> events( const QDate &date, bool sorted = false);
187 /** 187 /**
188 Get events, which occur on the given date. 188 Get events, which occur on the given date.
189 The calendar filter is applied. 189 The calendar filter is applied.
190 */ 190 */
191 QPtrList<Event> events( const QDateTime &qdt ); 191 QPtrList<Event> events( const QDateTime &qdt );
192 /** 192 /**
193 Get events in a range of dates. If inclusive is set to true, only events 193 Get events in a range of dates. If inclusive is set to true, only events
194 are returned, which are completely included in the range. 194 are returned, which are completely included in the range.
195 The calendar filter is applied. 195 The calendar filter is applied.
196 */ 196 */
197 QPtrList<Event> events( const QDate &start, const QDate &end, 197 QPtrList<Event> events( const QDate &start, const QDate &end,
198 bool inclusive = false); 198 bool inclusive = false);
199 /** 199 /**
200 Return filtered list of all events in calendar. 200 Return filtered list of all events in calendar.
201 */ 201 */
202 virtual QPtrList<Event> events(); 202 virtual QPtrList<Event> events();
203 /** 203 /**
204 Return unfiltered list of all events in calendar. 204 Return unfiltered list of all events in calendar.
205 */ 205 */
206 virtual QPtrList<Event> rawEvents() = 0; 206 virtual QPtrList<Event> rawEvents() = 0;
207 207
208 /** 208 /**
209 Add a todo to the todolist. 209 Add a todo to the todolist.
210 210
211 @return true on success, false on error. 211 @return true on success, false on error.
212 */ 212 */
213 virtual bool addTodo( Todo *todo ) = 0; 213 virtual bool addTodo( Todo *todo ) = 0;
214 virtual bool addTodoNoDup( Todo *todo ) = 0; 214 virtual bool addTodoNoDup( Todo *todo ) = 0;
215 /** 215 /**
216 Remove a todo from the todolist. 216 Remove a todo from the todolist.
217 */ 217 */
218 virtual void deleteTodo( Todo * ) = 0; 218 virtual void deleteTodo( Todo * ) = 0;
219 virtual void deleteJournal( Journal * ) = 0; 219 virtual void deleteJournal( Journal * ) = 0;
220 /** 220 /**
221 Return filterd list of todos. 221 Return filterd list of todos.
222 */ 222 */
223 virtual QPtrList<Todo> todos(); 223 virtual QPtrList<Todo> todos();
224 /** 224 /**
225 Searches todolist for an event with this unique string identifier, 225 Searches todolist for an event with this unique string identifier,
226 returns a pointer or null. 226 returns a pointer or null.
227 */ 227 */
228 virtual Todo *todo( const QString &uid ) = 0; 228 virtual Todo *todo( const QString &uid ) = 0;
229 virtual Todo *todo( QString, QString ) = 0; 229 virtual Todo *todo( QString, QString ) = 0;
230 /** 230 /**
231 Returns list of todos due on the specified date. 231 Returns list of todos due on the specified date.
232 */ 232 */
233 virtual QPtrList<Todo> todos( const QDate &date ) = 0; 233 virtual QPtrList<Todo> todos( const QDate &date ) = 0;
234 /** 234 /**
235 Return unfiltered list of todos. 235 Return unfiltered list of todos.
236 */ 236 */
237 virtual QPtrList<Todo> rawTodos() = 0; 237 virtual QPtrList<Todo> rawTodos() = 0;
238 238
239 /** 239 /**
240 Add a Journal entry to calendar. 240 Add a Journal entry to calendar.
241 241
242 @return true on success, false on error. 242 @return true on success, false on error.
243 */ 243 */
244 virtual bool addJournal( Journal * ) = 0; 244 virtual bool addJournal( Journal * ) = 0;
245 /** 245 /**
246 Return Journal for given date. 246 Return Journal for given date.
247 */ 247 */
248 virtual Journal *journal( const QDate & ) = 0; 248 virtual Journal *journal( const QDate & ) = 0;
249 virtual QPtrList<Journal> journals4Date( const QDate & ) = 0; 249 virtual QPtrList<Journal> journals4Date( const QDate & ) = 0;
250 /** 250 /**
251 Return Journal with given UID. 251 Return Journal with given UID.
252 */ 252 */
253 virtual Journal *journal( const QString &UID ) = 0; 253 virtual Journal *journal( const QString &UID ) = 0;
254 /** 254 /**
255 Return list of all Journal entries. 255 Return list of all Journal entries.
256 */ 256 */
257 virtual QPtrList<Journal> journals() = 0; 257 virtual QPtrList<Journal> journals() = 0;
258 258
259 /** 259 /**
260 Searches all incidence types for an incidence with this unique 260 Searches all incidence types for an incidence with this unique
261 string identifier, returns a pointer or null. 261 string identifier, returns a pointer or null.
262 */ 262 */
263 Incidence* incidence( const QString&UID ); 263 Incidence* incidence( const QString&UID );
264 264
265 /** 265 /**
266 Setup relations for an incidence. 266 Setup relations for an incidence.
267 */ 267 */
268 virtual void setupRelations( Incidence * ); 268 virtual void setupRelations( Incidence * );
269 /** 269 /**
270 Remove all relations to an incidence 270 Remove all relations to an incidence
271 */ 271 */
272 virtual void removeRelations( Incidence * ); 272 virtual void removeRelations( Incidence * );
273 273
274 /** 274 /**
275 Set calendar filter, which filters events for the events() functions. 275 Set calendar filter, which filters events for the events() functions.
276 The Filter object is owned by the caller. 276 The Filter object is owned by the caller.
277 */ 277 */
278 void setFilter( CalFilter * ); 278 void setFilter( CalFilter * );
279 /** 279 /**
280 Return calendar filter. 280 Return calendar filter.
281 */ 281 */
282 CalFilter *filter(); 282 CalFilter *filter();
283 virtual QDateTime nextAlarm( int daysTo ) = 0; 283 virtual QDateTime nextAlarm( int daysTo ) = 0;
284 virtual QString nextSummary( ) const = 0; 284 virtual QString nextSummary( ) const = 0;
285 virtual void reInitAlarmSettings() = 0; 285 virtual void reInitAlarmSettings() = 0;
286 virtual QDateTime nextAlarmEventDateTime() const = 0; 286 virtual QDateTime nextAlarmEventDateTime() const = 0;
287 virtual void checkAlarmForIncidence( Incidence *, bool ) = 0; 287 virtual void checkAlarmForIncidence( Incidence *, bool ) = 0;
288 /** 288 /**
289 Return all alarms, which ocur in the given time interval. 289 Return all alarms, which ocur in the given time interval.
290 */ 290 */
291 virtual Alarm::List alarms( const QDateTime &from, 291 virtual Alarm::List alarms( const QDateTime &from,
292 const QDateTime &to ) = 0; 292 const QDateTime &to ) = 0;
293 293
294 class Observer { 294 class Observer {
295 public: 295 public:
296 virtual void calendarModified( bool, Calendar * ) = 0; 296 virtual void calendarModified( bool, Calendar * ) = 0;
297 }; 297 };
298 298
299 void registerObserver( Observer * ); 299 void registerObserver( Observer * );
300 300
301 void setModified( bool ); 301 void setModified( bool );
302 302
303 /** 303 /**
304 Set product id returned by loadedProductId(). This function is only 304 Set product id returned by loadedProductId(). This function is only
305 useful for the calendar loading code. 305 useful for the calendar loading code.
306 */ 306 */
307 void setLoadedProductId( const QString & ); 307 void setLoadedProductId( const QString & );
308 /** 308 /**
309 Return product id taken from file that has been loaded. Returns 309 Return product id taken from file that has been loaded. Returns
310 QString::null, if no calendar has been loaded. 310 QString::null, if no calendar has been loaded.
311 */ 311 */
312 QString loadedProductId(); 312 QString loadedProductId();
313 int defaultCalendar(); 313 int defaultCalendar();
314 void setDontDeleteIncidencesOnClose (); 314 void setDontDeleteIncidencesOnClose ();
315 public slots: 315 public slots:
316 void setDefaultCalendar( int ); 316 void setDefaultCalendar( int );
317 virtual void setCalendarEnabled( int id, bool enable ) = 0; 317 virtual void setCalendarEnabled( int id, bool enable ) = 0;
318 virtual void setAlarmEnabled( int id, bool enable ) = 0; 318 virtual void setAlarmEnabled( int id, bool enable ) = 0;
319 virtual void setReadOnly( int id, bool enable ) = 0; 319 virtual void setReadOnly( int id, bool enable ) = 0;
320 virtual void setDefaultCalendarEnabledOnly() = 0; 320 virtual void setDefaultCalendarEnabledOnly() = 0;
321 virtual void setCalendarRemove( int id ) = 0; 321 virtual void setCalendarRemove( int id ) = 0;
322 virtual void getIncidenceCount( int calId, int& events, int & todos, int & journals) = 0;
323
322 signals: 324 signals:
323 void calendarChanged(); 325 void calendarChanged();
324 void calendarSaved(); 326 void calendarSaved();
325 void calendarLoaded(); 327 void calendarLoaded();
326 void addAlarm(const QDateTime &qdt, const QString &noti ); 328 void addAlarm(const QDateTime &qdt, const QString &noti );
327 void removeAlarm(const QDateTime &qdt, const QString &noti ); 329 void removeAlarm(const QDateTime &qdt, const QString &noti );
328 330
329 protected: 331 protected:
330 /** 332 /**
331 Get unfiltered events, which occur on the given date. 333 Get unfiltered events, which occur on the given date.
332 */ 334 */
333 virtual QPtrList<Event> rawEventsForDate( const QDateTime &qdt ) = 0; 335 virtual QPtrList<Event> rawEventsForDate( const QDateTime &qdt ) = 0;
334 /** 336 /**
335 Get unfiltered events, which occur on the given date. 337 Get unfiltered events, which occur on the given date.
336 */ 338 */
337 virtual QPtrList<Event> rawEventsForDate( const QDate &date, 339 virtual QPtrList<Event> rawEventsForDate( const QDate &date,
338 bool sorted = false ) = 0; 340 bool sorted = false ) = 0;
339 /** 341 /**
340 Get events in a range of dates. If inclusive is set to true, only events 342 Get events in a range of dates. If inclusive is set to true, only events
341 are returned, which are completely included in the range. 343 are returned, which are completely included in the range.
342 */ 344 */
343 virtual QPtrList<Event> rawEvents( const QDate &start, const QDate &end, 345 virtual QPtrList<Event> rawEvents( const QDate &start, const QDate &end,
344 bool inclusive = false ) = 0; 346 bool inclusive = false ) = 0;
345 347
346 Incidence *mNextAlarmIncidence; 348 Incidence *mNextAlarmIncidence;
347 Incidence *mUndoIncidence; 349 Incidence *mUndoIncidence;
348 int mDefaultCalendar; 350 int mDefaultCalendar;
349 bool mDeleteIncidencesOnClose; 351 bool mDeleteIncidencesOnClose;
350 352
351private: 353private:
352 void init(); 354 void init();
353 355
354 QString mOwner; // who the calendar belongs to 356 QString mOwner; // who the calendar belongs to
355 QString mOwnerEmail; // email address of the owner 357 QString mOwnerEmail; // email address of the owner
356 int mTimeZone; // timezone OFFSET from GMT (MINUTES) 358 int mTimeZone; // timezone OFFSET from GMT (MINUTES)
357 bool mLocalTime; // use local time, not UTC or a time zone 359 bool mLocalTime; // use local time, not UTC or a time zone
358 360
359 361
360 CalFilter *mFilter; 362 CalFilter *mFilter;
361 CalFilter *mDefaultFilter; 363 CalFilter *mDefaultFilter;
362 364
363 365
364 QString mTimeZoneId; 366 QString mTimeZoneId;
365 367
366 Observer *mObserver; 368 Observer *mObserver;
367 bool mNewObserver; 369 bool mNewObserver;
368 370
369 bool mModified; 371 bool mModified;
370 372
371 QString mLoadedProductId; 373 QString mLoadedProductId;
372 374
373 // This list is used to put together related todos 375 // This list is used to put together related todos
374 QDict<Incidence> mOrphans; 376 QDict<Incidence> mOrphans;
375 QDict<Incidence> mOrphanUids; 377 QDict<Incidence> mOrphanUids;
376}; 378};
377 379
378} 380}
379 381
380#endif 382#endif