diff options
author | Jeffrey Stedfast <fejj@helixcode.com> | 2000-07-12 08:00:11 +0800 |
---|---|---|
committer | Jeffrey Stedfast <fejj@src.gnome.org> | 2000-07-12 08:00:11 +0800 |
commit | e0fcbaf71a371f95a19d0ea29e8797f26f234326 (patch) | |
tree | 5ec091e635a8014f57121bc3d1b1018f65d17653 /camel/camel-folder.c | |
parent | 1bdc8787b94b821c5a2cb6be6799a2367e71b4b9 (diff) | |
download | gsoc2013-evolution-e0fcbaf71a371f95a19d0ea29e8797f26f234326.tar.gz gsoc2013-evolution-e0fcbaf71a371f95a19d0ea29e8797f26f234326.tar.zst gsoc2013-evolution-e0fcbaf71a371f95a19d0ea29e8797f26f234326.zip |
Now takes a flags argument to specify the flags to be set on the message
2000-07-11 Jeffrey Stedfast <fejj@helixcode.com>
* camel-folder.c (camel_folder_append_message): Now takes a
flags argument to specify the flags to be set on the message
since we might not necessarily want the flags to be wiped clean.
(move_message_to):
(copy_message_to): Updated to send a flags argument to
append_message (); currently sends the original message's flags.
* providers/mbox/camel-mbox-folder.c (mbox_append_message):
* providers/imap/camel-imap-folder.c (imap_append_message):
Updated.
svn path=/trunk/; revision=4099
Diffstat (limited to 'camel/camel-folder.c')
-rw-r--r-- | camel/camel-folder.c | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/camel/camel-folder.c b/camel/camel-folder.c index 454db69773..c76e7faf15 100644 --- a/camel/camel-folder.c +++ b/camel/camel-folder.c @@ -96,7 +96,7 @@ static void expunge (CamelFolder *folder, static void append_message (CamelFolder *folder, CamelMimeMessage *message, - CamelException *ex); + guint32 flags, CamelException *ex); static GPtrArray *get_uids (CamelFolder *folder, @@ -621,7 +621,7 @@ camel_folder_get_unread_message_count (CamelFolder *folder, CamelException *ex) static void append_message (CamelFolder *folder, CamelMimeMessage *message, - CamelException *ex) + guint32 flags, CamelException *ex) { g_warning ("CamelFolder::append_message not implemented for `%s'", gtk_type_name (GTK_OBJECT_TYPE (folder))); @@ -640,11 +640,12 @@ append_message (CamelFolder *folder, CamelMimeMessage *message, void camel_folder_append_message (CamelFolder *folder, CamelMimeMessage *message, + guint32 flags, CamelException *ex) { g_return_if_fail (CAMEL_IS_FOLDER (folder)); - CF_CLASS (folder)->append_message (folder, message, ex); + CF_CLASS (folder)->append_message (folder, message, flags, ex); } @@ -1080,13 +1081,15 @@ copy_message_to (CamelFolder *source, const char *uid, CamelFolder *dest, CamelException *ex) { CamelMimeMessage *msg; + CamelMessageInfo *info; /* Default implementation. */ msg = camel_folder_get_message (source, uid, ex); if (!msg) return; - camel_folder_append_message (dest, msg, ex); + info = camel_folder_get_message_info (source, uid); + camel_folder_append_message (dest, msg, info ? info->flags : 0, ex); gtk_object_unref (GTK_OBJECT (msg)); if (camel_exception_is_set (ex)) return; @@ -1124,13 +1127,15 @@ move_message_to (CamelFolder *source, const char *uid, CamelFolder *dest, CamelException *ex) { CamelMimeMessage *msg; + CamelMessageInfo *info; /* Default implementation. */ msg = camel_folder_get_message (source, uid, ex); if (!msg) return; - camel_folder_append_message (dest, msg, ex); + info = camel_folder_get_message_info (source, uid); + camel_folder_append_message (dest, msg, info ? info->flags : 0, ex); gtk_object_unref (GTK_OBJECT (msg)); if (camel_exception_is_set (ex)) return; |