[balsa] Show or hide toolbars



commit d9dd0141655922e4a8fb1c648a944a65a953892d
Author: Peter Bloomfield <PeterBloomfield bellsouth net>
Date:   Sat Jan 2 15:32:04 2010 -0500

    Show or hide toolbars

 ChangeLog            |   14 ++++++++++
 src/balsa-app.h      |    9 +++++-
 src/main-window.c    |   70 ++++++++++++++++++++++++++++++++++++++++++--------
 src/main-window.h    |    4 ++-
 src/message-window.c |   31 ++++++++++++++++++----
 src/save-restore.c   |   25 +++++++++++++++++-
 src/sendmsg-window.c |   25 +++++++++++++++---
 src/sendmsg-window.h |    6 +++-
 8 files changed, 159 insertions(+), 25 deletions(-)
---
diff --git a/ChangeLog b/ChangeLog
index 0c60c0d..380705a 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,17 @@
+2010-01-02  Peter Bloomfield
+
+	* src/balsa-app.h: new members to save hidden toolbars.
+	* src/save-restore.c (config_global_load), (config_save): save
+	and restore them.
+	* src/main-window.c: options to hide toolbar, SoSbar, and status
+	bar.
+	* src/main-window.h: add toolbar and sos_bar members.
+	* src/message-window.c (message_window_new),
+	(mw_show_toolbar_cb): option to hide toolbar.
+	* src/sendmsg-window.c (sendmsg_window_new),
+	(sw_show_toolbar_cb): option to hide toolbar.
+	* src/sendmsg-window.h: add toolbar member.
+
 2010-01-02  Pawel Salek
 
 	* libbalsa/imap/pop3.c: Report errors occuring during downloading
diff --git a/src/balsa-app.h b/src/balsa-app.h
index 01181d2..effd42c 100644
--- a/src/balsa-app.h
+++ b/src/balsa-app.h
@@ -1,6 +1,6 @@
 /* -*-mode:c; c-style:k&r; c-basic-offset:4; -*- */
 /* Balsa E-Mail Client
- * Copyright (C) 1997-2002 Stuart Parmenter and others,
+ * Copyright (C) 1997-2010 Stuart Parmenter and others,
  *                         See the file AUTHORS for a list.
  *
  * This program is free software; you can redistribute it and/or modify
@@ -299,6 +299,13 @@ extern struct BalsaApplication {
     gboolean enable_view_filter;   /* enable quick view filter */
 #endif
 
+    /* Show toolbars, status bar, and subject-or-sender search bar */
+    gboolean show_main_toolbar;
+    gboolean show_message_toolbar;
+    gboolean show_compose_toolbar;
+    gboolean show_statusbar;
+    gboolean show_sos_bar;
+
     gboolean empty_trash_on_exit;
     gboolean previewpane;
     gboolean debug;
diff --git a/src/main-window.c b/src/main-window.c
index de85352..a569c7e 100644
--- a/src/main-window.c
+++ b/src/main-window.c
@@ -1,6 +1,6 @@
 /* -*-mode:c; c-style:k&r; c-basic-offset:4; -*- */
 /* Balsa E-Mail Client
- * Copyright (C) 1997-2007 Stuart Parmenter and others,
+ * Copyright (C) 1997-2010 Stuart Parmenter and others,
  *                         See the file AUTHORS for a list.
  *
  * This program is free software; you can redistribute it and/or modify
@@ -245,6 +245,9 @@ static void bw_set_sort_menu(BalsaWindow *window,
 #endif /* ENABLE_TOUCH_UI */
 static void bw_hide_changed_cb         (GtkToggleAction * action, gpointer data);
 static void bw_wrap_message_cb         (GtkToggleAction * action, gpointer data);
+static void bw_show_toolbar_cb         (GtkToggleAction * action, gpointer data);
+static void bw_show_statusbar_cb       (GtkToggleAction * action, gpointer data);
+static void bw_show_sos_bar_cb         (GtkToggleAction * action, gpointer data);
 static void bw_show_all_headers_tool_cb(GtkToggleAction * action, gpointer data);
 static void bw_show_preview_pane_cb    (GtkToggleAction * action, gpointer data);
 static void bw_reset_show_all_headers(BalsaWindow * window);
@@ -600,6 +603,12 @@ static const GtkToggleActionEntry toggle_entries[] = {
     {"ShowMailboxTabs", NULL, N_("Show Mailbox _Tabs"), NULL,
      N_("Toggle display of mailbox notebook tabs"),
      G_CALLBACK(bw_show_mbtabs_cb), FALSE},
+    {"ShowToolbar", NULL, N_("Show Too_lbar"), NULL,
+     NULL, G_CALLBACK(bw_show_toolbar_cb), TRUE},
+    {"ShowStatusbar", NULL, N_("Show St_atus Bar"), NULL,
+     NULL, G_CALLBACK(bw_show_statusbar_cb), TRUE},
+    {"ShowSOSbar", NULL, N_("Show \"S_ubject or Sender\" Bar"), NULL,
+     NULL, G_CALLBACK(bw_show_sos_bar_cb), TRUE},
 #else  /* ENABLE_TOUCH_UI */
     {"SortDescending", NULL, N_("_Descending"), NULL,
      N_("Sort in a descending order"),
@@ -716,6 +725,9 @@ static const char *ui_description =
 "    <menu action='ViewMenu'>"
 "      <menuitem action='ShowMailboxTree'/>"
 "      <menuitem action='ShowMailboxTabs'/>"
+"      <menuitem action='ShowToolbar'/>"
+"      <menuitem action='ShowStatusbar'/>"
+"      <menuitem action='ShowSOSbar'/>"
 "      <separator/>"
 "      <menuitem action='Wrap'/>"
 "      <separator/>"
@@ -1196,7 +1208,6 @@ static GtkWidget*
 bw_create_index_widget(BalsaWindow *bw)
 {
     GtkWidget *vbox, *button;
-    GtkWidget *hbox = gtk_hbox_new(FALSE, 5);
     unsigned i;
 
     if(!view_filters_translated) {
@@ -1205,8 +1216,10 @@ bw_create_index_widget(BalsaWindow *bw)
         view_filters_translated = TRUE;
     }
 
+    bw->sos_bar = gtk_hbox_new(FALSE, 5);
+
     bw->filter_choice = gtk_combo_box_new_text();
-    gtk_box_pack_start(GTK_BOX(hbox), bw->filter_choice,
+    gtk_box_pack_start(GTK_BOX(bw->sos_bar), bw->filter_choice,
                        FALSE, FALSE, 0);
     for(i=0; i<ELEMENTS(view_filters); i++)
         gtk_combo_box_insert_text(GTK_COMBO_BOX(bw->filter_choice),
@@ -1220,9 +1233,9 @@ bw_create_index_widget(BalsaWindow *bw)
                      G_CALLBACK(bw_enable_filter), bw);
     g_signal_connect(G_OBJECT(bw->sos_entry), "focus_out_event",
                      G_CALLBACK(bw_disable_filter), bw);
-    gtk_box_pack_start(GTK_BOX(hbox), bw->sos_entry, TRUE, TRUE, 0);
+    gtk_box_pack_start(GTK_BOX(bw->sos_bar), bw->sos_entry, TRUE, TRUE, 0);
     gtk_widget_show(bw->sos_entry);
-    gtk_box_pack_start(GTK_BOX(hbox),
+    gtk_box_pack_start(GTK_BOX(bw->sos_bar),
                        button = gtk_button_new(),
                        FALSE, FALSE, 0);
     gtk_container_add(GTK_CONTAINER(button),
@@ -1246,8 +1259,8 @@ bw_create_index_widget(BalsaWindow *bw)
      * space-constrained conditions. */
     if(balsa_app.enable_view_filter)
 #endif
-        gtk_widget_show(hbox);
-    gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0);
+        gtk_widget_show(bw->sos_bar);
+    gtk_box_pack_start(GTK_BOX(vbox), bw->sos_bar, FALSE, FALSE, 0);
     gtk_box_pack_start(GTK_BOX(vbox), bw->notebook, TRUE, TRUE, 0);
     gtk_container_set_focus_chain(GTK_CONTAINER(vbox),
                                   g_list_append(NULL, bw->notebook));
@@ -1623,7 +1636,6 @@ balsa_window_new()
     GtkAccelGroup *accel_group;
     GError *error = NULL;
     GtkWidget *menubar;
-    GtkWidget *toolbar;
     GtkWidget *hbox;
     static const gchar *const header_options[] =
         { "NoHeaders", "SelectedHeaders", "AllHeaders" };
@@ -1683,8 +1695,9 @@ balsa_window_new()
     gtk_box_pack_start(GTK_BOX(window->vbox), menubar, FALSE, FALSE, 0);
 #endif
 
-    toolbar = balsa_toolbar_new(model, ui_manager);
-    gtk_box_pack_start(GTK_BOX(window->vbox), toolbar, FALSE, FALSE, 0);
+    window->toolbar = balsa_toolbar_new(model, ui_manager);
+    gtk_box_pack_start(GTK_BOX(window->vbox), window->toolbar,
+                       FALSE, FALSE, 0);
 
     /* Now that we have installed the menubar and toolbar, we no longer
      * need the UIManager. */
@@ -1813,6 +1826,9 @@ balsa_window_new()
     g_signal_connect_after(G_OBJECT(window), "key_press_event",
                      G_CALLBACK(bw_open_mailbox_cb), NULL);
 #endif
+    bw_set_active(window, "ShowToolbar", balsa_app.show_main_toolbar, FALSE);
+    bw_set_active(window, "ShowStatusbar", balsa_app.show_statusbar, FALSE);
+    bw_set_active(window, "ShowSOSbar", balsa_app.show_sos_bar, FALSE);
 
     /* Disable menu items at start up */
     balsa_window_update_book_menus(window);
@@ -3972,6 +3988,37 @@ bw_wrap_message_cb(GtkToggleAction * action, gpointer data)
     refresh_preferences_manager();
 }
 
+static void
+bw_show_helper(GtkToggleAction * action, gboolean * active,
+               GtkWidget * widget)
+{
+    if ((*active = gtk_toggle_action_get_active(action)))
+        gtk_widget_show(widget);
+    else
+        gtk_widget_hide(widget);
+}
+
+static void
+bw_show_toolbar_cb(GtkToggleAction * action, gpointer data)
+{
+    bw_show_helper(action, &balsa_app.show_main_toolbar,
+                   BALSA_WINDOW(data)->toolbar);
+}
+
+static void
+bw_show_statusbar_cb(GtkToggleAction * action, gpointer data)
+{
+    bw_show_helper(action, &balsa_app.show_statusbar,
+                   BALSA_WINDOW(data)->statusbar);
+}
+
+static void
+bw_show_sos_bar_cb(GtkToggleAction * action, gpointer data)
+{
+    bw_show_helper(action, &balsa_app.show_sos_bar,
+                   BALSA_WINDOW(data)->sos_bar);
+}
+
 /*
  * Callback for the "activate" signal of the View menu's header options.
  * We use this instead of the GtkRadioAction's "changed" signal so that
@@ -5102,7 +5149,8 @@ bw_progress_timeout(BalsaWindow ** window)
 {
     gdk_threads_enter();
 
-    if (*window && (*window)->progress_type == BALSA_PROGRESS_ACTIVITY)
+    if (balsa_app.show_statusbar
+        && *window && (*window)->progress_type == BALSA_PROGRESS_ACTIVITY)
         gtk_progress_bar_pulse(GTK_PROGRESS_BAR((*window)->progress_bar));
 
     gdk_threads_leave();
diff --git a/src/main-window.h b/src/main-window.h
index ae9bea1..3d17779 100644
--- a/src/main-window.h
+++ b/src/main-window.h
@@ -1,6 +1,6 @@
 /* -*-mode:c; c-style:k&r; c-basic-offset:4; -*- */
 /* Balsa E-Mail Client
- * Copyright (C) 1997-2001 Stuart Parmenter and others,
+ * Copyright (C) 1997-2010 Stuart Parmenter and others,
  *                         See the file AUTHORS for a list.
  *
  * This program is free software; you can redistribute it and/or modify
@@ -57,6 +57,8 @@ typedef enum {
 struct _BalsaWindow {
     GtkWindow window;
 
+    GtkWidget *toolbar;
+    GtkWidget *sos_bar;
     GtkWidget *progress_bar;
     GtkWidget *statusbar;
     GtkWidget *mblist;
diff --git a/src/message-window.c b/src/message-window.c
index 5126e28..b661a10 100644
--- a/src/message-window.c
+++ b/src/message-window.c
@@ -1,6 +1,6 @@
 /* -*-mode:c; c-style:k&r; c-basic-offset:4; -*- */
 /* Balsa E-Mail Client
- * Copyright (C) 1997-2000 Stuart Parmenter and others,
+ * Copyright (C) 1997-2010 Stuart Parmenter and others,
  *                         See the file AUTHORS for a list.
  *
  * This program is free software; you can redistribute it and/or modify
@@ -82,6 +82,7 @@ static void mw_set_buttons_sensitive(MessageWindow * mw);
 
 static void mw_set_selected(MessageWindow * mw, void (*select_func)(BalsaIndex *));
 
+static void mw_show_toolbar_cb      (GtkToggleAction * action, gpointer data);
 static void wrap_message_cb         (GtkToggleAction * action, gpointer data);
 static void show_all_headers_tool_cb(GtkToggleAction * action, gpointer data);
 
@@ -95,6 +96,7 @@ struct _MessageWindow {
     GtkWidget *window;
 
     GtkWidget *bmessage;
+    GtkWidget *toolbar;
 
     LibBalsaMessage *message;
     BalsaIndex *bindex;
@@ -310,6 +312,8 @@ static const GtkActionEntry entries[] = {
 
 /* Toggle items */
 static const GtkToggleActionEntry toggle_entries[] = {
+    {"ShowToolbar", NULL, N_("Show Too_lbar"), NULL,
+     N_("Show toolbar"), G_CALLBACK(mw_show_toolbar_cb), TRUE},
     {"Wrap", NULL, N_("_Wrap"), NULL, N_("Wrap message lines"),
      G_CALLBACK(wrap_message_cb), FALSE},
     {"ShowAllHeaders", BALSA_PIXMAP_SHOW_HEADERS, NULL, NULL, 
@@ -319,7 +323,7 @@ static const GtkToggleActionEntry toggle_entries[] = {
 
 /* Radio items */
 static const GtkRadioActionEntry shown_hdrs_radio_entries[] = {
-    {"NoHeaders", NULL, N_("N_o Headers"), NULL,
+    {"NoHeaders", NULL, N_("_No Headers"), NULL,
      N_("Display no headers"), HEADERS_NONE},
     {"SelectedHeaders", NULL, N_("_Selected Headers"), NULL,
      N_("Display selected headers"), HEADERS_SELECTED},
@@ -343,6 +347,8 @@ static const char *ui_description =
 "      <menuitem action='FindInMessage'/>"
 "    </menu>"
 "    <menu action='ViewMenu'>"
+"      <menuitem action='ShowToolbar'/>"
+"      <separator/>"
 "      <menuitem action='Wrap'/>"
 "      <separator/>"
 "      <menuitem action='NoHeaders'/>"
@@ -524,7 +530,6 @@ message_window_new(LibBalsaMailbox * mailbox, guint msgno)
     GtkAccelGroup *accel_group; 
     GError *error = NULL;
     GtkWidget *menubar;
-    GtkWidget *toolbar;
     GtkWidget *move_menu, *submenu;
     GtkWidget *close_widget;
     GtkWidget *vbox;
@@ -577,8 +582,8 @@ message_window_new(LibBalsaMailbox * mailbox, guint msgno)
     gtk_box_pack_start(GTK_BOX(vbox), menubar, FALSE, FALSE, 0);
 #endif
 
-    toolbar = balsa_toolbar_new(model, ui_manager);
-    gtk_box_pack_start(GTK_BOX(vbox), toolbar, FALSE, FALSE, 0);
+    mw->toolbar = balsa_toolbar_new(model, ui_manager);
+    gtk_box_pack_start(GTK_BOX(vbox), mw->toolbar, FALSE, FALSE, 0);
 
     /* Now that we have installed the menubar and toolbar, we no longer
      * need the UIManager. */
@@ -617,6 +622,7 @@ message_window_new(LibBalsaMailbox * mailbox, guint msgno)
     mw->bmessage = balsa_message_new();
     
     gtk_box_pack_start(GTK_BOX(vbox), mw->bmessage, TRUE, TRUE, 0);
+    gtk_widget_show_all(vbox);
 
     g_signal_connect(mw->bmessage, "select-part",
 		     G_CALLBACK(mw_select_part_cb), mw);
@@ -632,6 +638,7 @@ message_window_new(LibBalsaMailbox * mailbox, guint msgno)
     }
 
     mw_set_active(mw, "Wrap", balsa_app.browse_wrap, NULL);
+    mw_set_active(mw, "ShowToolbar", balsa_app.show_message_toolbar, NULL);
 
     gtk_window_set_default_size(GTK_WINDOW(window),
                                 balsa_app.message_window_width, 
@@ -639,7 +646,7 @@ message_window_new(LibBalsaMailbox * mailbox, guint msgno)
     if (balsa_app.message_window_maximized)
         gtk_window_maximize(GTK_WINDOW(window));
 
-    gtk_widget_show_all(window);
+    gtk_widget_show(window);
     mw_set_message(mw, message);
 
     close_widget =
@@ -786,6 +793,18 @@ close_message_window_cb(GtkAction * action, gpointer data)
 }
 
 static void
+mw_show_toolbar_cb(GtkToggleAction * action, gpointer data)
+{
+    MessageWindow *mw = (MessageWindow *) data;
+
+    balsa_app.show_message_toolbar = gtk_toggle_action_get_active(action);
+    if (balsa_app.show_message_toolbar)
+        gtk_widget_show(mw->toolbar);
+    else
+        gtk_widget_hide(mw->toolbar);
+}
+
+static void
 wrap_message_cb(GtkToggleAction * action, gpointer data)
 {
     MessageWindow *mw = (MessageWindow *) data;
diff --git a/src/save-restore.c b/src/save-restore.c
index 7a32df9..1c9ad1d 100644
--- a/src/save-restore.c
+++ b/src/save-restore.c
@@ -1,6 +1,6 @@
 /* -*-mode:c; c-style:k&r; c-basic-offset:4; -*- */
 /* Balsa E-Mail Client
- * Copyright (C) 1997-2003 Stuart Parmenter and others,
+ * Copyright (C) 1997-2010 Stuart Parmenter and others,
  *                         See the file AUTHORS for a list.
  *
  * This program is free software; you can redistribute it and/or modify
@@ -794,6 +794,17 @@ config_global_load(void)
     balsa_app.enable_view_filter = libbalsa_conf_get_bool("ViewFilter=false");
 #endif /* ENABLE_TOUCH_UI */
 
+    balsa_app.show_main_toolbar =
+        libbalsa_conf_get_bool("ShowMainWindowToolbar=true");
+    balsa_app.show_message_toolbar =
+        libbalsa_conf_get_bool("ShowMessageWindowToolbar=true");
+    balsa_app.show_compose_toolbar =
+        libbalsa_conf_get_bool("ShowComposeWindowToolbar=true");
+    balsa_app.show_statusbar =
+        libbalsa_conf_get_bool("ShowStatusbar=true");
+    balsa_app.show_sos_bar =
+        libbalsa_conf_get_bool("ShowSOSbar=true");
+
     /* ... Progress Window Dialog */
     balsa_app.pwindow_option = d_get_gint("ProgressWindow", WHILERETR);
 
@@ -1291,6 +1302,18 @@ config_save(void)
     libbalsa_conf_set_bool("FileFormatCheck", balsa_app.do_file_format_check);
     libbalsa_conf_set_bool("ViewFilter",      balsa_app.enable_view_filter);
 #endif /* ENABLE_TOUCH_UI */
+
+    libbalsa_conf_set_bool("ShowMainWindowToolbar",
+                           balsa_app.show_main_toolbar);
+    libbalsa_conf_set_bool("ShowMessageWindowToolbar",
+                           balsa_app.show_message_toolbar);
+    libbalsa_conf_set_bool("ShowComposeWindowToolbar",
+                           balsa_app.show_compose_toolbar);
+    libbalsa_conf_set_bool("ShowStatusbar",
+                           balsa_app.show_statusbar);
+    libbalsa_conf_set_bool("ShowSOSbar",
+                           balsa_app.show_sos_bar);
+
     libbalsa_conf_set_bool("HideDeleted", libbalsa_mailbox_get_filter(NULL) & 1);
     libbalsa_conf_set_bool("ExpungeOnClose", balsa_app.expunge_on_close);
     libbalsa_conf_set_bool("AutoExpunge", balsa_app.expunge_auto);
diff --git a/src/sendmsg-window.c b/src/sendmsg-window.c
index 16ce3d9..5bceb55 100644
--- a/src/sendmsg-window.c
+++ b/src/sendmsg-window.c
@@ -1,6 +1,6 @@
 /* -*-mode:c; c-style:k&r; c-basic-offset:4; -*- */
 /* Balsa E-Mail Client
- * Copyright (C) 1998-2003 Stuart Parmenter and others, see AUTHORS file.
+ * Copyright (C) 1998-2010 Stuart Parmenter and others, see AUTHORS file.
  *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -129,6 +129,8 @@ static void toggle_fcc_cb          (GtkToggleAction * toggle_action,
                                     BalsaSendmsg * bsmsg);
 static void toggle_reqdispnotify_cb(GtkToggleAction * toggle_action,
                                     BalsaSendmsg * bsmsg);
+static void sw_show_toolbar_cb     (GtkToggleAction * action,
+                                    BalsaSendmsg * bsmsg);
 static void toggle_format_cb       (GtkToggleAction * toggle_action,
                                     BalsaSendmsg * bsmsg);
 static void toggle_mp_alt_cb       (GtkToggleAction * toggle_action,
@@ -413,6 +415,8 @@ static const GtkToggleActionEntry toggle_entries[] = {
      N_("Check the spelling of the message"),
      G_CALLBACK(spell_check_menu_cb), FALSE},
 #endif                          /* HAVE_GTKSPELL */
+    {"ShowToolbar", NULL, N_("Too_lbar"), NULL, NULL,
+     G_CALLBACK(sw_show_toolbar_cb), TRUE},
     {"From", NULL, N_("F_rom"), NULL, NULL,
      G_CALLBACK(toggle_from_cb), TRUE},
     {"Recipients", NULL, N_("Rec_ipients"), NULL, NULL,
@@ -509,6 +513,8 @@ static const char *ui_description =
 "      <menuitem action='EditWithGnome'/>"
 "    </menu>"
 "    <menu action='ShowMenu'>"
+"      <menuitem action='ShowToolbar'/>"
+"      <separator/>"
 "      <menuitem action='From'/>"
 "      <menuitem action='Recipients'/>"
 "      <menuitem action='ReplyTo'/>"
@@ -4510,7 +4516,6 @@ static BalsaSendmsg*
 sendmsg_window_new()
 {
     BalsaToolbarModel *model;
-    GtkWidget *toolbar;
     GtkWidget *window;
     GtkWidget *main_box = gtk_vbox_new(FALSE, 0);
     BalsaSendmsg *bsmsg = NULL;
@@ -4594,8 +4599,9 @@ sendmsg_window_new()
     gtk_box_pack_start(GTK_BOX(main_box), menubar, FALSE, FALSE, 0);
 #endif
 
-    toolbar = balsa_toolbar_new(model, ui_manager);
-    gtk_box_pack_start(GTK_BOX(main_box), toolbar, FALSE, FALSE, 0);
+    bsmsg->toolbar = balsa_toolbar_new(model, ui_manager);
+    gtk_box_pack_start(GTK_BOX(main_box), bsmsg->toolbar,
+                       FALSE, FALSE, 0);
 
     /* Now that we have installed the menubar and toolbar, we no longer
      * need the UIManager. */
@@ -4620,6 +4626,7 @@ sendmsg_window_new()
 
     sw_set_active(bsmsg, "Flowed", bsmsg->flow);
     sw_set_active(bsmsg, "SendMPAlt", bsmsg->ident->send_mp_alternative);
+    sw_set_active(bsmsg, "ShowToolbar", balsa_app.show_compose_toolbar);
 
 #ifdef HAVE_GPGME
     bsmsg_setup_gpg_ui(bsmsg);
@@ -6576,6 +6583,16 @@ toggle_reqdispnotify_cb(GtkToggleAction * action,
 }
 
 static void
+sw_show_toolbar_cb(GtkToggleAction * action, BalsaSendmsg * bsmsg)
+{
+    balsa_app.show_compose_toolbar = gtk_toggle_action_get_active(action);
+    if (balsa_app.show_compose_toolbar)
+        gtk_widget_show(bsmsg->toolbar);
+    else
+        gtk_widget_hide(bsmsg->toolbar);
+}
+
+static void
 toggle_format_cb(GtkToggleAction * toggle_action, BalsaSendmsg * bsmsg)
 {
     bsmsg->flow = gtk_toggle_action_get_active(toggle_action);
diff --git a/src/sendmsg-window.h b/src/sendmsg-window.h
index 0872d04..b2f9c2a 100644
--- a/src/sendmsg-window.h
+++ b/src/sendmsg-window.h
@@ -59,8 +59,12 @@ extern "C" {
 
     struct _BalsaSendmsg {
 	GtkWidget *window;
+	GtkWidget *toolbar;
         LibBalsaAddressView *recipient_view, *replyto_view;
-	GtkWidget *from[2], *recipients[2], *replyto[2], *subject[2], *fcc[2];
+	GtkWidget *from[2], *recipients[2], *subject[2], *fcc[2];
+#if !defined(ENABLE_TOUCH_UI)
+	GtkWidget *replyto[2];
+#endif                          /* ENABLE_TOUCH_UI */
 	GtkWidget *attachments[4];
         gchar *in_reply_to;
         GList *references;



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]