aboutsummaryrefslogtreecommitdiffstats
path: root/camel/providers/imap/camel-imap-store.h
diff options
context:
space:
mode:
authorChris Toshok <toshok@helixcode.com>2000-10-25 10:13:17 +0800
committerChris Toshok <toshok@src.gnome.org>2000-10-25 10:13:17 +0800
commitb227836e305dbc94904353d603a7a40349f29ed5 (patch)
tree42671873818a1e570dc2c6ff647c9156e6d6b18a /camel/providers/imap/camel-imap-store.h
parent606c6276a82e716b12543820c8536417b3598733 (diff)
downloadgsoc2013-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.h2
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;