2 * e-source-mail-signature.h
4 * This program is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2 of the License, or (at your option) version 3.
9 * This program is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with the program; if not, see <http://www.gnu.org/licenses/>
19 #if !defined (__LIBEDATASERVER_H_INSIDE__) && !defined (LIBEDATASERVER_COMPILATION)
20 #error "Only <libedataserver/libedataserver.h> should be included directly."
23 #ifndef E_SOURCE_MAIL_SIGNATURE_H
24 #define E_SOURCE_MAIL_SIGNATURE_H
26 #include <libedataserver/e-source-extension.h>
28 /* Standard GObject macros */
29 #define E_TYPE_SOURCE_MAIL_SIGNATURE \
30 (e_source_mail_signature_get_type ())
31 #define E_SOURCE_MAIL_SIGNATURE(obj) \
32 (G_TYPE_CHECK_INSTANCE_CAST \
33 ((obj), E_TYPE_SOURCE_MAIL_SIGNATURE, ESourceMailSignature))
34 #define E_SOURCE_MAIL_SIGNATURE_CLASS(cls) \
35 (G_TYPE_CHECK_CLASS_CAST \
36 ((cls), E_TYPE_SOURCE_MAIL_SIGNATURE, ESourceMailSignatureClass))
37 #define E_IS_SOURCE_MAIL_SIGNATURE(obj) \
38 (G_TYPE_CHECK_INSTANCE_TYPE \
39 ((obj), E_TYPE_SOURCE_MAIL_SIGNATURE))
40 #define E_IS_SOURCE_MAIL_SIGNATURE_CLASS(cls) \
41 (G_TYPE_CHECK_CLASS_TYPE \
42 ((cls), E_TYPE_SOURCE_MAIL_SIGNATURE))
43 #define E_SOURCE_MAIL_SIGNATURE_GET_CLASS(obj) \
44 (G_TYPE_INSTANCE_GET_CLASS \
45 ((obj), E_TYPE_SOURCE_MAIL_SIGNATURE, ESourceMailSignatureClass))
48 * E_SOURCE_EXTENSION_MAIL_SIGNATURE:
50 * Pass this extension name to e_source_get_extension() to access
51 * #ESourceMailSignature. This is also used as a group name in key files.
55 #define E_SOURCE_EXTENSION_MAIL_SIGNATURE "Mail Signature"
59 typedef struct _ESourceMailSignature ESourceMailSignature;
60 typedef struct _ESourceMailSignatureClass ESourceMailSignatureClass;
61 typedef struct _ESourceMailSignaturePrivate ESourceMailSignaturePrivate;
64 * ESourceMailSignature:
66 * Contains only private data that should be read and manipulated using the
71 struct _ESourceMailSignature {
72 ESourceExtension parent;
73 ESourceMailSignaturePrivate *priv;
76 struct _ESourceMailSignatureClass {
77 ESourceExtensionClass parent_class;
80 GType e_source_mail_signature_get_type
82 GFile * e_source_mail_signature_get_file
83 (ESourceMailSignature *extension);
84 const gchar * e_source_mail_signature_get_mime_type
85 (ESourceMailSignature *extension);
86 gchar * e_source_mail_signature_dup_mime_type
87 (ESourceMailSignature *extension);
88 void e_source_mail_signature_set_mime_type
89 (ESourceMailSignature *extension,
90 const gchar *mime_type);
92 gboolean e_source_mail_signature_load_sync
96 GCancellable *cancellable,
98 void e_source_mail_signature_load
101 GCancellable *cancellable,
102 GAsyncReadyCallback callback,
104 gboolean e_source_mail_signature_load_finish
106 GAsyncResult *result,
110 gboolean e_source_mail_signature_replace_sync
112 const gchar *contents,
114 GCancellable *cancellable,
116 void e_source_mail_signature_replace
118 const gchar *contents,
121 GCancellable *cancellable,
122 GAsyncReadyCallback callback,
124 gboolean e_source_mail_signature_replace_finish
126 GAsyncResult *result,
128 gboolean e_source_mail_signature_symlink_sync
130 const gchar *symlink_target,
131 GCancellable *cancellable,
133 void e_source_mail_signature_symlink
135 const gchar *symlink_target,
137 GCancellable *cancellable,
138 GAsyncReadyCallback callback,
140 gboolean e_source_mail_signature_symlink_finish
142 GAsyncResult *result,
147 #endif /* E_SOURCE_MAIL_SIGNATURE_H */