libkcal
incidenceformatter.h00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #ifndef KCAL_INCIDENCEFORMATTER_H
00023 #define KCAL_INCIDENCEFORMATTER_H
00024
00025 #include <qstring.h>
00026
00027 #include "libkcal_export.h"
00028
00029 namespace KCal {
00030 class Calendar;
00031 class Incidence;
00032 class IncidenceBase;
00033
00034 class LIBKCAL_EXPORT InvitationFormatterHelper
00035 {
00036 public:
00037 virtual QString generateLinkURL( const QString &id ) { return id; }
00038 virtual QString makeLink( const QString &id, const QString &text );
00039 virtual Calendar* calendar() const { return 0; }
00040 };
00041
00049 class LIBKCAL_EXPORT IncidenceFormatter
00050 {
00051 public:
00052 static QString toolTipString( IncidenceBase *incidence, bool richText = true );
00053 static QString mailBodyString( IncidenceBase *incidencebase );
00054 static QString extensiveDisplayString( IncidenceBase *incidence );
00055
00056 static QString formatICalInvitation( QString invitation, Calendar *mCalendar,
00057 InvitationFormatterHelper *helper );
00058
00059 static QString formatTNEFInvitation( const QByteArray& tnef,
00060 Calendar *mCalendar,
00061 InvitationFormatterHelper *helper );
00062
00063 static QString msTNEFToVPart( const QByteArray& tnef );
00064
00065 static QString recurrenceString( Incidence *incidence );
00066 private:
00067 class EventViewerVisitor;
00068 class ScheduleMessageVisitor;
00069 class InvitationHeaderVisitor;
00070 class InvitationBodyVisitor;
00071 class IncidenceCompareVisitor;
00072 class ToolTipVisitor;
00073 class MailBodyVisitor;
00074 };
00075
00076 }
00077
00078 #endif
|