SF.net SVN: geany: [598] trunk

eht16 at users.sourceforge.net eht16 at xxxxx
Fri Jul 21 11:41:53 UTC 2006


Revision: 598
Author:   eht16
Date:     2006-07-21 04:41:33 -0700 (Fri, 21 Jul 2006)
ViewCVS:  http://svn.sourceforge.net/geany/?rev=598&view=rev

Log Message:
-----------
Added menu item View->Show Sidebar and improved code around it.

Modified Paths:
--------------
    trunk/ChangeLog
    trunk/geany.glade
    trunk/src/callbacks.c
    trunk/src/callbacks.h
    trunk/src/geany.h
    trunk/src/interface.c
    trunk/src/keybindings.c
    trunk/src/main.c
    trunk/src/prefs.c
    trunk/src/utils.c
    trunk/src/utils.h
Modified: trunk/ChangeLog
===================================================================
--- trunk/ChangeLog	2006-07-20 21:19:18 UTC (rev 597)
+++ trunk/ChangeLog	2006-07-21 11:41:33 UTC (rev 598)
@@ -1,3 +1,13 @@
+2006-07-21  Enrico Tröger  <enrico.troeger at uvena.de>
+
+ * src/geany.h, src/main.c, src/callbacks.c:
+   Introduced app->ignore_callback to ignore callback actions when
+   changing the state of GUI elements(as a workaround).
+ * geany.glade, src/interface.c, src/main.c, src/callbacks.c,
+   src/utils.c, src/prefs.c, src/keybindings.c:
+   Added menu item View->Show Sidebar and improved code around it.
+
+
 2006-07-20  Enrico Tröger  <enrico.troeger at uvena.de>
 
  * src/highlighting.c: Unset fold.compact setting.

Modified: trunk/geany.glade
===================================================================
--- trunk/geany.glade	2006-07-20 21:19:18 UTC (rev 597)
+++ trunk/geany.glade	2006-07-21 11:41:33 UTC (rev 598)
@@ -57,7 +57,7 @@
 		      <property name="use_underline">True</property>
 
 		      <child internal-child="image">
-			<widget class="GtkImage" id="image841">
+			<widget class="GtkImage" id="image857">
 			  <property name="visible">True</property>
 			  <property name="stock">gtk-new</property>
 			  <property name="icon_size">1</property>
@@ -145,12 +145,12 @@
 		    <widget class="GtkImageMenuItem" id="menu_save_all1">
 		      <property name="visible">True</property>
 		      <property name="tooltip" translatable="yes">Saves all open files</property>
-		      <property name="label" translatable="yes">Save all</property>
+		      <property name="label" translatable="yes">Save a_ll</property>
 		      <property name="use_underline">True</property>
 		      <signal name="activate" handler="on_save_all1_activate" last_modification_time="Thu, 02 Jun 2005 14:15:30 GMT"/>
 
 		      <child internal-child="image">
-			<widget class="GtkImage" id="image842">
+			<widget class="GtkImage" id="image858">
 			  <property name="visible">True</property>
 			  <property name="stock">gtk-save</property>
 			  <property name="icon_size">1</property>
@@ -227,7 +227,7 @@
 		      <signal name="activate" handler="on_close_all1_activate" last_modification_time="Thu, 02 Jun 2005 14:15:30 GMT"/>
 
 		      <child internal-child="image">
-			<widget class="GtkImage" id="image843">
+			<widget class="GtkImage" id="image859">
 			  <property name="visible">True</property>
 			  <property name="stock">gtk-close</property>
 			  <property name="icon_size">1</property>
@@ -358,7 +358,7 @@
 		      <property name="use_underline">True</property>
 
 		      <child internal-child="image">
-			<widget class="GtkImage" id="image844">
+			<widget class="GtkImage" id="image860">
 			  <property name="visible">True</property>
 			  <property name="stock">gtk-add</property>
 			  <property name="icon_size">1</property>
@@ -390,7 +390,7 @@
 		      <property name="use_underline">True</property>
 
 		      <child internal-child="image">
-			<widget class="GtkImage" id="image845">
+			<widget class="GtkImage" id="image861">
 			  <property name="visible">True</property>
 			  <property name="stock">gtk-add</property>
 			  <property name="icon_size">1</property>
@@ -568,7 +568,7 @@
 		      <signal name="activate" handler="on_replace1_activate" last_modification_time="Sun, 23 Oct 2005 13:22:36 GMT"/>
 
 		      <child internal-child="image">
-			<widget class="GtkImage" id="image846">
+			<widget class="GtkImage" id="image862">
 			  <property name="visible">True</property>
 			  <property name="stock">gtk-find-and-replace</property>
 			  <property name="icon_size">1</property>
@@ -610,7 +610,7 @@
 		      <signal name="activate" handler="on_go_to_line1_activate" last_modification_time="Tue, 23 May 2006 17:10:49 GMT"/>
 
 		      <child internal-child="image">
-			<widget class="GtkImage" id="image847">
+			<widget class="GtkImage" id="image863">
 			  <property name="visible">True</property>
 			  <property name="stock">gtk-jump-to</property>
 			  <property name="icon_size">1</property>
@@ -645,7 +645,7 @@
 		      <signal name="activate" handler="on_change_font1_activate" last_modification_time="Fri, 22 Apr 2005 18:58:45 GMT"/>
 
 		      <child internal-child="image">
-			<widget class="GtkImage" id="image848">
+			<widget class="GtkImage" id="image864">
 			  <property name="visible">True</property>
 			  <property name="stock">gtk-select-font</property>
 			  <property name="icon_size">1</property>
@@ -667,7 +667,7 @@
 		      <signal name="activate" handler="on_show_color_chooser1_activate" last_modification_time="Wed, 22 Jun 2005 18:10:21 GMT"/>
 
 		      <child internal-child="image">
-			<widget class="GtkImage" id="image849">
+			<widget class="GtkImage" id="image865">
 			  <property name="visible">True</property>
 			  <property name="stock">gtk-select-color</property>
 			  <property name="icon_size">1</property>
@@ -719,6 +719,16 @@
 		  </child>
 
 		  <child>
+		    <widget class="GtkCheckMenuItem" id="menu_show_sidebar1">
+		      <property name="visible">True</property>
+		      <property name="label" translatable="yes">Show Side_bar</property>
+		      <property name="use_underline">True</property>
+		      <property name="active">True</property>
+		      <signal name="toggled" handler="on_menu_show_sidebar1_toggled" last_modification_time="Wed, 19 Jul 2006 20:17:35 GMT"/>
+		    </widget>
+		  </child>
+
+		  <child>
 		    <widget class="GtkCheckMenuItem" id="menu_markers_margin1">
 		      <property name="visible">True</property>
 		      <property name="tooltip" translatable="yes">Shows or hides the small margin right of the line numbers, which is used to mark lines.</property>

Modified: trunk/src/callbacks.c
===================================================================
--- trunk/src/callbacks.c	2006-07-20 21:19:18 UTC (rev 597)
+++ trunk/src/callbacks.c	2006-07-21 11:41:33 UTC (rev 598)
@@ -1238,6 +1238,8 @@
 on_show_toolbar1_toggled               (GtkCheckMenuItem *checkmenuitem,
                                         gpointer         user_data)
 {
+	if (app->ignore_callback) return;
+
 	app->toolbar_visible = (app->toolbar_visible) ? FALSE : TRUE;;
 	utils_widget_show_hide(GTK_WIDGET(app->toolbar), app->toolbar_visible);
 }
@@ -1256,11 +1258,10 @@
 on_show_messages_window1_toggled       (GtkCheckMenuItem *checkmenuitem,
                                         gpointer          user_data)
 {
-	if (app->msgwindow_visible)
-		gtk_widget_hide(lookup_widget(app->window, "scrolledwindow1"));
-	else
-		gtk_widget_show(lookup_widget(app->window, "scrolledwindow1"));
+	if (app->ignore_callback) return;
+
 	app->msgwindow_visible = (app->msgwindow_visible) ? FALSE : TRUE;
+	utils_widget_show_hide(lookup_widget(app->window, "scrolledwindow1"), app->msgwindow_visible);
 }
 
 
@@ -1506,13 +1507,13 @@
 				case 3:
 				{
 					app->sidebar_openfiles_visible = FALSE;
-					utils_treeviews_showhide();
+					utils_treeviews_showhide(FALSE);
 					break;
 				}
 				case 4:
 				{
 					app->sidebar_visible = FALSE;
-					utils_treeviews_showhide();
+					utils_treeviews_showhide(FALSE);
 					break;
 				}
 			}
@@ -1530,13 +1531,13 @@
 		case 0:
 		{
 			app->sidebar_symbol_visible = FALSE;
-			utils_treeviews_showhide();
+			utils_treeviews_showhide(FALSE);
 			break;
 		}
 		case 1:
 		{
 			app->sidebar_visible = FALSE;
-			utils_treeviews_showhide();
+			utils_treeviews_showhide(FALSE);
 			break;
 		}
 	}
@@ -2598,3 +2599,14 @@
 }
 
 
+void
+on_menu_show_sidebar1_toggled          (GtkCheckMenuItem *checkmenuitem,
+                                        gpointer         user_data)
+{
+	if (app->ignore_callback) return;
+
+	app->sidebar_visible = ! app->sidebar_visible;
+	utils_treeviews_showhide(TRUE);
+}
+
+

Modified: trunk/src/callbacks.h
===================================================================
--- trunk/src/callbacks.h	2006-07-20 21:19:18 UTC (rev 597)
+++ trunk/src/callbacks.h	2006-07-21 11:41:33 UTC (rev 598)
@@ -612,3 +612,7 @@
 on_menu_select_all1_activate           (GtkMenuItem     *menuitem,
                                         gpointer         user_data);
 
+void
+on_menu_show_sidebar1_toggled           (GtkCheckMenuItem *checkmenuitem,
+                                        gpointer         user_data);
+

Modified: trunk/src/geany.h
===================================================================
--- trunk/src/geany.h	2006-07-20 21:19:18 UTC (rev 597)
+++ trunk/src/geany.h	2006-07-21 11:41:33 UTC (rev 598)
@@ -131,6 +131,7 @@
 	gboolean			 opening_session_files;
 	// represents the state when Geany is quitting completely
 	gboolean			 quitting;
+	gboolean			 ignore_callback;
 	gboolean			 ignore_global_tags;
 	gboolean			 toolbar_visible;
 	gboolean			 sidebar_symbol_visible;

Modified: trunk/src/interface.c
===================================================================
--- trunk/src/interface.c	2006-07-20 21:19:18 UTC (rev 597)
+++ trunk/src/interface.c	2006-07-21 11:41:33 UTC (rev 598)
@@ -37,7 +37,7 @@
   GtkWidget *menuitem1_menu;
   GtkWidget *menu_new1;
   GtkWidget *menu_new_with_template1;
-  GtkWidget *image841;
+  GtkWidget *image857;
   GtkWidget *menu_new_with_template1_menu;
   GtkWidget *invisible2;
   GtkWidget *separator12;
@@ -49,7 +49,7 @@
   GtkWidget *menu_save1;
   GtkWidget *menu_save_as1;
   GtkWidget *menu_save_all1;
-  GtkWidget *image842;
+  GtkWidget *image858;
   GtkWidget *revert1;
   GtkWidget *separator21;
   GtkWidget *preferences2;
@@ -58,7 +58,7 @@
   GtkWidget *separator14;
   GtkWidget *menu_close1;
   GtkWidget *menu_close_all1;
-  GtkWidget *image843;
+  GtkWidget *image859;
   GtkWidget *menu_separatormenuitem1;
   GtkWidget *menu_quit1;
   GtkWidget *edit1;
@@ -74,11 +74,11 @@
   GtkWidget *menu_select_all1;
   GtkWidget *separator25;
   GtkWidget *insert_include2;
-  GtkWidget *image844;
+  GtkWidget *image860;
   GtkWidget *insert_include2_menu;
   GtkWidget *invisible4;
   GtkWidget *add_comments1;
-  GtkWidget *image845;
+  GtkWidget *image861;
   GtkWidget *add_comments1_menu;
   GtkWidget *menu_add_changelog_entry1;
   GtkWidget *insert_file_header1;
@@ -99,22 +99,23 @@
   GtkWidget *find_next1;
   GtkWidget *find_previous1;
   GtkWidget *replace1;
-  GtkWidget *image846;
+  GtkWidget *image862;
   GtkWidget *separator27;
   GtkWidget *find_in_files1;
   GtkWidget *separator11;
   GtkWidget *go_to_line1;
-  GtkWidget *image847;
+  GtkWidget *image863;
   GtkWidget *menuitem3;
   GtkWidget *menuitem3_menu;
   GtkWidget *menu_change_font1;
-  GtkWidget *image848;
+  GtkWidget *image864;
   GtkWidget *menu_choose_color1;
-  GtkWidget *image849;
+  GtkWidget *image865;
   GtkWidget *menu_separator4;
   GtkWidget *menu_fullscreen1;
   GtkWidget *menu_show_messages_window1;
   GtkWidget *menu_show_toolbar1;
+  GtkWidget *menu_show_sidebar1;
   GtkWidget *menu_markers_margin1;
   GtkWidget *menu_linenumber_margin1;
   GtkWidget *menu_separator5;
@@ -244,9 +245,9 @@
   gtk_widget_show (menu_new_with_template1);
   gtk_container_add (GTK_CONTAINER (menuitem1_menu), menu_new_with_template1);
 
-  image841 = gtk_image_new_from_stock ("gtk-new", GTK_ICON_SIZE_MENU);
-  gtk_widget_show (image841);
-  gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (menu_new_with_template1), image841);
+  image857 = gtk_image_new_from_stock ("gtk-new", GTK_ICON_SIZE_MENU);
+  gtk_widget_show (image857);
+  gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (menu_new_with_template1), image857);
 
   menu_new_with_template1_menu = gtk_menu_new ();
   gtk_menu_item_set_submenu (GTK_MENU_ITEM (menu_new_with_template1), menu_new_with_template1_menu);
@@ -286,14 +287,14 @@
   gtk_widget_show (menu_save_as1);
   gtk_container_add (GTK_CONTAINER (menuitem1_menu), menu_save_as1);
 
-  menu_save_all1 = gtk_image_menu_item_new_with_mnemonic (_("Save all"));
+  menu_save_all1 = gtk_image_menu_item_new_with_mnemonic (_("Save a_ll"));
   gtk_widget_show (menu_save_all1);
   gtk_container_add (GTK_CONTAINER (menuitem1_menu), menu_save_all1);
   gtk_tooltips_set_tip (tooltips, menu_save_all1, _("Saves all open files"), NULL);
 
-  image842 = gtk_image_new_from_stock ("gtk-save", GTK_ICON_SIZE_MENU);
-  gtk_widget_show (image842);
-  gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (menu_save_all1), image842);
+  image858 = gtk_image_new_from_stock ("gtk-save", GTK_ICON_SIZE_MENU);
+  gtk_widget_show (image858);
+  gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (menu_save_all1), image858);
 
   revert1 = gtk_image_menu_item_new_from_stock ("gtk-revert-to-saved", accel_group);
   gtk_widget_show (revert1);
@@ -332,9 +333,9 @@
   gtk_container_add (GTK_CONTAINER (menuitem1_menu), menu_close_all1);
   gtk_tooltips_set_tip (tooltips, menu_close_all1, _("Closes all open files"), NULL);
 
-  image843 = gtk_image_new_from_stock ("gtk-close", GTK_ICON_SIZE_MENU);
-  gtk_widget_show (image843);
-  gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (menu_close_all1), image843);
+  image859 = gtk_image_new_from_stock ("gtk-close", GTK_ICON_SIZE_MENU);
+  gtk_widget_show (image859);
+  gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (menu_close_all1), image859);
 
   menu_separatormenuitem1 = gtk_separator_menu_item_new ();
   gtk_widget_show (menu_separatormenuitem1);
@@ -400,9 +401,9 @@
   gtk_widget_show (insert_include2);
   gtk_container_add (GTK_CONTAINER (edit1_menu), insert_include2);
 
-  image844 = gtk_image_new_from_stock ("gtk-add", GTK_ICON_SIZE_MENU);
-  gtk_widget_show (image844);
-  gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (insert_include2), image844);
+  image860 = gtk_image_new_from_stock ("gtk-add", GTK_ICON_SIZE_MENU);
+  gtk_widget_show (image860);
+  gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (insert_include2), image860);
 
   insert_include2_menu = gtk_menu_new ();
   gtk_menu_item_set_submenu (GTK_MENU_ITEM (insert_include2), insert_include2_menu);
@@ -414,9 +415,9 @@
   gtk_widget_show (add_comments1);
   gtk_container_add (GTK_CONTAINER (edit1_menu), add_comments1);
 
-  image845 = gtk_image_new_from_stock ("gtk-add", GTK_ICON_SIZE_MENU);
-  gtk_widget_show (image845);
-  gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (add_comments1), image845);
+  image861 = gtk_image_new_from_stock ("gtk-add", GTK_ICON_SIZE_MENU);
+  gtk_widget_show (image861);
+  gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (add_comments1), image861);
 
   add_comments1_menu = gtk_menu_new ();
   gtk_menu_item_set_submenu (GTK_MENU_ITEM (add_comments1), add_comments1_menu);
@@ -503,9 +504,9 @@
   gtk_widget_show (replace1);
   gtk_container_add (GTK_CONTAINER (search1_menu), replace1);
 
-  image846 = gtk_image_new_from_stock ("gtk-find-and-replace", GTK_ICON_SIZE_MENU);
-  gtk_widget_show (image846);
-  gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (replace1), image846);
+  image862 = gtk_image_new_from_stock ("gtk-find-and-replace", GTK_ICON_SIZE_MENU);
+  gtk_widget_show (image862);
+  gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (replace1), image862);
 
   separator27 = gtk_separator_menu_item_new ();
   gtk_widget_show (separator27);
@@ -525,9 +526,9 @@
   gtk_widget_show (go_to_line1);
   gtk_container_add (GTK_CONTAINER (search1_menu), go_to_line1);
 
-  image847 = gtk_image_new_from_stock ("gtk-jump-to", GTK_ICON_SIZE_MENU);
-  gtk_widget_show (image847);
-  gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (go_to_line1), image847);
+  image863 = gtk_image_new_from_stock ("gtk-jump-to", GTK_ICON_SIZE_MENU);
+  gtk_widget_show (image863);
+  gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (go_to_line1), image863);
 
   menuitem3 = gtk_menu_item_new_with_mnemonic (_("_View"));
   gtk_widget_show (menuitem3);
@@ -541,18 +542,18 @@
   gtk_container_add (GTK_CONTAINER (menuitem3_menu), menu_change_font1);
   gtk_tooltips_set_tip (tooltips, menu_change_font1, _("Change the default font"), NULL);
 
-  image848 = gtk_image_new_from_stock ("gtk-select-font", GTK_ICON_SIZE_MENU);
-  gtk_widget_show (image848);
-  gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (menu_change_font1), image848);
+  image864 = gtk_image_new_from_stock ("gtk-select-font", GTK_ICON_SIZE_MENU);
+  gtk_widget_show (image864);
+  gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (menu_change_font1), image864);
 
   menu_choose_color1 = gtk_image_menu_item_new_with_mnemonic (_("Show _Colour Chooser"));
   gtk_widget_show (menu_choose_color1);
   gtk_container_add (GTK_CONTAINER (menuitem3_menu), menu_choose_color1);
   gtk_tooltips_set_tip (tooltips, menu_choose_color1, _("Open a color chooser dialog, to interactively pick colors from a palette."), NULL);
 
-  image849 = gtk_image_new_from_stock ("gtk-select-color", GTK_ICON_SIZE_MENU);
-  gtk_widget_show (image849);
-  gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (menu_choose_color1), image849);
+  image865 = gtk_image_new_from_stock ("gtk-select-color", GTK_ICON_SIZE_MENU);
+  gtk_widget_show (image865);
+  gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (menu_choose_color1), image865);
 
   menu_separator4 = gtk_separator_menu_item_new ();
   gtk_widget_show (menu_separator4);
@@ -575,6 +576,11 @@
   gtk_tooltips_set_tip (tooltips, menu_show_toolbar1, _("Toggle the toolbar on and off"), NULL);
   gtk_check_menu_item_set_active (GTK_CHECK_MENU_ITEM (menu_show_toolbar1), TRUE);
 
+  menu_show_sidebar1 = gtk_check_menu_item_new_with_mnemonic (_("Show Side_bar"));
+  gtk_widget_show (menu_show_sidebar1);
+  gtk_container_add (GTK_CONTAINER (menuitem3_menu), menu_show_sidebar1);
+  gtk_check_menu_item_set_active (GTK_CHECK_MENU_ITEM (menu_show_sidebar1), TRUE);
+
   menu_markers_margin1 = gtk_check_menu_item_new_with_mnemonic (_("Show _Markers Margin"));
   gtk_widget_show (menu_markers_margin1);
   gtk_container_add (GTK_CONTAINER (menuitem3_menu), menu_markers_margin1);
@@ -1127,6 +1133,9 @@
   g_signal_connect ((gpointer) menu_show_toolbar1, "toggled",
                     G_CALLBACK (on_show_toolbar1_toggled),
                     NULL);
+  g_signal_connect ((gpointer) menu_show_sidebar1, "toggled",
+                    G_CALLBACK (on_menu_show_sidebar1_toggled),
+                    NULL);
   g_signal_connect ((gpointer) menu_markers_margin1, "toggled",
                     G_CALLBACK (on_markers_margin1_toggled),
                     NULL);
@@ -1263,7 +1272,7 @@
   GLADE_HOOKUP_OBJECT (window1, menuitem1_menu, "menuitem1_menu");
   GLADE_HOOKUP_OBJECT (window1, menu_new1, "menu_new1");
   GLADE_HOOKUP_OBJECT (window1, menu_new_with_template1, "menu_new_with_template1");
-  GLADE_HOOKUP_OBJECT (window1, image841, "image841");
+  GLADE_HOOKUP_OBJECT (window1, image857, "image857");
   GLADE_HOOKUP_OBJECT (window1, menu_new_with_template1_menu, "menu_new_with_template1_menu");
   GLADE_HOOKUP_OBJECT (window1, invisible2, "invisible2");
   GLADE_HOOKUP_OBJECT (window1, separator12, "separator12");
@@ -1275,7 +1284,7 @@
   GLADE_HOOKUP_OBJECT (window1, menu_save1, "menu_save1");
   GLADE_HOOKUP_OBJECT (window1, menu_save_as1, "menu_save_as1");
   GLADE_HOOKUP_OBJECT (window1, menu_save_all1, "menu_save_all1");
-  GLADE_HOOKUP_OBJECT (window1, image842, "image842");
+  GLADE_HOOKUP_OBJECT (window1, image858, "image858");
   GLADE_HOOKUP_OBJECT (window1, revert1, "revert1");
   GLADE_HOOKUP_OBJECT (window1, separator21, "separator21");
   GLADE_HOOKUP_OBJECT (window1, preferences2, "preferences2");
@@ -1284,7 +1293,7 @@
   GLADE_HOOKUP_OBJECT (window1, separator14, "separator14");
   GLADE_HOOKUP_OBJECT (window1, menu_close1, "menu_close1");
   GLADE_HOOKUP_OBJECT (window1, menu_close_all1, "menu_close_all1");
-  GLADE_HOOKUP_OBJECT (window1, image843, "image843");
+  GLADE_HOOKUP_OBJECT (window1, image859, "image859");
   GLADE_HOOKUP_OBJECT (window1, menu_separatormenuitem1, "menu_separatormenuitem1");
   GLADE_HOOKUP_OBJECT (window1, menu_quit1, "menu_quit1");
   GLADE_HOOKUP_OBJECT (window1, edit1, "edit1");
@@ -1300,11 +1309,11 @@
   GLADE_HOOKUP_OBJECT (window1, menu_select_all1, "menu_select_all1");
   GLADE_HOOKUP_OBJECT (window1, separator25, "separator25");
   GLADE_HOOKUP_OBJECT (window1, insert_include2, "insert_include2");
-  GLADE_HOOKUP_OBJECT (window1, image844, "image844");
+  GLADE_HOOKUP_OBJECT (window1, image860, "image860");
   GLADE_HOOKUP_OBJECT (window1, insert_include2_menu, "insert_include2_menu");
   GLADE_HOOKUP_OBJECT (window1, invisible4, "invisible4");
   GLADE_HOOKUP_OBJECT (window1, add_comments1, "add_comments1");
-  GLADE_HOOKUP_OBJECT (window1, image845, "image845");
+  GLADE_HOOKUP_OBJECT (window1, image861, "image861");
   GLADE_HOOKUP_OBJECT (window1, add_comments1_menu, "add_comments1_menu");
   GLADE_HOOKUP_OBJECT (window1, menu_add_changelog_entry1, "menu_add_changelog_entry1");
   GLADE_HOOKUP_OBJECT (window1, insert_file_header1, "insert_file_header1");
@@ -1325,22 +1334,23 @@
   GLADE_HOOKUP_OBJECT (window1, find_next1, "find_next1");
   GLADE_HOOKUP_OBJECT (window1, find_previous1, "find_previous1");
   GLADE_HOOKUP_OBJECT (window1, replace1, "replace1");
-  GLADE_HOOKUP_OBJECT (window1, image846, "image846");
+  GLADE_HOOKUP_OBJECT (window1, image862, "image862");
   GLADE_HOOKUP_OBJECT (window1, separator27, "separator27");
   GLADE_HOOKUP_OBJECT (window1, find_in_files1, "find_in_files1");
   GLADE_HOOKUP_OBJECT (window1, separator11, "separator11");
   GLADE_HOOKUP_OBJECT (window1, go_to_line1, "go_to_line1");
-  GLADE_HOOKUP_OBJECT (window1, image847, "image847");
+  GLADE_HOOKUP_OBJECT (window1, image863, "image863");
   GLADE_HOOKUP_OBJECT (window1, menuitem3, "menuitem3");
   GLADE_HOOKUP_OBJECT (window1, menuitem3_menu, "menuitem3_menu");
   GLADE_HOOKUP_OBJECT (window1, menu_change_font1, "menu_change_font1");
-  GLADE_HOOKUP_OBJECT (window1, image848, "image848");
+  GLADE_HOOKUP_OBJECT (window1, image864, "image864");
   GLADE_HOOKUP_OBJECT (window1, menu_choose_color1, "menu_choose_color1");
-  GLADE_HOOKUP_OBJECT (window1, image849, "image849");
+  GLADE_HOOKUP_OBJECT (window1, image865, "image865");
   GLADE_HOOKUP_OBJECT (window1, menu_separator4, "menu_separator4");
   GLADE_HOOKUP_OBJECT (window1, menu_fullscreen1, "menu_fullscreen1");
   GLADE_HOOKUP_OBJECT (window1, menu_show_messages_window1, "menu_show_messages_window1");
   GLADE_HOOKUP_OBJECT (window1, menu_show_toolbar1, "menu_show_toolbar1");
+  GLADE_HOOKUP_OBJECT (window1, menu_show_sidebar1, "menu_show_sidebar1");
   GLADE_HOOKUP_OBJECT (window1, menu_markers_margin1, "menu_markers_margin1");
   GLADE_HOOKUP_OBJECT (window1, menu_linenumber_margin1, "menu_linenumber_margin1");
   GLADE_HOOKUP_OBJECT (window1, menu_separator5, "menu_separator5");

Modified: trunk/src/keybindings.c
===================================================================
--- trunk/src/keybindings.c	2006-07-20 21:19:18 UTC (rev 597)
+++ trunk/src/keybindings.c	2006-07-21 11:41:33 UTC (rev 598)
@@ -677,7 +677,7 @@
 		app->sidebar_symbol_visible = TRUE;
 	}
 
-	utils_treeviews_showhide();
+	utils_treeviews_showhide(TRUE);
 	gtk_notebook_set_current_page(GTK_NOTEBOOK(app->treeview_notebook), active_page);
 }
 

Modified: trunk/src/main.c
===================================================================
--- trunk/src/main.c	2006-07-20 21:19:18 UTC (rev 597)
+++ trunk/src/main.c	2006-07-21 11:41:33 UTC (rev 598)
@@ -109,21 +109,28 @@
 {
 	utils_update_fold_items();
 
-	// toolbar, message window and tagbar are by default visible, so don't change it if it is true
+	// toolbar, message window and sidebar are by default visible, so don't change it if it is true
 	if (! app->toolbar_visible)
 	{
+		app->ignore_callback = TRUE;
 		gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(lookup_widget(app->window, "menu_show_toolbar1")), FALSE);
 		gtk_widget_hide(app->toolbar);
-		app->toolbar_visible = FALSE;
+		app->ignore_callback = FALSE;
 	}
 	if (! app->msgwindow_visible || no_msgwin)
 	{
-		// I know this is a bit confusing, but it works
-		app->msgwindow_visible = TRUE;
+		app->ignore_callback = TRUE;
 		gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(lookup_widget(app->window, "menu_show_messages_window1")), FALSE);
-		app->msgwindow_visible = FALSE;
+		gtk_widget_hide(lookup_widget(app->window, "scrolledwindow1"));
+		app->ignore_callback = FALSE;
 	}
-	utils_treeviews_showhide();
+	if (! app->sidebar_visible)
+	{
+		app->ignore_callback = TRUE;
+		gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(lookup_widget(app->window, "menu_show_sidebar1")), FALSE);
+		app->ignore_callback = FALSE;
+	}
+	utils_treeviews_showhide(TRUE);
 	// sets the icon style of the toolbar
 	switch (app->toolbar_icon_style)
 	{

Modified: trunk/src/prefs.c
===================================================================
--- trunk/src/prefs.c	2006-07-20 21:19:18 UTC (rev 597)
+++ trunk/src/prefs.c	2006-07-21 11:41:33 UTC (rev 598)
@@ -595,7 +595,7 @@
 		utils_update_toolbar_items();
 		utils_update_toolbar_icons(app->toolbar_icon_size);
 		gtk_toolbar_set_style(GTK_TOOLBAR(app->toolbar), app->toolbar_icon_style);
-		utils_treeviews_showhide();
+		utils_treeviews_showhide(FALSE);
 
 		gtk_notebook_set_tab_pos(GTK_NOTEBOOK(app->notebook), app->tab_pos_editor);
 		gtk_notebook_set_tab_pos(GTK_NOTEBOOK(msgwindow.notebook), app->tab_pos_msgwin);

Modified: trunk/src/utils.c
===================================================================
--- trunk/src/utils.c	2006-07-20 21:19:18 UTC (rev 597)
+++ trunk/src/utils.c	2006-07-21 11:41:33 UTC (rev 598)
@@ -1988,23 +1988,34 @@
 }
 
 
-void utils_treeviews_showhide(void)
+void utils_treeviews_showhide(gboolean force)
 {
-	// hide complete notebook
-	if (! app->sidebar_visible || (! app->sidebar_openfiles_visible && ! app->sidebar_symbol_visible))
+	GtkWidget *widget;
+
+	if (! force && ! app->sidebar_visible && (app->sidebar_openfiles_visible ||
+		app->sidebar_symbol_visible))
 	{
-		if (app->sidebar_visible) app->sidebar_visible = FALSE;
-		gtk_widget_hide(app->treeview_notebook);
+		app->sidebar_visible = TRUE;
 	}
-	else
+	else if (! app->sidebar_openfiles_visible && ! app->sidebar_symbol_visible)
 	{
-		gtk_widget_show(app->treeview_notebook);
+		app->sidebar_visible = FALSE;
+	}
 
-		utils_widget_show_hide(gtk_notebook_get_nth_page(
+	widget = lookup_widget(app->window, "menu_show_sidebar1");
+	if (app->sidebar_visible != gtk_check_menu_item_get_active(GTK_CHECK_MENU_ITEM(widget)))
+	{
+		app->ignore_callback = TRUE;
+		gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(widget), app->sidebar_visible);
+		app->ignore_callback = FALSE;
+	}
+
+	utils_widget_show_hide(app->treeview_notebook, app->sidebar_visible);
+
+	utils_widget_show_hide(gtk_notebook_get_nth_page(
 					GTK_NOTEBOOK(app->treeview_notebook), 0), app->sidebar_symbol_visible);
-		utils_widget_show_hide(gtk_notebook_get_nth_page(
+	utils_widget_show_hide(gtk_notebook_get_nth_page(
 					GTK_NOTEBOOK(app->treeview_notebook), 1), app->sidebar_openfiles_visible);
-	}
 }
 
 

Modified: trunk/src/utils.h
===================================================================
--- trunk/src/utils.h	2006-07-20 21:19:18 UTC (rev 597)
+++ trunk/src/utils.h	2006-07-21 11:41:33 UTC (rev 598)
@@ -185,7 +185,7 @@
 
 gint utils_get_int_from_hexcolor(const gchar *hex);
 
-void utils_treeviews_showhide(void);
+void utils_treeviews_showhide(gboolean force);
 
 gchar *utils_get_current_file_dir();
 


This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.




More information about the Commits mailing list