X-Git-Url: http://git.maemo.org/git/?p=modest;a=blobdiff_plain;f=src%2Fmodest-formatter.h;h=15c00ed3c6a4f196fed05ce5bf984a941a3eed5d;hp=92bb9258a18d066bfb2b733b7493cf8cb25fc890;hb=e45958deaf9701399c552ea0d84c2447efacd4ca;hpb=3084439a659fa9aec750337f94cad4bca0c92898 diff --git a/src/modest-formatter.h b/src/modest-formatter.h index 92bb925..15c00ed 100644 --- a/src/modest-formatter.h +++ b/src/modest-formatter.h @@ -58,14 +58,152 @@ struct _ModestFormatterClass GType modest_formatter_get_type (void); -ModestFormatter* modest_formatter_new (const gchar *content_type); +ModestFormatter* modest_formatter_new (const gchar *content_type, const gchar *signature); +/** + * modest_formatter_cite: + * @self: a #ModestFormatter + * @part: a non-NULL #TnyMimePart with the body of the original message + * @header: a non-NULL #TnyHeader of the original message + * + * Creates a new message with a text body made from the body of the + * original message cited. This function is locale-sensitive. + * + * Example of cited message: + * + * Original message + * ---------------- + * Date: 1970/01/01 + * From: somemailATmodest.org + * Body: "This is the body of the text" + * + * Cited message + * ------------- + * Body: + * On 1970/01/01 somemailATmodest.org wrote: + * This is the body of the text + * + * + * Returns: a newly formatted #TnyMsg or NULL in case of error + **/ TnyMsg * modest_formatter_cite (ModestFormatter *self, TnyMimePart *part, TnyHeader *header); -TnyMsg * modest_formatter_quote (ModestFormatter *self, TnyMimePart *part, TnyHeader *header); -TnyMsg * modest_formatter_inline (ModestFormatter *self, TnyMimePart *part, TnyHeader *header); -TnyMsg * modest_formatter_attach (ModestFormatter *self, TnyMimePart *part, TnyHeader *header); +/** + * modest_formatter_quote: + * @self: a #ModestFormatter + * @part: a non-NULL #TnyMimePart with the body of the original message + * @header: a non-NULL #TnyHeader of the original message + * @attachments: a #GList of attachments in original message + * + * Creates a new message with a text body made from the body of the + * original message quoted. This function is locale-sensitive. + * + * Example of cited message: + * + * Original message + * ---------------- + * Date: 1970/01/01 + * From: somemailATmodest.org + * Body: "This is the body of the text" + * + * Quoted message + * ------------- + * Body: + * ------ Original message ----- + * > This is the body of the text + * > Attachment: file1.txt + * + * + * Returns: a newly formatted #TnyMsg or NULL in case of error + **/ +TnyMsg * modest_formatter_quote (ModestFormatter *self, TnyMimePart *part, TnyHeader *header, GList *attachments); + + +/** + * modest_formatter_inline: + * @self: a #ModestFormatter + * @part: a non-NULL #TnyMimePart with the body of the original message + * @header: a non-NULL #TnyHeader of the original message + * @attachments: a #GList of attachments + * + * Creates a new message with a text body made from the body of the + * original message inlined ready to be forwarded. This function is + * locale-sensitive. + * + * Example of cited message: + * + * Original message + * ---------------- + * Date: 1970/01/01 + * From: somemailATmodest.org + * To: mymailATmodest.org + * Subject: Mail subject + * Body: "This is the body of the text" + * + * Inlined message + * ------------- + * Body: + * -----Forwarded Message----- + * From: somemailATmodest.org + * Sent: 1970/01/01 + * To: mymailATmodest.org + * Subject: Fw: Mail subject + * On 1970/01/01 somemailATmodest.org wrote: + * This is the body of the text + * + * + * Returns: a newly formatted #TnyMsg or NULL in case of error + **/ +TnyMsg * modest_formatter_inline (ModestFormatter *self, TnyMimePart *part, TnyHeader *header, GList *attachments); + +/** + * modest_formatter_attach: + * @self: a #ModestFormatter + * @part: a non-NULL #TnyMimePart with the body of the original message + * @header: a non-NULL #TnyHeader of the original message + * + * Creates a new message with the original message as attachment + * + * Returns: a newly formatted #TnyMsg or NULL in case of error + **/ +TnyMsg * modest_formatter_attach (ModestFormatter *self, TnyMsg *msg, TnyHeader *header); + +/** + * modest_formatter_create_message: + * @self: a #ModestFormatter + * @single_body: a #gboolean + * @has_attachments: a #gboolean + * @has_images: a #gboolean + * + * Creates an empty #TnyMsg with the expected parts for Modest + * formatters and body embedders. + * + * If @has_attachments is %TRUE, the mail will be formatted as + * "multipart/mixed", and attachments will be stored as parts + * of it. The body will be just another multipart. If %FALSE, + * the bodies will be stored directly as the message. + * + * If @single_body is %TRUE, the body will be stored as a + * "multipart/alternative", and the parts will be the different + * alternatives. If %FALSE, this body will be stored directly. + * + * If @has_images is %TRUE, the body will be embedded in a + * multipart/related, that will also host attached images. + */ +TnyMsg * modest_formatter_create_message (ModestFormatter *self, gboolean single_body, + gboolean has_attachments, gboolean has_images); + +/** + * modest_formatter_create_body_part: + * @self: a #ModestFormatter + * + * Obtains a new formatted body part for @msg, or + * @msg itself if the body is intended to be stored directly + * in it. + */ +TnyMimePart * modest_formatter_create_body_part (ModestFormatter *self, TnyMsg *msg); + G_END_DECLS #endif