Statistics
| Revision:

root / src / prefs_display_items.h @ 2411

History | View | Annotate | Download (2.3 kB)

1
/*
2
 * Sylpheed -- a GTK+ based, lightweight, and fast e-mail client
3
 * Copyright (C) 1999-2007 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_DISPLAY_ITEMS_H__
21
#define __PREFS_DISPLAY_ITEMS_H__
22
23
#include <glib.h>
24
#include <gtk/gtkwidget.h>
25
26
typedef struct _PrefsDisplayItem        PrefsDisplayItem;
27
typedef struct _PrefsDisplayItemsDialog        PrefsDisplayItemsDialog;
28
29
#include "stock_pixmap.h"
30
31
struct _PrefsDisplayItem
32
{
33
        gint id;
34
        gchar *name;
35
        gchar *label;
36
        gchar *description;
37
        StockPixmap icon;
38
        const gchar *stock_id;
39
        gboolean allow_multiple;
40
        gboolean in_use;
41
};
42
43
struct _PrefsDisplayItemsDialog
44
{
45
        GtkWidget *window;
46
47
        GtkWidget *label;
48
49
        GtkWidget *stock_clist;
50
        GtkWidget *shown_clist;
51
52
        GtkWidget *add_btn;
53
        GtkWidget *remove_btn;
54
        GtkWidget *up_btn;
55
        GtkWidget *down_btn;
56
57
        GtkWidget *default_btn;
58
59
        GtkWidget *confirm_area;
60
        GtkWidget *ok_btn;
61
        GtkWidget *cancel_btn;
62
63
        const PrefsDisplayItem *all_items;
64
        GList *available_items;
65
        const gint *default_visible_ids;
66
        GList *visible_items;
67
68
        gboolean finished;
69
        gboolean cancelled;
70
};
71
72
PrefsDisplayItemsDialog *prefs_display_items_dialog_create        (void);
73
74
void prefs_display_items_dialog_set_available
75
                                        (PrefsDisplayItemsDialog *dialog,
76
                                         PrefsDisplayItem        *all_items,
77
                                         const gint                 *ids);
78
void prefs_display_items_dialog_set_default_visible
79
                                        (PrefsDisplayItemsDialog *dialog,
80
                                         const gint                 *ids);
81
void prefs_display_items_dialog_set_visible
82
                                        (PrefsDisplayItemsDialog *dialog,
83
                                         const gint                 *ids);
84
85
void prefs_display_items_dialog_destroy        (PrefsDisplayItemsDialog *dialog);
86
87
#endif /* __PREFS_DISPLAY_ITEMS_H__ */