author | zautrix <zautrix> | 2004-11-08 08:05:08 (UTC) |
---|---|---|
committer | zautrix <zautrix> | 2004-11-08 08:05:08 (UTC) |
commit | 4481ce9842b3820087b24a8bfce2c194974aae73 (patch) (side-by-side diff) | |
tree | 70da30be2b8cd4b6934c1a51c08a9d83aa93d8b6 /libkcal | |
parent | 90e33436f6d1c502a5620760ac6592b9881ee4ab (diff) | |
download | kdepimpi-4481ce9842b3820087b24a8bfce2c194974aae73.zip kdepimpi-4481ce9842b3820087b24a8bfce2c194974aae73.tar.gz kdepimpi-4481ce9842b3820087b24a8bfce2c194974aae73.tar.bz2 |
some small fixes
-rw-r--r-- | libkcal/incidencebase.cpp | 13 | ||||
-rw-r--r-- | libkcal/incidencebase.h | 2 |
2 files changed, 12 insertions, 3 deletions
diff --git a/libkcal/incidencebase.cpp b/libkcal/incidencebase.cpp index 9aa517c..7525a4a 100644 --- a/libkcal/incidencebase.cpp +++ b/libkcal/incidencebase.cpp @@ -204,32 +204,41 @@ bool IncidenceBase::doesFloat() const { return mFloats; } void IncidenceBase::setFloats(bool f) { if (mReadOnly) return; mFloats = f; updated(); } -void IncidenceBase::addAttendee(Attendee *a, bool doupdate) +bool IncidenceBase::addAttendee(Attendee *a, bool doupdate) { - if (mReadOnly) return; + if (mReadOnly) return false; if (a->name().left(7).upper() == "MAILTO:") a->setName(a->name().remove(0,7)); + QPtrListIterator<Attendee> qli(mAttendees); + + qli.toFirst(); + while (qli) { + if (*qli.current() == *a) + return false; + ++qli; + } mAttendees.append(a); if (doupdate) updated(); + return true; } #if 0 void IncidenceBase::removeAttendee(Attendee *a) { if (mReadOnly) return; mAttendees.removeRef(a); updated(); } void IncidenceBase::removeAttendee(const char *n) { diff --git a/libkcal/incidencebase.h b/libkcal/incidencebase.h index e02d03a..f9a6558 100644 --- a/libkcal/incidencebase.h +++ b/libkcal/incidencebase.h @@ -91,25 +91,25 @@ class IncidenceBase : public CustomProperties bool hasDuration() const; /** Return true or false depending on whether the incidence "floats," * i.e. has a date but no time attached to it. */ bool doesFloat() const; /** Set whether the incidence floats, i.e. has a date but no time attached to it. */ void setFloats(bool f); /** Add Attendee to this incidence. IncidenceBase takes ownership of the Attendee object. */ - void addAttendee(Attendee *a, bool doupdate=true ); + bool addAttendee(Attendee *a, bool doupdate=true ); // void removeAttendee(Attendee *a); // void removeAttendee(const char *n); /** Remove all Attendees. */ void clearAttendees(); /** Return list of attendees. */ QPtrList<Attendee> attendees() const { return mAttendees; }; /** Return number of attendees. */ int attendeeCount() const { return mAttendees.count(); }; /** Return the Attendee with this email */ Attendee* attendeeByMail(const QString &); /** Return first Attendee with one of this emails */ Attendee* attendeeByMails(const QStringList &, const QString& email = QString::null); |