2 * Sylpheed -- a GTK+ based, lightweight, and fast e-mail client
3 * Copyright (C) 1999-2002 Hiroyuki Yamamoto
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.
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.
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.
20 #ifndef __CUSTOM_TOOLBAR_H__
21 #define __CUSTOM_TOOLBAR_H__
23 #define SEPARATOR "separator"
24 #define TOOLBAR_FILE "toolbar.xml"
26 #define SEPARATOR_PIXMAP "---"
46 #define A_COMPOSE_NEWS N_ACTION_VAL + 1
47 #define A_SEPARATOR N_ACTION_VAL + 2
49 typedef struct _ToolbarAction ToolbarAction;
54 void (*func)(GtkWidget *widget, gpointer data);
57 typedef struct _ToolbarItem ToolbarItem;
65 typedef struct _ToolbarSylpheedActions ToolbarSylpheedActions;
66 struct _ToolbarSylpheedActions
78 typedef struct _MainToolbar MainToolbar;
85 GtkWidget *getall_btn;
87 GtkWidget *sel_down_all;
88 GtkWidget *sel_down_cur;
91 GtkWidget *compose_mail_btn;
92 GtkWidget *compose_news_btn;
95 GtkWidget *replysender_btn;
96 GtkWidget *replyall_btn;
100 GtkWidget *delete_btn;
104 GtkWidget *separator;
108 /* for the reply buttons */
109 GtkWidget *reply_popup;
110 GtkWidget *replyall_popup;
111 GtkWidget *replysender_popup;
113 /* the forward button similar to the reply buttons*/
114 GtkWidget *fwd_popup;
116 ComposeButtonType compose_btn_type;
119 extern GSList *toolbar_list;
121 void toolbar_actions_cb (GtkWidget *widget,
122 ToolbarItem *toolbar_item);
124 GList *toolbar_get_action_items (void);
125 void toolbar_save_config_file (void);
126 void toolbar_read_config_file (void);
127 void toolbar_set_default_toolbar (void);
128 void toolbar_clear_list (void);
129 void toolbar_update (void);
130 void toolbar_destroy (MainWindow *mainwin);
132 gint toolbar_ret_val_from_descr (gchar *descr);
133 gchar *toolbar_ret_descr_from_val (gint val);
134 gchar *toolbar_ret_text_from_val (gint val);
135 void toolbar_create (MainWindow *mainwin,
136 GtkWidget *container);
138 void toolbar_popups_create (MainWindow *mainwin,
141 void toolbar_set_sensitive (MainWindow *mainwin);
142 void toolbar_set_compose_button (MainToolbar *toolbar,
143 ComposeButtonType compose_btn_type);
144 #endif /* __CUSTOM_TOOLBAR_H__ */