#define LOCAL_FOLDER(obj) ((LocalFolder *)obj)
#define REMOTE_FOLDER(obj) ((RemoteFolder *)obj)
+#define FOLDER_IS_LOCAL(obj) (FOLDER_TYPE(obj) == F_MH || \
+ FOLDER_TYPE(obj) == F_MBOX || \
+ FOLDER_TYPE(obj) == F_MAILDIR)
+
#define MH_FOLDER(obj) ((MHFolder *)obj)
#define MBOX_FOLDER(obj) ((MboxFolder *)obj)
#define MAILDIR_FOLDER(obj) ((MaildirFolder *)obj)
gint last_num;
- gboolean no_sub;
- gboolean no_select;
+ /* special flags */
+ guint no_sub : 1; /* no child allowed? */
+ guint no_select : 1; /* not selectable? */
+ guint collapsed : 1; /* collapsed item */
+ guint threaded : 1; /* threaded folder view */
+ guint ret_rcpt : 1; /* return receipt */
+
+ gint op_count;
FolderItem *parent;
void folder_item_append (FolderItem *parent,
FolderItem *item);
void folder_item_remove (FolderItem *item);
+void folder_item_destroy (FolderItem *item);
void folder_set_ui_func (Folder *folder,
FolderUIFunc func,
gpointer data);
GList *folder_get_list (void);
gint folder_read_list (void);
void folder_write_list (void);
+void folder_update_op_count (void);
Folder *folder_find_from_path (const gchar *path);
FolderItem *folder_find_item_from_path (const gchar *path);