kmail
bodypart.h00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034 #ifndef __KMAIL_INTERFACES_BODYPART_H__
00035 #define __KMAIL_INTERFACES_BODYPART_H__
00036
00037 template <typename T> class QMemArray;
00038 typedef QMemArray<char> QByteArray;
00039 class QString;
00040
00041 namespace KMail {
00042 namespace Interface {
00043
00044 class Observer;
00045 class Observable;
00046
00050 class BodyPartMemento {
00051 public:
00052 virtual ~BodyPartMemento() {}
00053
00060 virtual Observer * asObserver() = 0;
00061
00068 virtual Observable * asObservable() = 0;
00069 };
00070
00074 class BodyPart {
00075 public:
00076 virtual ~BodyPart() {}
00077
00082 virtual QString makeLink( const QString & path ) const = 0;
00083
00089 virtual QString asText() const = 0;
00090
00095 virtual QByteArray asBinary() const = 0;
00096
00113 virtual QString contentTypeParameter( const char * parameter ) const = 0;
00114
00120 virtual QString contentDescription() const = 0;
00121
00122
00132 virtual QString contentDispositionParameter( const char * parameter ) const = 0;
00133
00138 virtual bool hasCompleteBody() const = 0;
00139
00144 virtual BodyPartMemento * memento() const = 0;
00145
00150 virtual void setBodyPartMemento( BodyPartMemento * ) = 0;
00151
00152 enum Display { None, AsIcon, Inline };
00156 virtual Display defaultDisplay() const = 0;
00157 };
00158
00159 }
00160
00161 }
00162
00163 #endif // __KMAIL_INTERFACES_BODYPART_H__
|