• Skip to content
  • Skip to link menu
KDE 4.5 API Reference
  • KDE API Reference
  • KDE-PIM Libraries
  • Sitemap
  • 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 };
00073 
00074 kmime_mk_empty_private( SingleIdent, Ident )
00075 
00076 class TokenPrivate : public StructuredPrivate
00077 {
00078   public:
00079     QByteArray token;
00080 };
00081 
00082 class PhraseListPrivate : public StructuredPrivate
00083 {
00084   public:
00085     QStringList phraseList;
00086 };
00087 
00088 class DotAtomPrivate : public StructuredPrivate
00089 {
00090   public:
00091     QString dotAtom;
00092 };
00093 
00094 class ParametrizedPrivate : public StructuredPrivate
00095 {
00096   public:
00097     QMap<QString,QString> parameterHash;
00098 };
00099 
00100 } // namespace Generics
00101 
00102 class ReturnPathPrivate : public Generics::AddressPrivate
00103 {
00104   public:
00105     Types::Mailbox mailbox;
00106 };
00107 
00108 class MailCopiesToPrivate : public Generics::AddressListPrivate
00109 {
00110   public:
00111     bool alwaysCopy;
00112     bool neverCopy;
00113 };
00114 
00115 class ContentTransferEncodingPrivate : public Generics::TokenPrivate
00116 {
00117   public:
00118     contentEncoding cte;
00119     bool decoded;
00120 };
00121 
00122 class ContentTypePrivate : public Generics::ParametrizedPrivate
00123 {
00124   public:
00125     contentCategory category;
00126     QByteArray mimeType;
00127     QByteArray mimeSubType;
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
  • Class Hierarchy
  • Alphabetical List
  • Class List
  • File List
  • Namespace Members
  • Class Members
  • Related Pages

KDE-PIM Libraries

Skip menu "KDE-PIM Libraries"
  • akonadi
  •   contact
  •   kmime
  • kabc
  • kblog
  • kcal
  • kholidays
  • kimap
  • kioslave
  •   imap4
  •   mbox
  •   nntp
  • kldap
  • 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.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