diff options
author | Dan Winship <danw@src.gnome.org> | 2001-05-10 05:57:32 +0800 |
---|---|---|
committer | Dan Winship <danw@src.gnome.org> | 2001-05-10 05:57:32 +0800 |
commit | 630241d74b1a6dede97380c8ed70c74641399e0f (patch) | |
tree | 2a5642e69cf0bf563cd6c26176ac80633c9c82e0 /camel/camel-disco-store.h | |
parent | c76080568db894f538f5b4d89293295b29fcc214 (diff) | |
download | gsoc2013-evolution-630241d74b1a6dede97380c8ed70c74641399e0f.tar.gz gsoc2013-evolution-630241d74b1a6dede97380c8ed70c74641399e0f.tar.zst gsoc2013-evolution-630241d74b1a6dede97380c8ed70c74641399e0f.zip |
Set the disconnected status. (camel_disco_store_can_work_offline): Return
* camel-disco-store.c (camel_disco_set_status): Set the
disconnected status.
(camel_disco_store_can_work_offline): Return whether or not a
given CamelDiscoStore can work offline or not.
* camel-disco-folder.c (camel_disco_folder_cache_message):
Explicitly tell a folder to cache a message. (Better than using
get_message, because for IMAP that doesn't guarantee you'll get
all the message parts.)
(camel_disco_folder_prepare_for_offline): Prepare a folder for
offline use by caching all messages meeting given search criteria
(and doing anything else the particular folder implementation
needs).
* camel-session.c (camel_session_set_online,
camel_session_is_online): A session-wide online/offline toggle.
(camel_session_init): Set online to TRUE.
* providers/imap/camel-imap-store.c (can_work_offline):
Implementation of CamelDiscoStore::can_work_offline. (Checks that
the store has been used online at least once.)
(imap_get_folder_online, imap_get_folder_offline): Deal with
request for "inbox" properly. ("Don't you mean... 'INBOX'?").
* providers/imap/camel-imap-folder.c (imap_cache_message):
Implementation of CamelDiscoFolder::cache_message.
* camel.h: Add camel-disco-store.h and camel-disco-folder.h
svn path=/trunk/; revision=9738
Diffstat (limited to 'camel/camel-disco-store.h')
-rw-r--r-- | camel/camel-disco-store.h | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/camel/camel-disco-store.h b/camel/camel-disco-store.h index abd2693f80..cb40cf4590 100644 --- a/camel/camel-disco-store.h +++ b/camel/camel-disco-store.h @@ -57,6 +57,11 @@ struct _CamelDiscoStore { typedef struct { CamelRemoteStoreClass parent_class; + void (*set_status) (CamelDiscoStore *, + CamelDiscoStoreStatus, + CamelException *); + gboolean (*can_work_offline) (CamelDiscoStore *); + gboolean (*connect_online) (CamelService *, CamelException *); gboolean (*connect_offline) (CamelService *, @@ -92,7 +97,11 @@ typedef struct { CamelType camel_disco_store_get_type (void); /* Public methods */ -CamelDiscoStoreStatus camel_disco_store_status (CamelDiscoStore *store); +CamelDiscoStoreStatus camel_disco_store_status (CamelDiscoStore *); +void camel_disco_store_set_status (CamelDiscoStore *, + CamelDiscoStoreStatus, + CamelException *); +gboolean camel_disco_store_can_work_offline (CamelDiscoStore *); /* Convenience functions */ gboolean camel_disco_store_check_online (CamelDiscoStore *store, CamelException *ex); |