KCalUtils Library
incidenceformatter.h
Go to the documentation of this file.
00001 /* 00002 This file is part of the kcalutils library. 00003 00004 Copyright (c) 2001-2003 Cornelius Schumacher <schumacher@kde.org> 00005 Copyright (c) 2004 Reinhold Kainhofer <reinhold@kainhofer.com> 00006 Copyright (c) 2009-2010 Klarälvdalens Datakonsult AB, a KDAB Group company <info@kdab.net> 00007 00008 This library is free software; you can redistribute it and/or 00009 modify it under the terms of the GNU Library General Public 00010 License as published by the Free Software Foundation; either 00011 version 2 of the License, or (at your option) any later version. 00012 00013 This library is distributed in the hope that it will be useful, 00014 but WITHOUT ANY WARRANTY; without even the implied warranty of 00015 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00016 Library General Public License for more details. 00017 00018 You should have received a copy of the GNU Library General Public License 00019 along with this library; see the file COPYING.LIB. If not, write to 00020 the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, 00021 Boston, MA 02110-1301, USA. 00022 */ 00032 #ifndef KCALUTILS_INCIDENCEFORMATTER_H 00033 #define KCALUTILS_INCIDENCEFORMATTER_H 00034 00035 #include "kcalutils_export.h" 00036 00037 #include <kcalcore/incidence.h> 00038 #include <kcalcore/memorycalendar.h> 00039 00040 namespace KCalUtils { 00041 00042 class KCALUTILS_EXPORT InvitationFormatterHelper 00043 { 00044 public: 00045 InvitationFormatterHelper(); 00046 virtual ~InvitationFormatterHelper(); 00047 virtual QString generateLinkURL( const QString &id ); 00048 virtual QString makeLink( const QString &id, const QString &text ); 00049 virtual KCalCore::Calendar::Ptr calendar() const; 00050 00051 private: 00052 //@cond PRIVATE 00053 Q_DISABLE_COPY( InvitationFormatterHelper ) 00054 class Private; 00055 Private *const d; 00056 //@endcond 00057 }; 00058 00068 namespace IncidenceFormatter 00069 { 00082 KCALUTILS_EXPORT QString toolTipStr( const QString &sourceName, 00083 const KCalCore::IncidenceBase::Ptr &incidence, 00084 const QDate &date = QDate(), 00085 bool richText = true, 00086 KDateTime::Spec spec = KDateTime::Spec() ); 00087 00098 KCALUTILS_EXPORT QString extensiveDisplayStr( const KCalCore::Calendar::Ptr &calendar, 00099 const KCalCore::IncidenceBase::Ptr &incidence, 00100 const QDate &date=QDate(), 00101 KDateTime::Spec spec=KDateTime::Spec() ); 00102 00113 KCALUTILS_EXPORT QString extensiveDisplayStr( const QString &sourceName, 00114 const KCalCore::IncidenceBase::Ptr &incidence, 00115 const QDate &date=QDate(), 00116 KDateTime::Spec spec=KDateTime::Spec() ); 00117 00125 KCALUTILS_EXPORT QString mailBodyStr( const KCalCore::IncidenceBase::Ptr &incidence, 00126 KDateTime::Spec spec=KDateTime::Spec() ); 00127 00139 KCALUTILS_EXPORT QString formatICalInvitation( 00140 QString invitation, 00141 const KCalCore::MemoryCalendar::Ptr &calendar, 00142 InvitationFormatterHelper *helper, 00143 bool outlookCompareStyle ); 00144 00159 KCALUTILS_EXPORT QString formatICalInvitationNoHtml( 00160 const QString &invitation, 00161 const KCalCore::MemoryCalendar::Ptr &calendar, 00162 InvitationFormatterHelper *helper, 00163 const QString &sender, 00164 bool outlookCompareStyle ); 00165 00169 KCALUTILS_EXPORT QString formatTNEFInvitation( const QByteArray &tnef, 00170 const KCalCore::Calendar::Ptr &mCalendar, 00171 InvitationFormatterHelper *helper ); 00175 KCALUTILS_EXPORT QString msTNEFToVPart( const QByteArray &tnef ); 00176 00182 KCALUTILS_EXPORT QString recurrenceString( const KCalCore::Incidence::Ptr &incidence ); 00183 00192 KCALUTILS_EXPORT QStringList reminderStringList( const KCalCore::Incidence::Ptr &incidence, 00193 bool shortfmt = true ); 00194 00202 KCALUTILS_EXPORT QString timeToString( const KDateTime &date, bool shortfmt = true, 00203 const KDateTime::Spec &spec = KDateTime::Spec() ); 00204 00212 KCALUTILS_EXPORT QString dateToString( const KDateTime &date, bool shortfmt = true, 00213 const KDateTime::Spec &spec = KDateTime::Spec() ); 00214 00223 KCALUTILS_EXPORT QString dateTimeToString( const KDateTime &date, 00224 bool dateOnly = false, 00225 bool shortfmt = true, 00226 const KDateTime::Spec &spec = KDateTime::Spec() ); 00227 00233 KCALUTILS_EXPORT QString resourceString( const KCalCore::Calendar::Ptr &calendar, 00234 const KCalCore::Incidence::Ptr &incidence ); 00235 00241 KCALUTILS_EXPORT QString durationString( const KCalCore::Incidence::Ptr &incidence ); 00242 00247 KCALUTILS_EXPORT QString incidenceStatusName( KCalCore::Incidence::Status status ); 00248 00252 KCALUTILS_EXPORT QString incidenceStatusStr( const KCalCore::Incidence::Ptr &incidence ); 00253 00254 class EventViewerVisitor; 00255 class ScheduleMessageVisitor; 00256 class InvitationHeaderVisitor; 00257 class InvitationBodyVisitor; 00258 class IncidenceCompareVisitor; 00259 class ToolTipVisitor; 00260 class MailBodyVisitor; 00261 } 00262 00263 } 00264 00265 #endif 00266