diff options
author | toma <toma@283d02a7-25f6-0310-bc7c-ecb5cbfe19da> | 2009-11-25 17:56:58 +0000 |
---|---|---|
committer | toma <toma@283d02a7-25f6-0310-bc7c-ecb5cbfe19da> | 2009-11-25 17:56:58 +0000 |
commit | 460c52653ab0dcca6f19a4f492ed2c5e4e963ab0 (patch) | |
tree | 67208f7c145782a7e90b123b982ca78d88cc2c87 /libkmime/kmime_message.h | |
download | tdepim-460c52653ab0dcca6f19a4f492ed2c5e4e963ab0.tar.gz tdepim-460c52653ab0dcca6f19a4f492ed2c5e4e963ab0.zip |
Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features.
BUG:215923
git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/kdepim@1054174 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
Diffstat (limited to 'libkmime/kmime_message.h')
-rw-r--r-- | libkmime/kmime_message.h | 67 |
1 files changed, 67 insertions, 0 deletions
diff --git a/libkmime/kmime_message.h b/libkmime/kmime_message.h new file mode 100644 index 000000000..1209d420e --- /dev/null +++ b/libkmime/kmime_message.h @@ -0,0 +1,67 @@ +/* + kmime_message.h + + KMime, the KDE internet mail/usenet news message library. + Copyright (c) 2001 the KMime authors. + See file AUTHORS for details + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software Foundation, + Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, US +*/ +#ifndef __KMIME_MESSAGE_H__ +#define __KMIME_MESSAGE_H__ + +#include "kmime_content.h" +#include "kmime_headers.h" +#include "boolflags.h" + +namespace KMime { + +class KDE_EXPORT Message : public Content { + +public: + typedef QPtrList<Message> List; + + /** Constructor. Creates an empty message. */ + Message(); + ~Message(); + + //content handling + virtual void parse(); + virtual void assemble(); + virtual void clear(); + + //header access + virtual KMime::Headers::Base* getHeaderByType(const char *type); + virtual void setHeader(KMime::Headers::Base *h); + virtual bool removeHeader(const char *type); + + virtual KMime::Headers::MessageID* messageID(bool create=true) { KMime::Headers::MessageID *p=0; return getHeaderInstance(p, create); } + virtual KMime::Headers::Subject* subject(bool create=true) { if(!create && s_ubject.isEmpty()) return 0; return &s_ubject; } + virtual KMime::Headers::Date* date(bool create=true) { if(!create && d_ate.isEmpty()) return 0;return &d_ate; } + virtual KMime::Headers::From* from(bool create=true) { KMime::Headers::From *p=0; return getHeaderInstance(p, create); } + virtual KMime::Headers::Organization* organization(bool create=true) { KMime::Headers::Organization *p=0; return getHeaderInstance(p, create); } + virtual KMime::Headers::ReplyTo* replyTo(bool create=true) { KMime::Headers::ReplyTo *p=0; return getHeaderInstance(p, create); } + virtual KMime::Headers::To* to(bool create=true) { KMime::Headers::To *p=0; return getHeaderInstance(p, create); } + virtual KMime::Headers::CC* cc(bool create=true) { KMime::Headers::CC *p=0; return getHeaderInstance(p, create); } + virtual KMime::Headers::BCC* bcc(bool create=true) { KMime::Headers::BCC *p=0; return getHeaderInstance(p, create); } + virtual KMime::Headers::References* references(bool create=true) { KMime::Headers::References *p=0; return getHeaderInstance(p, create); } + virtual KMime::Headers::UserAgent* userAgent(bool create=true) { KMime::Headers::UserAgent *p=0; return getHeaderInstance(p, create); } + +protected: + //hardcoded headers + KMime::Headers::Subject s_ubject; + KMime::Headers::Date d_ate; + BoolFlags f_lags; // some status info + + +}; // class Message + +} // namespace KMime + +#endif // __KMIME_MESSAGE_H__ |