diff options
author | Chris Toshok <toshok@helixcode.com> | 2000-10-25 10:13:17 +0800 |
---|---|---|
committer | Chris Toshok <toshok@src.gnome.org> | 2000-10-25 10:13:17 +0800 |
commit | b227836e305dbc94904353d603a7a40349f29ed5 (patch) | |
tree | 42671873818a1e570dc2c6ff647c9156e6d6b18a /camel/providers/imap/camel-imap-store.h | |
parent | 606c6276a82e716b12543820c8536417b3598733 (diff) | |
download | gsoc2013-evolution-b227836e305dbc94904353d603a7a40349f29ed5.tar gsoc2013-evolution-b227836e305dbc94904353d603a7a40349f29ed5.tar.gz gsoc2013-evolution-b227836e305dbc94904353d603a7a40349f29ed5.tar.bz2 gsoc2013-evolution-b227836e305dbc94904353d603a7a40349f29ed5.tar.lz gsoc2013-evolution-b227836e305dbc94904353d603a7a40349f29ed5.tar.xz gsoc2013-evolution-b227836e305dbc94904353d603a7a40349f29ed5.tar.zst gsoc2013-evolution-b227836e305dbc94904353d603a7a40349f29ed5.zip |
add subscribed_folders.
2000-10-24 Chris Toshok <toshok@helixcode.com>
* providers/imap/camel-imap-store.h: add subscribed_folders.
* providers/imap/camel-imap-store.c (camel_imap_store_class_init):
fill in vtable entries for subscription functions.
(camel_imap_store_finalize): new function, so we can free up our
subscribed_folders hashtable.
(camel_imap_store_init): set CAMEL_STORE_SUBSCRIPTIONS in the
CamelStore flags, and create our subscribed_folders hashtable.
(camel_imap_store_get_type): camel_imap_store_finalize is our
finalize function.
(get_folder_info): if we're looking at subscribed_only, clear out
the subscribed_folders hashtable, use LSUB instead of LIST, and
insert folder paths (prepended by their namespace if there is one)
into subscribed_folders. INBOX subscription support needs work,
since we always show it, regardless of it's subscribed state.
(folder_subscribed): new function. just look up the folder_path
in the hashtable.
(subscribe_folder): new function. use the imap SUBSCRIBE command,
and if successful add it to the hashtable.
(unsubscribe_folder): new function. use the imap UNSUBSCRIBE
command, and if successful remove it from the hashtable.
svn path=/trunk/; revision=6157
Diffstat (limited to 'camel/providers/imap/camel-imap-store.h')
-rw-r--r-- | camel/providers/imap/camel-imap-store.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/camel/providers/imap/camel-imap-store.h b/camel/providers/imap/camel-imap-store.h index 3c492c5aa3..ddcc670f40 100644 --- a/camel/providers/imap/camel-imap-store.h +++ b/camel/providers/imap/camel-imap-store.h @@ -59,6 +59,8 @@ typedef struct { gchar *dir_sep, *storage_path; gboolean connected; + + GHashTable *subscribed_folders; } CamelImapStore; |