From 03b3618408f037589882655e4b97e7b75787b756 Mon Sep 17 00:00:00 2001 From: Dan Winship Date: Mon, 3 Jul 2000 01:17:49 +0000 Subject: New functions to freeze and thaw a folder (to prevent message/folder * camel-folder.c (camel_folder_freeze, camel_folder_thaw): New functions to freeze and thaw a folder (to prevent message/folder changed signals in the middle of a long series of operations). (camel_folder_class_init): Change signals to GTK_RUN_FIRST. (message_changed, folder_changed): Add default implementations that stop the emission and record info for later if the folder is frozen. * providers/mbox/camel-mbox-folder.c (mbox_sync): leftover fixes from the close->sync change: don't destroy the ibex, summary, and search when syncing. svn path=/trunk/; revision=3863 --- camel/camel-folder.h | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) (limited to 'camel/camel-folder.h') diff --git a/camel/camel-folder.h b/camel/camel-folder.h index 5ae8be25cc..d49a7f7650 100644 --- a/camel/camel-folder.h +++ b/camel/camel-folder.h @@ -44,7 +44,11 @@ extern "C" { struct _CamelFolder { CamelObject parent_object; - + + int frozen; + gboolean folder_changed; + GList *messages_changed; + gchar *name; gchar *full_name; gchar *separator; @@ -171,6 +175,9 @@ typedef struct { const char *uid, CamelFolder *destination, CamelException *ex); + + void (*freeze) (CamelFolder *folder); + void (*thaw) (CamelFolder *folder); } CamelFolderClass; @@ -294,6 +301,9 @@ void camel_folder_move_message_to (CamelFolder *source, CamelFolder *dest, CamelException *ex); +void camel_folder_freeze (CamelFolder *folder); +void camel_folder_thaw (CamelFolder *folder); + #ifdef __cplusplus } #endif /* __cplusplus */ -- cgit v1.2.3