diff options
author | Not Zed <NotZed@Ximian.com> | 2001-02-08 09:45:37 +0800 |
---|---|---|
committer | Michael Zucci <zucchi@src.gnome.org> | 2001-02-08 09:45:37 +0800 |
commit | 4459154549f367cb1fa8a89b06e89d8f99abb4e3 (patch) | |
tree | c6d10940b9fbe3210b216c94305d8f160906d2f3 /mail/mail-ops.c | |
parent | 49f8a687a41e635cd83807d33c74afe8e55fb3df (diff) | |
download | gsoc2013-evolution-4459154549f367cb1fa8a89b06e89d8f99abb4e3.tar.gz gsoc2013-evolution-4459154549f367cb1fa8a89b06e89d8f99abb4e3.tar.zst gsoc2013-evolution-4459154549f367cb1fa8a89b06e89d8f99abb4e3.zip |
Handle internal camel status return. (receive_done): Remove active
2001-02-07 Not Zed <NotZed@Ximian.com>
* mail-send-recv.c (operation_status): Handle internal camel status return.
(receive_done): Remove active download when done.
(mail_receive_uri): Initiate download of a single source, with no gui.
(build_dialogue): Mark any new items as real active downloads.
(do_show_status): Make the progress bar optional.
2001-02-06 Not Zed <NotZed@Ximian.com>
* mail-send-recv.c: camel_cancel->camel_operation.
* mail-ops.old.c: camel_cancel->camel_operation.
* mail-ops.c: camel_cancel->camel_operation.
* mail-mt.c: camel_cancel->camel_operation.
* mail-callbacks.c (stop_threads): camel_cancel->camel_operation.
* mail-mt.h: CamelCancel->CamelOperation.
svn path=/trunk/; revision=8096
Diffstat (limited to 'mail/mail-ops.c')
-rw-r--r-- | mail/mail-ops.c | 55 |
1 files changed, 28 insertions, 27 deletions
diff --git a/mail/mail-ops.c b/mail/mail-ops.c index 271315a2aa..3b81d62d6a 100644 --- a/mail/mail-ops.c +++ b/mail/mail-ops.c @@ -30,6 +30,7 @@ #include <ctype.h> #include <errno.h> #include <camel/camel-mime-filter-from.h> +#include <camel/camel-operation.h> #include "mail.h" #include "mail-threads.h" #include "mail-tools.h" @@ -119,7 +120,7 @@ struct _filter_mail_msg { CamelFolder *source_folder; /* where they come from */ GPtrArray *source_uids; /* uids to copy, or NULL == copy all */ - CamelCancel *cancel; + CamelOperation *cancel; CamelFilterDriver *driver; int delete; /* delete messages after filtering them? */ CamelFolder *destination; /* default destination for any messages, NULL for none */ @@ -129,7 +130,7 @@ struct _filter_mail_msg { struct _fetch_mail_msg { struct _filter_mail_msg fmsg; - CamelCancel *cancel; /* we have our own cancellation struct, the other should be empty */ + CamelOperation *cancel; /* we have our own cancellation struct, the other should be empty */ int keep; /* keep on server? */ char *source_uri; @@ -148,13 +149,13 @@ filter_folder_filter(struct _mail_msg *mm) GPtrArray *uids, *folder_uids = NULL; if (m->cancel) - camel_cancel_register(m->cancel); + camel_operation_register(m->cancel); folder = m->source_folder; if (folder == NULL || camel_folder_get_message_count (folder) == 0) { if (m->cancel) - camel_cancel_unregister(m->cancel); + camel_operation_unregister(m->cancel); return; } @@ -183,7 +184,7 @@ filter_folder_filter(struct _mail_msg *mm) camel_folder_thaw(m->destination); if (m->cancel) - camel_cancel_unregister(m->cancel); + camel_operation_unregister(m->cancel); } static void @@ -205,7 +206,7 @@ filter_folder_free(struct _mail_msg *mm) g_ptr_array_free(m->source_uids, TRUE); } if (m->cancel) - camel_cancel_unref(m->cancel); + camel_operation_unref(m->cancel); if (m->destination) camel_object_unref((CamelObject *)m->destination); camel_object_unref((CamelObject *)m->driver); @@ -221,7 +222,7 @@ static struct _mail_msg_op filter_folder_op = { void mail_filter_folder(CamelFolder *source_folder, GPtrArray *uids, FilterContext *fc, const char *type, - CamelCancel *cancel) + CamelOperation *cancel) { struct _filter_mail_msg *m; @@ -232,7 +233,7 @@ mail_filter_folder(CamelFolder *source_folder, GPtrArray *uids, m->delete = FALSE; if (cancel) { m->cancel = cancel; - camel_cancel_ref(cancel); + camel_operation_ref(cancel); } m->driver = camel_filter_driver_new(filter_get_folder, NULL); @@ -261,11 +262,11 @@ fetch_mail_fetch(struct _mail_msg *mm) int i; if (m->cancel) - camel_cancel_register(m->cancel); + camel_operation_register(m->cancel); if ( (fm->destination = mail_tool_get_local_inbox(&mm->ex)) == NULL) { if (m->cancel) - camel_cancel_unregister(m->cancel); + camel_operation_unregister(m->cancel); return; } @@ -324,7 +325,7 @@ fetch_mail_fetch(struct _mail_msg *mm) } if (m->cancel) - camel_cancel_unregister(m->cancel); + camel_operation_unregister(m->cancel); } static void @@ -343,7 +344,7 @@ fetch_mail_free(struct _mail_msg *mm) g_free(m->source_uri); if (m->cancel) - camel_cancel_unref(m->cancel); + camel_operation_unref(m->cancel); filter_folder_free(mm); } @@ -358,7 +359,7 @@ static struct _mail_msg_op fetch_mail_op = { /* ouch, a 'do everything' interface ... */ void mail_fetch_mail(const char *source, int keep, FilterContext *fc, const char *type, - CamelCancel *cancel, + CamelOperation *cancel, CamelFilterGetFolderFunc get_folder, void *get_data, CamelFilterStatusFunc *status, void *status_data, void (*done)(char *source, void *data), void *data) @@ -372,7 +373,7 @@ void mail_fetch_mail(const char *source, int keep, fm->delete = !keep; if (cancel) { m->cancel = cancel; - camel_cancel_ref(cancel); + camel_operation_ref(cancel); } m->done = done; m->data = data; @@ -516,9 +517,9 @@ static void send_mail_send(struct _mail_msg *mm) { struct _send_mail_msg *m = (struct _send_mail_msg *)mm; - camel_cancel_register(mm->cancel); + camel_operation_register(mm->cancel); mail_send_message(m->message, m->destination, m->driver, &mm->ex); - camel_cancel_unregister(mm->cancel); + camel_operation_unregister(mm->cancel); } static void send_mail_sent(struct _mail_msg *mm) @@ -578,7 +579,7 @@ struct _send_queue_msg { char *destination; CamelFilterDriver *driver; - CamelCancel *cancel; + CamelOperation *cancel; /* we use camelfilterstatusfunc, even though its not the filter doing it */ CamelFilterStatusFunc *status; @@ -617,7 +618,7 @@ send_queue_send(struct _mail_msg *mm) return; if (m->cancel) - camel_cancel_register(m->cancel); + camel_operation_register(m->cancel); for (i=0; i<uids->len; i++) { CamelMimeMessage *message; @@ -660,7 +661,7 @@ send_queue_send(struct _mail_msg *mm) camel_folder_sync(sent_folder, FALSE, &mm->ex); if (m->cancel) - camel_cancel_unregister(m->cancel); + camel_operation_unregister(m->cancel); } static void @@ -680,7 +681,7 @@ send_queue_free(struct _mail_msg *mm) camel_object_unref((CamelObject *)m->queue); g_free(m->destination); if (m->cancel) - camel_cancel_unref(m->cancel); + camel_operation_unref(m->cancel); } static struct _mail_msg_op send_queue_op = { @@ -694,7 +695,7 @@ static struct _mail_msg_op send_queue_op = { void mail_send_queue(CamelFolder *queue, const char *destination, FilterContext *fc, const char *type, - CamelCancel *cancel, + CamelOperation *cancel, CamelFilterGetFolderFunc get_folder, void *get_data, CamelFilterStatusFunc *status, void *status_data, void (*done)(char *destination, void *data), void *data) @@ -707,7 +708,7 @@ mail_send_queue(CamelFolder *queue, const char *destination, m->destination = g_strdup(destination); if (cancel) { m->cancel = cancel; - camel_cancel_ref(cancel); + camel_operation_ref(cancel); } m->status = status; m->status_data = status_data; @@ -1426,7 +1427,7 @@ struct _get_message_msg { void (*done) (CamelFolder *folder, char *uid, CamelMimeMessage *msg, void *data); void *data; CamelMimeMessage *message; - CamelCancel *cancel; + CamelOperation *cancel; }; static char *get_message_desc(struct _mail_msg *mm, int done) @@ -1440,9 +1441,9 @@ static void get_message_get(struct _mail_msg *mm) { struct _get_message_msg *m = (struct _get_message_msg *)mm; - camel_cancel_register(m->cancel); + camel_operation_register(m->cancel); m->message = camel_folder_get_message(m->folder, m->uid, &mm->ex); - camel_cancel_unregister(m->cancel); + camel_operation_unregister(m->cancel); } static void get_message_got(struct _mail_msg *mm) @@ -1459,7 +1460,7 @@ static void get_message_free(struct _mail_msg *mm) g_free(m->uid); camel_object_unref((CamelObject *)m->folder); - camel_cancel_unref(m->cancel); + camel_operation_unref(m->cancel); } static struct _mail_msg_op get_message_op = { @@ -1480,7 +1481,7 @@ mail_get_message(CamelFolder *folder, const char *uid, void (*done) (CamelFolder m->uid = g_strdup(uid); m->data = data; m->done = done; - m->cancel = camel_cancel_new(); + m->cancel = camel_operation_new(NULL, NULL); e_thread_put(thread, (EMsg *)m); } |