• Skip to content
  • Skip to link menu
KDE 4.8 API Reference
  • KDE API Reference
  • KDE-PIM Libraries
  • KDE Home
  • Contact Us
 

KMIME Library

kmime_headers_p.h
00001 /*
00002     Copyright (c) 2007 Volker Krause <vkrause@kde.org>
00003 
00004     This library is free software; you can redistribute it and/or modify it
00005     under the terms of the GNU Library General Public License as published by
00006     the Free Software Foundation; either version 2 of the License, or (at your
00007     option) any later version.
00008 
00009     This library is distributed in the hope that it will be useful, but WITHOUT
00010     ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
00011     FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Library General Public
00012     License for more details.
00013 
00014     You should have received a copy of the GNU Library General Public License
00015     along with this library; see the file COPYING.LIB.  If not, write to the
00016     Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
00017     02110-1301, USA.
00018 */
00019 
00020 #ifndef KMIME_HEADERS_P_H
00021 #define KMIME_HEADERS_P_H
00022 
00023 //@cond PRIVATE
00024 
00025 #define kmime_mk_empty_private( subclass, base ) \
00026 class subclass##Private : public base##Private {};
00027 
00028 namespace KMime {
00029 
00030 namespace Headers {
00031 
00032 class BasePrivate
00033 {
00034   public:
00035     BasePrivate() : parent( 0 ) {}
00036 
00037     virtual ~BasePrivate() {}
00038 
00039     KMime::Content *parent;
00040     QByteArray encCS;
00041 };
00042 
00043 namespace Generics {
00044 
00045 class UnstructuredPrivate : public BasePrivate
00046 {
00047   public:
00048     QString decoded;
00049 };
00050 
00051 kmime_mk_empty_private( Structured, Base )
00052 kmime_mk_empty_private( Address, Structured )
00053 
00054 class MailboxListPrivate : public AddressPrivate
00055 {
00056   public:
00057     QList<Types::Mailbox> mailboxList;
00058 };
00059 
00060 kmime_mk_empty_private( SingleMailbox, MailboxList )
00061 
00062 class AddressListPrivate : public AddressPrivate
00063 {
00064   public:
00065     QList<Types::Address> addressList;
00066 };
00067 
00068 class IdentPrivate : public AddressPrivate
00069 {
00070   public:
00071     QList<Types::AddrSpec> msgIdList;
00072     mutable QByteArray cachedIdentifier;
00073 };
00074 
00075 kmime_mk_empty_private( SingleIdent, Ident )
00076 
00077 class TokenPrivate : public StructuredPrivate
00078 {
00079   public:
00080     QByteArray token;
00081 };
00082 
00083 class PhraseListPrivate : public StructuredPrivate
00084 {
00085   public:
00086     QStringList phraseList;
00087 };
00088 
00089 class DotAtomPrivate : public StructuredPrivate
00090 {
00091   public:
00092     QString dotAtom;
00093 };
00094 
00095 class ParametrizedPrivate : public StructuredPrivate
00096 {
00097   public:
00098     QMap<QString,QString> parameterHash;
00099 };
00100 
00101 } // namespace Generics
00102 
00103 class ReturnPathPrivate : public Generics::AddressPrivate
00104 {
00105   public:
00106     Types::Mailbox mailbox;
00107 };
00108 
00109 class MailCopiesToPrivate : public Generics::AddressListPrivate
00110 {
00111   public:
00112     bool alwaysCopy;
00113     bool neverCopy;
00114 };
00115 
00116 class ContentTransferEncodingPrivate : public Generics::TokenPrivate
00117 {
00118   public:
00119     contentEncoding cte;
00120     bool decoded;
00121 };
00122 
00123 class ContentTypePrivate : public Generics::ParametrizedPrivate
00124 {
00125   public:
00126     QByteArray mimeType;
00127     contentCategory category;
00128 };
00129 
00130 class ContentDispositionPrivate : public Generics::ParametrizedPrivate
00131 {
00132   public:
00133     contentDisposition disposition;
00134 };
00135 
00136 class GenericPrivate : public Generics::UnstructuredPrivate
00137 {
00138   public:
00139     GenericPrivate() : type( 0 ) {}
00140     ~GenericPrivate()
00141     {
00142       delete[] type;
00143     }
00144 
00145     char *type;
00146 };
00147 
00148 class ControlPrivate : public Generics::StructuredPrivate
00149 {
00150   public:
00151     QByteArray name;
00152     QByteArray parameter;
00153 };
00154 
00155 class DatePrivate : public Generics::StructuredPrivate
00156 {
00157   public:
00158     KDateTime dateTime;
00159 };
00160 
00161 class NewsgroupsPrivate : public Generics::StructuredPrivate
00162 {
00163   public:
00164     QList<QByteArray> groups;
00165 };
00166 
00167 class LinesPrivate : public Generics::StructuredPrivate
00168 {
00169   public:
00170     int lines;
00171 };
00172 
00173 kmime_mk_empty_private( ContentID, Generics::SingleIdent )
00174 }
00175 
00176 }
00177 
00178 #undef kmime_mk_empty_private
00179 
00180 //@endcond
00181 
00182 #endif

KMIME Library

Skip menu "KMIME Library"
  • Main Page
  • Namespace List
  • Namespace Members
  • Alphabetical List
  • Class List
  • Class Hierarchy
  • Class Members
  • File List
  • Related Pages

KDE-PIM Libraries

Skip menu "KDE-PIM Libraries"
  • akonadi
  •   contact
  •   kmime
  • kabc
  • kalarmcal
  • kblog
  • kcal
  • kcalcore
  • kcalutils
  • kholidays
  • kimap
  • kioslave
  •   imap4
  •   mbox
  •   nntp
  • kldap
  • kmbox
  • kmime
  • kontactinterface
  • kpimidentities
  • kpimtextedit
  •   richtextbuilders
  • kpimutils
  • kresources
  • ktnef
  • kxmlrpcclient
  • mailtransport
  • microblog
  • qgpgme
  • syndication
  •   atom
  •   rdf
  •   rss2
Generated for KDE-PIM Libraries by doxygen 1.7.6.1
This website is maintained by Adriaan de Groot and Allen Winter.
KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal