* sync with main changes of 2002-10-04
[claws.git] / src / folder.h
index 9dececed38f5b86454b82f106181cce41cf8b67f..d0862c2cc78a9ae6d28d96968716e6d89d89e146 100644 (file)
@@ -180,6 +180,8 @@ struct _Folder
                                         const gchar    *name);
        gint     (*remove_folder)       (Folder         *folder,
                                         FolderItem     *item);
+
+       void     (*destroy)             (Folder         *folder);
        void     (*update_mark)         (Folder         *folder,
                                         FolderItem     *item);
        void     (*change_flags)        (Folder         *folder,
@@ -217,7 +219,6 @@ struct _FolderItem
 
        gchar *name;
        gchar *path;
-       PrefsAccount *account;
 
        time_t mtime;
 
@@ -239,6 +240,7 @@ struct _FolderItem
 
        gint op_count;
        guint opened    : 1; /* opened by summary view */
+       guint need_update    : 1; /* folderview for this folder should be updated */
 
        FolderSortKey sort_key;
        FolderSortType sort_type;
@@ -247,6 +249,10 @@ struct _FolderItem
 
        Folder *folder;
 
+       PrefsAccount *account;
+
+       gboolean apply_sub;
+       
        GSList *mark_queue;
 
        gpointer data;
@@ -298,6 +304,7 @@ GList *folder_get_list              (void);
 gint   folder_read_list                (void);
 void   folder_write_list       (void);
 void   folder_scan_tree                (Folder *folder);
+FolderItem *folder_create_folder(FolderItem    *parent, const gchar *name);
 void   folder_update_op_count          (void);
 void   folder_func_to_all_folders      (FolderItemFunc function,
                                         gpointer data);
@@ -322,7 +329,9 @@ FolderItem *folder_get_default_trash        (void);
 FolderItem *folder_get_default_processing (void);
 void folder_set_missing_folders                (void);
 
+gchar *folder_get_path                 (Folder         *folder);
 gchar *folder_item_get_path            (FolderItem     *item);
+
 gint   folder_item_scan                        (FolderItem     *item);
 void   folder_item_scan_foreach                (GHashTable     *table);
 MsgInfo *folder_item_fetch_msginfo     (FolderItem     *item,