libkcal
incidenceformatter.h00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023 #ifndef KCAL_INCIDENCEFORMATTER_H
00024 #define KCAL_INCIDENCEFORMATTER_H
00025
00026 #include "libkcal_export.h"
00027
00028 #include <qdatetime.h>
00029 #include <qstring.h>
00030 #include <qstringlist.h>
00031
00032 namespace KCal {
00033 class Calendar;
00034 class Incidence;
00035 class IncidenceBase;
00036
00037 class LIBKCAL_EXPORT InvitationFormatterHelper
00038 {
00039 public:
00040 virtual QString generateLinkURL( const QString &id ) { return id; }
00041 virtual QString makeLink( const QString &id, const QString &text );
00042 virtual Calendar* calendar() const { return 0; }
00043 };
00044
00052 class LIBKCAL_EXPORT IncidenceFormatter
00053 {
00054 public:
00055 static QString KDE_DEPRECATED toolTipString( IncidenceBase *incidence, bool richText = true );
00056 static QString toolTipStr( Calendar *calendar,
00057 IncidenceBase *incidence,
00058 const QDate &date=QDate(),
00059 bool richText = true );
00060 static QString mailBodyString( IncidenceBase *incidencebase );
00061 static QString KDE_DEPRECATED extensiveDisplayString( IncidenceBase *incidence );
00062 static QString extensiveDisplayStr( Calendar *calendar,
00063 IncidenceBase *incidence,
00064 const QDate &date=QDate() );
00065
00066 static QString formatICalInvitation( QString invitation, Calendar *mCalendar,
00067 InvitationFormatterHelper *helper );
00068 static QString formatICalInvitationNoHtml( QString invitation, Calendar *mCalendar,
00069 InvitationFormatterHelper *helper );
00070
00071 static QString formatTNEFInvitation( const QByteArray& tnef,
00072 Calendar *mCalendar,
00073 InvitationFormatterHelper *helper );
00074
00075 static QString msTNEFToVPart( const QByteArray& tnef );
00076
00077 static QString recurrenceString( Incidence *incidence );
00078
00079
00080
00081
00082
00083
00084
00085
00086
00087 static QStringList reminderStringList( Incidence *incidence, bool shortfmt = true );
00088
00089 static QString timeToString( const QDateTime &date, bool shortfmt = true );
00090
00091 static QString dateToString( const QDateTime &date, bool shortfmt = true );
00092
00093 static QString dateTimeToString( const QDateTime &date,
00094 bool dateOnly = false,
00095 bool shortfmt = true );
00101 static QString resourceString( Calendar *calendar, Incidence *incidence );
00102
00108 static QString durationString( Incidence *incidence );
00109
00110 private:
00111 static QString formatICalInvitationHelper( QString invitation,
00112 Calendar *mCalendar,
00113 InvitationFormatterHelper *helper,
00114 bool noHtmlMode );
00115 class EventViewerVisitor;
00116 class ScheduleMessageVisitor;
00117 class InvitationHeaderVisitor;
00118 class InvitationBodyVisitor;
00119 class IncidenceCompareVisitor;
00120 class ToolTipVisitor;
00121 class MailBodyVisitor;
00122 };
00123
00124 }
00125
00126 #endif
|