• Skip to content
  • Skip to link menu
KDE API Reference
  • KDE API Reference
  • kdepimlibs API Reference
  • KDE Home
  • Contact Us
 

KMIME Library

  • sources
  • kde-4.12
  • kdepimlibs
  • kmime
kmime_message.h
1 /*
2  kmime_message.h
3 
4  KMime, the KDE Internet mail/usenet news message library.
5  Copyright (c) 2001 the KMime authors.
6  See file AUTHORS for details
7 
8  This library is free software; you can redistribute it and/or
9  modify it under the terms of the GNU Library General Public
10  License as published by the Free Software Foundation; either
11  version 2 of the License, or (at your option) any later version.
12 
13  This library is distributed in the hope that it will be useful,
14  but WITHOUT ANY WARRANTY; without even the implied warranty of
15  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16  Library General Public License for more details.
17 
18  You should have received a copy of the GNU Library General Public License
19  along with this library; see the file COPYING.LIB. If not, write to
20  the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
21  Boston, MA 02110-1301, USA.
22 */
23 #ifndef __KMIME_MESSAGE_H__
24 #define __KMIME_MESSAGE_H__
25 
26 #include "kmime_export.h"
27 #include "kmime_content.h"
28 #include "kmime_headers.h"
29 #include "boolflags.h"
30 
31 #include <QtCore/QMetaType>
32 
33 namespace boost {
34  template <typename T> class shared_ptr;
35 }
36 
37 namespace KMime {
38 
39 class MessagePrivate;
40 
81 class KMIME_EXPORT Message : public Content
82 {
83  public:
87  typedef QList<KMime::Message*> List;
88 
92  typedef boost::shared_ptr<Message> Ptr;
93 
97  Message();
98 
102  ~Message();
103 
104  /* reimpl */
105  virtual void parse();
106 
107  /* reimpl */
108  virtual void clear();
109 
110  /* reimpl */
111  virtual KMIME_DEPRECATED KMime::Headers::Base *getHeaderByType( const char *type );
112 
113  /* reimpl */
114  virtual KMime::Headers::Base *headerByType( const char *type );
115 
116  /* reimpl */
117  virtual void setHeader( KMime::Headers::Base *h );
118 
119  /* reimpl */
120  virtual bool removeHeader( const char *type );
121 
122  // KDE5: Why are these virtual?
127  virtual KMime::Headers::MessageID *messageID( bool create = true );
128 
133  virtual KMime::Headers::Subject *subject( bool create = true );
134 
139  virtual KMime::Headers::Date *date( bool create = true );
140 
145  virtual KMime::Headers::From *from( bool create = true );
146 
151  virtual KMime::Headers::Organization *organization( bool create = true );
152 
157  virtual KMime::Headers::ReplyTo *replyTo( bool create = true );
158 
163  virtual KMime::Headers::To *to( bool create = true );
164 
169  virtual KMime::Headers::Cc *cc( bool create = true );
170 
175  virtual KMime::Headers::Bcc *bcc( bool create = true );
176 
181  virtual KMime::Headers::References *references( bool create = true );
182 
187  virtual KMime::Headers::UserAgent *userAgent( bool create = true );
188 
193  virtual KMime::Headers::InReplyTo *inReplyTo( bool create = true );
194 
199  virtual KMime::Headers::Sender *sender( bool create = true );
200 
201  /* reimpl */
202  virtual bool isTopLevel() const;
203 
213  Content* mainBodyPart( const QByteArray &type = QByteArray() );
214 
218  static QString mimeType();
219 
220  protected:
221  /* reimpl */
222  virtual QByteArray assembleHeaders();
223 
224  // @cond PRIVATE
225  explicit Message( MessagePrivate *d );
226  // @endcond
227 
228  private:
229  Q_DECLARE_PRIVATE( Message )
230 
231 }; // class Message
232 
233 } // namespace KMime
234 
235 #define KMIME_MESSAGE_METATYPE_DEFINED 1
236 Q_DECLARE_METATYPE( KMime::Message* )
237 
238 #endif // __KMIME_MESSAGE_H__
KMime::Headers::MessageID
Represents a "Message-ID" header.
Definition: kmime_headers.h:964
KMime::Headers::Date
Represents a "Date" header.
Definition: kmime_headers.h:1353
kmime_content.h
This file is part of the API for handling MIME data and defines the Content class.
KMime::Headers::References
Represents a "References" header.
Definition: kmime_headers.h:1018
KMime::Headers::Cc
Represents a "Cc" header.
Definition: kmime_headers.h:811
KMime::Message::List
QList< KMime::Message * > List
A list of messages.
Definition: kmime_message.h:87
KMime::Headers::To
Represents a "To" header.
Definition: kmime_headers.h:801
KMime::Headers::From
Represent a "From" header.
Definition: kmime_headers.h:781
KMime::Headers::Base
Baseclass of all header-classes.
Definition: kmime_headers.h:124
kmime_headers.h
This file is part of the API for handling MIME data and defines the various header classes: ...
KMime::Headers::ReplyTo
Represents a "ReplyTo" header.
Definition: kmime_headers.h:831
KMime::Message::Ptr
boost::shared_ptr< Message > Ptr
A shared pointer to a message object.
Definition: kmime_message.h:92
boolflags.h
This file is part of the API for handling MIME data and defines the BoolFlags class.
KMime::Message
Represents a (email) message.
Definition: kmime_message.h:81
KMime::Headers::InReplyTo
Represents a "In-Reply-To" header.
Definition: kmime_headers.h:1008
KMime::Headers::Subject
Represents a "Subject" header.
Definition: kmime_headers.h:1266
KMime::Headers::Organization
Represents a "Organization" header.
Definition: kmime_headers.h:1278
KMime::Content
A class that encapsulates MIME encoded Content.
Definition: kmime_content.h:112
KMime::Headers::UserAgent
Represents a "User-Agent" header.
Definition: kmime_headers.h:1479
KMime::Headers::Bcc
Represents a "Bcc" header.
Definition: kmime_headers.h:821
KMime::Headers::Sender
Represents a "Sender" header.
Definition: kmime_headers.h:791
This file is part of the KDE documentation.
Documentation copyright © 1996-2014 The KDE developers.
Generated on Tue Oct 14 2014 23:00:11 by doxygen 1.8.7 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

KMIME Library

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

kdepimlibs API Reference

Skip menu "kdepimlibs API Reference"
  • akonadi
  •   contact
  •   kmime
  •   socialutils
  • kabc
  • kalarmcal
  • kblog
  • kcal
  • kcalcore
  • kcalutils
  • kholidays
  • kimap
  • kldap
  • kmbox
  • kmime
  • kpimidentities
  • kpimtextedit
  • kresources
  • ktnef
  • kxmlrpcclient
  • microblog

Search



Report problems with this website to our bug tracking system.
Contact the specific authors with questions and comments about the page contents.

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal