+/**
+ * modest_msg_edit_window_set_file_format:
+ * @window: a #ModestMsgEditWindow
+ * @file_format: %MODEST_FILE_FORMAT_PLAIN_TEXT or %MODEST_FILE_FORMAT_FORMATTED_TEXT
+ *
+ * Changes the current file format.
+ */
+void modest_msg_edit_window_set_file_format (ModestMsgEditWindow *window,
+ gint file_format);
+
+/**
+ * modest_msg_edit_window_select_font:
+ * @window: a #ModestMsgEditWindow
+ *
+ * Show the dialog to select the editor font and update the
+ * used font in the editor.
+ */
+void modest_msg_edit_window_select_font (ModestMsgEditWindow *window);
+
+/**
+ * modest_msg_edit_window_undo:
+ * @window: a #ModestMsgEditWindow
+ *
+ * Undoes the last operation.
+ */
+void modest_msg_edit_window_undo (ModestMsgEditWindow *window);
+
+/**
+ * modest_msg_edit_window_can_undo:
+ * @window: a #ModestMsgEditWindow
+ *
+ * Checks if an undo operation is available
+ *
+ * Returns: %TRUE if undo can be done, %FALSE otherwise.
+ */
+gboolean modest_msg_edit_window_can_undo (ModestMsgEditWindow *window);
+
+/**
+ * modest_msg_edit_window_redo:
+ * @window: a #ModestMsgEditWindow
+ *
+ * Revert last undo
+ */
+void modest_msg_edit_window_redo (ModestMsgEditWindow *window);
+
+/**
+ * modest_msg_edit_window_can_redo:
+ * @window: a #ModestMsgEditWindow
+ *
+ * Checks if a redp operation is available
+ *
+ * Returns: %TRUE if redo can be done, %FALSE otherwise.
+ */
+gboolean modest_msg_edit_window_can_redo (ModestMsgEditWindow *window);
+
+/**
+ * modest_msg_edit_window_select_contacts:
+ * @window: a #ModestMsgEditWindow
+ *
+ * Shows the dialog to add contacts to the currently focused recipient list,
+ * or to To: recipient if no recipient list is focused.
+ */
+void modest_msg_edit_window_select_contacts (ModestMsgEditWindow *window);
+
+/**
+ * modest_msg_edit_window_add_to_contacts:
+ * @self: a #ModestMsgEditWindow
+ *
+ * activates the add to contacts use. It shows the add to contacts
+ * dialog to select the recipient to add.
+ */
+void modest_msg_edit_window_add_to_contacts (ModestMsgEditWindow *self);
+
+/**
+ * modest_msg_edit_window_check_names:
+ * @window: a #ModestMsgEditWindow
+ * @add_to_addressbook: if TRUE, add valid addresses to the addressbook
+ *
+ * Validates all the recipients, and shows (if required) dialogs for adding contacts
+ * or fixing problems in specific fields.
+ *
+ * Returns: %TRUE if all fields were validated, %FALSE otherwise
+ */
+gboolean modest_msg_edit_window_check_names (ModestMsgEditWindow *window,
+ gboolean add_to_addressbook);
+
+/**
+ * modest_msg_edit_window_has_pending_addresses:
+ * @window: a #ModestMsgEditWindow
+ * @add_to_addressbook: if TRUE, add valid addresses to the addressbook
+ *
+ * Validates all the recipients, and checks if there are addresses in
+ * any field that could be added to the addressbook
+ *
+ * Returns: %TRUE if there are valid pending addresses, %FALSE otherwise
+ */
+gboolean modest_msg_edit_window_has_pending_addresses (ModestMsgEditWindow *window);
+
+/**
+ * modest_msg_edit_window_toggle_isearch_toolbar:
+ * @window: a #ModestMsgEditWindow
+ * @show: a #gboolean
+ *
+ * Shows/Hides the isearch toolbar
+ */
+void modest_msg_edit_window_toggle_isearch_toolbar (ModestMsgEditWindow *window,
+ gboolean show);
+
+
+/**
+ * modest_msg_edit_window_is_modified:
+ * @window: a #ModestMsgEditWindow
+ *
+ * Examines whether or not the message has been modified
+ *
+ * Returns: %TRUE if any field has been modified, %FALSE otherwise
+ */
+gboolean modest_msg_edit_window_is_modified (ModestMsgEditWindow *window);
+
+/**
+ * modest_msg_edit_window_reset_modified:
+ * @window: a #ModestMsgEditWindow
+ * @modified: wheter or not we want to make the buffer as modified or not
+ *
+ * Sets the message as modified or not
+ */
+void modest_msg_edit_window_set_modified (ModestMsgEditWindow *window,
+ gboolean modified);
+
+
+gboolean modest_msg_edit_window_get_sent (ModestMsgEditWindow *window);
+void modest_msg_edit_window_set_sent (ModestMsgEditWindow *window,
+ gboolean sent);
+
+/**
+ * modest_msg_edit_window_set_draft:
+ * @window: a #ModestMsgEditWindow
+ * @draft: a #TnyMsg, or %NULL
+ *
+ * Set @draft as the original draft message of the editor. This
+ * message will be removed on saving or sending the message.
+ */
+void modest_msg_edit_window_set_draft (ModestMsgEditWindow *window,
+ TnyMsg *draft);
+/**
+ * modest_msg_edit_window_get_message_uid:
+ * @msg: an #ModestMsgEditWindow instance
+ *
+ * gets the unique identifier for the message in this msg editor.
+ * This is the identifier of the draft or outbox message the editor was
+ * opened from. If it's a new message, then it returns %NULL
+ *
+ * Returns: the id of the #TnyMsg being shown, or NULL in case of error
+ */
+const gchar* modest_msg_edit_window_get_message_uid (ModestMsgEditWindow *window);
+
+/**
+ * modest_msg_edit_window_get_child_widget:
+ * @win: a #ModestMsgEditWindow
+ * @widget_type: the type of the child to obtain
+ *
+ * Obtain the child widget of @win of type @widget_type
+ *
+ * Returns: a #GtkWidget, or %NULL
+ */
+GtkWidget *
+modest_msg_edit_window_get_child_widget (ModestMsgEditWindow *win,
+ ModestMsgEditWindowWidgetType widget_type);
+
+/**
+ * modest_msg_edit_window_get_clipboard_text:
+ * @win: a #ModestMsgEditWindow
+ *
+ * Obtains the currently selected text in selection clipboard
+ *
+ * Returns: a string
+ */
+const gchar *
+modest_msg_edit_window_get_clipboard_text (ModestMsgEditWindow *win);
+
+/**
+ * modest_msg_edit_window_set_custom_header_pairs:
+ * @win: a #ModestMsgEditWindow
+ * @header_pairs: a #TnyList of #TnyPair
+ *
+ * sets a list of custom header pairs that will be added to the created
+ * #TnyMsg.
+ */
+void
+modest_msg_edit_window_set_custom_header_pairs (ModestMsgEditWindow *self,
+ TnyList *header_pairs);
+