* src/folder.c
[claws.git] / src / prefs_folder_item.h
1 /*
2  * Sylpheed -- a GTK+ based, lightweight, and fast e-mail client
3  * Copyright (C) 1999-2001 Hiroyuki Yamamoto
4  *
5  * This program is free software; you can redistribute it and/or modify
6  * it under the terms of the GNU General Public License as published by
7  * the Free Software Foundation; either version 2 of the License, or
8  * (at your option) any later version.
9  *
10  * This program is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13  * GNU General Public License for more details.
14  *
15  * You should have received a copy of the GNU General Public License
16  * along with this program; if not, write to the Free Software
17  * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18  */
19
20 #ifndef PREFS_FOLDER_ITEM_H
21
22 #define PREFS_FOLDER_ITEM_H
23
24 #include "folder.h"
25 #include <glib.h>
26 #include <sys/types.h>
27
28 struct _PrefsFolderItem {
29         gchar * directory;
30
31         gboolean sort_by_number;
32         gboolean sort_by_size;
33         gboolean sort_by_date;
34         gboolean sort_by_from;
35         gboolean sort_by_subject;
36         gboolean sort_by_score;
37
38         gboolean sort_descending;
39
40         gboolean enable_thread;
41
42         gint kill_score;
43         gint important_score;
44
45         GSList * scoring;
46         GSList * processing;
47
48         gboolean request_return_receipt;
49         gboolean enable_default_to;
50         gchar *default_to;
51         gboolean enable_default_reply_to;
52         gchar *default_reply_to;
53         gboolean enable_simplify_subject;
54         gchar *simplify_subject_regexp;
55         gboolean enable_folder_chmod;
56         gint folder_chmod;
57         gboolean enable_default_account;
58         gint default_account;
59         gboolean save_copy_to_folder;
60         guint color;
61 };
62
63 typedef struct _PrefsFolderItem PrefsFolderItem;
64
65 /* CLAWS: due a messed up circular header references using 
66  * void *. but this is *REALLY* a folderview */ 
67 void prefs_folder_item_create (void *folderview, FolderItem *item); 
68
69 void prefs_folder_item_read_config(FolderItem * item);
70 void prefs_folder_item_save_config(FolderItem * item);
71 void prefs_folder_item_set_config(FolderItem * item,
72                                   int sort_type, gint sort_mode);
73 PrefsFolderItem * prefs_folder_item_new(void);
74 void prefs_folder_item_free(PrefsFolderItem * prefs);
75 gint prefs_folder_item_get_sort_type(FolderItem * item);
76 gint prefs_folder_item_get_sort_mode(FolderItem * item);
77 void prefs_folder_item_copy_prefs(FolderItem * src, FolderItem * dest);
78
79 #endif