1 /* 2 * e-mail-signature-editor.h 3 * 4 * This program is free software; you can redistribute it and/or modify it 5 * under the terms of the GNU Lesser General Public License as published by 6 * the Free Software Foundation. 7 * 8 * This program is distributed in the hope that it will be useful, but 9 * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY 10 * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 11 * for more details. 12 * 13 * You should have received a copy of the GNU Lesser General Public License 14 * along with this program; if not, see <http://www.gnu.org/licenses/>. 15 * 16 */ 17 18 #if !defined (__E_UTIL_H_INSIDE__) && !defined (LIBEUTIL_COMPILATION) 19 #error "Only <e-util/e-util.h> should be included directly." 20 #endif 21 22 #ifndef E_MAIL_SIGNATURE_EDITOR_H 23 #define E_MAIL_SIGNATURE_EDITOR_H 24 25 #include <libedataserver/libedataserver.h> 26 27 #include <e-util/e-html-editor.h> 28 #include <e-util/e-focus-tracker.h> 29 30 /* Standard GObject macros */ 31 #define E_TYPE_MAIL_SIGNATURE_EDITOR \ 32 (e_mail_signature_editor_get_type ()) 33 #define E_MAIL_SIGNATURE_EDITOR(obj) \ 34 (G_TYPE_CHECK_INSTANCE_CAST \ 35 ((obj), E_TYPE_MAIL_SIGNATURE_EDITOR, EMailSignatureEditor)) 36 #define E_MAIL_SIGNATURE_EDITOR_CLASS(cls) \ 37 (G_TYPE_CHECK_CLASS_CAST \ 38 ((cls), E_TYPE_MAIL_SIGNATURE_EDITOR, EMailSignatureEditorClass)) 39 #define E_IS_MAIL_SIGNATURE_EDITOR(obj) \ 40 (G_TYPE_CHECK_INSTANCE_TYPE \ 41 ((obj), E_TYPE_MAIL_SIGNATURE_EDITOR)) 42 #define E_IS_MAIL_SIGNATURE_EDITOR_CLASS(cls) \ 43 (G_TYPE_CHECK_CLASS_TYPE \ 44 ((cls), E_TYPE_MAIL_SIGNATURE_EDITOR)) 45 #define E_MAIL_SIGNATURE_EDITOR_GET_CLASS(obj) \ 46 (G_TYPE_INSTANCE_GET_CLASS \ 47 ((obj), E_TYPE_MAIL_SIGNATURE_EDITOR, EMailSignatureEditorClass)) 48 49 G_BEGIN_DECLS 50 51 typedef struct _EMailSignatureEditor EMailSignatureEditor; 52 typedef struct _EMailSignatureEditorClass EMailSignatureEditorClass; 53 typedef struct _EMailSignatureEditorPrivate EMailSignatureEditorPrivate; 54 55 struct _EMailSignatureEditor { 56 GtkWindow parent; 57 EMailSignatureEditorPrivate *priv; 58 }; 59 60 struct _EMailSignatureEditorClass { 61 GtkWindowClass parent_class; 62 }; 63 64 GType e_mail_signature_editor_get_type 65 (void) G_GNUC_CONST; 66 void e_mail_signature_editor_new (ESourceRegistry *registry, 67 ESource *source, 68 GAsyncReadyCallback callback, 69 gpointer user_data); 70 GtkWidget * e_mail_signature_editor_new_finish 71 (GAsyncResult *result, 72 GError **error); 73 EHTMLEditor * e_mail_signature_editor_get_editor 74 (EMailSignatureEditor *editor); 75 EFocusTracker * e_mail_signature_editor_get_focus_tracker 76 (EMailSignatureEditor *editor); 77 ESourceRegistry * 78 e_mail_signature_editor_get_registry 79 (EMailSignatureEditor *editor); 80 ESource * e_mail_signature_editor_get_source 81 (EMailSignatureEditor *editor); 82 void e_mail_signature_editor_commit (EMailSignatureEditor *editor, 83 GCancellable *cancellable, 84 GAsyncReadyCallback callback, 85 gpointer user_data); 86 gboolean e_mail_signature_editor_commit_finish 87 (EMailSignatureEditor *editor, 88 GAsyncResult *result, 89 GError **error); 90 91 G_END_DECLS 92 93 #endif /* E_MAIL_SIGNATURE_EDITOR_H */ 94