From 7c553e6e5bb47c7b4b26f9bed147e7b7df234f96 Mon Sep 17 00:00:00 2001 From: Dan Winship Date: Thu, 3 May 2001 20:52:59 +0000 Subject: new abstract class for disconnectable remote stores * camel-disco-store.c: new abstract class for disconnectable remote stores * camel-disco-folder.c: new abstract class for folders on disconnectable stores. * Makefile.am: Add camel-disco-folder.[ch] and camel-disco-store.[ch]. * providers/imap/camel-imap-store.c: Make this a subclass of CamelDiscoStore, and fix up the offline interfaces for the changes since they were first written (particularly the fact that some IMAP stores don't just use subscribed folders). * providers/imap/camel-imap-folder.c: Make this a subclass of CamelDiscoFolder, although most ops still fail in disconnected mode. * camel-store.c (camel_store_get_folder_info): Change gboolean, gboolean, gboolean to guint32 in the prototype for this function. * providers/local/camel-local-store.c (get_folder_info): Update for prototype change. svn path=/trunk/; revision=9659 --- camel/camel-store.h | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) (limited to 'camel/camel-store.h') diff --git a/camel/camel-store.h b/camel/camel-store.h index 51d6570348..d81f08e914 100644 --- a/camel/camel-store.h +++ b/camel/camel-store.h @@ -72,6 +72,10 @@ struct _CamelStore #define CAMEL_STORE_FOLDER_BODY_INDEX (1<<1) #define CAMEL_STORE_FOLDER_PRIVATE (1<<2) /* a private folder, that shouldn't show up in unmatched/folder info's, etc */ +#define CAMEL_STORE_FOLDER_INFO_FAST (1 << 0) +#define CAMEL_STORE_FOLDER_INFO_RECURSIVE (1 << 1) +#define CAMEL_STORE_FOLDER_INFO_SUBSCRIBED (1 << 2) + typedef struct { CamelServiceClass parent_class; @@ -104,12 +108,9 @@ typedef struct { void (*sync) (CamelStore *store, CamelException *ex); - /* this should take flags instead, so its more futureproof */ CamelFolderInfo *(*get_folder_info) (CamelStore *store, const char *top, - gboolean fast, - gboolean recursive, - gboolean subscribed_only, + guint32 flags, CamelException *ex); void (*free_folder_info) (CamelStore *store, CamelFolderInfo *fi); @@ -155,9 +156,7 @@ void camel_store_sync (CamelStore *store, CamelFolderInfo *camel_store_get_folder_info (CamelStore *store, const char *top, - gboolean fast, - gboolean recursive, - gboolean subscribed_only, + guint32 flags, CamelException *ex); void camel_store_free_folder_info (CamelStore *store, CamelFolderInfo *fi); -- cgit v1.2.3