aboutsummaryrefslogtreecommitdiffstats
path: root/mail/mail-mt.h
diff options
context:
space:
mode:
Diffstat (limited to 'mail/mail-mt.h')
-rw-r--r--mail/mail-mt.h11
1 files changed, 9 insertions, 2 deletions
diff --git a/mail/mail-mt.h b/mail/mail-mt.h
index 96561d70ee..363b0f9f61 100644
--- a/mail/mail-mt.h
+++ b/mail/mail-mt.h
@@ -75,12 +75,19 @@ typedef struct _MailAsyncEvent {
GSList *tasks;
} MailAsyncEvent;
+typedef enum _mail_async_event_t {
+ MAIL_ASYNC_GUI,
+ MAIL_ASYNC_THREAD,
+} mail_async_event_t;
+
+typedef void (*MailAsyncFunc)(void *, void *, void *);
+
/* create a new async event handler */
MailAsyncEvent *mail_async_event_new(void);
/* forward a camel event (or other call) to the gui thread */
-int mail_async_event_emit(MailAsyncEvent *ea, CamelObjectEventHookFunc func, CamelObject *o, void *event_data, void *data);
+int mail_async_event_emit(MailAsyncEvent *ea, mail_async_event_t type, MailAsyncFunc func, void *, void *, void *);
/* wait for all outstanding async events to complete */
-void mail_async_event_destroy(MailAsyncEvent *ea);
+int mail_async_event_destroy(MailAsyncEvent *ea);
/* Call a function in the gui thread, wait for it to return, type is the marshaller to use */
typedef enum {