X-Git-Url: http://git.maemo.org/git/?a=blobdiff_plain;f=src%2Fwidgets%2Fmodest-msg-edit-window.h;h=2fad4979ee4c5e579181e1d5ff85f8f5f7f68b54;hb=ec47f9c9669fccab54927a49c3c0f4233df2f180;hp=b657e9eb60ced10ec86c86dae86d7b51ec1f3c9b;hpb=8885ff625adf8c47b51e306b1d9a9ae4c8bb8d67;p=modest diff --git a/src/widgets/modest-msg-edit-window.h b/src/widgets/modest-msg-edit-window.h index b657e9e..2fad497 100644 --- a/src/widgets/modest-msg-edit-window.h +++ b/src/widgets/modest-msg-edit-window.h @@ -61,15 +61,31 @@ typedef enum { MODEST_EDIT_TYPE_NEW, MODEST_EDIT_TYPE_REPLY, MODEST_EDIT_TYPE_FORWARD, - MODEST_EDIT_TYPE_VIEW, MODEST_EDIT_TYPE_NUM } ModestEditType; -typedef struct _MsgData { - gchar *from, *to, *cc, *bcc, *subject, *body; +typedef enum { + MODEST_MSG_EDIT_FORMAT_TEXT, + MODEST_MSG_EDIT_FORMAT_HTML +} ModestMsgEditFormat; + +typedef struct { + gchar *from, *to, *cc, *bcc, *subject, *plain_body, *html_body; + GList *attachments; + TnyHeaderFlags priority_flags; } MsgData; +typedef struct { + gboolean bold; + gboolean italics; + gboolean bullet; + GdkColor color; + const gchar *font_family; + gint font_size; + GtkJustification justification; +} ModestMsgEditFormatState; + /** * modest_msg_edit_window_get_type: @@ -83,23 +99,14 @@ GType modest_msg_edit_window_get_type (void) G_GNUC_CONST; /** * modest_msg_edit_window_new: + * #msg: a #TnyMsg instance + * #account_name: the account this message applies to * * instantiates a new #ModestMsgEditWindow widget * * Returns: a new #ModestMsgEditWindow, or NULL in case of error */ -ModestWindow* modest_msg_edit_window_new (ModestEditType type); - - -/** - * modest_msg_edit_window_set_msg: - * @self: a #ModestMsgEditWindow - * @msg: a #TnyMsg - * - * shows the message @msg in a #ModestMsgEditWindow - **/ -void modest_msg_edit_window_set_msg (ModestMsgEditWindow *self, - TnyMsg *msg); +ModestWindow* modest_msg_edit_window_new (TnyMsg *msg, const gchar *account_name); /** @@ -123,6 +130,145 @@ MsgData * modest_msg_edit_window_get_msg_data (ModestMsgE **/ void modest_msg_edit_window_free_msg_data (ModestMsgEditWindow *self, MsgData *data); + +/** + * modest_msg_edit_window_get_format: + * @self: a #ModestMsgEditWindow + * + * obtains the format type of the message body. + * + * Returns: a #ModestMsgEditFormat + **/ +ModestMsgEditFormat modest_msg_edit_window_get_format (ModestMsgEditWindow *self); + +/** + * modest_msg_edit_window_set_format: + * @self: a #ModestMsgEditWindow + * @format: a #ModestMsgEditFormat + * + * set the @format of the edit window message body. + **/ +void modest_msg_edit_window_set_format (ModestMsgEditWindow *self, + ModestMsgEditFormat format); + +/** + * modest_msg_edit_window_get_format_state: + * @self: a #ModestMsgEditWindow + * + * get the current format state (the format attributes the text user inserts + * will get). + * + * Returns: a #ModestMsgEditFormatState structure that should be freed with g_free(). + **/ +ModestMsgEditFormatState *modest_msg_edit_window_get_format_state (ModestMsgEditWindow *self); + +/** + * modest_msg_edit_window_set_format_state: + * @self: a #ModestMsgEditWindow + * @format_state: a #ModestMsgEditWindowFormatState + * + * sets a new format state (the format attributes the text user inserts + * will get). + **/ +void modest_msg_edit_window_set_format_state (ModestMsgEditWindow *self, + const ModestMsgEditFormatState *format_state); + +/** + * modest_msg_edit_window_select_color: + * @self: a #ModestMsgEditWindow + * + * show color selection dialog and update text color + */ +void modest_msg_edit_window_select_color (ModestMsgEditWindow *window); + +/** + * modest_msg_edit_window_select_background_color: + * @self: a #ModestMsgEditWindow + * + * show color selection dialog and update background color + */ +void modest_msg_edit_window_select_background_color (ModestMsgEditWindow *window); + +/** + * modest_msg_edit_window_insert_image: + * @self: a #ModestMsgEditWindow + * + * show a file selection dialog to insert an image + */ +void modest_msg_edit_window_insert_image (ModestMsgEditWindow *window); + +/** + * modest_msg_edit_window_show_cc: + * @window: a #ModestMsgEditWindow + * @show: a #gboolean + * + * Set the CC field as visible (or not visible) depending on @show + */ +void modest_msg_edit_window_show_cc (ModestMsgEditWindow *window, gboolean show); + +/** + * modest_msg_edit_window_show_bcc: + * @window: a #ModestMsgEditWindow + * @show: a #gboolean + * + * Set the BCC field as visible (or not visible) depending on @show + */ +void modest_msg_edit_window_show_bcc (ModestMsgEditWindow *window, gboolean show); + +/** + * modest_msg_edit_window_toggle_fullscreen: + * @window: a #ModestMsgEditWindow + * + * toggles the current fullscreen status + */ +void modest_msg_edit_window_toggle_fullscreen (ModestMsgEditWindow *window); + +/** + * modest_msg_edit_window_set_priority_flags: + * @window: a #ModestMsgEditWindow + * @priority_flags: a #TnyHeaderFlags with priority information + * + * Updates the icon and priority flag to send. + */ +void modest_msg_edit_window_set_priority_flags (ModestMsgEditWindow *window, + TnyHeaderFlags priority_flags); + +/** + * 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_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); + G_END_DECLS #endif /* __MODEST_MSG_EDIT_WINDOW_H__ */