ktnefwriter.hGo to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00031 #ifndef KTNEFWRITER_H
00032 #define KTNEFWRITER_H
00033
00034 class QString;
00035 class QVariant;
00036 class QIODevice;
00037 class QDataStream;
00038 class QDateTime;
00039 class QStringList;
00040
00041 #include "ktnef_export.h"
00042
00043 namespace KTnef {
00044
00049 class KTNEF_EXPORT KTNEFWriter
00050 {
00051 public:
00055 enum MessageType {
00056 Appointment,
00057 MeetingCancelled,
00058 MeetingRequest,
00059 MeetingNo,
00060 MeetingYes,
00061 MeetingTent
00062 };
00063
00067 enum Method {
00068 PublishNew,
00069 Obsolete,
00070 RequestNew,
00071 RequestUpdate,
00072 Unknown
00073 };
00074
00078 enum Role {
00079 ReqParticipant,
00080 OptParticipant,
00081 NonParticipant,
00082 Chair
00083 };
00084
00088 enum PartStat {
00089 NeedsAction,
00090 Accepted,
00091 Declined,
00092 Tentative,
00093 Delegated,
00094 Completed,
00095 InProcess
00096 };
00097
00101 enum Priority {
00102 High = 2,
00103 Normal = 3,
00104 Low = 1
00105 };
00106
00110 enum AlarmAction {
00111 Display
00112 };
00113
00117 KTNEFWriter();
00118
00122 ~KTNEFWriter();
00123
00131 void addProperty( int tag, int type, const QVariant &value );
00132
00149 bool writeProperty( QDataStream &stream, int &bytes, int tag ) const;
00150
00157 bool writeFile( QIODevice &file ) const;
00158
00165 bool writeFile( QDataStream &stream ) const;
00166
00173 void setSender( const QString &name, const QString &email );
00174
00180 void setMessageType( MessageType methodType );
00181
00187 void setMethod( Method method );
00188
00192 void clearAttendees();
00193
00203 void addAttendee( const QString &name, Role role, PartStat partstat,
00204 bool rsvp, const QString &email );
00205
00213 void setOrganizer( const QString &organizer );
00214
00220 void setDtStart( const QDateTime &dtStart );
00221
00227 void setDtEnd( const QDateTime &dtEnd );
00228
00234 void setLocation( const QString &location );
00235
00241 void setUID( const QString &uid );
00242
00248 void setDtStamp( const QDateTime &dtStamp );
00249
00255 void setCategories( const QStringList &categories );
00256
00262 void setDescription( const QString &description );
00263
00269 void setSummary( const QString &summary );
00270
00276 void setPriority( Priority priority );
00277
00285 void setAlarm( const QString &description, AlarmAction action,
00286 const QDateTime &wakeBefore );
00287
00288 private:
00289
00290 class PrivateData;
00291 PrivateData *const d;
00292
00293
00294 Q_DISABLE_COPY( KTNEFWriter )
00295 };
00296
00297 }
00298
00299 #endif // KTNEFWRITER_H
|