Do ignore empty recipients when checking names
[modest] / src / modest-formatter.h
index b8c5a92..15c00ed 100644 (file)
@@ -94,6 +94,7 @@ TnyMsg * modest_formatter_cite   (ModestFormatter *self, TnyMimePart *part, TnyH
  * @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.
@@ -109,13 +110,14 @@ TnyMsg * modest_formatter_cite   (ModestFormatter *self, TnyMimePart *part, TnyH
  * Quoted message
  * -------------
  * Body:
- * On 1970/01/01 somemailATmodest.org wrote:
+ * ------ Original message -----
  * > This is the body of the text
+ * > Attachment: file1.txt
  * </para></programlisting>
  *
  * Returns: a newly formatted #TnyMsg or NULL in case of error
  **/
-TnyMsg * modest_formatter_quote  (ModestFormatter *self, TnyMimePart *part, TnyHeader *header);
+TnyMsg * modest_formatter_quote  (ModestFormatter *self, TnyMimePart *part, TnyHeader *header, GList *attachments);
 
 
 /**
@@ -123,6 +125,7 @@ TnyMsg * modest_formatter_quote  (ModestFormatter *self, TnyMimePart *part, TnyH
  * @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
@@ -152,7 +155,7 @@ TnyMsg * modest_formatter_quote  (ModestFormatter *self, TnyMimePart *part, TnyH
  *
  * Returns: a newly formatted #TnyMsg or NULL in case of error
  **/
-TnyMsg * modest_formatter_inline (ModestFormatter *self, TnyMimePart *part, TnyHeader *header);
+TnyMsg * modest_formatter_inline (ModestFormatter *self, TnyMimePart *part, TnyHeader *header, GList *attachments);
 
 /**
  * modest_formatter_attach:
@@ -164,8 +167,42 @@ TnyMsg * modest_formatter_inline (ModestFormatter *self, TnyMimePart *part, TnyH
  *
  * Returns: a newly formatted #TnyMsg or NULL in case of error
  **/
-TnyMsg * modest_formatter_attach (ModestFormatter *self, TnyMimePart *part, TnyHeader *header);
+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