From 4b14db5520cf99cb30d39e14c2bb38071d4cad2d Mon Sep 17 00:00:00 2001 From: 8 Date: Fri, 28 Sep 2001 23:54:30 +0000 Subject: Emit folder_deleted event. (remove_find_path): Fix, compare against path, 2001-09-28 * mail-local.c (mail_local_store_remove_folder): Emit folder_deleted event. (remove_find_path): Fix, compare against path, not full_name. * mail-tools.c (mail_tool_uri_to_folder): Dont vfolder_register_source anymore. * mail-vfolder.c (rule_changed): Changed to access mail_fodler_cahce to find out if the folder exist yet before trying to open them, also use the cache as a cache so we dont have to open the folder if its already been opened. (vfolder_register_source, register_source): Removed. (source_finalise): Removed, (check_source): Removed. All handled through diff mechanism. (mail_vfolder_add_uri): New function, records uri's of available folders, and adds them to any active vfolders if required. (mail_vfolder_remove_uri): New function, removes a uri from available folders, and checks any rules to see fi they need updating. (vfolder_adduri): New async function to add a uri to all vfolders that need it. (store_folder_deleted): oops! free user, not rule!! * mail-folder-cache.c: Add uri->folderinfo hashtable, and the store from which they come into the store info struct. Add uri to the folder_info. (setup_folder): Store the uri in the folderinfo. (setup_folder): And the uri in the folder_uri hashtable. (mail_note_store): Store the store in the storeinfo, and setup the folders_uri hashtable via the store's hash functions. (setup_folder): Call mail_vfolder_add_uri to note this newly setup folder uri. (store_folder_deleted): Proxy call to main thread. (real_folder_deleted): And tell the vfolder to remove this uri from its folder list. (setup_folder): Dont call vfolder_add_uri if noselect is set on the uri. 2001-09-27 * mail-vfolder.c: Removed vfolder_info struct, vfolder_storage. Neither used anymore. svn path=/trunk/; revision=13242 --- mail/mail-vfolder.h | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'mail/mail-vfolder.h') diff --git a/mail/mail-vfolder.h b/mail/mail-vfolder.h index 1245a4cd77..d27698bfdd 100644 --- a/mail/mail-vfolder.h +++ b/mail/mail-vfolder.h @@ -13,7 +13,6 @@ void vfolder_load_storage(GNOME_Evolution_Shell shell); -CamelFolder *vfolder_uri_to_folder (const char *uri, CamelException *ex); void vfolder_edit (void); FilterPart *vfolder_create_part (const char *name); FilterRule *vfolder_clone_rule (FilterRule *in); @@ -21,8 +20,11 @@ void vfolder_gui_add_rule (VfolderRule *rule); void vfolder_gui_add_from_message (CamelMimeMessage *msg, int flags, const char *source); void vfolder_gui_add_from_mlist (CamelMimeMessage *msg, const char *mlist, const char *source); -/* for registering all open folders as potential vfolder sources */ -void vfolder_register_source (CamelFolder *folder); +/* add a uri that is now available to vfolders */ +void mail_vfolder_add_uri(CamelStore *store, const char *uri); + +/* remove a uri that should be removed from vfolders */ +void mail_vfolder_remove_uri(CamelStore *store, const char *uri); EvolutionStorage *mail_vfolder_get_vfolder_storage (void); -- cgit