author | zautrix <zautrix> | 2005-03-21 17:39:46 (UTC) |
---|---|---|
committer | zautrix <zautrix> | 2005-03-21 17:39:46 (UTC) |
commit | 3c5d7b484e6ab263ab4091f22815770ea8da6c9c (patch) (unidiff) | |
tree | 97f86965d7ae565fc054918978756c3953476e82 /libkcal | |
parent | 070055b60f76ffd6907e44a4ffc2d752578f3211 (diff) | |
download | kdepimpi-3c5d7b484e6ab263ab4091f22815770ea8da6c9c.zip kdepimpi-3c5d7b484e6ab263ab4091f22815770ea8da6c9c.tar.gz kdepimpi-3c5d7b484e6ab263ab4091f22815770ea8da6c9c.tar.bz2 |
fix
-rw-r--r-- | libkcal/incidence.cpp | 32 | ||||
-rw-r--r-- | libkcal/incidence.h | 5 |
2 files changed, 36 insertions, 1 deletions
diff --git a/libkcal/incidence.cpp b/libkcal/incidence.cpp index 708ee6b..9a36939 100644 --- a/libkcal/incidence.cpp +++ b/libkcal/incidence.cpp | |||
@@ -35,16 +35,20 @@ Incidence::Incidence() : | |||
35 | { | 35 | { |
36 | mRecurrence = new Recurrence(this); | 36 | mRecurrence = new Recurrence(this); |
37 | mCancelled = false; | 37 | mCancelled = false; |
38 | recreate(); | 38 | recreate(); |
39 | mHasStartDate = true; | 39 | mHasStartDate = true; |
40 | mAlarms.setAutoDelete(true); | 40 | mAlarms.setAutoDelete(true); |
41 | mAttachments.setAutoDelete(true); | 41 | mAttachments.setAutoDelete(true); |
42 | mHasRecurrenceID = false; | 42 | mHasRecurrenceID = false; |
43 | mHoliday = false; | ||
44 | mBirthday = false; | ||
45 | mAnniversary = false; | ||
46 | |||
43 | } | 47 | } |
44 | 48 | ||
45 | Incidence::Incidence( const Incidence &i ) : IncidenceBase( i ) | 49 | Incidence::Incidence( const Incidence &i ) : IncidenceBase( i ) |
46 | { | 50 | { |
47 | // TODO: reenable attributes currently commented out. | 51 | // TODO: reenable attributes currently commented out. |
48 | mRevision = i.mRevision; | 52 | mRevision = i.mRevision; |
49 | mCreated = i.mCreated; | 53 | mCreated = i.mCreated; |
50 | mDescription = i.mDescription; | 54 | mDescription = i.mDescription; |
@@ -70,30 +74,49 @@ Incidence::Incidence( const Incidence &i ) : IncidenceBase( i ) | |||
70 | mAlarms.append( b ); | 74 | mAlarms.append( b ); |
71 | 75 | ||
72 | ++it; | 76 | ++it; |
73 | } | 77 | } |
74 | mAlarms.setAutoDelete(true); | 78 | mAlarms.setAutoDelete(true); |
75 | mHasRecurrenceID = i.mHasRecurrenceID; | 79 | mHasRecurrenceID = i.mHasRecurrenceID; |
76 | mRecurrenceID = i.mRecurrenceID; | 80 | mRecurrenceID = i.mRecurrenceID; |
77 | mRecurrence = new Recurrence( *(i.mRecurrence), this ); | 81 | mRecurrence = new Recurrence( *(i.mRecurrence), this ); |
82 | mHoliday = i.mHoliday ; | ||
83 | mBirthday = i.mBirthday; | ||
84 | mAnniversary = i.mAnniversary; | ||
78 | } | 85 | } |
79 | 86 | ||
80 | Incidence::~Incidence() | 87 | Incidence::~Incidence() |
81 | { | 88 | { |
82 | 89 | ||
83 | Incidence *ev; | 90 | Incidence *ev; |
84 | QPtrList<Incidence> Relations = relations(); | 91 | QPtrList<Incidence> Relations = relations(); |
85 | for (ev=Relations.first();ev;ev=Relations.next()) { | 92 | for (ev=Relations.first();ev;ev=Relations.next()) { |
86 | if (ev->relatedTo() == this) ev->setRelatedTo(0); | 93 | if (ev->relatedTo() == this) ev->setRelatedTo(0); |
87 | } | 94 | } |
88 | if (relatedTo()) relatedTo()->removeRelation(this); | 95 | if (relatedTo()) relatedTo()->removeRelation(this); |
89 | delete mRecurrence; | 96 | delete mRecurrence; |
90 | 97 | ||
91 | } | 98 | } |
99 | |||
100 | bool Incidence::isHoliday() const | ||
101 | { | ||
102 | return mHoliday; | ||
103 | } | ||
104 | bool Incidence::isBirthday() const | ||
105 | { | ||
106 | |||
107 | return mBirthday ; | ||
108 | } | ||
109 | bool Incidence::isAnniversary() const | ||
110 | { | ||
111 | return mAnniversary ; | ||
112 | |||
113 | } | ||
114 | |||
92 | bool Incidence::hasRecurrenceID() const | 115 | bool Incidence::hasRecurrenceID() const |
93 | { | 116 | { |
94 | return mHasRecurrenceID; | 117 | return mHasRecurrenceID; |
95 | } | 118 | } |
96 | 119 | ||
97 | void Incidence::setHasRecurrenceID( bool b ) | 120 | void Incidence::setHasRecurrenceID( bool b ) |
98 | { | 121 | { |
99 | mHasRecurrenceID = b; | 122 | mHasRecurrenceID = b; |
@@ -297,21 +320,28 @@ void Incidence::setSummary(const QString &summary) | |||
297 | mSummary = summary; | 320 | mSummary = summary; |
298 | updated(); | 321 | updated(); |
299 | } | 322 | } |
300 | 323 | ||
301 | QString Incidence::summary() const | 324 | QString Incidence::summary() const |
302 | { | 325 | { |
303 | return mSummary; | 326 | return mSummary; |
304 | } | 327 | } |
328 | void Incidence::checkCategories() | ||
329 | { | ||
330 | mHoliday = mCategories.contains("Holiday") || mCategories.contains(i18n("Holiday")); | ||
331 | mBirthday = mCategories.contains("Birthday") || mCategories.contains(i18n("Birthday")); | ||
332 | mAnniversary = mCategories.contains("Anniversary") || mCategories.contains(i18n("Anniversary")); | ||
333 | } | ||
305 | 334 | ||
306 | void Incidence::setCategories(const QStringList &categories) | 335 | void Incidence::setCategories(const QStringList &categories) |
307 | { | 336 | { |
308 | if (mReadOnly) return; | 337 | if (mReadOnly) return; |
309 | mCategories = categories; | 338 | mCategories = categories; |
339 | checkCategories(); | ||
310 | updated(); | 340 | updated(); |
311 | } | 341 | } |
312 | 342 | ||
313 | // TODO: remove setCategories(QString) function | 343 | // TODO: remove setCategories(QString) function |
314 | void Incidence::setCategories(const QString &catStr) | 344 | void Incidence::setCategories(const QString &catStr) |
315 | { | 345 | { |
316 | if (mReadOnly) return; | 346 | if (mReadOnly) return; |
317 | mCategories.clear(); | 347 | mCategories.clear(); |
@@ -319,17 +349,17 @@ void Incidence::setCategories(const QString &catStr) | |||
319 | if (catStr.isEmpty()) return; | 349 | if (catStr.isEmpty()) return; |
320 | 350 | ||
321 | mCategories = QStringList::split(",",catStr); | 351 | mCategories = QStringList::split(",",catStr); |
322 | 352 | ||
323 | QStringList::Iterator it; | 353 | QStringList::Iterator it; |
324 | for(it = mCategories.begin();it != mCategories.end(); ++it) { | 354 | for(it = mCategories.begin();it != mCategories.end(); ++it) { |
325 | *it = (*it).stripWhiteSpace(); | 355 | *it = (*it).stripWhiteSpace(); |
326 | } | 356 | } |
327 | 357 | checkCategories(); | |
328 | updated(); | 358 | updated(); |
329 | } | 359 | } |
330 | 360 | ||
331 | QStringList Incidence::categories() const | 361 | QStringList Incidence::categories() const |
332 | { | 362 | { |
333 | return mCategories; | 363 | return mCategories; |
334 | } | 364 | } |
335 | 365 | ||
diff --git a/libkcal/incidence.h b/libkcal/incidence.h index 0ae9656..f8da342 100644 --- a/libkcal/incidence.h +++ b/libkcal/incidence.h | |||
@@ -265,24 +265,29 @@ class Incidence : public IncidenceBase | |||
265 | void setCancelled( bool b ); | 265 | void setCancelled( bool b ); |
266 | 266 | ||
267 | bool hasRecurrenceID() const; | 267 | bool hasRecurrenceID() const; |
268 | void setHasRecurrenceID( bool b ); | 268 | void setHasRecurrenceID( bool b ); |
269 | 269 | ||
270 | void setRecurrenceID(QDateTime); | 270 | void setRecurrenceID(QDateTime); |
271 | QDateTime recurrenceID () const; | 271 | QDateTime recurrenceID () const; |
272 | QDateTime dtStart() const; | 272 | QDateTime dtStart() const; |
273 | bool isHoliday() const; | ||
274 | bool isBirthday() const; | ||
275 | bool isAnniversary() const; | ||
273 | 276 | ||
274 | 277 | ||
275 | protected: | 278 | protected: |
276 | QPtrList<Alarm> mAlarms; | 279 | QPtrList<Alarm> mAlarms; |
277 | QPtrList<Incidence> mRelations; | 280 | QPtrList<Incidence> mRelations; |
278 | QDateTime mRecurrenceID; | 281 | QDateTime mRecurrenceID; |
279 | bool mHasRecurrenceID; | 282 | bool mHasRecurrenceID; |
280 | private: | 283 | private: |
284 | void checkCategories(); | ||
285 | bool mHoliday, mBirthday, mAnniversary; | ||
281 | int mRevision; | 286 | int mRevision; |
282 | bool mCancelled; | 287 | bool mCancelled; |
283 | 288 | ||
284 | // base components of jounal, event and todo | 289 | // base components of jounal, event and todo |
285 | QDateTime mCreated; | 290 | QDateTime mCreated; |
286 | QString mDescription; | 291 | QString mDescription; |
287 | QString mSummary; | 292 | QString mSummary; |
288 | QStringList mCategories; | 293 | QStringList mCategories; |