summaryrefslogtreecommitdiffabout
path: root/libkcal
authorzautrix <zautrix>2004-09-20 15:25:04 (UTC)
committer zautrix <zautrix>2004-09-20 15:25:04 (UTC)
commit6b6a28919908134ccbb3badcb24c2dcae0d426a5 (patch) (unidiff)
tree72b3f69fa1f40bd4cfbd945d9f41699229604ae6 /libkcal
parentf222bd1339ac8323e3c99af84a6f83c21cacb8f8 (diff)
downloadkdepimpi-6b6a28919908134ccbb3badcb24c2dcae0d426a5.zip
kdepimpi-6b6a28919908134ccbb3badcb24c2dcae0d426a5.tar.gz
kdepimpi-6b6a28919908134ccbb3badcb24c2dcae0d426a5.tar.bz2
Several bugfixes
Diffstat (limited to 'libkcal') (more/less context) (ignore whitespace changes)
-rw-r--r--libkcal/incidence.cpp8
-rw-r--r--libkcal/incidencebase.cpp4
2 files changed, 8 insertions, 4 deletions
diff --git a/libkcal/incidence.cpp b/libkcal/incidence.cpp
index 56c9801..55ac6d4 100644
--- a/libkcal/incidence.cpp
+++ b/libkcal/incidence.cpp
@@ -401,199 +401,203 @@ void Incidence::deleteAttachments(const QString& mime)
401 401
402QPtrList<Attachment> Incidence::attachments() const 402QPtrList<Attachment> Incidence::attachments() const
403{ 403{
404 return mAttachments; 404 return mAttachments;
405} 405}
406 406
407QPtrList<Attachment> Incidence::attachments(const QString& mime) const 407QPtrList<Attachment> Incidence::attachments(const QString& mime) const
408{ 408{
409 QPtrList<Attachment> attachments; 409 QPtrList<Attachment> attachments;
410 QPtrListIterator<Attachment> it( mAttachments ); 410 QPtrListIterator<Attachment> it( mAttachments );
411 Attachment *at; 411 Attachment *at;
412 while ( (at = it.current()) ) { 412 while ( (at = it.current()) ) {
413 if (at->mimeType() == mime) 413 if (at->mimeType() == mime)
414 attachments.append(at); 414 attachments.append(at);
415 ++it; 415 ++it;
416 } 416 }
417 417
418 return attachments; 418 return attachments;
419} 419}
420 420
421void Incidence::setResources(const QStringList &resources) 421void Incidence::setResources(const QStringList &resources)
422{ 422{
423 if (mReadOnly) return; 423 if (mReadOnly) return;
424 mResources = resources; 424 mResources = resources;
425 updated(); 425 updated();
426} 426}
427 427
428QStringList Incidence::resources() const 428QStringList Incidence::resources() const
429{ 429{
430 return mResources; 430 return mResources;
431} 431}
432 432
433 433
434void Incidence::setPriority(int priority) 434void Incidence::setPriority(int priority)
435{ 435{
436 if (mReadOnly) return; 436 if (mReadOnly) return;
437 mPriority = priority; 437 mPriority = priority;
438 updated(); 438 updated();
439} 439}
440 440
441int Incidence::priority() const 441int Incidence::priority() const
442{ 442{
443 return mPriority; 443 return mPriority;
444} 444}
445 445
446void Incidence::setSecrecy(int sec) 446void Incidence::setSecrecy(int sec)
447{ 447{
448 if (mReadOnly) return; 448 if (mReadOnly) return;
449 mSecrecy = sec; 449 mSecrecy = sec;
450 updated(); 450 updated();
451} 451}
452 452
453int Incidence::secrecy() const 453int Incidence::secrecy() const
454{ 454{
455 return mSecrecy; 455 return mSecrecy;
456} 456}
457 457
458QString Incidence::secrecyStr() const 458QString Incidence::secrecyStr() const
459{ 459{
460 return secrecyName(mSecrecy); 460 return secrecyName(mSecrecy);
461} 461}
462 462
463QString Incidence::secrecyName(int secrecy) 463QString Incidence::secrecyName(int secrecy)
464{ 464{
465 switch (secrecy) { 465 switch (secrecy) {
466 case SecrecyPublic: 466 case SecrecyPublic:
467 return i18n("Public"); 467 return i18n("Public");
468 break; 468 break;
469 case SecrecyPrivate: 469 case SecrecyPrivate:
470 return i18n("Private"); 470 return i18n("Private");
471 break; 471 break;
472 case SecrecyConfidential: 472 case SecrecyConfidential:
473 return i18n("Confidential"); 473 return i18n("Confidential");
474 break; 474 break;
475 default: 475 default:
476 return i18n("Undefined"); 476 return i18n("Undefined");
477 break; 477 break;
478 } 478 }
479} 479}
480 480
481QStringList Incidence::secrecyList() 481QStringList Incidence::secrecyList()
482{ 482{
483 QStringList list; 483 QStringList list;
484 list << secrecyName(SecrecyPublic); 484 list << secrecyName(SecrecyPublic);
485 list << secrecyName(SecrecyPrivate); 485 list << secrecyName(SecrecyPrivate);
486 list << secrecyName(SecrecyConfidential); 486 list << secrecyName(SecrecyConfidential);
487 487
488 return list; 488 return list;
489} 489}
490 490
491 491
492QPtrList<Alarm> Incidence::alarms() const 492QPtrList<Alarm> Incidence::alarms() const
493{ 493{
494 return mAlarms; 494 return mAlarms;
495} 495}
496 496
497Alarm* Incidence::newAlarm() 497Alarm* Incidence::newAlarm()
498{ 498{
499 Alarm* alarm = new Alarm(this); 499 Alarm* alarm = new Alarm(this);
500 mAlarms.append(alarm); 500 mAlarms.append(alarm);
501// updated(); 501// updated();
502 return alarm; 502 return alarm;
503} 503}
504 504
505void Incidence::addAlarm(Alarm *alarm) 505void Incidence::addAlarm(Alarm *alarm)
506{ 506{
507 mAlarms.append(alarm); 507 mAlarms.append(alarm);
508 updated(); 508 updated();
509} 509}
510 510
511void Incidence::removeAlarm(Alarm *alarm) 511void Incidence::removeAlarm(Alarm *alarm)
512{ 512{
513 mAlarms.removeRef(alarm); 513 mAlarms.removeRef(alarm);
514 updated(); 514 updated();
515} 515}
516 516
517void Incidence::clearAlarms() 517void Incidence::clearAlarms()
518{ 518{
519 mAlarms.clear(); 519 mAlarms.clear();
520 updated(); 520 updated();
521} 521}
522 522
523bool Incidence::isAlarmEnabled() const 523bool Incidence::isAlarmEnabled() const
524{ 524{
525 Alarm* alarm; 525 Alarm* alarm;
526 for (QPtrListIterator<Alarm> it(mAlarms); (alarm = it.current()) != 0; ++it) { 526 for (QPtrListIterator<Alarm> it(mAlarms); (alarm = it.current()) != 0; ++it) {
527 if (alarm->enabled()) 527 if (alarm->enabled())
528 return true; 528 return true;
529 } 529 }
530 return false; 530 return false;
531} 531}
532 532
533Recurrence *Incidence::recurrence() const 533Recurrence *Incidence::recurrence() const
534{ 534{
535 return mRecurrence; 535 return mRecurrence;
536} 536}
537void Incidence::setRecurrence( Recurrence * r) 537void Incidence::setRecurrence( Recurrence * r)
538{ 538{
539 delete mRecurrence; 539 delete mRecurrence;
540 mRecurrence = r; 540 mRecurrence = r;
541} 541}
542 542
543void Incidence::setLocation(const QString &location) 543void Incidence::setLocation(const QString &location)
544{ 544{
545 if (mReadOnly) return; 545 if (mReadOnly) return;
546 mLocation = location; 546 mLocation = location;
547 updated(); 547 updated();
548} 548}
549 549
550QString Incidence::location() const 550QString Incidence::location() const
551{ 551{
552 return mLocation; 552 return mLocation;
553} 553}
554 554
555ushort Incidence::doesRecur() const 555ushort Incidence::doesRecur() const
556{ 556{
557 if ( mRecurrence ) return mRecurrence->doesRecur(); 557 if ( mRecurrence ) return mRecurrence->doesRecur();
558 else return Recurrence::rNone; 558 else return Recurrence::rNone;
559} 559}
560 560
561QDateTime Incidence::getNextOccurence( const QDateTime& dt, bool* ok ) const 561QDateTime Incidence::getNextOccurence( const QDateTime& dt, bool* ok ) const
562{ 562{
563 QDateTime incidenceStart = dt; 563 QDateTime incidenceStart = dt;
564 *ok = false; 564 *ok = false;
565 if ( doesRecur() ) { 565 if ( doesRecur() ) {
566 bool last; 566 bool last;
567 recurrence()->getPreviousDateTime( incidenceStart , &last ); 567 recurrence()->getPreviousDateTime( incidenceStart , &last );
568 int count = 0; 568 int count = 0;
569 if ( !last ) { 569 if ( !last ) {
570 while ( !last ) { 570 while ( !last ) {
571 ++count; 571 ++count;
572 incidenceStart = recurrence()->getNextDateTime( incidenceStart, &last ); 572 incidenceStart = recurrence()->getNextDateTime( incidenceStart, &last );
573 if ( recursOn( incidenceStart.date() ) ) { 573 if ( recursOn( incidenceStart.date() ) ) {
574 last = true; // exit while llop 574 last = true; // exit while llop
575 } else { 575 } else {
576 if ( last ) { // no alarm on last recurrence 576 if ( last ) { // no alarm on last recurrence
577 return QDateTime (); 577 return QDateTime ();
578 } 578 }
579 int year = incidenceStart.date().year(); 579 int year = incidenceStart.date().year();
580 // workaround for bug in recurrence 580 // workaround for bug in recurrence
581 if ( count == 100 || year < 1980 || year > 5000 ) { 581 if ( count == 100 || year < 1980 || year > 5000 ) {
582 return QDateTime (); 582 return QDateTime ();
583 } 583 }
584 incidenceStart = incidenceStart.addSecs( 1 ); 584 incidenceStart = incidenceStart.addSecs( 1 );
585 } 585 }
586 } 586 }
587 } else { 587 } else {
588 return QDateTime (); 588 return QDateTime ();
589 } 589 }
590 } else { 590 } else {
591 if ( hasStartDate () ) { 591 if ( hasStartDate () ) {
592 incidenceStart = dtStart(); 592 incidenceStart = dtStart();
593 593 }
594 } 594 if ( type() =="Todo" ) {
595 if ( ((Todo*)this)->hasDueDate() )
596 incidenceStart = ((Todo*)this)->dtDue();
597
598 }
595 } 599 }
596 if ( incidenceStart > dt ) 600 if ( incidenceStart > dt )
597 *ok = true; 601 *ok = true;
598 return incidenceStart; 602 return incidenceStart;
599} 603}
diff --git a/libkcal/incidencebase.cpp b/libkcal/incidencebase.cpp
index 64a343c..b36dc1a 100644
--- a/libkcal/incidencebase.cpp
+++ b/libkcal/incidencebase.cpp
@@ -82,326 +82,326 @@ bool KCal::operator==( const IncidenceBase& i1, const IncidenceBase& i2 )
82 // do not compare mSyncStatus and mExternalId 82 // do not compare mSyncStatus and mExternalId
83 if( i1.attendees().count() != i2.attendees().count() ) { 83 if( i1.attendees().count() != i2.attendees().count() ) {
84 return false; // no need to check further 84 return false; // no need to check further
85 } 85 }
86 if ( i1.attendees().count() > 0 ) { 86 if ( i1.attendees().count() > 0 ) {
87 Attendee * a1 = i1.attendees().first(), *a2 =i2.attendees().first() ; 87 Attendee * a1 = i1.attendees().first(), *a2 =i2.attendees().first() ;
88 while ( a1 ) { 88 while ( a1 ) {
89 if ( !( (*a1) == (*a2)) ) 89 if ( !( (*a1) == (*a2)) )
90 { 90 {
91 //qDebug("Attendee not equal "); 91 //qDebug("Attendee not equal ");
92 return false; 92 return false;
93 } 93 }
94 a1 = i1.attendees().next(); 94 a1 = i1.attendees().next();
95 a2 = i2.attendees().next(); 95 a2 = i2.attendees().next();
96 } 96 }
97 } 97 }
98 //if ( i1.dtStart() != i2.dtStart() ) 98 //if ( i1.dtStart() != i2.dtStart() )
99 // return false; 99 // return false;
100#if 0 100#if 0
101 qDebug("1 %d ",i1.doesFloat() == i2.doesFloat() ); 101 qDebug("1 %d ",i1.doesFloat() == i2.doesFloat() );
102 qDebug("1 %d ",i1.duration() == i2.duration() ); 102 qDebug("1 %d ",i1.duration() == i2.duration() );
103 qDebug("3 %d ",i1.hasDuration() == i2.hasDuration() ); 103 qDebug("3 %d ",i1.hasDuration() == i2.hasDuration() );
104 qDebug("1 %d ",i1.pilotId() == i2.pilotId() ); 104 qDebug("1 %d ",i1.pilotId() == i2.pilotId() );
105 qDebug("1 %d %d %d",i1.syncStatus() == i2.syncStatus() , i1.syncStatus(),i2.syncStatus() ); 105 qDebug("1 %d %d %d",i1.syncStatus() == i2.syncStatus() , i1.syncStatus(),i2.syncStatus() );
106 qDebug("6 %d ",i1.organizer() == i2.organizer() ); 106 qDebug("6 %d ",i1.organizer() == i2.organizer() );
107 107
108#endif 108#endif
109 return ( i1.organizer() == i2.organizer() && 109 return ( i1.organizer() == i2.organizer() &&
110 // i1.uid() == i2.uid() && 110 // i1.uid() == i2.uid() &&
111 // Don't compare lastModified, otherwise the operator is not 111 // Don't compare lastModified, otherwise the operator is not
112 // of much use. We are not comparing for identity, after all. 112 // of much use. We are not comparing for identity, after all.
113 i1.doesFloat() == i2.doesFloat() && 113 i1.doesFloat() == i2.doesFloat() &&
114 i1.duration() == i2.duration() && 114 i1.duration() == i2.duration() &&
115 i1.hasDuration() == i2.hasDuration() && 115 i1.hasDuration() == i2.hasDuration() &&
116 i1.pilotId() == i2.pilotId() );// && i1.syncStatus() == i2.syncStatus() ); 116 i1.pilotId() == i2.pilotId() );// && i1.syncStatus() == i2.syncStatus() );
117 // no need to compare mObserver 117 // no need to compare mObserver
118} 118}
119 119
120 120
121QDateTime IncidenceBase::getEvenTime( QDateTime dt ) 121QDateTime IncidenceBase::getEvenTime( QDateTime dt )
122{ 122{
123 QTime t = dt.time(); 123 QTime t = dt.time();
124 dt.setTime( QTime (t.hour (), t.minute (), t.second () ) ); 124 dt.setTime( QTime (t.hour (), t.minute (), t.second () ) );
125 return dt; 125 return dt;
126} 126}
127 127
128 128
129void IncidenceBase::setUid(const QString &uid) 129void IncidenceBase::setUid(const QString &uid)
130{ 130{
131 mUid = uid; 131 mUid = uid;
132 updated(); 132 updated();
133} 133}
134 134
135QString IncidenceBase::uid() const 135QString IncidenceBase::uid() const
136{ 136{
137 return mUid; 137 return mUid;
138} 138}
139 139
140void IncidenceBase::setLastModified(const QDateTime &lm) 140void IncidenceBase::setLastModified(const QDateTime &lm)
141{ 141{
142 // DON'T! updated() because we call this from 142 // DON'T! updated() because we call this from
143 // Calendar::updateEvent(). 143 // Calendar::updateEvent().
144 mLastModified = getEvenTime(lm); 144 mLastModified = getEvenTime(lm);
145 //qDebug("IncidenceBase::setLastModified %s ",lm.toString().latin1()); 145 //qDebug("IncidenceBase::setLastModified %s ",lm.toString().latin1());
146} 146}
147 147
148QDateTime IncidenceBase::lastModified() const 148QDateTime IncidenceBase::lastModified() const
149{ 149{
150 return mLastModified; 150 return mLastModified;
151} 151}
152 152
153void IncidenceBase::setOrganizer(const QString &o) 153void IncidenceBase::setOrganizer(const QString &o)
154{ 154{
155 // we don't check for readonly here, because it is 155 // we don't check for readonly here, because it is
156 // possible that by setting the organizer we are changing 156 // possible that by setting the organizer we are changing
157 // the event's readonly status... 157 // the event's readonly status...
158 mOrganizer = o; 158 mOrganizer = o;
159 if (mOrganizer.left(7).upper() == "MAILTO:") 159 if (mOrganizer.left(7).upper() == "MAILTO:")
160 mOrganizer = mOrganizer.remove(0,7); 160 mOrganizer = mOrganizer.remove(0,7);
161 161
162 updated(); 162 updated();
163} 163}
164 164
165QString IncidenceBase::organizer() const 165QString IncidenceBase::organizer() const
166{ 166{
167 return mOrganizer; 167 return mOrganizer;
168} 168}
169 169
170void IncidenceBase::setReadOnly( bool readOnly ) 170void IncidenceBase::setReadOnly( bool readOnly )
171{ 171{
172 mReadOnly = readOnly; 172 mReadOnly = readOnly;
173} 173}
174 174
175void IncidenceBase::setDtStart(const QDateTime &dtStart) 175void IncidenceBase::setDtStart(const QDateTime &dtStart)
176{ 176{
177// if (mReadOnly) return; 177// if (mReadOnly) return;
178 mDtStart = getEvenTime(dtStart); 178 mDtStart = getEvenTime(dtStart);
179 updated(); 179 updated();
180} 180}
181 181
182QDateTime IncidenceBase::dtStart() const 182QDateTime IncidenceBase::dtStart() const
183{ 183{
184 return mDtStart; 184 return mDtStart;
185} 185}
186 186
187QString IncidenceBase::dtStartTimeStr() const 187QString IncidenceBase::dtStartTimeStr() const
188{ 188{
189 return KGlobal::locale()->formatTime(dtStart().time()); 189 return KGlobal::locale()->formatTime(dtStart().time());
190} 190}
191 191
192QString IncidenceBase::dtStartDateStr(bool shortfmt) const 192QString IncidenceBase::dtStartDateStr(bool shortfmt) const
193{ 193{
194 return KGlobal::locale()->formatDate(dtStart().date(),shortfmt); 194 return KGlobal::locale()->formatDate(dtStart().date(),shortfmt);
195} 195}
196 196
197QString IncidenceBase::dtStartStr(bool shortfmt) const 197QString IncidenceBase::dtStartStr(bool shortfmt) const
198{ 198{
199 return KGlobal::locale()->formatDateTime(dtStart(), shortfmt); 199 return KGlobal::locale()->formatDateTime(dtStart(), shortfmt);
200} 200}
201 201
202 202
203bool IncidenceBase::doesFloat() const 203bool IncidenceBase::doesFloat() const
204{ 204{
205 return mFloats; 205 return mFloats;
206} 206}
207 207
208void IncidenceBase::setFloats(bool f) 208void IncidenceBase::setFloats(bool f)
209{ 209{
210 if (mReadOnly) return; 210 if (mReadOnly) return;
211 mFloats = f; 211 mFloats = f;
212 updated(); 212 updated();
213} 213}
214 214
215 215
216void IncidenceBase::addAttendee(Attendee *a, bool doupdate) 216void IncidenceBase::addAttendee(Attendee *a, bool doupdate)
217{ 217{
218 if (mReadOnly) return; 218 if (mReadOnly) return;
219 if (a->name().left(7).upper() == "MAILTO:") 219 if (a->name().left(7).upper() == "MAILTO:")
220 a->setName(a->name().remove(0,7)); 220 a->setName(a->name().remove(0,7));
221 221
222 mAttendees.append(a); 222 mAttendees.append(a);
223 if (doupdate) updated(); 223 if (doupdate) updated();
224} 224}
225 225
226#if 0 226#if 0
227void IncidenceBase::removeAttendee(Attendee *a) 227void IncidenceBase::removeAttendee(Attendee *a)
228{ 228{
229 if (mReadOnly) return; 229 if (mReadOnly) return;
230 mAttendees.removeRef(a); 230 mAttendees.removeRef(a);
231 updated(); 231 updated();
232} 232}
233 233
234void IncidenceBase::removeAttendee(const char *n) 234void IncidenceBase::removeAttendee(const char *n)
235{ 235{
236 Attendee *a; 236 Attendee *a;
237 237
238 if (mReadOnly) return; 238 if (mReadOnly) return;
239 for (a = mAttendees.first(); a; a = mAttendees.next()) 239 for (a = mAttendees.first(); a; a = mAttendees.next())
240 if (a->getName() == n) { 240 if (a->getName() == n) {
241 mAttendees.remove(); 241 mAttendees.remove();
242 break; 242 break;
243 } 243 }
244} 244}
245#endif 245#endif
246 246
247void IncidenceBase::clearAttendees() 247void IncidenceBase::clearAttendees()
248{ 248{
249 if (mReadOnly) return; 249 if (mReadOnly) return;
250 mAttendees.clear(); 250 mAttendees.clear();
251} 251}
252 252
253#if 0 253#if 0
254Attendee *IncidenceBase::getAttendee(const char *n) const 254Attendee *IncidenceBase::getAttendee(const char *n) const
255{ 255{
256 QPtrListIterator<Attendee> qli(mAttendees); 256 QPtrListIterator<Attendee> qli(mAttendees);
257 257
258 qli.toFirst(); 258 qli.toFirst();
259 while (qli) { 259 while (qli) {
260 if (qli.current()->getName() == n) 260 if (qli.current()->getName() == n)
261 return qli.current(); 261 return qli.current();
262 ++qli; 262 ++qli;
263 } 263 }
264 return 0L; 264 return 0L;
265} 265}
266#endif 266#endif
267 267
268Attendee *IncidenceBase::attendeeByMail(const QString &email) 268Attendee *IncidenceBase::attendeeByMail(const QString &email)
269{ 269{
270 QPtrListIterator<Attendee> qli(mAttendees); 270 QPtrListIterator<Attendee> qli(mAttendees);
271 271
272 qli.toFirst(); 272 qli.toFirst();
273 while (qli) { 273 while (qli) {
274 if (qli.current()->email() == email) 274 if (qli.current()->email().lower() == email.lower())
275 return qli.current(); 275 return qli.current();
276 ++qli; 276 ++qli;
277 } 277 }
278 return 0L; 278 return 0L;
279} 279}
280 280
281Attendee *IncidenceBase::attendeeByMails(const QStringList &emails, const QString& email) 281Attendee *IncidenceBase::attendeeByMails(const QStringList &emails, const QString& email)
282{ 282{
283 QPtrListIterator<Attendee> qli(mAttendees); 283 QPtrListIterator<Attendee> qli(mAttendees);
284 284
285 QStringList mails = emails; 285 QStringList mails = emails;
286 if (!email.isEmpty()) { 286 if (!email.isEmpty()) {
287 mails.append(email); 287 mails.append(email);
288 } 288 }
289 qli.toFirst(); 289 qli.toFirst();
290 while (qli) { 290 while (qli) {
291 for ( QStringList::Iterator it = mails.begin(); it != mails.end(); ++it ) { 291 for ( QStringList::Iterator it = mails.begin(); it != mails.end(); ++it ) {
292 if (qli.current()->email() == *it) 292 if (qli.current()->email().lower() == (*it).lower())
293 return qli.current(); 293 return qli.current();
294 } 294 }
295 295
296 ++qli; 296 ++qli;
297 } 297 }
298 return 0L; 298 return 0L;
299} 299}
300 300
301void IncidenceBase::setDuration(int seconds) 301void IncidenceBase::setDuration(int seconds)
302{ 302{
303 mDuration = seconds; 303 mDuration = seconds;
304 setHasDuration(true); 304 setHasDuration(true);
305} 305}
306 306
307int IncidenceBase::duration() const 307int IncidenceBase::duration() const
308{ 308{
309 return mDuration; 309 return mDuration;
310} 310}
311 311
312void IncidenceBase::setHasDuration(bool b) 312void IncidenceBase::setHasDuration(bool b)
313{ 313{
314 mHasDuration = b; 314 mHasDuration = b;
315} 315}
316 316
317bool IncidenceBase::hasDuration() const 317bool IncidenceBase::hasDuration() const
318{ 318{
319 return mHasDuration; 319 return mHasDuration;
320} 320}
321 321
322void IncidenceBase::setSyncStatus(int stat) 322void IncidenceBase::setSyncStatus(int stat)
323{ 323{
324 if (mReadOnly) return; 324 if (mReadOnly) return;
325 mSyncStatus = stat; 325 mSyncStatus = stat;
326} 326}
327 327
328int IncidenceBase::syncStatus() const 328int IncidenceBase::syncStatus() const
329{ 329{
330 return mSyncStatus; 330 return mSyncStatus;
331} 331}
332 332
333void IncidenceBase::setPilotId( int id ) 333void IncidenceBase::setPilotId( int id )
334{ 334{
335 if (mReadOnly) return; 335 if (mReadOnly) return;
336 mPilotId = id; 336 mPilotId = id;
337} 337}
338 338
339int IncidenceBase::pilotId() const 339int IncidenceBase::pilotId() const
340{ 340{
341 return mPilotId; 341 return mPilotId;
342} 342}
343 343
344int IncidenceBase::tempSyncStat() const 344int IncidenceBase::tempSyncStat() const
345{ 345{
346 return mTempSyncStat; 346 return mTempSyncStat;
347} 347}
348void IncidenceBase::setTempSyncStat( int id ) 348void IncidenceBase::setTempSyncStat( int id )
349{ 349{
350 if (mReadOnly) return; 350 if (mReadOnly) return;
351 mTempSyncStat = id; 351 mTempSyncStat = id;
352} 352}
353 353
354void IncidenceBase::removeID(const QString &prof) 354void IncidenceBase::removeID(const QString &prof)
355{ 355{
356 mExternalId = KIdManager::removeId ( mExternalId, prof); 356 mExternalId = KIdManager::removeId ( mExternalId, prof);
357 357
358} 358}
359void IncidenceBase::setID( const QString & prof , const QString & id ) 359void IncidenceBase::setID( const QString & prof , const QString & id )
360{ 360{
361 mExternalId = KIdManager::setId ( mExternalId, prof, id ); 361 mExternalId = KIdManager::setId ( mExternalId, prof, id );
362} 362}
363QString IncidenceBase::getID( const QString & prof) 363QString IncidenceBase::getID( const QString & prof)
364{ 364{
365 return KIdManager::getId ( mExternalId, prof ); 365 return KIdManager::getId ( mExternalId, prof );
366} 366}
367 367
368// example :Sharp_DTM;22;23566:TP;-1;8654:TPP;18;0: 368// example :Sharp_DTM;22;23566:TP;-1;8654:TPP;18;0:
369// format name;III;JJJ: III >= 0, may be -1. JJJ always >= 0 369// format name;III;JJJ: III >= 0, may be -1. JJJ always >= 0
370void IncidenceBase::setCsum( const QString & prof , const QString & id ) 370void IncidenceBase::setCsum( const QString & prof , const QString & id )
371{ 371{
372 mExternalId = KIdManager::setCsum ( mExternalId, prof, id ); 372 mExternalId = KIdManager::setCsum ( mExternalId, prof, id );
373} 373}
374QString IncidenceBase::getCsum( const QString & prof) 374QString IncidenceBase::getCsum( const QString & prof)
375{ 375{
376 return KIdManager::getCsum ( mExternalId, prof ); 376 return KIdManager::getCsum ( mExternalId, prof );
377} 377}
378 378
379void IncidenceBase::setIDStr( const QString & s ) 379void IncidenceBase::setIDStr( const QString & s )
380{ 380{
381 if (mReadOnly) return; 381 if (mReadOnly) return;
382 mExternalId = s; 382 mExternalId = s;
383} 383}
384 384
385QString IncidenceBase::IDStr() const 385QString IncidenceBase::IDStr() const
386{ 386{
387 return mExternalId ; 387 return mExternalId ;
388} 388}
389void IncidenceBase::registerObserver( IncidenceBase::Observer *observer ) 389void IncidenceBase::registerObserver( IncidenceBase::Observer *observer )
390{ 390{
391 if( !mObservers.contains(observer) ) mObservers.append( observer ); 391 if( !mObservers.contains(observer) ) mObservers.append( observer );
392} 392}
393 393
394void IncidenceBase::unRegisterObserver( IncidenceBase::Observer *observer ) 394void IncidenceBase::unRegisterObserver( IncidenceBase::Observer *observer )
395{ 395{
396 mObservers.remove( observer ); 396 mObservers.remove( observer );
397} 397}
398 398
399void IncidenceBase::updated() 399void IncidenceBase::updated()
400{ 400{
401 QPtrListIterator<Observer> it(mObservers); 401 QPtrListIterator<Observer> it(mObservers);
402 while( it.current() ) { 402 while( it.current() ) {
403 Observer *o = it.current(); 403 Observer *o = it.current();
404 ++it; 404 ++it;
405 o->incidenceUpdated( this ); 405 o->incidenceUpdated( this );
406 } 406 }
407} 407}