libkcal
vcalformat.h00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #ifndef KCAL_VCALFORMAT_H
00023 #define KCAL_VCALFORMAT_H
00024
00025 #include "calformat.h"
00026
00027 #include "todo.h"
00028 #include "event.h"
00029 #include "libkcal_export.h"
00030
00031 #define _VCAL_VERSION "1.0"
00032
00033 class VObject;
00034
00035 namespace KCal {
00036
00044 class LIBKCAL_EXPORT VCalFormat : public CalFormat
00045 {
00046 public:
00047 VCalFormat();
00048 virtual ~VCalFormat();
00049
00057 bool load( Calendar *calendar, const QString &fileName );
00065 bool save(Calendar *calendar, const QString &fileName);
00066
00070 bool fromString( Calendar *, const QString & );
00074 QString toString( Calendar * );
00075
00076 protected:
00078 Todo *VTodoToEvent(VObject *vtodo);
00080 Event *VEventToEvent(VObject *vevent);
00082 VObject *eventToVTodo(const Todo *anEvent);
00084 VObject* eventToVEvent(const Event *anEvent);
00085
00087 QString qDateToISO(const QDate &);
00089 QString qDateTimeToISO(const QDateTime &, bool zulu=TRUE);
00092 QDateTime ISOToQDateTime(const QString & dtStr);
00095 QDate ISOToQDate(const QString & dtStr);
00098 void populate(VObject *vcal);
00099
00102 const char *dayFromNum(int day);
00104 int numFromDay(const QString &day);
00105
00106 Attendee::PartStat readStatus(const char *s) const;
00107 QCString writeStatus(Attendee::PartStat status) const;
00108
00109 private:
00110 Calendar *mCalendar;
00111
00112 Event::List mEventsRelate;
00113 Todo::List mTodosRelate;
00114
00115 class Private;
00116 Private *d;
00117 };
00118
00119 }
00120
00121 #endif
|