gtk_entry_set_text(GTK_ENTRY(prefs_toolbar->item_text_entry),
toolbar_get_short_text(action));
g_free(text);
+ if (action >= 0) {
+ StockPixmap stockp = toolbar_get_icon(action);
+ if (stockp >= 0) {
+ g_free(prefs_toolbar->item_icon_file);
+ prefs_toolbar->item_icon_file = g_strdup(stock_pixmap_get_name(stockp));
+
+ gtk_button_set_image(GTK_BUTTON(prefs_toolbar->icon_button),
+ stock_pixmap_widget(prefs_toolbar->window, stockp));
+ }
+ }
}
}
prefs_toolbar->icon_chooser_list = NULL;
}
+static gboolean icon_chooser_key_pressed(GtkWidget *widget, GdkEventKey *event,
+ ToolbarPage *prefs_toolbar)
+{
+ if (event && event->keyval == GDK_Escape) {
+ icon_chooser_cancel_clicked(NULL, prefs_toolbar);
+ return TRUE;
+ }
+
+ return FALSE;
+}
+
+static void icon_chooser_tree_activated(GtkTreeView *treeview, GtkTreePath *path,
+ GtkTreeViewColumn *column, ToolbarPage *prefs_toolbar)
+{
+ icon_chooser_ok_clicked(NULL, prefs_toolbar);
+}
+
static void icon_chooser_create(GtkButton *button, ToolbarPage *prefs_toolbar)
{
static GtkWidget *icon_chooser_win;
G_CALLBACK(icon_chooser_ok_clicked), prefs_toolbar);
g_signal_connect(G_OBJECT(cancel_btn), "clicked",
G_CALLBACK(icon_chooser_cancel_clicked), prefs_toolbar);
-
+ g_signal_connect(G_OBJECT(icon_chooser_win), "key_press_event",
+ G_CALLBACK(icon_chooser_key_pressed), prefs_toolbar);
+ g_signal_connect(G_OBJECT(list_view), "row-activated",
+ G_CALLBACK(icon_chooser_tree_activated), prefs_toolbar);
+
gtk_widget_show_all(icon_chooser_win);
gtk_window_set_modal(GTK_WINDOW(icon_chooser_win), TRUE);
case A_LINEWRAP_ALL: return _("Wrap all");
case A_ADDRBOOK: return _("Address");
case A_CANCEL_INC: return _("Stop");
+ case A_EXECUTE: return _("Execute");
#ifdef USE_ASPELL
case A_CHECK_SPELLING: return _("Check spelling");
#endif
}
}
+gint toolbar_get_icon(int action) {
+ switch(action) {
+ case A_GO_FOLDERS: return STOCK_PIXMAP_GO_FOLDERS;
+ case A_OPEN_MAIL: return STOCK_PIXMAP_OPEN_MAIL;
+ case A_RECEIVE_ALL: return STOCK_PIXMAP_MAIL_RECEIVE_ALL;
+ case A_RECEIVE_CUR: return STOCK_PIXMAP_MAIL_RECEIVE;
+ case A_SEND_QUEUED: return STOCK_PIXMAP_MAIL_SEND_QUEUE;
+ case A_COMPOSE_EMAIL: return STOCK_PIXMAP_MAIL_COMPOSE;
+ case A_COMPOSE_NEWS: return STOCK_PIXMAP_NEWS_COMPOSE;
+ case A_REPLY_MESSAGE: return STOCK_PIXMAP_MAIL_REPLY;
+ case A_REPLY_ALL: return STOCK_PIXMAP_MAIL_REPLY_TO_ALL;
+ case A_REPLY_SENDER: return STOCK_PIXMAP_MAIL_REPLY_TO_AUTHOR;
+ case A_REPLY_ML: return STOCK_PIXMAP_MAIL_REPLY;
+ case A_FORWARD: return STOCK_PIXMAP_MAIL_FORWARD;
+ case A_TRASH: return STOCK_PIXMAP_TRASH;
+ case A_DELETE_REAL: return STOCK_PIXMAP_DELETED;
+ case A_LEARN_SPAM: return STOCK_PIXMAP_SPAM_BTN;
+ case A_GOTO_PREV: return STOCK_PIXMAP_UP_ARROW;
+ case A_GOTO_NEXT: return STOCK_PIXMAP_DOWN_ARROW;
+ case A_IGNORE_THREAD: return STOCK_PIXMAP_IGNORETHREAD;
+ case A_WATCH_THREAD: return STOCK_PIXMAP_WATCHTHREAD;
+ case A_PRINT: return STOCK_PIXMAP_PRINTER;
+ case A_CLOSE: return STOCK_PIXMAP_CLOSE;
+ case A_SEND: return STOCK_PIXMAP_MAIL_SEND;
+ case A_SENDL: return STOCK_PIXMAP_MAIL_SEND_QUEUE;
+ case A_DRAFT: return STOCK_PIXMAP_MAIL;
+ case A_INSERT: return STOCK_PIXMAP_INSERT_FILE;
+ case A_ATTACH: return STOCK_PIXMAP_MAIL_ATTACH;
+ case A_SIG: return STOCK_PIXMAP_MAIL_SIGN;
+ case A_EXTEDITOR: return STOCK_PIXMAP_EDIT_EXTERN;
+ case A_LINEWRAP_CURRENT:return STOCK_PIXMAP_LINEWRAP_CURRENT;
+ case A_LINEWRAP_ALL: return STOCK_PIXMAP_LINEWRAP_ALL;
+ case A_ADDRBOOK: return STOCK_PIXMAP_ADDRESS_BOOK;
+ case A_CANCEL_INC: return STOCK_PIXMAP_NOTICE_ERROR;
+ case A_EXECUTE: return STOCK_PIXMAP_EXEC;
+ #ifdef USE_ASPELL
+ case A_CHECK_SPELLING: return STOCK_PIXMAP_CHECK_SPELLING;
+ #endif
+ default: return -1;
+ }
+}
+
static void toolbar_set_default_main(void)
{
struct {
gint action;
- gint icon;
} default_toolbar[] = {
#ifdef MAEMO
- { A_GO_FOLDERS, STOCK_PIXMAP_GO_FOLDERS },
- { A_OPEN_MAIL, STOCK_PIXMAP_OPEN_MAIL },
- { A_SEPARATOR, 0 },
+ { A_GO_FOLDERS},
+ { A_OPEN_MAIL},
+ { A_SEPARATOR},
#endif
- { A_RECEIVE_ALL, STOCK_PIXMAP_MAIL_RECEIVE_ALL },
- { A_SEPARATOR, 0},
- { A_SEND_QUEUED, STOCK_PIXMAP_MAIL_SEND_QUEUE},
- { A_COMPOSE_EMAIL, STOCK_PIXMAP_MAIL_COMPOSE },
- { A_SEPARATOR, 0},
- { A_REPLY_MESSAGE, STOCK_PIXMAP_MAIL_REPLY},
+ { A_RECEIVE_ALL},
+ { A_SEPARATOR},
+ { A_SEND_QUEUED},
+ { A_COMPOSE_EMAIL},
+ { A_SEPARATOR},
+ { A_REPLY_MESSAGE},
#ifndef MAEMO
- { A_REPLY_ALL, STOCK_PIXMAP_MAIL_REPLY_TO_ALL},
- { A_REPLY_SENDER, STOCK_PIXMAP_MAIL_REPLY_TO_AUTHOR},
+ { A_REPLY_ALL},
+ { A_REPLY_SENDER},
#endif
- { A_FORWARD, STOCK_PIXMAP_MAIL_FORWARD},
- { A_SEPARATOR, 0},
- { A_TRASH, STOCK_PIXMAP_TRASH},
+ { A_FORWARD},
+ { A_SEPARATOR},
+ { A_TRASH},
#ifndef MAEMO
#if (defined(USE_SPAMASSASSIN_PLUGIN) || defined(USE_BOGOFILTER_PLUGIN))
- { A_LEARN_SPAM, STOCK_PIXMAP_SPAM_BTN},
+ { A_LEARN_SPAM},
#endif
#endif
- { A_SEPARATOR, 0},
- { A_GOTO_NEXT, STOCK_PIXMAP_DOWN_ARROW }
+ { A_SEPARATOR},
+ { A_GOTO_NEXT}
};
gint i;
if (default_toolbar[i].action != A_SEPARATOR) {
- gchar *file = stock_pixmap_get_name((StockPixmap)default_toolbar[i].icon);
+ gchar *file = stock_pixmap_get_name((StockPixmap)toolbar_get_short_text(default_toolbar[i].action));
toolbar_item->file = g_strdup(file);
toolbar_item->index = default_toolbar[i].action;
{
struct {
gint action;
- gint icon;
} default_toolbar[] = {
#ifdef MAEMO
- { A_CLOSE, STOCK_PIXMAP_CLOSE},
- { A_SEPARATOR, 0},
+ { A_CLOSE},
+ { A_SEPARATOR},
#endif
- { A_SEND, STOCK_PIXMAP_MAIL_SEND},
- { A_SENDL, STOCK_PIXMAP_MAIL_SEND_QUEUE},
- { A_DRAFT, STOCK_PIXMAP_MAIL},
- { A_SEPARATOR, 0},
+ { A_SEND},
+ { A_SENDL},
+ { A_DRAFT},
+ { A_SEPARATOR},
#ifndef MAEMO
- { A_INSERT, STOCK_PIXMAP_INSERT_FILE},
+ { A_INSERT},
#endif
- { A_ATTACH, STOCK_PIXMAP_MAIL_ATTACH},
- { A_SEPARATOR, 0},
- { A_ADDRBOOK, STOCK_PIXMAP_ADDRESS_BOOK }
+ { A_ATTACH},
+ { A_SEPARATOR},
+ { A_ADDRBOOK}
};
gint i;
if (default_toolbar[i].action != A_SEPARATOR) {
- gchar *file = stock_pixmap_get_name((StockPixmap)default_toolbar[i].icon);
+ gchar *file = stock_pixmap_get_name((StockPixmap)toolbar_get_short_text(default_toolbar[i].action));
toolbar_item->file = g_strdup(file);
toolbar_item->index = default_toolbar[i].action;
{
struct {
gint action;
- gint icon;
} default_toolbar[] = {
#ifdef MAEMO
- { A_CLOSE, STOCK_PIXMAP_CLOSE},
- { A_SEPARATOR, 0},
+ { A_CLOSE},
+ { A_SEPARATOR},
#endif
- { A_REPLY_MESSAGE, STOCK_PIXMAP_MAIL_REPLY},
- { A_REPLY_ALL, STOCK_PIXMAP_MAIL_REPLY_TO_ALL},
- { A_REPLY_SENDER, STOCK_PIXMAP_MAIL_REPLY_TO_AUTHOR},
- { A_FORWARD, STOCK_PIXMAP_MAIL_FORWARD},
- { A_SEPARATOR, 0},
- { A_TRASH, STOCK_PIXMAP_TRASH},
+ { A_REPLY_MESSAGE},
+ { A_REPLY_ALL},
+ { A_REPLY_SENDER},
+ { A_FORWARD},
+ { A_SEPARATOR},
+ { A_TRASH},
#ifndef MAEMO
#if (defined(USE_SPAMASSASSIN_PLUGIN) || defined(USE_BOGOFILTER_PLUGIN))
- { A_LEARN_SPAM, STOCK_PIXMAP_SPAM_BTN},
+ { A_LEARN_SPAM},
#endif
#endif
- { A_GOTO_NEXT, STOCK_PIXMAP_DOWN_ARROW }
+ { A_GOTO_NEXT}
};
gint i;
if (default_toolbar[i].action != A_SEPARATOR) {
- gchar *file = stock_pixmap_get_name((StockPixmap)default_toolbar[i].icon);
+ gchar *file = stock_pixmap_get_name((StockPixmap)toolbar_get_short_text(default_toolbar[i].action));
toolbar_item->file = g_strdup(file);
toolbar_item->index = default_toolbar[i].action;