KCalendarCore::Todo

#include <todo.h>

Inheritance diagram for KCalendarCore::Todo:

Public Types

typedef QVector< PtrList
 
typedef QSharedPointer< TodoPtr
 
- Public Types inherited from KCalendarCore::Incidence
typedef QVector< PtrList
 
typedef QSharedPointer< IncidencePtr
 
enum  RelType { RelTypeParent, RelTypeChild, RelTypeSibling }
 
enum  Secrecy { SecrecyPublic, SecrecyPrivate, SecrecyConfidential }
 
enum  Status {
  StatusNone, StatusTentative, StatusConfirmed, StatusCompleted,
  StatusNeedsAction, StatusCanceled, StatusInProcess, StatusDraft,
  StatusFinal, StatusX
}
 
- Public Types inherited from KCalendarCore::IncidenceBase
enum  DateTimeRole {
  RoleAlarmStartOffset = 0, RoleAlarmEndOffset, RoleSort, RoleCalendarHashing,
  RoleStartTimeZone, RoleEndTimeZone, RoleEndRecurrenceBase, RoleEnd,
  RoleDisplayEnd, RoleAlarm, RoleRecurrenceStart, RoleDisplayStart,
  RoleDnD
}
 
enum  Field {
  FieldDtStart, FieldDtEnd, FieldLastModified, FieldDescription,
  FieldSummary, FieldLocation, FieldCompleted, FieldPercentComplete,
  FieldDtDue, FieldCategories, FieldRelatedTo, FieldRecurrence,
  FieldAttachment, FieldSecrecy, FieldStatus, FieldTransparency,
  FieldResources, FieldPriority, FieldGeoLatitude, FieldGeoLongitude,
  FieldRecurrenceId, FieldAlarms, FieldSchedulingId, FieldAttendees,
  FieldOrganizer, FieldCreated, FieldRevision, FieldDuration,
  FieldContact, FieldComment, FieldUid, FieldUnknown,
  FieldUrl
}
 
enum  IncidenceType {
  TypeEvent = 0, TypeTodo, TypeJournal, TypeFreeBusy,
  TypeUnknown
}
 
typedef QSharedPointer< IncidenceBasePtr
 

Public Member Functions

 Todo ()
 
 Todo (const Todo &other)
 
 Todo (const Incidence &other)
 
 ~Todo () override
 
Todoclone () const override
 
QDateTime completed () const
 
QDateTime dateTime (DateTimeRole role) const override
 
QDateTime dtDue (bool first=false) const
 
QDateTime dtRecurrence () const
 
QDateTime dtStart () const override
 
QDateTime dtStart (bool first) const
 
bool hasCompletedDate () const
 
bool hasDueDate () const
 
bool hasStartDate () const
 
QLatin1String iconName (const QDateTime &recurrenceId={}) const override
 
bool isCompleted () const
 
bool isInProgress (bool first) const
 
bool isNotStarted (bool first) const
 
bool isOpenEnded () const
 
bool isOverdue () const
 
QLatin1String mimeType () const override
 
int percentComplete () const
 
bool recursOn (const QDate &date, const QTimeZone &timeZone) const override
 
void setAllDay (bool allDay) override
 
void setCompleted (bool completed)
 
void setCompleted (const QDateTime &completeDate)
 
void setDateTime (const QDateTime &dateTime, DateTimeRole role) override
 
void setDtDue (const QDateTime &dtDue, bool first=false)
 
void setDtRecurrence (const QDateTime &dt)
 
void setPercentComplete (int percent)
 
void shiftTimes (const QTimeZone &oldZone, const QTimeZone &newZone) override
 
bool supportsGroupwareCommunication () const override
 
IncidenceType type () const override
 
QByteArray typeStr () const override
 
- Public Member Functions inherited from KCalendarCore::Incidence
 Incidence ()
 
 ~Incidence () override
 
void addAlarm (const Alarm::Ptr &alarm)
 
void addAttachment (const Attachment &attachment)
 
Alarm::List alarms () const
 
QString altDescription () const
 
Attachment::List attachments () const
 
Attachment::List attachments (const QString &mime) const
 
QStringList categories () const
 
QString categoriesStr () const
 
void clearAlarms ()
 
void clearAttachments ()
 
void clearRecurrence ()
 
QDateTime created () const
 
QString customStatus () const
 
void deleteAttachments (const QString &mime)
 
QString description () const
 
bool descriptionIsRich () const
 
virtual QDateTime endDateForStart (const QDateTime &startDt) const
 
float geoLatitude () const
 
float geoLongitude () const
 
bool hasAltDescription () const
 
bool hasEnabledAlarms () const
 
bool hasGeo () const
 
bool hasRecurrenceId () const
 
QString instanceIdentifier () const
 
bool localOnly () const
 
QString location () const
 
bool locationIsRich () const
 
Alarm::Ptr newAlarm ()
 
int priority () const
 
void recreate ()
 
Recurrencerecurrence () const
 
QDateTime recurrenceId () const override
 
ushort recurrenceType () const
 
void recurrenceUpdated (Recurrence *recurrence) override
 
bool recurs () const
 
bool recursAt (const QDateTime &dt) const
 
QString relatedTo (RelType relType=RelTypeParent) const
 
void removeAlarm (const Alarm::Ptr &alarm)
 
QStringList resources () const
 
int revision () const
 
QString richDescription () const
 
QString richLocation () const
 
QString richSummary () const
 
QString schedulingID () const
 
Secrecy secrecy () const
 
void setAltDescription (const QString &altdescription)
 
void setCategories (const QStringList &categories)
 
void setCategories (const QString &catStr)
 
void setCreated (const QDateTime &dt)
 
void setCustomStatus (const QString &status)
 
void setDescription (const QString &description, bool isRich)
 
void setDescription (const QString &description)
 
void setDtStart (const QDateTime &dt) override
 
void setGeoLatitude (float geolatitude)
 
void setGeoLongitude (float geolongitude)
 
void setHasGeo (bool hasGeo)
 
void setLastModified (const QDateTime &lm) override
 
void setLocalOnly (bool localonly)
 
void setLocation (const QString &location, bool isRich)
 
void setLocation (const QString &location)
 
void setPriority (int priority)
 
void setReadOnly (bool readonly) override
 
void setRecurrenceId (const QDateTime &recurrenceId)
 
void setRelatedTo (const QString &uid, RelType relType=RelTypeParent)
 
void setResources (const QStringList &resources)
 
void setRevision (int rev)
 
void setSchedulingID (const QString &sid, const QString &uid=QString())
 
void setSecrecy (Secrecy secrecy)
 
void setStatus (Status status)
 
void setSummary (const QString &summary, bool isRich)
 
void setSummary (const QString &summary)
 
void setThisAndFuture (bool thisAndFuture)
 
virtual QList< QDateTimestartDateTimesForDate (const QDate &date, const QTimeZone &timeZone) const
 
virtual QList< QDateTimestartDateTimesForDateTime (const QDateTime &datetime) const
 
Status status () const
 
QString summary () const
 
bool summaryIsRich () const
 
bool thisAndFuture () const
 
- Public Member Functions inherited from KCalendarCore::IncidenceBase
 IncidenceBase ()
 
 ~IncidenceBase () override
 
void addAttendee (const Attendee &attendee, bool doUpdate=true)
 
void addComment (const QString &comment)
 
void addContact (const QString &contact)
 
bool allDay () const
 
Attendee attendeeByMail (const QString &email) const
 
Attendee attendeeByMails (const QStringList &emails, const QString &email=QString()) const
 
Attendee attendeeByUid (const QString &uid) const
 
int attendeeCount () const
 
Attendee::List attendees () const
 
void clearAttendees ()
 
void clearComments ()
 
void clearContacts ()
 
QStringList comments () const
 
QStringList contacts () const
 
QSet< IncidenceBase::FielddirtyFields () const
 
Duration duration () const
 
void endUpdates ()
 
bool hasDuration () const
 
bool isReadOnly () const
 
QDateTime lastModified () const
 
bool operator!= (const IncidenceBase &ib) const
 
IncidenceBaseoperator= (const IncidenceBase &other)
 
bool operator== (const IncidenceBase &ib) const
 
Person organizer () const
 
void registerObserver (IncidenceObserver *observer)
 
bool removeComment (const QString &comment)
 
bool removeContact (const QString &contact)
 
void resetDirtyFields ()
 
void setAttendees (const Attendee::List &attendees, bool doUpdate=true)
 
void setDirtyFields (const QSet< IncidenceBase::Field > &)
 
virtual void setDuration (const Duration &duration)
 
void setHasDuration (bool hasDuration)
 
void setOrganizer (const Person &organizer)
 
void setOrganizer (const QString &organizer)
 
void setUid (const QString &uid)
 
void setUrl (const QUrl &url)
 
void startUpdates ()
 
QString uid () const
 
void unRegisterObserver (IncidenceObserver *observer)
 
void update ()
 
void updated ()
 
QUrl uri () const
 
QUrl url () const
 
- Public Member Functions inherited from KCalendarCore::CustomProperties
 CustomProperties ()
 
 CustomProperties (const CustomProperties &other)
 
virtual ~CustomProperties ()
 
QMap< QByteArray, QStringcustomProperties () const
 
QString customProperty (const QByteArray &app, const QByteArray &key) const
 
QString nonKDECustomProperty (const QByteArray &name) const
 
QString nonKDECustomPropertyParameters (const QByteArray &name) const
 
CustomPropertiesoperator= (const CustomProperties &other)
 
bool operator== (const CustomProperties &properties) const
 
void removeCustomProperty (const QByteArray &app, const QByteArray &key)
 
void removeNonKDECustomProperty (const QByteArray &name)
 
void setCustomProperties (const QMap< QByteArray, QString > &properties)
 
void setCustomProperty (const QByteArray &app, const QByteArray &key, const QString &value)
 
void setNonKDECustomProperty (const QByteArray &name, const QString &value, const QString &parameters=QString())
 

Static Public Member Functions

static QLatin1String todoMimeType ()
 
- Static Public Member Functions inherited from KCalendarCore::Incidence
static QStringList mimeTypes ()
 
- Static Public Member Functions inherited from KCalendarCore::IncidenceBase
static quint32 magicSerializationIdentifier ()
 
- Static Public Member Functions inherited from KCalendarCore::CustomProperties
static QByteArray customPropertyName (const QByteArray &app, const QByteArray &key)
 

Protected Member Functions

IncidenceBaseassign (const IncidenceBase &other) override
 
bool equals (const IncidenceBase &todo) const override
 
void virtual_hook (VirtualHook id, void *data) override
 
- Protected Member Functions inherited from KCalendarCore::Incidence
 Incidence (const Incidence &other)
 
- Protected Member Functions inherited from KCalendarCore::IncidenceBase
 IncidenceBase (const IncidenceBase &ib)
 
void customPropertyUpdate () override
 
void customPropertyUpdated () override
 
void setFieldDirty (IncidenceBase::Field field)
 

Additional Inherited Members

- Properties inherited from KCalendarCore::Incidence
QVariantList attachments
 
QStringList categories
 
QDateTime created
 
QString description
 
float geoLatitude
 
float geoLongitude
 
bool hasGeo
 
QString location
 
int priority
 
KCalendarCore::Incidence::Secrecy secrecy
 
KCalendarCore::Incidence::Status status
 
QString summary
 
- Properties inherited from KCalendarCore::IncidenceBase
bool allDay
 
QVariantList attendees
 
QDateTime dtStart
 
QDateTime lastModified
 
KCalendarCore::Person organizer
 
QString uid
 
- Protected Types inherited from KCalendarCore::IncidenceBase
enum  VirtualHook
 
- Protected Attributes inherited from KCalendarCore::IncidenceBase
bool mReadOnly
 

Detailed Description

Provides a To-do in the sense of RFC2445.

Definition at line 31 of file todo.h.

Member Typedef Documentation

List of to-dos.

Definition at line 42 of file todo.h.

A shared pointer to a Todo object.

Definition at line 37 of file todo.h.

Constructor & Destructor Documentation

KCalendarCore::Todo::Todo ( )

Constructs an empty to-do.

KCalendarCore::Todo::Todo ( const Todo other)

Copy constructor.

Parameters
otheris the to-do to copy.
KCalendarCore::Todo::Todo ( const Incidence other)

Costructs a todo out of an incidence This constructs allows to make it easy to create a todo from an event.

Parameters
otheris the incidence to copy.
Since
4.14
KCalendarCore::Todo::~Todo ( )
override

Destroys a to-do.

Member Function Documentation

IncidenceBase& KCalendarCore::Todo::assign ( const IncidenceBase other)
overrideprotectedvirtual

Provides polymorfic assignment.

Parameters
otheris the IncidenceBase to assign.

Reimplemented from KCalendarCore::Incidence.

Todo* KCalendarCore::Todo::clone ( ) const
overridevirtual

Returns an exact copy of this todo.

The returned object is owned by the caller.

Returns
A pointer to a Todo containing an exact copy of this object.

Implements KCalendarCore::Incidence.

QDateTime Todo::completed ( ) const

Returns the to-do was completion datetime.

Returns
A QDateTime for the completeion datetime of the to-do.
See also
hasCompletedDate()

Definition at line 239 of file todo.cpp.

QDateTime Todo::dateTime ( DateTimeRole  role) const
overridevirtual

Returns a date/time corresponding to the specified DateTimeRole.

Parameters
roleis a DateTimeRole.

Implements KCalendarCore::IncidenceBase.

Definition at line 451 of file todo.cpp.

QDateTime Todo::dtDue ( bool  first = false) const

Returns the todo due datetime.

Parameters
firstIf true and the todo recurs, the due datetime of the first occurrence will be returned. If false and recurrent, the datetime of the current occurrence will be returned. If non-recurrent, the normal due datetime will be returned.
Returns
A QDateTime containing the todo due datetime.

Definition at line 167 of file todo.cpp.

QDateTime Todo::dtRecurrence ( ) const

Returns the due date/time of the current occurrence if recurrent.

Definition at line 365 of file todo.cpp.

QDateTime Todo::dtStart ( ) const
overridevirtual

Reimplemented from KCalendarCore::IncidenceBase.

Definition at line 200 of file todo.cpp.

QDateTime Todo::dtStart ( bool  first) const

Returns the start datetime of the todo.

Parameters
firstIf true, the start datetime of the todo will be returned; also, if the todo recurs, the start datetime of the first occurrence will be returned. If false and the todo recurs, the relative start datetime will be returned, based on the datetime returned by dtRecurrence().
Returns
A QDateTime for the start datetime of the todo.

Definition at line 205 of file todo.cpp.

bool KCalendarCore::Todo::equals ( const IncidenceBase todo) const
overrideprotectedvirtual

Compare this with todo for equality.

Parameters
todois the to-do to compare.

Reimplemented from KCalendarCore::Incidence.

bool Todo::hasCompletedDate ( ) const

Returns if the to-do has a completion datetime.

Returns
true if the to-do has a date associated with completion; false otherwise.
See also
setCompleted(), completed()

Definition at line 259 of file todo.cpp.

bool Todo::hasDueDate ( ) const

Returns if the todo has a due datetime.

Returns
true if the todo has a due datetime; false otherwise.

Definition at line 190 of file todo.cpp.

bool Todo::hasStartDate ( ) const

Returns if the todo has a start datetime.

Returns
true if the todo has a start datetime; false otherwise.

Definition at line 195 of file todo.cpp.

QLatin1String Todo::iconName ( const QDateTime recurrenceId = {}) const
overridevirtual

Returns the name of the icon that best represents this incidence.

Parameters
recurrenceIdSome recurring incidences might use a different icon, for example, completed to-do occurrences. Use this parameter to identify the specific occurrence in a recurring serie.

Implements KCalendarCore::Incidence.

Definition at line 530 of file todo.cpp.

bool Todo::isCompleted ( ) const

Returns if the todo is 100% completed.

Returns
true if the todo is 100% completed; false otherwise.
See also
isOverdue, isInProgress(), isOpenEnded(), isNotStarted(bool), setCompleted(), percentComplete()

Definition at line 218 of file todo.cpp.

bool Todo::isInProgress ( bool  first) const

Returns true, if the to-do is in-progress (started, or >0% completed); otherwise return false.

If the to-do is overdue, then it is not considered to be in-progress.

Parameters
firstIf true, the start and due dates of the todo will be used; also, if the todo recurs, the start date and due date of the first occurrence will be used. If false and the todo recurs, the relative start and due dates will be used, based on the date returned by dtRecurrence().
See also
isOverdue(), isCompleted(), isOpenEnded(), isNotStarted(bool)

Definition at line 286 of file todo.cpp.

bool Todo::isNotStarted ( bool  first) const

Returns true, if the to-do has yet to be started (no start date and 0% completed); otherwise return false.

Parameters
firstIf true, the start date of the todo will be used; also, if the todo recurs, the start date of the first occurrence will be used. If false and the todo recurs, the relative start date will be used, based on the date returned by dtRecurrence().
See also
isOverdue(), isCompleted(), isInProgress(), isOpenEnded()

Definition at line 322 of file todo.cpp.

bool Todo::isOpenEnded ( ) const

Returns true, if the to-do is open-ended (no due date); false otherwise.

See also
isOverdue(), isCompleted(), isInProgress(), isNotStarted(bool)

Definition at line 313 of file todo.cpp.

bool Todo::isOverdue ( ) const

Returns true if this todo is overdue (e.g.

due date is lower than today and not completed), else false.

See also
isCompleted(), isInProgress(), isOpenEnded(), isNotStarted(bool)

Definition at line 379 of file todo.cpp.

QLatin1String Todo::mimeType ( ) const
overridevirtual

Returns the Akonadi specific sub MIME type of a KCalendarCore::IncidenceBase item, e.g.

getting "application/x-vnd.akonadi.calendar.event" for a KCalendarCore::Event.

Implements KCalendarCore::IncidenceBase.

Definition at line 520 of file todo.cpp.

int Todo::percentComplete ( ) const

Returns what percentage of the to-do is completed.

Returns
The percentage complete of the to-do as an integer between 0 and 100, inclusive.
See also
setPercentComplete(), isCompleted()

Definition at line 264 of file todo.cpp.

bool Todo::recursOn ( const QDate date,
const QTimeZone timeZone 
) const
overridevirtual

Returns true if the date specified is one on which the to-do will recur.

Todos are a special case, hence the overload. It adds an extra check, which make it return false if there's an occurrence between the recur start and today.

Parameters
dateis the date to check.
timeZoneis the time zone

Reimplemented from KCalendarCore::Incidence.

Definition at line 370 of file todo.cpp.

void Todo::setAllDay ( bool  allDay)
overridevirtual

Reimplemented from KCalendarCore::Incidence.

Definition at line 391 of file todo.cpp.

void Todo::setCompleted ( bool  completed)

Sets completed state.

Parameters
completedIf true set completed state to 100%, if false set completed state to 0%.
See also
isCompleted(), percentComplete()

Definition at line 223 of file todo.cpp.

void Todo::setCompleted ( const QDateTime completeDate)

Sets date and time of completion.

Parameters
completeDateis the to-do completion date.
See also
completed(), hasCompletedDate()

Definition at line 248 of file todo.cpp.

void Todo::setDateTime ( const QDateTime dateTime,
DateTimeRole  role 
)
overridevirtual

Sets the date/time corresponding to the specified DateTimeRole.

Parameters
dateTimeis QDateTime value to set.
roleis a DateTimeRole.

Implements KCalendarCore::IncidenceBase.

Definition at line 500 of file todo.cpp.

void KCalendarCore::Todo::setDtDue ( const QDateTime dtDue,
bool  first = false 
)

Sets due date and time.

Parameters
dtDueThe due date/time.
firstIf true and the todo recurs, the due date of the first occurrence will be returned. If false and recurrent, the date of the current occurrence will be returned. If non-recurrent, the normal due date will be returned.
void Todo::setDtRecurrence ( const QDateTime dt)

Sets the due date/time of the current occurrence if recurrent.

Parameters
dtis the

Definition at line 359 of file todo.cpp.

void Todo::setPercentComplete ( int  percent)

Sets what percentage of the to-do is completed.

Valid values are in the range from 0 to 100.

Parameters
percentis the completion percentage, which as integer value between 0 and 100, inclusive.
See also
isCompleted(), setCompleted()

Definition at line 269 of file todo.cpp.

void Todo::shiftTimes ( const QTimeZone oldZone,
const QTimeZone newZone 
)
overridevirtual

Shift the times of the incidence so that they appear at the same clock time as before but in a new time zone.

The shift is done from a viewing time zone rather than from the actual incidence time zone.

For example, shifting an incidence whose start time is 09:00 America/New York, using an old viewing time zone (oldSpec) of Europe/London, to a new time zone (newSpec) of Europe/Paris, will result in the time being shifted from 14:00 (which is the London time of the incidence start) to 14:00 Paris time.

Parameters
oldZonethe time zone which provides the clock times
newZonethe new time zone

Reimplemented from KCalendarCore::Incidence.

Definition at line 344 of file todo.cpp.

bool Todo::supportsGroupwareCommunication ( ) const
overridevirtual
QLatin1String Todo::todoMimeType ( )
static

Returns the Akonadi specific sub MIME type of a KCalendarCore::Todo.

Definition at line 525 of file todo.cpp.

IncidenceType KCalendarCore::Todo::type ( ) const
overridevirtual

Returns the incidence type.

Implements KCalendarCore::IncidenceBase.

QByteArray KCalendarCore::Todo::typeStr ( ) const
overridevirtual

Prints the type of incidence as a string.

Implements KCalendarCore::IncidenceBase.

void Todo::virtual_hook ( VirtualHook  id,
void *  data 
)
overrideprotectedvirtual

Standard trick to add virtuals later.

Parameters
idis any integer unique to this class which we will use to identify the method to be called.
datais a pointer to some glob of data, typically a struct.

Implements KCalendarCore::IncidenceBase.

Definition at line 514 of file todo.cpp.


The documentation for this class was generated from the following files:
This file is part of the KDE documentation.
Documentation copyright © 1996-2020 The KDE developers.
Generated on Sun Jul 12 2020 22:51:01 by doxygen 1.8.11 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.