#include "prefs_folder_item.h"
#include "prefs_summary_column.h"
#include "prefs_template.h"
-#include "prefs_toolbar.h"
#include "account.h"
#include "addressbook.h"
#include "logwindow.h"
#include "selective_download.h"
#include "ssl_manager.h"
#include "sslcertwindow.h"
-#include "prefswindow.h"
+#include "prefs_gtk.h"
+#include "pluginwindow.h"
#define AC_LABEL_WIDTH 240
static void sel_download_cb (MainWindow *mainwin,
guint action,
GtkWidget *widget);
-static void prefs_toolbar_cb (MainWindow *mainwin,
- guint action,
- GtkWidget *widget);
-
static void inc_cancel_cb (MainWindow *mainwin,
guint action,
static void prefs_open_cb (GtkMenuItem *menuitem,
gpointer data);
+static void plugins_open_cb (GtkMenuItem *menuitem,
+ gpointer data);
static void online_switch_clicked(GtkButton *btn,
gpointer data);
{N_("/_View/_Sort/by _color label"),
NULL, sort_summary_cb, SORT_BY_LABEL, "/View/Sort/by number"},
{N_("/_View/_Sort/by _mark"), NULL, sort_summary_cb, SORT_BY_MARK, "/View/Sort/by number"},
- {N_("/_View/_Sort/by _unread"), NULL, sort_summary_cb, SORT_BY_UNREAD, "/View/Sort/by number"},
+ {N_("/_View/_Sort/by _status"), NULL, sort_summary_cb, SORT_BY_STATUS, "/View/Sort/by number"},
{N_("/_View/_Sort/by a_ttachment"),
NULL, sort_summary_cb, SORT_BY_MIME, "/View/Sort/by number"},
{N_("/_View/_Sort/by score"), NULL, sort_summary_cb, SORT_BY_SCORE, "/View/Sort/by number"},
{N_("/_View/_Code set/7bit ascii (US-ASC_II)"),
CODESET_ACTION(C_US_ASCII)},
-#if HAVE_LIBJCONV
+#if HAVE_ICONV
{N_("/_View/_Code set/Unicode (_UTF-8)"),
CODESET_ACTION(C_UTF_8)},
CODESET_SEPARATOR,
{N_("/_View/_Code set/Western European (ISO-8859-15)"),
CODESET_ACTION(C_ISO_8859_15)},
CODESET_SEPARATOR,
-#if HAVE_LIBJCONV
+#if HAVE_ICONV
{N_("/_View/_Code set/Central European (ISO-8859-_2)"),
CODESET_ACTION(C_ISO_8859_2)},
CODESET_SEPARATOR,
#endif
{N_("/_View/_Code set/Japanese (ISO-2022-_JP)"),
CODESET_ACTION(C_ISO_2022_JP)},
-#if HAVE_LIBJCONV
+#if HAVE_ICONV
{N_("/_View/_Code set/Japanese (ISO-2022-JP-2)"),
CODESET_ACTION(C_ISO_2022_JP_2)},
#endif
CODESET_ACTION(C_EUC_JP)},
{N_("/_View/_Code set/Japanese (_Shift__JIS)"),
CODESET_ACTION(C_SHIFT_JIS)},
-#if HAVE_LIBJCONV
+#if HAVE_ICONV
CODESET_SEPARATOR,
{N_("/_View/_Code set/Simplified Chinese (_GB2312)"),
CODESET_ACTION(C_GB2312)},
{N_("/_Tools/_Log window"), "<shift><control>L", log_window_show_cb, 0, NULL},
{N_("/_Configuration"), NULL, NULL, 0, "<Branch>"},
- {N_("/_Configuration/_Common preferences..."),
- NULL, prefs_common_open_cb, 0, NULL},
- {N_("/_Configuration/C_ustomize toolbars"),
+ {N_("/_Configuration/C_hange current account"),
NULL, NULL, 0, "<Branch>"},
- {N_("/_Configuration/C_ustomize toolbars/_Main window..."),
- NULL, prefs_toolbar_cb, TOOLBAR_MAIN, NULL},
- {N_("/_Configuration/C_ustomize toolbars/_Compose window..."),
- NULL, prefs_toolbar_cb, TOOLBAR_COMPOSE, NULL},
- {N_("/_Configuration/C_ustomize toolbars/M_essage view..."),
- NULL, prefs_toolbar_cb, TOOLBAR_MSGVIEW, NULL},
- {N_("/_Configuration/_Scoring..."),
- NULL, prefs_scoring_open_cb, 0, NULL},
- {N_("/_Configuration/_Filtering..."),
- NULL, prefs_filtering_open_cb, 0, NULL},
- {N_("/_Configuration/_Templates..."), NULL, prefs_template_open_cb, 0, NULL},
- {N_("/_Configuration/_Actions..."), NULL, prefs_actions_open_cb, 0, NULL},
- {N_("/_Configuration/---"), NULL, NULL, 0, "<Separator>"},
{N_("/_Configuration/_Preferences for current account..."),
NULL, prefs_account_open_cb, 0, NULL},
{N_("/_Configuration/Create _new account..."),
NULL, new_account_cb, 0, NULL},
{N_("/_Configuration/_Edit accounts..."),
NULL, account_edit_open, 0, NULL},
- {N_("/_Configuration/C_hange current account"),
- NULL, NULL, 0, "<Branch>"},
{N_("/_Configuration/---"), NULL, NULL, 0, "<Separator>"},
- {N_("/_Configuration/Preferences..."), NULL, prefs_open_cb, 0, NULL},
+ {N_("/_Configuration/_Common preferences..."),
+ NULL, prefs_common_open_cb, 0, NULL},
+ {N_("/_Configuration/_Scoring..."),
+ NULL, prefs_scoring_open_cb, 0, NULL},
+ {N_("/_Configuration/_Filtering..."),
+ NULL, prefs_filtering_open_cb, 0, NULL},
+ {N_("/_Configuration/_Templates..."), NULL, prefs_template_open_cb, 0, NULL},
+ {N_("/_Configuration/_Actions..."), NULL, prefs_actions_open_cb, 0, NULL},
+ {N_("/_Configuration/_Other Preferences..."), NULL, prefs_open_cb, 0, NULL},
+ {N_("/_Configuration/Plugins..."), NULL, plugins_open_cb, 0, NULL},
{N_("/_Help"), NULL, NULL, 0, "<Branch>"},
{N_("/_Help/_Manual (Local)"), NULL, manual_open_cb, MANUAL_MANUAL_LOCAL, NULL},
GtkWidget *offline_pixmap;
GtkWidget *online_switch;
GtkWidget *offline_switch;
+ GtkTooltips *offline_tip;
+ GtkTooltips *online_tip;
+ GtkTooltips *sel_ac_tip;
FolderView *folderview;
SummaryView *summaryview;
online_pixmap = stock_pixmap_widget(hbox_stat, STOCK_PIXMAP_WORK_ONLINE);
offline_pixmap = stock_pixmap_widget(hbox_stat, STOCK_PIXMAP_WORK_OFFLINE);
+ online_tip = gtk_tooltips_new();
online_switch = gtk_button_new ();
+ gtk_tooltips_set_tip(GTK_TOOLTIPS(online_tip),
+ online_switch, _("Go offline"), NULL);
+ offline_tip = gtk_tooltips_new();
offline_switch = gtk_button_new ();
+ gtk_tooltips_set_tip(GTK_TOOLTIPS(offline_tip),
+ offline_switch, _("Go online"), NULL);
gtk_container_add (GTK_CONTAINER(online_switch), online_pixmap);
gtk_button_set_relief (GTK_BUTTON(online_switch), GTK_RELIEF_NONE);
gtk_signal_connect (GTK_OBJECT(online_switch), "clicked", (GtkSignalFunc)online_switch_clicked, mainwin);
statuslabel = gtk_label_new("");
gtk_box_pack_start(GTK_BOX(hbox_stat), statuslabel, FALSE, FALSE, 0);
+ sel_ac_tip = gtk_tooltips_new();
ac_button = gtk_button_new();
+ gtk_tooltips_set_tip(GTK_TOOLTIPS(sel_ac_tip),
+ ac_button, _("Select account"), NULL);
gtk_button_set_relief(GTK_BUTTON(ac_button), GTK_RELIEF_NONE);
GTK_WIDGET_UNSET_FLAGS(ac_button, GTK_CAN_FOCUS);
gtk_widget_set_usize(ac_button, -1, 1);
summaryview->color_dim.red = summaryview->color_dim.green =
summaryview->color_dim.blue = COLOR_DIM;
- folderview->color_new.red = (guint16)55000;
- folderview->color_new.green = folderview->color_new.blue = 15000;
+ gtkut_convert_int_to_gdk_color(prefs_common.color_new,
+ &folderview->color_new);
gtkut_convert_int_to_gdk_color(prefs_common.tgt_folder_col,
&folderview->color_op);
gtk_widget_hide(GTK_WIDGET(mainwin->summaryview->hbox_search));
- if (prefs_common.show_searchbar)
+ if (prefs_common.show_searchbar) {
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(mainwin->summaryview->toggle_search), TRUE);
-
+ if (prefs_common.summary_quicksearch_type != S_SEARCH_EXTENDED)
+ gtk_widget_hide(summaryview->search_description);
+ }
/* set account selection menu */
ac_menu = gtk_item_factory_get_widget
/* create actions menu */
update_mainwin_actions_menu(ifactory, mainwin);
+ /* attach accel groups to main window */
+#define ADD_MENU_ACCEL_GROUP_TO_WINDOW(menu,win) \
+ gtk_window_add_accel_group \
+ (GTK_WINDOW(win), \
+ gtk_item_factory_from_widget(menu)->accel_group)
+
+ ADD_MENU_ACCEL_GROUP_TO_WINDOW(summaryview->popupmenu,mainwin->window);
+
+ /* connect the accelerators for equivalent
+ menu items in different menus */
+ menu_connect_identical_items();
+
+
+
/* show main window */
gtk_widget_set_uposition(mainwin->window,
prefs_common.mainwin_x,
procmsg_empty_trash();
- for (list = folder_get_list(); list != NULL; list = list->next) {
- folder = list->data;
- if (folder && folder->trash) {
- folder_update_item(folder->trash, TRUE);
- }
- }
-
if (mainwin->summaryview->folder_item &&
mainwin->summaryview->folder_item->stype == F_TRASH)
gtk_widget_grab_focus(mainwin->folderview->ctree);
menu_path = "/View/Sort/by color label"; break;
case SORT_BY_MARK:
menu_path = "/View/Sort/by mark"; break;
- case SORT_BY_UNREAD:
- menu_path = "/View/Sort/by unread"; break;
+ case SORT_BY_STATUS:
+ menu_path = "/View/Sort/by status"; break;
case SORT_BY_MIME:
menu_path = "/View/Sort/by attachment"; break;
case SORT_BY_SCORE:
selective_download(mainwin);
}
-static void prefs_toolbar_cb(MainWindow *mainwin, guint action,
- GtkWidget *widget)
-{
- prefs_toolbar_open((ToolbarType)action);
-}
-
static void inc_cancel_cb(MainWindow *mainwin, guint action, GtkWidget *widget)
{
inc_cancel_all();
static void prefs_open_cb(GtkMenuItem *menuitem, gpointer data)
{
- prefswindow_create();
+ prefs_gtk_open();
+}
+
+static void plugins_open_cb(GtkMenuItem *menuitem, gpointer data)
+{
+ pluginwindow_create();
}
static void manual_open_cb(MainWindow *mainwin, guint action,
summary_harvest_address( mainwin->summaryview );
}
+/*!
+ *\brief get a MainWindow
+ *
+ *\return MainWindow * The first mainwindow in the mainwin_list
+ */
+MainWindow *mainwindow_get_mainwindow(void)
+{
+ if (mainwin_list && mainwin_list->data)
+ return (MainWindow *)(mainwin_list->data);
+ else
+ return NULL;
+}
+
/*
* End of Source.
*/