diff options
Diffstat (limited to 'src/core/rfc822/MCMessageBuilder.h')
-rw-r--r-- | src/core/rfc822/MCMessageBuilder.h | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/src/core/rfc822/MCMessageBuilder.h b/src/core/rfc822/MCMessageBuilder.h new file mode 100644 index 00000000..fd05f3dc --- /dev/null +++ b/src/core/rfc822/MCMessageBuilder.h @@ -0,0 +1,55 @@ +#ifndef __MAILCORE_MCMESSAGEBUILDER_H_ + +#define __MAILCORE_MCMESSAGEBUILDER_H_ + +#include <mailcore/MCBaseTypes.h> +#include <mailcore/MCAbstractMessage.h> + +namespace mailcore { + + class Attachment; + + class MessageBuilder : public AbstractMessage { + private: + String * mHTMLBody; + String * mTextBody; + Array * mAttachments; + Array * mRelatedAttachments; + String * mBoundaryPrefix; + void init(); + Data * dataAndFilterBcc(bool filterBcc); + + public: + MessageBuilder(); + MessageBuilder(MessageBuilder * other); + virtual ~MessageBuilder(); + + virtual String * description(); + //virtual String * className(); + virtual Object * copy(); + + virtual void setHTMLBody(String * htmlBody); + virtual String * htmlBody(); + + virtual void setTextBody(String * textBody); + virtual String * textBody(); + + virtual void setAttachments(Array * /* Attachment */ attachments); + virtual Array * /* Attachment */ attachments(); + virtual void addAttachment(Attachment * attachment); + + // attachments (usually images) that are included in HTML. + virtual void setRelatedAttachments(Array * /* Attachment */ attachments); + virtual Array * /* Attachment */ relatedAttachments(); + virtual void addRelatedAttachment(Attachment * attachment); + + // When boundary needs to be prefixed (to go through spam filters). + virtual void setBoundaryPrefix(String * boundaryPrefix); + virtual String * boundaryPrefix(); + + virtual Data * data(); + }; + +}; + +#endif |