KTNEF Library
ktnefwriter.h
Go to the documentation of this file.
00001 /* 00002 ktnefwriter.cpp 00003 00004 Copyright (C) 2002 Bo Thorsen <bo@sonofthor.dk> 00005 00006 This file is part of KTNEF, the KDE TNEF support library/program. 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 */ 00031 #ifndef KTNEFWRITER_H 00032 #define KTNEFWRITER_H 00033 00034 class QString; 00035 class QVariant; 00036 class QIODevice; 00037 class QDataStream; 00038 class QDateTime; 00039 class QStringList; 00040 00041 #include "ktnef_export.h" 00042 00043 namespace KTnef { 00044 00049 class KTNEF_EXPORT KTNEFWriter 00050 { 00051 public: 00055 enum MessageType { 00056 Appointment, 00057 MeetingCancelled, 00058 MeetingRequest, 00059 MeetingNo, 00060 MeetingYes, 00061 MeetingTent 00062 }; 00063 00067 enum Method { 00068 PublishNew, 00069 Obsolete, 00070 RequestNew, 00071 RequestUpdate, 00072 Unknown 00073 }; 00074 00078 enum Role { 00079 ReqParticipant, 00080 OptParticipant, 00081 NonParticipant, 00082 Chair 00083 }; 00084 00088 enum PartStat { 00089 NeedsAction, 00090 Accepted, 00091 Declined, 00092 Tentative, 00093 Delegated, 00094 Completed, 00095 InProcess 00096 }; 00097 00101 enum Priority { 00102 High = 2, 00103 Normal = 3, 00104 Low = 1 00105 }; 00106 00110 enum AlarmAction { 00111 Display 00112 }; 00113 00117 KTNEFWriter(); 00118 00122 ~KTNEFWriter(); 00123 00131 void addProperty( int tag, int type, const QVariant &value ); 00132 00149 bool writeProperty( QDataStream &stream, int &bytes, int tag ) const; 00150 00157 bool writeFile( QIODevice &file ) const; 00158 00165 bool writeFile( QDataStream &stream ) const; 00166 00173 void setSender( const QString &name, const QString &email ); 00174 00180 void setMessageType( MessageType methodType ); 00181 00187 void setMethod( Method method ); 00188 00192 void clearAttendees(); 00193 00203 void addAttendee( const QString &name, Role role, PartStat partstat, 00204 bool rsvp, const QString &email ); 00205 00213 void setOrganizer( const QString &organizer ); 00214 00220 void setDtStart( const QDateTime &dtStart ); 00221 00227 void setDtEnd( const QDateTime &dtEnd ); 00228 00234 void setLocation( const QString &location ); 00235 00241 void setUID( const QString &uid ); 00242 00248 void setDtStamp( const QDateTime &dtStamp ); 00249 00255 void setCategories( const QStringList &categories ); 00256 00262 void setDescription( const QString &description ); 00263 00269 void setSummary( const QString &summary ); 00270 00276 void setPriority( Priority priority ); 00277 00285 void setAlarm( const QString &description, AlarmAction action, 00286 const QDateTime &wakeBefore ); 00287 00288 private: 00289 //@cond PRIVATE 00290 class PrivateData; 00291 PrivateData *const d; 00292 //@endcond 00293 00294 Q_DISABLE_COPY( KTNEFWriter ) 00295 }; 00296 00297 } 00298 00299 #endif // KTNEFWRITER_H
This file is part of the KDE documentation.
Documentation copyright © 1996-2012 The KDE developers.
Generated on Thu May 10 2012 22:20:37 by doxygen 1.8.0 written by Dimitri van Heesch, © 1997-2006
Documentation copyright © 1996-2012 The KDE developers.
Generated on Thu May 10 2012 22:20:37 by doxygen 1.8.0 written by Dimitri van Heesch, © 1997-2006
KDE's Doxygen guidelines are available online.