aboutsummaryrefslogtreecommitdiffstats
path: root/mail/mail-config.h
diff options
context:
space:
mode:
authorRadek Doulik <rodo@src.gnome.org>2002-03-07 08:21:59 +0800
committerRadek Doulik <rodo@src.gnome.org>2002-03-07 08:21:59 +0800
commita1bb1ba0fe60989c4e1ebf2798db8c2f5973d8c0 (patch)
tree2b0704091ffc986a0bcfdc4af18ad8c08ea3a136 /mail/mail-config.h
parentfb1819e374f6d663e7b1044e5beb280f56ddb6e6 (diff)
downloadgsoc2013-evolution-a1bb1ba0fe60989c4e1ebf2798db8c2f5973d8c0.tar
gsoc2013-evolution-a1bb1ba0fe60989c4e1ebf2798db8c2f5973d8c0.tar.gz
gsoc2013-evolution-a1bb1ba0fe60989c4e1ebf2798db8c2f5973d8c0.tar.bz2
gsoc2013-evolution-a1bb1ba0fe60989c4e1ebf2798db8c2f5973d8c0.tar.lz
gsoc2013-evolution-a1bb1ba0fe60989c4e1ebf2798db8c2f5973d8c0.tar.xz
gsoc2013-evolution-a1bb1ba0fe60989c4e1ebf2798db8c2f5973d8c0.tar.zst
gsoc2013-evolution-a1bb1ba0fe60989c4e1ebf2798db8c2f5973d8c0.zip
merge new signature handling
svn path=/trunk/; revision=15960
Diffstat (limited to 'mail/mail-config.h')
-rw-r--r--mail/mail-config.h48
1 files changed, 45 insertions, 3 deletions
diff --git a/mail/mail-config.h b/mail/mail-config.h
index 00065fdfd8..d78aa0c7f2 100644
--- a/mail/mail-config.h
+++ b/mail/mail-config.h
@@ -32,12 +32,23 @@ extern "C" {
#endif /* __cplusplus */
typedef struct {
+ gint id;
+ gchar *name;
+ gchar *filename;
+ gchar *script;
+ gboolean random;
+ gboolean html;
+} MailConfigSignature;
+
+typedef struct {
char *name;
char *address;
char *organization;
- char *signature;
- char *html_signature;
- gboolean has_html_signature;
+
+ MailConfigSignature *text_signature;
+ gboolean text_random;
+ MailConfigSignature *html_signature;
+ gboolean html_random;
} MailConfigIdentity;
typedef struct {
@@ -98,6 +109,10 @@ typedef enum {
MAIL_CONFIG_NOTIFY_PLAY_SOUND,
} MailConfigNewMailNotify;
+/* signatures */
+MailConfigSignature *signature_copy (const MailConfigSignature *sig);
+void signature_destroy (MailConfigSignature *sig);
+
/* Identities */
MailConfigIdentity *identity_copy (const MailConfigIdentity *id);
void identity_destroy (MailConfigIdentity *id);
@@ -238,6 +253,33 @@ gboolean mail_config_check_service (const char *url, CamelProviderType type, GLi
gboolean evolution_mail_config_factory_init (void);
+GList * mail_config_get_signature_list (void);
+gint mail_config_get_signatures_random (void);
+MailConfigSignature *mail_config_signature_add (gboolean html);
+void mail_config_signature_delete (MailConfigSignature *sig);
+void mail_config_signature_write (MailConfigSignature *sig);
+void mail_config_signature_set_name (MailConfigSignature *sig, const gchar *name);
+void mail_config_signature_set_filename (MailConfigSignature *sig, const gchar *filename);
+void mail_config_signature_set_random (MailConfigSignature *sig, gboolean random);
+
+typedef enum {
+ MAIL_CONFIG_SIG_EVENT_NAME_CHANGED,
+ MAIL_CONFIG_SIG_EVENT_RANDOM_ON,
+ MAIL_CONFIG_SIG_EVENT_RANDOM_OFF,
+ MAIL_CONFIG_SIG_EVENT_ADDED,
+ MAIL_CONFIG_SIG_EVENT_DELETED
+} MailConfigSigEvent;
+
+typedef void (*MailConfigSignatureClient)(MailConfigSigEvent, MailConfigSignature *sig, gpointer data);
+
+void mail_config_signature_register_client (MailConfigSignatureClient client, gpointer data);
+void mail_config_signature_unregister_client (MailConfigSignatureClient client, gpointer data);
+void mail_config_signature_emit_event (MailConfigSigEvent event, MailConfigSignature *sig);
+
+void mail_config_write_account_sig (MailConfigAccount *account, gint i);
+void mail_config_signature_run_script (gchar *script);
+
+
#ifdef __cplusplus
}
#endif /* __cplusplus */