typedef enum
{
FOLDER_TREE_CHANGED = 1 << 0,
-/*
- maybe enhance with:
- FOLDER_NEW_FOLDERITEM
- FOLDER_REMOVE_FOLDERITEM
-*/
+ FOLDER_NEW_FOLDERITEM = 1 << 1,
+ FOLDER_REMOVE_FOLDERITEM = 1 << 2,
} FolderUpdateFlags;
typedef enum
GSList *(*get_msginfos) (Folder *folder,
FolderItem *item,
MsgNumberList *msgnum_list);
- gchar *(*fetch_msg) (Folder *folder,
+ /* return value is locale charset */
+ gchar *(*fetch_msg) (Folder *folder,
FolderItem *item,
gint num);
gint (*add_msg) (Folder *folder,
{
SpecialFolderItemType stype;
- gchar *name;
- gchar *path;
+ gchar *name; /* UTF-8 */
+ gchar *path; /* UTF-8 */
time_t mtime;
{
Folder *folder;
FolderUpdateFlags update_flags;
-/*
- FolderItem *item
-*/
+ FolderItem *item;
};
struct _FolderItemUpdateData
void folder_local_folder_destroy (LocalFolder *lfolder);
void folder_remote_folder_destroy(RemoteFolder *rfolder);
-FolderItem *folder_item_new (Folder *folder,
- const gchar *name,
- const gchar *path);
-void folder_item_append (FolderItem *parent,
- FolderItem *item);
-void folder_item_remove (FolderItem *item);
-void folder_item_destroy (FolderItem *item);
+FolderItem *folder_item_new (Folder *folder,
+ const gchar *name,
+ const gchar *path);
+void folder_item_append (FolderItem *parent,
+ FolderItem *item);
+void folder_item_remove (FolderItem *item);
+void folder_item_remove_children (FolderItem *item);
+void folder_item_destroy (FolderItem *item);
void folder_set_ui_func (Folder *folder,
FolderUIFunc func,
void folder_set_missing_folders (void);
void folder_unref_account_all (PrefsAccount *account);
+/* return value is locale encoded file name */
gchar *folder_item_get_path (FolderItem *item);
gint folder_item_open (FolderItem *item);
MsgInfo *folder_item_get_msginfo_by_msgid(FolderItem *item,
const gchar *msgid);
GSList *folder_item_get_msg_list (FolderItem *item);
+/* return value is locale charset */
gchar *folder_item_fetch_msg (FolderItem *item,
gint num);
gint folder_item_add_msg (FolderItem *dest,
MsgPermFlags newflags);
gboolean folder_item_is_msg_changed (FolderItem *item,
MsgInfo *msginfo);
+/* return value is locale chaset */
gchar *folder_item_get_cache_file (FolderItem *item);
gchar *folder_item_get_mark_file (FolderItem *item);
gchar * folder_item_get_identifier (FolderItem * item);