diff options
author | Dan Winship <danw@src.gnome.org> | 2000-07-03 09:17:49 +0800 |
---|---|---|
committer | Dan Winship <danw@src.gnome.org> | 2000-07-03 09:17:49 +0800 |
commit | 03b3618408f037589882655e4b97e7b75787b756 (patch) | |
tree | c071735ef43e517e3b3bceb4f08c9543180470b5 /camel/camel-folder.h | |
parent | 033a1cd5a7336659319b697d319b8c912bf3771a (diff) | |
download | gsoc2013-evolution-03b3618408f037589882655e4b97e7b75787b756.tar.gz gsoc2013-evolution-03b3618408f037589882655e4b97e7b75787b756.tar.zst gsoc2013-evolution-03b3618408f037589882655e4b97e7b75787b756.zip |
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
Diffstat (limited to 'camel/camel-folder.h')
-rw-r--r-- | camel/camel-folder.h | 12 |
1 files changed, 11 insertions, 1 deletions
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 */ |