3 #include "prefs_folder_item.h"
4 #include "summaryview.h"
7 PrefsFolderItem tmp_prefs;
9 static PrefParam param[] = {
10 {"sort_by_number", "FALSE", &tmp_prefs.sort_by_number, P_BOOL,
12 {"sort_by_size", "FALSE", &tmp_prefs.sort_by_size, P_BOOL,
14 {"sort_by_date", "FALSE", &tmp_prefs.sort_by_date, P_BOOL,
16 {"sort_by_from", "FALSE", &tmp_prefs.sort_by_from, P_BOOL,
18 {"sort_by_subject", "FALSE", &tmp_prefs.sort_by_subject, P_BOOL,
20 {"sort_by_score", "FALSE", &tmp_prefs.sort_by_score, P_BOOL,
22 {"sort_descending", "FALSE", &tmp_prefs.sort_descending, P_BOOL,
24 {"enable_thread", "TRUE", &tmp_prefs.enable_thread, P_BOOL,
26 {NULL, NULL, NULL, P_OTHER, NULL, NULL, NULL}
29 void prefs_folder_item_read_config(FolderItem * item)
33 path = folder_item_get_path(item);
35 if (!is_dir_exist(path))
38 prefs_read_config(param, path, FOLDERITEM_RC);
41 * item->prefs = tmp_prefs;
44 void prefs_folder_item_save_config(FolderItem * item)
48 tmp_prefs = * item->prefs;
50 path = folder_item_get_path(item);
52 if (!is_dir_exist(path))
56 prefs_save_config(param, path, FOLDERITEM_RC);
60 void prefs_folder_item_set_config(FolderItem * item,
61 int sort_type, gint sort_mode)
63 tmp_prefs = * item->prefs;
65 tmp_prefs.sort_by_number = FALSE;
66 tmp_prefs.sort_by_size = FALSE;
67 tmp_prefs.sort_by_date = FALSE;
68 tmp_prefs.sort_by_from = FALSE;
69 tmp_prefs.sort_by_subject = FALSE;
70 tmp_prefs.sort_by_score = FALSE;
74 tmp_prefs.sort_by_number = TRUE;
77 tmp_prefs.sort_by_size = TRUE;
80 tmp_prefs.sort_by_date = TRUE;
83 tmp_prefs.sort_by_from = TRUE;
86 tmp_prefs.sort_by_subject = TRUE;
89 tmp_prefs.sort_by_score = TRUE;
92 tmp_prefs.sort_descending = (sort_type == GTK_SORT_DESCENDING);
94 * item->prefs = tmp_prefs;
97 PrefsFolderItem * prefs_folder_item_new(void)
99 PrefsFolderItem * prefs;
101 prefs = g_new0(PrefsFolderItem, 1);
103 tmp_prefs.sort_by_number = FALSE;
104 tmp_prefs.sort_by_size = FALSE;
105 tmp_prefs.sort_by_date = FALSE;
106 tmp_prefs.sort_by_from = FALSE;
107 tmp_prefs.sort_by_subject = FALSE;
108 tmp_prefs.sort_by_score = FALSE;
109 tmp_prefs.sort_descending = FALSE;
116 void prefs_folder_item_free(PrefsFolderItem * prefs)
121 gint prefs_folder_item_get_sort_mode(FolderItem * item)
123 tmp_prefs = * item->prefs;
125 if (tmp_prefs.sort_by_number)
126 return SORT_BY_NUMBER;
127 if (tmp_prefs.sort_by_size)
129 if (tmp_prefs.sort_by_date)
131 if (tmp_prefs.sort_by_from)
133 if (tmp_prefs.sort_by_subject)
134 return SORT_BY_SUBJECT;
135 if (tmp_prefs.sort_by_score)
136 return SORT_BY_SCORE;
140 gint prefs_folder_item_get_sort_type(FolderItem * item)
142 tmp_prefs = * item->prefs;
144 if (tmp_prefs.sort_descending)
145 return GTK_SORT_DESCENDING;
147 return GTK_SORT_ASCENDING;