From d5f7add041e2a73dcf1a74f1a52b3a9234167a26 Mon Sep 17 00:00:00 2001 From: Not Zed Date: Tue, 11 Jun 2002 04:41:25 +0000 Subject: Our parent class is camel_vee_folder, not camel_folder, fix setting of 2002-06-11 Not Zed * camel-vtrash-folder.c (camel_vtrash_folder_class_init): Our parent class is camel_vee_folder, not camel_folder, fix setting of parent folder (unused anyway, but removes a run-time warning). 2002-06-06 Not Zed * camel-folder-thread.c (thread_summary): Do the work here. (camel_folder_thread_messages_remove): Implement. Remove some uid's from the tree. Disalbe from build, for now. (remove_uid_node_rec): Actually do the work. (camel_folder_thread_messages_add): Implement. Add some summary items to the tree. Disable from build though. (camel_folder_thread_messages_apply): Make a thread tree built using camel_folder_thread_new() map to a new set of uids, preserving some order. Meant primarily to manage deleted + added uids in a user-friendly manner. svn path=/trunk/; revision=17164 --- camel/camel-folder-thread.h | 21 ++++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) (limited to 'camel/camel-folder-thread.h') diff --git a/camel/camel-folder-thread.h b/camel/camel-folder-thread.h index 5999b7bab8..3b40fe9d9c 100644 --- a/camel/camel-folder-thread.h +++ b/camel/camel-folder-thread.h @@ -40,22 +40,29 @@ typedef struct _CamelFolderThreadNode { int order; } CamelFolderThreadNode; -typedef struct CamelFolderThread { +typedef struct _CamelFolderThread { + int refcount; + struct _CamelFolderThreadNode *tree; struct _EMemChunk *node_chunks; CamelFolder *folder; GPtrArray *summary; } CamelFolderThread; +/* interface 1: using uid's */ CamelFolderThread *camel_folder_thread_messages_new(CamelFolder *folder, GPtrArray *uids); +void camel_folder_thread_messages_apply(CamelFolderThread *thread, GPtrArray *uids); -/* new improved interface (believe it or not!) */ +/* interface 2: using messageinfo's. Currently disabled. */ +#if 0 +/* new improved interface */ CamelFolderThread *camel_folder_thread_messages_new_summary(GPtrArray *summary); -/* -void camel_folder_thread_messages_add(CamelFolderThread *threads, CamelFolder *folder, GPtrArray *uids); -void camel_folder_thread_messages_remove(CamelFolderThread *threads, CamelFolder *folder, GPtrArray *uids); -*/ -void camel_folder_thread_messages_destroy(CamelFolderThread *threads); +void camel_folder_thread_messages_add(CamelFolderThread *thread, GPtrArray *summary); +void camel_folder_thread_messages_remove(CamelFolderThread *thread, GPtrArray *uids); +#endif + +void camel_folder_thread_messages_ref(CamelFolderThread *threads); +void camel_folder_thread_messages_unref(CamelFolderThread *threads); /* debugging function only */ int camel_folder_threaded_messages_dump(CamelFolderThreadNode *c); -- cgit