KCalCore Library
24 #ifndef KCALCORE_RECURRENCE_H
25 #define KCALCORE_RECURRENCE_H
27 #include "kcalcore_export.h"
28 #include "recurrencerule.h"
87 class KCALCORE_EXPORT
Recurrence :
public RecurrenceRule::RuleObserver
90 class RecurrenceObserver
93 virtual ~RecurrenceObserver();
95 virtual void recurrenceUpdated(
Recurrence *r ) = 0;
105 rMonthlyPos = 0x0005,
106 rMonthlyDay = 0x0006,
107 rYearlyMonth = 0x0007,
152 KDateTime startDateTime()
const;
154 QDate startDate()
const;
160 void setStartDateTime(
const KDateTime &start );
172 void setAllDay(
bool allDay );
175 void setRecurReadOnly(
bool readOnly );
178 bool recurReadOnly()
const;
185 ushort recurrenceType()
const;
200 bool recursOn(
const QDate &date,
const KDateTime::Spec &timeSpec )
const;
209 bool recursAt(
const KDateTime &dt )
const;
228 TimeList recurTimesOn(
const QDate &date,
const KDateTime::Spec &timeSpec )
const;
242 DateTimeList timesInInterval(
const KDateTime &start,
const KDateTime &end )
const;
250 KDateTime getNextDateTime(
const KDateTime &preDateTime )
const;
260 KDateTime getPreviousDateTime(
const KDateTime &afterDateTime )
const;
263 int frequency()
const;
266 void setFrequency(
int freq );
272 int duration()
const;
276 void setDuration(
int duration );
281 int durationTo(
const KDateTime &dt )
const;
286 int durationTo(
const QDate &date )
const;
291 KDateTime endDateTime()
const;
296 QDate endDate()
const;
301 void setEndDate(
const QDate &endDate );
305 void setEndDateTime(
const KDateTime &endDateTime );
321 void shiftTimes(
const KDateTime::Spec &oldSpec,
const KDateTime::Spec &newSpec );
333 void setMinutely(
int freq );
348 void setHourly(
int freq );
363 void setDaily(
int freq );
376 void setWeekly(
int freq,
int weekStart = 1 );
389 void setWeekly(
int freq,
const QBitArray &days,
int weekStart = 1 );
394 void addWeeklyDays(
const QBitArray &days );
400 int weekStart()
const;
403 QBitArray days()
const;
419 void setMonthly(
int freq );
428 void addMonthlyPos(
short pos,
const QBitArray &days );
429 void addMonthlyPos(
short pos, ushort day );
435 void addMonthlyDate(
short day );
438 QList<RecurrenceRule::WDayPos> monthPositions()
const;
442 QList<int> monthDays()
const;
466 void setYearly(
int freq );
474 void addYearlyDay(
int day );
484 void addYearlyDate(
int date );
491 void addYearlyMonth(
short _rNum );
509 void addYearlyPos(
short pos,
const QBitArray &days );
516 QList<int> yearDays()
const;
525 QList<int> yearDates()
const;
535 QList<int> yearMonths()
const;
546 QList<RecurrenceRule::WDayPos> yearPositions()
const;
557 RecurrenceRule::List rRules()
const;
579 RecurrenceRule::List exRules()
const;
605 void setRDates(
const DateList &rdates );
606 void addRDateTime(
const KDateTime &rdate );
607 void addRDate(
const QDate &rdate );
613 void setExDates(
const DateList &exdates );
614 void addExDateTime(
const KDateTime &exdate );
615 void addExDate(
const QDate &exdate );
628 void addObserver( RecurrenceObserver *observer );
635 void removeObserver( RecurrenceObserver *observer );
This class represents a recurrence rule for a calendar incidence.
A QList which can be sorted.
static const QDate MAX_DATE
Upper date limit for recurrences.
PeriodType
enum for describing the frequency how an event recurs, if at all.
bool operator!=(const Recurrence &r) const
Comparison operator for inequality.
This class represents a recurrence rule for a calendar incidence.
This file is part of the KDE documentation.
Documentation copyright © 1996-2013 The KDE developers.
Generated on Tue Nov 26 2013 09:02:04 by
doxygen 1.8.5 written
by
Dimitri van Heesch, © 1997-2006
KDE's Doxygen guidelines are available online.