00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #ifndef KCALCORE_SCHEDULEMESSAGE_H
00022 #define KCALCORE_SCHEDULEMESSAGE_H
00023
00024 #include "incidencebase.h"
00025
00026 #include "kcalcore_export.h"
00027
00028 namespace KCalCore {
00029
00030 class IncidenceBase;
00031
00035 enum iTIPMethod {
00036 iTIPPublish,
00037 iTIPRequest,
00038 iTIPReply,
00039 iTIPAdd,
00040 iTIPCancel,
00041 iTIPRefresh,
00042 iTIPCounter,
00043 iTIPDeclineCounter,
00044 iTIPNoMethod
00045 };
00046
00054 class KCALCORE_EXPORT ScheduleMessage
00055 {
00056 public:
00060 enum Status {
00061 PublishNew,
00062 PublishUpdate,
00063 Obsolete,
00064 RequestNew,
00065 RequestUpdate,
00066 Unknown
00067 };
00068
00072 typedef QSharedPointer<ScheduleMessage> Ptr;
00073
00080 ScheduleMessage( IncidenceBase::Ptr incidence, iTIPMethod method, Status status );
00081
00085 ~ScheduleMessage();
00086
00090 IncidenceBase::Ptr event() const;
00091
00095 iTIPMethod method() const;
00096
00101 static QString methodName( iTIPMethod method );
00102
00106 Status status() const;
00107
00111 QString error() const;
00112
00113 private:
00114
00115 Q_DISABLE_COPY( ScheduleMessage )
00116 class Private;
00117 Private *const d;
00118
00119 };
00120
00121 }
00122
00123 #endif