1 /*
2  * camel-sendmail-settings.h
3  *
4  * This library 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 library 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 Lesser 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 library. If not, see <http://www.gnu.org/licenses/>.
15  *
16  */
17 
18 #ifndef CAMEL_SENDMAIL_SETTINGS_H
19 #define CAMEL_SENDMAIL_SETTINGS_H
20 
21 #include <camel/camel.h>
22 
23 /* Standard GObject macros */
24 #define CAMEL_TYPE_SENDMAIL_SETTINGS \
25 	(camel_sendmail_settings_get_type ())
26 #define CAMEL_SENDMAIL_SETTINGS(obj) \
27 	(G_TYPE_CHECK_INSTANCE_CAST \
28 	((obj), CAMEL_TYPE_SENDMAIL_SETTINGS, CamelSendmailSettings))
29 #define CAMEL_SENDMAIL_SETTINGS_CLASS(cls) \
30 	(G_TYPE_CHECK_CLASS_CAST \
31 	((cls), CAMEL_TYPE_SENDMAIL_SETTINGS, CamelSendmailSettingsClass))
32 #define CAMEL_IS_SENDMAIL_SETTINGS(obj) \
33 	(G_TYPE_CHECK_INSTANCE_TYPE \
34 	((obj), CAMEL_TYPE_SENDMAIL_SETTINGS))
35 #define CAMEL_IS_SENDMAIL_SETTINGS_CLASS(cls) \
36 	(G_TYPE_CHECK_CLASS_TYPE \
37 	((cls), CAMEL_TYPE_SENDMAIL_SETTINGS))
38 #define CAMEL_SENDMAIL_SETTINGS_GET_CLASS(obj) \
39 	(G_TYPE_INSTANCE_GET_CLASS \
40 	((obj), CAMEL_TYPE_SENDMAIL_SETTINGS))
41 
42 G_BEGIN_DECLS
43 
44 typedef struct _CamelSendmailSettings CamelSendmailSettings;
45 typedef struct _CamelSendmailSettingsClass CamelSendmailSettingsClass;
46 typedef struct _CamelSendmailSettingsPrivate CamelSendmailSettingsPrivate;
47 
48 struct _CamelSendmailSettings {
49 	CamelSettings parent;
50 	CamelSendmailSettingsPrivate *priv;
51 };
52 
53 struct _CamelSendmailSettingsClass {
54 	CamelSettingsClass parent_class;
55 
56 	/* Padding for future expansion */
57 	gpointer reserved[20];
58 };
59 
60 GType		camel_sendmail_settings_get_type
61 					(void) G_GNUC_CONST;
62 gboolean	camel_sendmail_settings_get_use_custom_binary
63 					(CamelSendmailSettings *settings);
64 void		camel_sendmail_settings_set_use_custom_binary
65 					(CamelSendmailSettings *settings,
66 					 gboolean use_custom_binary);
67 const gchar *	camel_sendmail_settings_get_custom_binary
68 					(CamelSendmailSettings *settings);
69 gchar *		camel_sendmail_settings_dup_custom_binary
70 					(CamelSendmailSettings *settings);
71 void		camel_sendmail_settings_set_custom_binary
72 					(CamelSendmailSettings *settings,
73 					 const gchar *custom_binary);
74 gboolean	camel_sendmail_settings_get_use_custom_args
75 					(CamelSendmailSettings *settings);
76 void		camel_sendmail_settings_set_use_custom_args
77 					(CamelSendmailSettings *settings,
78 					 gboolean use_custom_args);
79 const gchar *	camel_sendmail_settings_get_custom_args
80 					(CamelSendmailSettings *settings);
81 gchar *		camel_sendmail_settings_dup_custom_args
82 					(CamelSendmailSettings *settings);
83 void		camel_sendmail_settings_set_custom_args
84 					(CamelSendmailSettings *settings,
85 					 const gchar *custom_args);
86 gboolean	camel_sendmail_settings_get_send_in_offline
87 					(CamelSendmailSettings *settings);
88 void		camel_sendmail_settings_set_send_in_offline
89 					(CamelSendmailSettings *settings,
90 					 gboolean send_in_offline);
91 
92 G_END_DECLS
93 
94 #endif /* CAMEL_SENDMAIL_SETTINGS_H */
95