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);
34 if (!is_dir_exist(path))
37 prefs_read_config(param, path, FOLDERITEM_RC);
40 * item->prefs = tmp_prefs;
43 void prefs_folder_item_save_config(FolderItem * item)
47 tmp_prefs = * item->prefs;
49 path = folder_item_get_path(item);
50 if (!is_dir_exist(path))
53 prefs_save_config(param, path, FOLDERITEM_RC);
57 void prefs_folder_item_set_config(FolderItem * item,
58 int sort_type, gint sort_mode)
60 tmp_prefs = * item->prefs;
62 tmp_prefs.sort_by_number = FALSE;
63 tmp_prefs.sort_by_size = FALSE;
64 tmp_prefs.sort_by_date = FALSE;
65 tmp_prefs.sort_by_from = FALSE;
66 tmp_prefs.sort_by_subject = FALSE;
67 tmp_prefs.sort_by_score = FALSE;
71 tmp_prefs.sort_by_number = TRUE;
74 tmp_prefs.sort_by_size = TRUE;
77 tmp_prefs.sort_by_date = TRUE;
80 tmp_prefs.sort_by_from = TRUE;
83 tmp_prefs.sort_by_subject = TRUE;
86 tmp_prefs.sort_by_score = TRUE;
89 tmp_prefs.sort_descending = (sort_type == GTK_SORT_DESCENDING);
91 * item->prefs = tmp_prefs;
94 PrefsFolderItem * prefs_folder_item_new(void)
96 PrefsFolderItem * prefs;
98 prefs = g_new0(PrefsFolderItem, 1);
100 tmp_prefs.sort_by_number = FALSE;
101 tmp_prefs.sort_by_size = FALSE;
102 tmp_prefs.sort_by_date = FALSE;
103 tmp_prefs.sort_by_from = FALSE;
104 tmp_prefs.sort_by_subject = FALSE;
105 tmp_prefs.sort_by_score = FALSE;
106 tmp_prefs.sort_descending = FALSE;
113 void prefs_folder_item_free(PrefsFolderItem * prefs)
118 gint prefs_folder_item_get_sort_mode(FolderItem * item)
120 tmp_prefs = * item->prefs;
122 if (tmp_prefs.sort_by_number)
123 return SORT_BY_NUMBER;
124 if (tmp_prefs.sort_by_size)
126 if (tmp_prefs.sort_by_date)
128 if (tmp_prefs.sort_by_from)
130 if (tmp_prefs.sort_by_subject)
131 return SORT_BY_SUBJECT;
132 if (tmp_prefs.sort_by_score)
133 return SORT_BY_SCORE;
137 gint prefs_folder_item_get_sort_type(FolderItem * item)
139 tmp_prefs = * item->prefs;
141 if (tmp_prefs.sort_descending)
142 return GTK_SORT_DESCENDING;
144 return GTK_SORT_ASCENDING;