summaryrefslogtreecommitdiff
path: root/include/opie
Unidiff
Diffstat (limited to 'include/opie') (more/less context) (ignore whitespace changes)
-rw-r--r--include/opie/tododb.h40
-rw-r--r--include/opie/todoevent.h52
2 files changed, 92 insertions, 0 deletions
diff --git a/include/opie/tododb.h b/include/opie/tododb.h
new file mode 100644
index 0000000..6478363
--- a/dev/null
+++ b/include/opie/tododb.h
@@ -0,0 +1,40 @@
1
2#ifndef tododb_h
3#define tododb_h
4
5#include <qvaluelist.h>
6
7#include <opie/todoevent.h>
8
9class ToDoDB
10{
11 public:
12 // if no argument is supplied pick the default book
13 ToDoDB(const QString &fileName = QString::null );
14 ~ToDoDB();
15 QValueList<ToDoEvent> effectiveToDos(const QDate &from,
16 const QDate &to,
17 bool includeNoDates = true);
18 QValueList<ToDoEvent> effectiveToDos(const QDate &start, bool includeNoDates = true );
19 QValueList<ToDoEvent> rawToDos(); // all events
20 QValueList<ToDoEvent> overDue();
21
22 void addEvent(const ToDoEvent &event );
23 void editEvent(const ToDoEvent &editEvent );
24 void removeEvent(const ToDoEvent &event);
25
26 void reload();
27 void setFileName(const QString & );
28 QString fileName()const;
29 bool save();
30
31 private:
32 class ToDoDBPrivate;
33 ToDoDBPrivate *d;
34 QString m_fileName;
35 QValueList<ToDoEvent> m_todos;
36 void load();
37};
38
39
40#endif
diff --git a/include/opie/todoevent.h b/include/opie/todoevent.h
new file mode 100644
index 0000000..dd8c0c9
--- a/dev/null
+++ b/include/opie/todoevent.h
@@ -0,0 +1,52 @@
1
2#ifndef todoevent_h
3#define todoevent_h
4
5#include <qdatetime.h>
6
7class ToDoEvent {
8 friend class ToDoDB;
9 public:
10 enum Priority { VERYHIGH=1, HIGH, NORMAL, LOW, VERYLOW };
11 ToDoEvent( bool completed = false, int priority = NORMAL,
12 const QString &category = QString::null,
13 const QString &description = QString::null ,
14 bool hasDate = false, QDate date = QDate::currentDate(), int uid = -1 );
15 bool isCompleted() const;
16 bool hasDate() const;
17 int priority()const ;
18 QString category()const;
19 QDate date()const;
20 QString description()const;
21
22 int uid()const { return m_uid;};
23 void setCompleted(bool completed );
24 void setHasDate( bool hasDate );
25 // if the category doesn't exist we will create it
26 void setCategory( const QString &category );
27 void setPriority(int priority );
28 void setDate( QDate date );
29 void setDescription(const QString& );
30 bool isOverdue();
31
32 bool operator<(const ToDoEvent &toDoEvent )const;
33 bool operator<=(const ToDoEvent &toDoEvent )const;
34 bool operator!=(const ToDoEvent &toDoEvent )const { return !(*this == toDoEvent); };
35 bool operator>(const ToDoEvent &toDoEvent )const;
36 bool operator>=(const ToDoEvent &toDoEvent)const;
37 bool operator==(const ToDoEvent &toDoEvent )const;
38 ToDoEvent &operator=(const ToDoEvent &toDoEvent );
39 private:
40 class ToDoEventPrivate;
41 ToDoEventPrivate *d;
42 QDate m_date;
43 bool m_isCompleted:1;
44 bool m_hasDate:1;
45 int m_priority;
46 QString m_category;
47 QString m_desc;
48 int m_uid;
49};
50
51
52#endif