author | zecke <zecke> | 2002-11-15 21:43:59 (UTC) |
---|---|---|
committer | zecke <zecke> | 2002-11-15 21:43:59 (UTC) |
commit | a1306f7603ab9a05f7d0059fad60b68f01a0ae71 (patch) (unidiff) | |
tree | 9af055fb6dea589ac5e5d93a7bf9f192b257c4c8 | |
parent | 11116312592ada97b202f09c6e9ee57c9dd80b84 (diff) | |
download | opie-a1306f7603ab9a05f7d0059fad60b68f01a0ae71.zip opie-a1306f7603ab9a05f7d0059fad60b68f01a0ae71.tar.gz opie-a1306f7603ab9a05f7d0059fad60b68f01a0ae71.tar.bz2 |
Make OTodo compile
add the MaintainerMode to OTodo
-rw-r--r-- | libopie/libopie.pro | 2 | ||||
-rw-r--r-- | libopie/pim/opimmaintainer.cpp | 37 | ||||
-rw-r--r-- | libopie/pim/opimmaintainer.h | 36 | ||||
-rw-r--r-- | libopie/pim/opimxrefmanager.cpp | 2 | ||||
-rw-r--r-- | libopie/pim/otodo.cpp | 20 | ||||
-rw-r--r-- | libopie/pim/otodo.h | 12 | ||||
-rw-r--r-- | libopie2/opiepim/core/opimmaintainer.cpp | 37 | ||||
-rw-r--r-- | libopie2/opiepim/core/opimmaintainer.h | 36 | ||||
-rw-r--r-- | libopie2/opiepim/core/opimxrefmanager.cpp | 2 | ||||
-rw-r--r-- | libopie2/opiepim/otodo.cpp | 20 | ||||
-rw-r--r-- | libopie2/opiepim/otodo.h | 12 |
11 files changed, 214 insertions, 2 deletions
diff --git a/libopie/libopie.pro b/libopie/libopie.pro index 3e6156e..a80a407 100644 --- a/libopie/libopie.pro +++ b/libopie/libopie.pro | |||
@@ -26,16 +26,17 @@ HEADERS = ofontmenu.h \ | |||
26 | pim/obackendfactory.h \ | 26 | pim/obackendfactory.h \ |
27 | pim/opimcache.h \ | 27 | pim/opimcache.h \ |
28 | pim/otodoaccessvcal.h \ | 28 | pim/otodoaccessvcal.h \ |
29 | pim/orecur.h \ | 29 | pim/orecur.h \ |
30 | pim/opimstate.h \ | 30 | pim/opimstate.h \ |
31 | pim/opimxrefpartner.h \ | 31 | pim/opimxrefpartner.h \ |
32 | pim/opimxref.h \ | 32 | pim/opimxref.h \ |
33 | pim/opimxrefmanager.h \ | 33 | pim/opimxrefmanager.h \ |
34 | pim/opimmaintainer.h \ | ||
34 | orecurrancewidget.h \ | 35 | orecurrancewidget.h \ |
35 | oticker.h | 36 | oticker.h |
36 | # pim/otodoaccesssql.h \ | 37 | # pim/otodoaccesssql.h \ |
37 | 38 | ||
38 | SOURCES = ofontmenu.cc \ | 39 | SOURCES = ofontmenu.cc \ |
39 | ocolorbutton.cpp \ | 40 | ocolorbutton.cpp \ |
40 | xmltree.cc \ | 41 | xmltree.cc \ |
41 | ofiledialog.cc ofileselector.cc \ | 42 | ofiledialog.cc ofileselector.cc \ |
@@ -55,16 +56,17 @@ SOURCES = ofontmenu.cc \ | |||
55 | pim/ocontactaccess.cpp \ | 56 | pim/ocontactaccess.cpp \ |
56 | pim/ocontactaccessbackend_vcard.cpp \ | 57 | pim/ocontactaccessbackend_vcard.cpp \ |
57 | pim/otodoaccessvcal.cpp \ | 58 | pim/otodoaccessvcal.cpp \ |
58 | pim/orecur.cpp \ | 59 | pim/orecur.cpp \ |
59 | pim/opimstate.cpp \ | 60 | pim/opimstate.cpp \ |
60 | pim/opimxrefpartner.cpp \ | 61 | pim/opimxrefpartner.cpp \ |
61 | pim/opimxref.cpp \ | 62 | pim/opimxref.cpp \ |
62 | pim/opimxrefmanager.cpp \ | 63 | pim/opimxrefmanager.cpp \ |
64 | pim/opimmaintainer.cpp \ | ||
63 | orecurrancewidget.cpp \ | 65 | orecurrancewidget.cpp \ |
64 | oticker.cpp | 66 | oticker.cpp |
65 | # pim/otodoaccesssql.cpp \ | 67 | # pim/otodoaccesssql.cpp \ |
66 | 68 | ||
67 | TARGET = opie | 69 | TARGET = opie |
68 | INCLUDEPATH += $(OPIEDIR)/include | 70 | INCLUDEPATH += $(OPIEDIR)/include |
69 | DESTDIR = $(QTDIR)/lib$(PROJMAK) | 71 | DESTDIR = $(QTDIR)/lib$(PROJMAK) |
70 | #VERSION = 1.0.0 | 72 | #VERSION = 1.0.0 |
diff --git a/libopie/pim/opimmaintainer.cpp b/libopie/pim/opimmaintainer.cpp new file mode 100644 index 0000000..e34f035 --- a/dev/null +++ b/libopie/pim/opimmaintainer.cpp | |||
@@ -0,0 +1,37 @@ | |||
1 | #include "opimmaintainer.h" | ||
2 | |||
3 | OPimMaintainer::OPimMaintainer( enum Mode mode, int uid ) | ||
4 | : m_mode(mode), m_uid(uid ) | ||
5 | {} | ||
6 | OPimMaintainer::~OPimMaintainer() { | ||
7 | } | ||
8 | OPimMaintainer::OPimMaintainer( const OPimMaintainer& main ) { | ||
9 | *this = main; | ||
10 | } | ||
11 | OPimMaintainer &OPimMaintainer::operator=( const OPimMaintainer& main ) { | ||
12 | m_mode = main.m_mode; | ||
13 | m_uid = main.m_uid; | ||
14 | |||
15 | return *this; | ||
16 | } | ||
17 | bool OPimMaintainer::operator==( const OPimMaintainer& main ) { | ||
18 | if (m_mode != main.m_mode ) return false; | ||
19 | if (m_uid != main.m_uid ) return false; | ||
20 | |||
21 | return true; | ||
22 | } | ||
23 | bool OPimMaintainer::operator!=( const OPimMaintainer& main ) { | ||
24 | return !(*this == main ); | ||
25 | } | ||
26 | OPimMaintainer::Mode OPimMaintainer::mode()const { | ||
27 | return m_mode; | ||
28 | } | ||
29 | int OPimMaintainer::uid()const { | ||
30 | return m_uid; | ||
31 | } | ||
32 | void OPimMaintainer::setMode( enum Mode mo) { | ||
33 | m_mode = mo; | ||
34 | } | ||
35 | void OPimMaintainer::setUid( int uid ) { | ||
36 | m_uid = uid; | ||
37 | } | ||
diff --git a/libopie/pim/opimmaintainer.h b/libopie/pim/opimmaintainer.h new file mode 100644 index 0000000..310e15a --- a/dev/null +++ b/libopie/pim/opimmaintainer.h | |||
@@ -0,0 +1,36 @@ | |||
1 | #ifndef OPIE_PIM_MAINTAINER_H | ||
2 | #define OPIE_PIM_MAINTAINER_H | ||
3 | |||
4 | #include <qstring.h> | ||
5 | |||
6 | /** | ||
7 | * Who maintains what? | ||
8 | */ | ||
9 | class OPimMaintainer { | ||
10 | public: | ||
11 | enum Mode { Undefined = -1, | ||
12 | Responsible = 0, | ||
13 | DoneBy, | ||
14 | Coordinating }; | ||
15 | OPimMaintainer( enum Mode mode = Undefined, int uid = 0); | ||
16 | OPimMaintainer( const OPimMaintainer& ); | ||
17 | ~OPimMaintainer(); | ||
18 | |||
19 | OPimMaintainer &operator=( const OPimMaintainer& ); | ||
20 | bool operator==( const OPimMaintainer& ); | ||
21 | bool operator!=( const OPimMaintainer& ); | ||
22 | |||
23 | |||
24 | Mode mode()const; | ||
25 | int uid()const; | ||
26 | |||
27 | void setMode( enum Mode ); | ||
28 | void setUid( int uid ); | ||
29 | |||
30 | private: | ||
31 | Mode m_mode; | ||
32 | int m_uid; | ||
33 | |||
34 | }; | ||
35 | |||
36 | #endif | ||
diff --git a/libopie/pim/opimxrefmanager.cpp b/libopie/pim/opimxrefmanager.cpp index d49f5f5..965f542 100644 --- a/libopie/pim/opimxrefmanager.cpp +++ b/libopie/pim/opimxrefmanager.cpp | |||
@@ -1,16 +1,18 @@ | |||
1 | #include "opimxrefmanager.h" | 1 | #include "opimxrefmanager.h" |
2 | 2 | ||
3 | 3 | ||
4 | OPimXRefManager::OPimXRefManager() { | 4 | OPimXRefManager::OPimXRefManager() { |
5 | } | 5 | } |
6 | OPimXRefManager::OPimXRefManager( const OPimXRefManager& ref) { | 6 | OPimXRefManager::OPimXRefManager( const OPimXRefManager& ref) { |
7 | m_list = ref.m_list; | 7 | m_list = ref.m_list; |
8 | } | 8 | } |
9 | OPimXRefManager::~OPimXRefManager() { | ||
10 | } | ||
9 | OPimXRefManager &OPimXRefManager::operator=( const OPimXRefManager& ref) { | 11 | OPimXRefManager &OPimXRefManager::operator=( const OPimXRefManager& ref) { |
10 | m_list = ref.m_list; | 12 | m_list = ref.m_list; |
11 | return *this; | 13 | return *this; |
12 | } | 14 | } |
13 | bool OPimXRefManager::operator==( const OPimXRefManager& /*ref*/) { | 15 | bool OPimXRefManager::operator==( const OPimXRefManager& /*ref*/) { |
14 | // if ( m_list == ref.m_list ) return true; | 16 | // if ( m_list == ref.m_list ) return true; |
15 | 17 | ||
16 | return false; | 18 | return false; |
diff --git a/libopie/pim/otodo.cpp b/libopie/pim/otodo.cpp index 4d5cb79..6fcf9f6 100644 --- a/libopie/pim/otodo.cpp +++ b/libopie/pim/otodo.cpp | |||
@@ -9,16 +9,18 @@ | |||
9 | #include <qpe/palmtoprecord.h> | 9 | #include <qpe/palmtoprecord.h> |
10 | #include <qpe/stringutil.h> | 10 | #include <qpe/stringutil.h> |
11 | #include <qpe/categories.h> | 11 | #include <qpe/categories.h> |
12 | #include <qpe/categoryselect.h> | 12 | #include <qpe/categoryselect.h> |
13 | 13 | ||
14 | 14 | ||
15 | #include "opimstate.h" | 15 | #include "opimstate.h" |
16 | #include "orecur.h" | 16 | #include "orecur.h" |
17 | #include "opimmaintainer.h" | ||
18 | |||
17 | #include "otodo.h" | 19 | #include "otodo.h" |
18 | 20 | ||
19 | 21 | ||
20 | struct OTodo::OTodoData : public QShared { | 22 | struct OTodo::OTodoData : public QShared { |
21 | OTodoData() : QShared() { | 23 | OTodoData() : QShared() { |
22 | }; | 24 | }; |
23 | 25 | ||
24 | QDate date; | 26 | QDate date; |
@@ -28,16 +30,17 @@ struct OTodo::OTodoData : public QShared { | |||
28 | QString desc; | 30 | QString desc; |
29 | QString sum; | 31 | QString sum; |
30 | QMap<QString, QString> extra; | 32 | QMap<QString, QString> extra; |
31 | ushort prog; | 33 | ushort prog; |
32 | bool hasAlarmDateTime :1; | 34 | bool hasAlarmDateTime :1; |
33 | QDateTime alarmDateTime; | 35 | QDateTime alarmDateTime; |
34 | OPimState state; | 36 | OPimState state; |
35 | ORecur recur; | 37 | ORecur recur; |
38 | OPimMaintainer maintainer; | ||
36 | }; | 39 | }; |
37 | 40 | ||
38 | OTodo::OTodo(const OTodo &event ) | 41 | OTodo::OTodo(const OTodo &event ) |
39 | : OPimRecord( event ), data( event.data ) | 42 | : OPimRecord( event ), data( event.data ) |
40 | { | 43 | { |
41 | data->ref(); | 44 | data->ref(); |
42 | // qWarning("ref up"); | 45 | // qWarning("ref up"); |
43 | } | 46 | } |
@@ -148,16 +151,19 @@ QString OTodo::description()const | |||
148 | return data->desc; | 151 | return data->desc; |
149 | } | 152 | } |
150 | OPimState OTodo::state()const { | 153 | OPimState OTodo::state()const { |
151 | return data->state; | 154 | return data->state; |
152 | } | 155 | } |
153 | ORecur OTodo::recurrence()const { | 156 | ORecur OTodo::recurrence()const { |
154 | return data->recur; | 157 | return data->recur; |
155 | } | 158 | } |
159 | OPimMaintainer OTodo::maintainer()const { | ||
160 | return data->maintainer; | ||
161 | } | ||
156 | void OTodo::setCompleted( bool completed ) | 162 | void OTodo::setCompleted( bool completed ) |
157 | { | 163 | { |
158 | changeOrModify(); | 164 | changeOrModify(); |
159 | data->isCompleted = completed; | 165 | data->isCompleted = completed; |
160 | } | 166 | } |
161 | void OTodo::setHasDueDate( bool hasDate ) | 167 | void OTodo::setHasDueDate( bool hasDate ) |
162 | { | 168 | { |
163 | changeOrModify(); | 169 | changeOrModify(); |
@@ -197,16 +203,20 @@ void OTodo::setAlarmDateTime( const QDateTime& alarm ) | |||
197 | void OTodo::setState( const OPimState& state ) { | 203 | void OTodo::setState( const OPimState& state ) { |
198 | changeOrModify(); | 204 | changeOrModify(); |
199 | data->state = state; | 205 | data->state = state; |
200 | } | 206 | } |
201 | void OTodo::setRecurrence( const ORecur& rec) { | 207 | void OTodo::setRecurrence( const ORecur& rec) { |
202 | changeOrModify(); | 208 | changeOrModify(); |
203 | data->recur = rec; | 209 | data->recur = rec; |
204 | } | 210 | } |
211 | void OTodo::setMaintainer( const OPimMaintainer& pim ) { | ||
212 | changeOrModify(); | ||
213 | data->maintainer = pim; | ||
214 | } | ||
205 | bool OTodo::isOverdue( ) | 215 | bool OTodo::isOverdue( ) |
206 | { | 216 | { |
207 | if( data->hasDate && !data->isCompleted) | 217 | if( data->hasDate && !data->isCompleted) |
208 | return QDate::currentDate() > data->date; | 218 | return QDate::currentDate() > data->date; |
209 | return false; | 219 | return false; |
210 | } | 220 | } |
211 | void OTodo::setProgress(ushort progress ) | 221 | void OTodo::setProgress(ushort progress ) |
212 | { | 222 | { |
@@ -316,16 +326,18 @@ bool OTodo::operator==(const OTodo &toDoEvent )const | |||
316 | if ( data->hasDate != toDoEvent.data->hasDate ) return false; | 326 | if ( data->hasDate != toDoEvent.data->hasDate ) return false; |
317 | if ( data->date != toDoEvent.data->date ) return false; | 327 | if ( data->date != toDoEvent.data->date ) return false; |
318 | if ( data->sum != toDoEvent.data->sum ) return false; | 328 | if ( data->sum != toDoEvent.data->sum ) return false; |
319 | if ( data->desc != toDoEvent.data->desc ) return false; | 329 | if ( data->desc != toDoEvent.data->desc ) return false; |
320 | if ( data->hasAlarmDateTime != toDoEvent.data->hasAlarmDateTime ) | 330 | if ( data->hasAlarmDateTime != toDoEvent.data->hasAlarmDateTime ) |
321 | return false; | 331 | return false; |
322 | if ( data->alarmDateTime != toDoEvent.data->alarmDateTime ) | 332 | if ( data->alarmDateTime != toDoEvent.data->alarmDateTime ) |
323 | return false; | 333 | return false; |
334 | if ( data->maintainer != toDoEvent.data->maintainer ) | ||
335 | return false; | ||
324 | 336 | ||
325 | return OPimRecord::operator==( toDoEvent ); | 337 | return OPimRecord::operator==( toDoEvent ); |
326 | } | 338 | } |
327 | void OTodo::deref() { | 339 | void OTodo::deref() { |
328 | 340 | ||
329 | // qWarning("deref in ToDoEvent"); | 341 | // qWarning("deref in ToDoEvent"); |
330 | if ( data->deref() ) { | 342 | if ( data->deref() ) { |
331 | // qWarning("deleting"); | 343 | // qWarning("deleting"); |
@@ -353,17 +365,17 @@ QMap<int, QString> OTodo::toMap() const { | |||
353 | map.insert( Completed, QString::number( data->isCompleted ) ); | 365 | map.insert( Completed, QString::number( data->isCompleted ) ); |
354 | map.insert( Description, data->desc ); | 366 | map.insert( Description, data->desc ); |
355 | map.insert( Summary, data->sum ); | 367 | map.insert( Summary, data->sum ); |
356 | map.insert( Priority, QString::number( data->priority ) ); | 368 | map.insert( Priority, QString::number( data->priority ) ); |
357 | map.insert( DateDay, QString::number( data->date.day() ) ); | 369 | map.insert( DateDay, QString::number( data->date.day() ) ); |
358 | map.insert( DateMonth, QString::number( data->date.month() ) ); | 370 | map.insert( DateMonth, QString::number( data->date.month() ) ); |
359 | map.insert( DateYear, QString::number( data->date.year() ) ); | 371 | map.insert( DateYear, QString::number( data->date.year() ) ); |
360 | map.insert( Progress, QString::number( data->prog ) ); | 372 | map.insert( Progress, QString::number( data->prog ) ); |
361 | map.insert( CrossReference, crossToString() ); | 373 | // map.insert( CrossReference, crossToString() ); |
362 | map.insert( HasAlarmDateTime, QString::number( data->hasAlarmDateTime ) ); | 374 | map.insert( HasAlarmDateTime, QString::number( data->hasAlarmDateTime ) ); |
363 | map.insert( AlarmDateTime, data->alarmDateTime.toString() ); | 375 | map.insert( AlarmDateTime, data->alarmDateTime.toString() ); |
364 | 376 | ||
365 | return map; | 377 | return map; |
366 | } | 378 | } |
367 | 379 | ||
368 | QMap<QString, QString> OTodo::toExtraMap()const { | 380 | QMap<QString, QString> OTodo::toExtraMap()const { |
369 | return data->extra; | 381 | return data->extra; |
@@ -377,29 +389,35 @@ void OTodo::changeOrModify() { | |||
377 | if ( data->count != 1 ) { | 389 | if ( data->count != 1 ) { |
378 | qWarning("changeOrModify"); | 390 | qWarning("changeOrModify"); |
379 | data->deref(); | 391 | data->deref(); |
380 | OTodoData* d2 = new OTodoData(); | 392 | OTodoData* d2 = new OTodoData(); |
381 | copy(data, d2 ); | 393 | copy(data, d2 ); |
382 | data = d2; | 394 | data = d2; |
383 | } | 395 | } |
384 | } | 396 | } |
397 | // WATCHOUT | ||
398 | /* | ||
399 | * if you add something to the Data struct | ||
400 | * be sure to copy it here | ||
401 | */ | ||
385 | void OTodo::copy( OTodoData* src, OTodoData* dest ) { | 402 | void OTodo::copy( OTodoData* src, OTodoData* dest ) { |
386 | dest->date = src->date; | 403 | dest->date = src->date; |
387 | dest->isCompleted = src->isCompleted; | 404 | dest->isCompleted = src->isCompleted; |
388 | dest->hasDate = src->hasDate; | 405 | dest->hasDate = src->hasDate; |
389 | dest->priority = src->priority; | 406 | dest->priority = src->priority; |
390 | dest->desc = src->desc; | 407 | dest->desc = src->desc; |
391 | dest->sum = src->sum; | 408 | dest->sum = src->sum; |
392 | dest->extra = src->extra; | 409 | dest->extra = src->extra; |
393 | dest->prog = src->prog; | 410 | dest->prog = src->prog; |
394 | dest->hasAlarmDateTime = src->hasAlarmDateTime; | 411 | dest->hasAlarmDateTime = src->hasAlarmDateTime; |
395 | dest->alarmDateTime = src->alarmDateTime; | 412 | dest->alarmDateTime = src->alarmDateTime; |
396 | dest->state = src->state; | 413 | dest->state = src->state; |
397 | dest->recur = src->recur; | 414 | dest->recur = src->recur; |
415 | dest->maintainer = src->maintainer; | ||
398 | } | 416 | } |
399 | QString OTodo::type() const { | 417 | QString OTodo::type() const { |
400 | return QString::fromLatin1("OTodo"); | 418 | return QString::fromLatin1("OTodo"); |
401 | } | 419 | } |
402 | QString OTodo::recordField(int /*id*/ )const { | 420 | QString OTodo::recordField(int /*id*/ )const { |
403 | return QString::null; | 421 | return QString::null; |
404 | } | 422 | } |
405 | 423 | ||
diff --git a/libopie/pim/otodo.h b/libopie/pim/otodo.h index 2cdc587..70b0253 100644 --- a/libopie/pim/otodo.h +++ b/libopie/pim/otodo.h | |||
@@ -13,16 +13,17 @@ | |||
13 | #include <qpe/recordfields.h> | 13 | #include <qpe/recordfields.h> |
14 | #include <qpe/palmtopuidgen.h> | 14 | #include <qpe/palmtopuidgen.h> |
15 | 15 | ||
16 | #include <opie/opimrecord.h> | 16 | #include <opie/opimrecord.h> |
17 | 17 | ||
18 | 18 | ||
19 | class OPimState; | 19 | class OPimState; |
20 | class ORecur; | 20 | class ORecur; |
21 | class OPimMaintainer; | ||
21 | class OTodo : public OPimRecord { | 22 | class OTodo : public OPimRecord { |
22 | public: | 23 | public: |
23 | typedef QValueList<OTodo> ValueList; | 24 | typedef QValueList<OTodo> ValueList; |
24 | enum RecordFields { | 25 | enum RecordFields { |
25 | Uid = Qtopia::UID_ID, | 26 | Uid = Qtopia::UID_ID, |
26 | Category = Qtopia::CATEGORY_ID, | 27 | Category = Qtopia::CATEGORY_ID, |
27 | HasDate, | 28 | HasDate, |
28 | Completed, | 29 | Completed, |
@@ -123,16 +124,21 @@ public: | |||
123 | OPimState state()const; | 124 | OPimState state()const; |
124 | 125 | ||
125 | /** | 126 | /** |
126 | * the recurrance of this | 127 | * the recurrance of this |
127 | */ | 128 | */ |
128 | ORecur recurrence()const; | 129 | ORecur recurrence()const; |
129 | 130 | ||
130 | /** | 131 | /** |
132 | * the Maintainer of this OTodo | ||
133 | */ | ||
134 | OPimMaintainer maintainer()const; | ||
135 | |||
136 | /** | ||
131 | * The description of the todo | 137 | * The description of the todo |
132 | */ | 138 | */ |
133 | QString description()const; | 139 | QString description()const; |
134 | 140 | ||
135 | /** | 141 | /** |
136 | * A small summary of the todo | 142 | * A small summary of the todo |
137 | */ | 143 | */ |
138 | QString summary() const; | 144 | QString summary() const; |
@@ -197,16 +203,22 @@ public: | |||
197 | void setDescription(const QString& ); | 203 | void setDescription(const QString& ); |
198 | void setSummary(const QString& ); | 204 | void setSummary(const QString& ); |
199 | 205 | ||
200 | /** | 206 | /** |
201 | * set the state of a Todo | 207 | * set the state of a Todo |
202 | * @param state State what the todo should take | 208 | * @param state State what the todo should take |
203 | */ | 209 | */ |
204 | void setState( const OPimState& state); | 210 | void setState( const OPimState& state); |
211 | |||
212 | /** | ||
213 | * set the Maintainer Mode | ||
214 | */ | ||
215 | void setMaintainer( const OPimMaintainer& ); | ||
216 | |||
205 | bool isOverdue(); | 217 | bool isOverdue(); |
206 | 218 | ||
207 | 219 | ||
208 | bool match( const QRegExp &r )const; | 220 | bool match( const QRegExp &r )const; |
209 | 221 | ||
210 | bool operator<(const OTodo &toDoEvent )const; | 222 | bool operator<(const OTodo &toDoEvent )const; |
211 | bool operator<=(const OTodo &toDoEvent )const; | 223 | bool operator<=(const OTodo &toDoEvent )const; |
212 | bool operator!=(const OTodo &toDoEvent )const; | 224 | bool operator!=(const OTodo &toDoEvent )const; |
diff --git a/libopie2/opiepim/core/opimmaintainer.cpp b/libopie2/opiepim/core/opimmaintainer.cpp new file mode 100644 index 0000000..e34f035 --- a/dev/null +++ b/libopie2/opiepim/core/opimmaintainer.cpp | |||
@@ -0,0 +1,37 @@ | |||
1 | #include "opimmaintainer.h" | ||
2 | |||
3 | OPimMaintainer::OPimMaintainer( enum Mode mode, int uid ) | ||
4 | : m_mode(mode), m_uid(uid ) | ||
5 | {} | ||
6 | OPimMaintainer::~OPimMaintainer() { | ||
7 | } | ||
8 | OPimMaintainer::OPimMaintainer( const OPimMaintainer& main ) { | ||
9 | *this = main; | ||
10 | } | ||
11 | OPimMaintainer &OPimMaintainer::operator=( const OPimMaintainer& main ) { | ||
12 | m_mode = main.m_mode; | ||
13 | m_uid = main.m_uid; | ||
14 | |||
15 | return *this; | ||
16 | } | ||
17 | bool OPimMaintainer::operator==( const OPimMaintainer& main ) { | ||
18 | if (m_mode != main.m_mode ) return false; | ||
19 | if (m_uid != main.m_uid ) return false; | ||
20 | |||
21 | return true; | ||
22 | } | ||
23 | bool OPimMaintainer::operator!=( const OPimMaintainer& main ) { | ||
24 | return !(*this == main ); | ||
25 | } | ||
26 | OPimMaintainer::Mode OPimMaintainer::mode()const { | ||
27 | return m_mode; | ||
28 | } | ||
29 | int OPimMaintainer::uid()const { | ||
30 | return m_uid; | ||
31 | } | ||
32 | void OPimMaintainer::setMode( enum Mode mo) { | ||
33 | m_mode = mo; | ||
34 | } | ||
35 | void OPimMaintainer::setUid( int uid ) { | ||
36 | m_uid = uid; | ||
37 | } | ||
diff --git a/libopie2/opiepim/core/opimmaintainer.h b/libopie2/opiepim/core/opimmaintainer.h new file mode 100644 index 0000000..310e15a --- a/dev/null +++ b/libopie2/opiepim/core/opimmaintainer.h | |||
@@ -0,0 +1,36 @@ | |||
1 | #ifndef OPIE_PIM_MAINTAINER_H | ||
2 | #define OPIE_PIM_MAINTAINER_H | ||
3 | |||
4 | #include <qstring.h> | ||
5 | |||
6 | /** | ||
7 | * Who maintains what? | ||
8 | */ | ||
9 | class OPimMaintainer { | ||
10 | public: | ||
11 | enum Mode { Undefined = -1, | ||
12 | Responsible = 0, | ||
13 | DoneBy, | ||
14 | Coordinating }; | ||
15 | OPimMaintainer( enum Mode mode = Undefined, int uid = 0); | ||
16 | OPimMaintainer( const OPimMaintainer& ); | ||
17 | ~OPimMaintainer(); | ||
18 | |||
19 | OPimMaintainer &operator=( const OPimMaintainer& ); | ||
20 | bool operator==( const OPimMaintainer& ); | ||
21 | bool operator!=( const OPimMaintainer& ); | ||
22 | |||
23 | |||
24 | Mode mode()const; | ||
25 | int uid()const; | ||
26 | |||
27 | void setMode( enum Mode ); | ||
28 | void setUid( int uid ); | ||
29 | |||
30 | private: | ||
31 | Mode m_mode; | ||
32 | int m_uid; | ||
33 | |||
34 | }; | ||
35 | |||
36 | #endif | ||
diff --git a/libopie2/opiepim/core/opimxrefmanager.cpp b/libopie2/opiepim/core/opimxrefmanager.cpp index d49f5f5..965f542 100644 --- a/libopie2/opiepim/core/opimxrefmanager.cpp +++ b/libopie2/opiepim/core/opimxrefmanager.cpp | |||
@@ -1,16 +1,18 @@ | |||
1 | #include "opimxrefmanager.h" | 1 | #include "opimxrefmanager.h" |
2 | 2 | ||
3 | 3 | ||
4 | OPimXRefManager::OPimXRefManager() { | 4 | OPimXRefManager::OPimXRefManager() { |
5 | } | 5 | } |
6 | OPimXRefManager::OPimXRefManager( const OPimXRefManager& ref) { | 6 | OPimXRefManager::OPimXRefManager( const OPimXRefManager& ref) { |
7 | m_list = ref.m_list; | 7 | m_list = ref.m_list; |
8 | } | 8 | } |
9 | OPimXRefManager::~OPimXRefManager() { | ||
10 | } | ||
9 | OPimXRefManager &OPimXRefManager::operator=( const OPimXRefManager& ref) { | 11 | OPimXRefManager &OPimXRefManager::operator=( const OPimXRefManager& ref) { |
10 | m_list = ref.m_list; | 12 | m_list = ref.m_list; |
11 | return *this; | 13 | return *this; |
12 | } | 14 | } |
13 | bool OPimXRefManager::operator==( const OPimXRefManager& /*ref*/) { | 15 | bool OPimXRefManager::operator==( const OPimXRefManager& /*ref*/) { |
14 | // if ( m_list == ref.m_list ) return true; | 16 | // if ( m_list == ref.m_list ) return true; |
15 | 17 | ||
16 | return false; | 18 | return false; |
diff --git a/libopie2/opiepim/otodo.cpp b/libopie2/opiepim/otodo.cpp index 4d5cb79..6fcf9f6 100644 --- a/libopie2/opiepim/otodo.cpp +++ b/libopie2/opiepim/otodo.cpp | |||
@@ -9,16 +9,18 @@ | |||
9 | #include <qpe/palmtoprecord.h> | 9 | #include <qpe/palmtoprecord.h> |
10 | #include <qpe/stringutil.h> | 10 | #include <qpe/stringutil.h> |
11 | #include <qpe/categories.h> | 11 | #include <qpe/categories.h> |
12 | #include <qpe/categoryselect.h> | 12 | #include <qpe/categoryselect.h> |
13 | 13 | ||
14 | 14 | ||
15 | #include "opimstate.h" | 15 | #include "opimstate.h" |
16 | #include "orecur.h" | 16 | #include "orecur.h" |
17 | #include "opimmaintainer.h" | ||
18 | |||
17 | #include "otodo.h" | 19 | #include "otodo.h" |
18 | 20 | ||
19 | 21 | ||
20 | struct OTodo::OTodoData : public QShared { | 22 | struct OTodo::OTodoData : public QShared { |
21 | OTodoData() : QShared() { | 23 | OTodoData() : QShared() { |
22 | }; | 24 | }; |
23 | 25 | ||
24 | QDate date; | 26 | QDate date; |
@@ -28,16 +30,17 @@ struct OTodo::OTodoData : public QShared { | |||
28 | QString desc; | 30 | QString desc; |
29 | QString sum; | 31 | QString sum; |
30 | QMap<QString, QString> extra; | 32 | QMap<QString, QString> extra; |
31 | ushort prog; | 33 | ushort prog; |
32 | bool hasAlarmDateTime :1; | 34 | bool hasAlarmDateTime :1; |
33 | QDateTime alarmDateTime; | 35 | QDateTime alarmDateTime; |
34 | OPimState state; | 36 | OPimState state; |
35 | ORecur recur; | 37 | ORecur recur; |
38 | OPimMaintainer maintainer; | ||
36 | }; | 39 | }; |
37 | 40 | ||
38 | OTodo::OTodo(const OTodo &event ) | 41 | OTodo::OTodo(const OTodo &event ) |
39 | : OPimRecord( event ), data( event.data ) | 42 | : OPimRecord( event ), data( event.data ) |
40 | { | 43 | { |
41 | data->ref(); | 44 | data->ref(); |
42 | // qWarning("ref up"); | 45 | // qWarning("ref up"); |
43 | } | 46 | } |
@@ -148,16 +151,19 @@ QString OTodo::description()const | |||
148 | return data->desc; | 151 | return data->desc; |
149 | } | 152 | } |
150 | OPimState OTodo::state()const { | 153 | OPimState OTodo::state()const { |
151 | return data->state; | 154 | return data->state; |
152 | } | 155 | } |
153 | ORecur OTodo::recurrence()const { | 156 | ORecur OTodo::recurrence()const { |
154 | return data->recur; | 157 | return data->recur; |
155 | } | 158 | } |
159 | OPimMaintainer OTodo::maintainer()const { | ||
160 | return data->maintainer; | ||
161 | } | ||
156 | void OTodo::setCompleted( bool completed ) | 162 | void OTodo::setCompleted( bool completed ) |
157 | { | 163 | { |
158 | changeOrModify(); | 164 | changeOrModify(); |
159 | data->isCompleted = completed; | 165 | data->isCompleted = completed; |
160 | } | 166 | } |
161 | void OTodo::setHasDueDate( bool hasDate ) | 167 | void OTodo::setHasDueDate( bool hasDate ) |
162 | { | 168 | { |
163 | changeOrModify(); | 169 | changeOrModify(); |
@@ -197,16 +203,20 @@ void OTodo::setAlarmDateTime( const QDateTime& alarm ) | |||
197 | void OTodo::setState( const OPimState& state ) { | 203 | void OTodo::setState( const OPimState& state ) { |
198 | changeOrModify(); | 204 | changeOrModify(); |
199 | data->state = state; | 205 | data->state = state; |
200 | } | 206 | } |
201 | void OTodo::setRecurrence( const ORecur& rec) { | 207 | void OTodo::setRecurrence( const ORecur& rec) { |
202 | changeOrModify(); | 208 | changeOrModify(); |
203 | data->recur = rec; | 209 | data->recur = rec; |
204 | } | 210 | } |
211 | void OTodo::setMaintainer( const OPimMaintainer& pim ) { | ||
212 | changeOrModify(); | ||
213 | data->maintainer = pim; | ||
214 | } | ||
205 | bool OTodo::isOverdue( ) | 215 | bool OTodo::isOverdue( ) |
206 | { | 216 | { |
207 | if( data->hasDate && !data->isCompleted) | 217 | if( data->hasDate && !data->isCompleted) |
208 | return QDate::currentDate() > data->date; | 218 | return QDate::currentDate() > data->date; |
209 | return false; | 219 | return false; |
210 | } | 220 | } |
211 | void OTodo::setProgress(ushort progress ) | 221 | void OTodo::setProgress(ushort progress ) |
212 | { | 222 | { |
@@ -316,16 +326,18 @@ bool OTodo::operator==(const OTodo &toDoEvent )const | |||
316 | if ( data->hasDate != toDoEvent.data->hasDate ) return false; | 326 | if ( data->hasDate != toDoEvent.data->hasDate ) return false; |
317 | if ( data->date != toDoEvent.data->date ) return false; | 327 | if ( data->date != toDoEvent.data->date ) return false; |
318 | if ( data->sum != toDoEvent.data->sum ) return false; | 328 | if ( data->sum != toDoEvent.data->sum ) return false; |
319 | if ( data->desc != toDoEvent.data->desc ) return false; | 329 | if ( data->desc != toDoEvent.data->desc ) return false; |
320 | if ( data->hasAlarmDateTime != toDoEvent.data->hasAlarmDateTime ) | 330 | if ( data->hasAlarmDateTime != toDoEvent.data->hasAlarmDateTime ) |
321 | return false; | 331 | return false; |
322 | if ( data->alarmDateTime != toDoEvent.data->alarmDateTime ) | 332 | if ( data->alarmDateTime != toDoEvent.data->alarmDateTime ) |
323 | return false; | 333 | return false; |
334 | if ( data->maintainer != toDoEvent.data->maintainer ) | ||
335 | return false; | ||
324 | 336 | ||
325 | return OPimRecord::operator==( toDoEvent ); | 337 | return OPimRecord::operator==( toDoEvent ); |
326 | } | 338 | } |
327 | void OTodo::deref() { | 339 | void OTodo::deref() { |
328 | 340 | ||
329 | // qWarning("deref in ToDoEvent"); | 341 | // qWarning("deref in ToDoEvent"); |
330 | if ( data->deref() ) { | 342 | if ( data->deref() ) { |
331 | // qWarning("deleting"); | 343 | // qWarning("deleting"); |
@@ -353,17 +365,17 @@ QMap<int, QString> OTodo::toMap() const { | |||
353 | map.insert( Completed, QString::number( data->isCompleted ) ); | 365 | map.insert( Completed, QString::number( data->isCompleted ) ); |
354 | map.insert( Description, data->desc ); | 366 | map.insert( Description, data->desc ); |
355 | map.insert( Summary, data->sum ); | 367 | map.insert( Summary, data->sum ); |
356 | map.insert( Priority, QString::number( data->priority ) ); | 368 | map.insert( Priority, QString::number( data->priority ) ); |
357 | map.insert( DateDay, QString::number( data->date.day() ) ); | 369 | map.insert( DateDay, QString::number( data->date.day() ) ); |
358 | map.insert( DateMonth, QString::number( data->date.month() ) ); | 370 | map.insert( DateMonth, QString::number( data->date.month() ) ); |
359 | map.insert( DateYear, QString::number( data->date.year() ) ); | 371 | map.insert( DateYear, QString::number( data->date.year() ) ); |
360 | map.insert( Progress, QString::number( data->prog ) ); | 372 | map.insert( Progress, QString::number( data->prog ) ); |
361 | map.insert( CrossReference, crossToString() ); | 373 | // map.insert( CrossReference, crossToString() ); |
362 | map.insert( HasAlarmDateTime, QString::number( data->hasAlarmDateTime ) ); | 374 | map.insert( HasAlarmDateTime, QString::number( data->hasAlarmDateTime ) ); |
363 | map.insert( AlarmDateTime, data->alarmDateTime.toString() ); | 375 | map.insert( AlarmDateTime, data->alarmDateTime.toString() ); |
364 | 376 | ||
365 | return map; | 377 | return map; |
366 | } | 378 | } |
367 | 379 | ||
368 | QMap<QString, QString> OTodo::toExtraMap()const { | 380 | QMap<QString, QString> OTodo::toExtraMap()const { |
369 | return data->extra; | 381 | return data->extra; |
@@ -377,29 +389,35 @@ void OTodo::changeOrModify() { | |||
377 | if ( data->count != 1 ) { | 389 | if ( data->count != 1 ) { |
378 | qWarning("changeOrModify"); | 390 | qWarning("changeOrModify"); |
379 | data->deref(); | 391 | data->deref(); |
380 | OTodoData* d2 = new OTodoData(); | 392 | OTodoData* d2 = new OTodoData(); |
381 | copy(data, d2 ); | 393 | copy(data, d2 ); |
382 | data = d2; | 394 | data = d2; |
383 | } | 395 | } |
384 | } | 396 | } |
397 | // WATCHOUT | ||
398 | /* | ||
399 | * if you add something to the Data struct | ||
400 | * be sure to copy it here | ||
401 | */ | ||
385 | void OTodo::copy( OTodoData* src, OTodoData* dest ) { | 402 | void OTodo::copy( OTodoData* src, OTodoData* dest ) { |
386 | dest->date = src->date; | 403 | dest->date = src->date; |
387 | dest->isCompleted = src->isCompleted; | 404 | dest->isCompleted = src->isCompleted; |
388 | dest->hasDate = src->hasDate; | 405 | dest->hasDate = src->hasDate; |
389 | dest->priority = src->priority; | 406 | dest->priority = src->priority; |
390 | dest->desc = src->desc; | 407 | dest->desc = src->desc; |
391 | dest->sum = src->sum; | 408 | dest->sum = src->sum; |
392 | dest->extra = src->extra; | 409 | dest->extra = src->extra; |
393 | dest->prog = src->prog; | 410 | dest->prog = src->prog; |
394 | dest->hasAlarmDateTime = src->hasAlarmDateTime; | 411 | dest->hasAlarmDateTime = src->hasAlarmDateTime; |
395 | dest->alarmDateTime = src->alarmDateTime; | 412 | dest->alarmDateTime = src->alarmDateTime; |
396 | dest->state = src->state; | 413 | dest->state = src->state; |
397 | dest->recur = src->recur; | 414 | dest->recur = src->recur; |
415 | dest->maintainer = src->maintainer; | ||
398 | } | 416 | } |
399 | QString OTodo::type() const { | 417 | QString OTodo::type() const { |
400 | return QString::fromLatin1("OTodo"); | 418 | return QString::fromLatin1("OTodo"); |
401 | } | 419 | } |
402 | QString OTodo::recordField(int /*id*/ )const { | 420 | QString OTodo::recordField(int /*id*/ )const { |
403 | return QString::null; | 421 | return QString::null; |
404 | } | 422 | } |
405 | 423 | ||
diff --git a/libopie2/opiepim/otodo.h b/libopie2/opiepim/otodo.h index 2cdc587..70b0253 100644 --- a/libopie2/opiepim/otodo.h +++ b/libopie2/opiepim/otodo.h | |||
@@ -13,16 +13,17 @@ | |||
13 | #include <qpe/recordfields.h> | 13 | #include <qpe/recordfields.h> |
14 | #include <qpe/palmtopuidgen.h> | 14 | #include <qpe/palmtopuidgen.h> |
15 | 15 | ||
16 | #include <opie/opimrecord.h> | 16 | #include <opie/opimrecord.h> |
17 | 17 | ||
18 | 18 | ||
19 | class OPimState; | 19 | class OPimState; |
20 | class ORecur; | 20 | class ORecur; |
21 | class OPimMaintainer; | ||
21 | class OTodo : public OPimRecord { | 22 | class OTodo : public OPimRecord { |
22 | public: | 23 | public: |
23 | typedef QValueList<OTodo> ValueList; | 24 | typedef QValueList<OTodo> ValueList; |
24 | enum RecordFields { | 25 | enum RecordFields { |
25 | Uid = Qtopia::UID_ID, | 26 | Uid = Qtopia::UID_ID, |
26 | Category = Qtopia::CATEGORY_ID, | 27 | Category = Qtopia::CATEGORY_ID, |
27 | HasDate, | 28 | HasDate, |
28 | Completed, | 29 | Completed, |
@@ -123,16 +124,21 @@ public: | |||
123 | OPimState state()const; | 124 | OPimState state()const; |
124 | 125 | ||
125 | /** | 126 | /** |
126 | * the recurrance of this | 127 | * the recurrance of this |
127 | */ | 128 | */ |
128 | ORecur recurrence()const; | 129 | ORecur recurrence()const; |
129 | 130 | ||
130 | /** | 131 | /** |
132 | * the Maintainer of this OTodo | ||
133 | */ | ||
134 | OPimMaintainer maintainer()const; | ||
135 | |||
136 | /** | ||
131 | * The description of the todo | 137 | * The description of the todo |
132 | */ | 138 | */ |
133 | QString description()const; | 139 | QString description()const; |
134 | 140 | ||
135 | /** | 141 | /** |
136 | * A small summary of the todo | 142 | * A small summary of the todo |
137 | */ | 143 | */ |
138 | QString summary() const; | 144 | QString summary() const; |
@@ -197,16 +203,22 @@ public: | |||
197 | void setDescription(const QString& ); | 203 | void setDescription(const QString& ); |
198 | void setSummary(const QString& ); | 204 | void setSummary(const QString& ); |
199 | 205 | ||
200 | /** | 206 | /** |
201 | * set the state of a Todo | 207 | * set the state of a Todo |
202 | * @param state State what the todo should take | 208 | * @param state State what the todo should take |
203 | */ | 209 | */ |
204 | void setState( const OPimState& state); | 210 | void setState( const OPimState& state); |
211 | |||
212 | /** | ||
213 | * set the Maintainer Mode | ||
214 | */ | ||
215 | void setMaintainer( const OPimMaintainer& ); | ||
216 | |||
205 | bool isOverdue(); | 217 | bool isOverdue(); |
206 | 218 | ||
207 | 219 | ||
208 | bool match( const QRegExp &r )const; | 220 | bool match( const QRegExp &r )const; |
209 | 221 | ||
210 | bool operator<(const OTodo &toDoEvent )const; | 222 | bool operator<(const OTodo &toDoEvent )const; |
211 | bool operator<=(const OTodo &toDoEvent )const; | 223 | bool operator<=(const OTodo &toDoEvent )const; |
212 | bool operator!=(const OTodo &toDoEvent )const; | 224 | bool operator!=(const OTodo &toDoEvent )const; |