Diffstat (limited to 'libopie2/opiepim/core/orecur.h') (more/less context) (ignore whitespace changes)
-rw-r--r-- | libopie2/opiepim/core/orecur.h | 29 |
1 files changed, 28 insertions, 1 deletions
diff --git a/libopie2/opiepim/core/orecur.h b/libopie2/opiepim/core/orecur.h index d24d72d..8713d97 100644 --- a/libopie2/opiepim/core/orecur.h +++ b/libopie2/opiepim/core/orecur.h @@ -9,9 +9,10 @@ #include <qdatetime.h> - +#include <qvaluelist.h> class ORecur { public: + typedef QValueList<QDate> ExceptionList; enum RepeatType{ NoRepeat = -1, Daily, Weekly, MonthlyDay, MonthlyDate, Yearly }; @@ -24,4 +25,8 @@ public: ORecur &operator=( const ORecur& ); bool operator==(const ORecur& )const; + + bool doesRecur()const; + /* if it recurrs on that day */ + bool doesRecur( const QDate& ); RepeatType type()const; int frequency()const; @@ -29,7 +34,26 @@ public: char days()const; bool hasEndDate()const; + QDate start()const; QDate endDate()const; time_t endDateUTC()const; time_t createTime()const; + + /** + * FromWhereToStart is not included!!! + */ + bool nextOcurrence( const QDate& FromWhereToStart, QDate &recurDate ); + /** + * The module this ORecur belongs to + */ + QString service()const; + + /* + * reference to the exception list + */ + ExceptionList &exceptions(); + + /** + * the current repetition + */ int repetition()const; @@ -39,8 +63,11 @@ public: void setDays( char c); void setEndDate( const QDate& dt ); + void setStart( const QDate& dt ); void setEndDateUTC( time_t ); void setCreateTime( time_t ); void setHasEndDate( bool b ); void setRepitition(int ); + + void setService( const QString& ser ); private: void deref(); |