-rw-r--r-- | libopie/todoevent.h | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/libopie/todoevent.h b/libopie/todoevent.h index de4623f..b55a39b 100644 --- a/libopie/todoevent.h +++ b/libopie/todoevent.h @@ -1,21 +1,24 @@ #ifndef todoevent_h #define todoevent_h + +#include <qarray.h> #include <qmap.h> #include <qregexp.h> #include <qstringlist.h> #include <qdatetime.h> + class ToDoEvent { friend class ToDoDB; public: // priorities from Very low to very high enum Priority { VERYHIGH=1, HIGH, NORMAL, LOW, VERYLOW }; /* Constructs a new ToDoEvent @param completed Is the TodoEvent completed @param priority What is the priority of this ToDoEvent @param category Which category does it belong( uid ) @param summary A small summary of the todo @param description What is this ToDoEvent about @param hasDate Does this Event got a deadline @@ -80,24 +83,34 @@ class ToDoEvent { /** * Return this todoevent in a RichText formatted QString */ QString richText() const; /** * Returns the UID of the Todo */ int uid()const { return m_uid;}; QString extra(const QString& )const; + + /** + * returns a list of apps which have related items + */ + QStringList relatedApps()const; + + /** + * returns all relations for one app + */ + QArray<int> relations( const QString& app )const; /** * Set if this Todo is completed */ void setCompleted(bool completed ); /** * set if this todo got an end data */ void setHasDate( bool hasDate ); // if the category doesn't exist we will create it // this sets the the Category after this call category will be the only category void setCategory( const QString &category ); @@ -116,24 +129,39 @@ class ToDoEvent { /** * Set the priority of the Todo */ void setPriority(int priority ); /** * Set the progress. */ void setProgress( ushort progress ); /** + * add related function it replaces too ;) + */ + void addRelated( const QString& app, int id ); + + /** + * add related + */ + void addRelated( const QString& app, QArray<int> ids ); + + /** + * clear relations for one app + */ + void clearRelated(const QString& app); + + /** * set the end date */ void setDate( QDate date ); void setDescription(const QString& ); void setSummary(const QString& ); void setExtra( const QString&, const QString& ); bool isOverdue(); bool match( const QRegExp &r )const; void setUid(int id) {m_uid = id; }; bool operator<(const ToDoEvent &toDoEvent )const; @@ -145,18 +173,19 @@ class ToDoEvent { ToDoEvent &operator=(const ToDoEvent &toDoEvent ); private: class ToDoEventPrivate; ToDoEventPrivate *d; QDate m_date; bool m_isCompleted:1; bool m_hasDate:1; int m_priority; QStringList m_category; QString m_desc; QString m_sum; QMap<QString, QString> m_extra; + QMap<QString, QArray<int> > m_relations; int m_uid; ushort m_prog; }; #endif |