KCal Library
icalformat.h
Go 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
00029 #ifndef KCAL_ICALFORMAT_H
00030 #define KCAL_ICALFORMAT_H
00031
00032 #include "calformat.h"
00033 #include "scheduler.h"
00034
00035 #include <kdatetime.h>
00036
00037 #include <QtCore/QString>
00038 #include <QtCore/QByteArray>
00039
00040 namespace KCal {
00041
00042 class FreeBusy;
00043
00052 class KCAL_EXPORT ICalFormat : public CalFormat
00053 {
00054 public:
00058 ICalFormat();
00059
00063 virtual ~ICalFormat();
00064
00069 bool load( Calendar *calendar, const QString &fileName );
00070
00075 bool save( Calendar *calendar, const QString &fileName );
00076
00081 bool fromString( Calendar *calendar, const QString &string );
00082
00091 Incidence *fromString( const QString &string );
00092
00100 bool fromString ( RecurrenceRule *rule, const QString &string );
00101
00106 bool fromRawString( Calendar *calendar, const QByteArray &string );
00107
00112 QString toString( Calendar *calendar );
00113
00121 QString toString( Incidence *incidence );
00122
00130 QString toString( RecurrenceRule *rule );
00131
00139 QString toICalString( Incidence *incidence );
00140
00149 QString createScheduleMessage( IncidenceBase *incidence,
00150 iTIPMethod method );
00151
00162 ScheduleMessage *parseScheduleMessage( Calendar *calendar, const QString &string );
00163
00172 FreeBusy *parseFreeBusy( const QString &string );
00173
00179 void setTimeSpec( const KDateTime::Spec &timeSpec );
00180
00185 KDateTime::Spec timeSpec() const;
00186
00191 QString timeZoneId() const;
00192
00193 private:
00194
00195 Q_DISABLE_COPY( ICalFormat )
00196 class Private;
00197 Private *const d;
00198
00199 };
00200
00201 }
00202
00203 #endif