Index: src/gnome-utils/gnc-main-window.c
===================================================================
--- src/gnome-utils/gnc-main-window.c (Revision 14575)
+++ src/gnome-utils/gnc-main-window.c (Arbeitskopie)
@@ -83,6 +83,7 @@
#define PLUGIN_PAGE_CLOSE_BUTTON "close-button"
#define KEY_SHOW_CLOSE_BUTTON "tab_close_buttons"
+#define KEY_TAB_POSITION "tab_position"
/* Static Globals *******************************************************/
@@ -2369,6 +2370,28 @@
LEAVE("");
}
+static void
+gnc_main_window_update_tab_position (GncMainWindow *window)
+{
+ GtkPositionType position = GTK_POS_TOP;
+ gchar *conf_string;
+ GncMainWindowPrivate *priv;
+
+ ENTER ("window %p", window);
+ conf_string = gnc_gconf_get_string (GCONF_GENERAL,
+ KEY_TAB_POSITION, NULL);
+ if (conf_string) {
+ position = gnc_enum_from_nick (GTK_TYPE_POSITION_TYPE,
+ conf_string, GTK_POS_TOP);
+ g_free (conf_string);
+ }
+
+ priv = GNC_MAIN_WINDOW_GET_PRIVATE (window);
+ gtk_notebook_set_tab_pos (GTK_NOTEBOOK (priv->notebook), position);
+
+ LEAVE ("");
+}
+
/*
* Based on code from Epiphany (src/ephy-window.c)
*/
@@ -2502,6 +2525,8 @@
key_tail++;
if (strcmp(key_tail, KEY_TOOLBAR_STYLE) == 0) {
gnc_main_window_update_toolbar(window);
+ } else if (strcmp(key_tail, KEY_TAB_POSITION) == 0) {
+ gnc_main_window_update_tab_position(window);
}
}
@@ -2710,6 +2735,7 @@
gnc_gconf_add_notification(G_OBJECT(window), DESKTOP_GNOME_INTERFACE,
gnc_main_window_gconf_changed);
gnc_main_window_update_toolbar(window);
+ gnc_main_window_update_tab_position(window);
gnc_main_window_init_menu_updaters(window);
Index: src/gnome-utils/glade/preferences.glade
===================================================================
--- src/gnome-utils/glade/preferences.glade (Revision 14575)
+++ src/gnome-utils/glade/preferences.glade (Arbeitskopie)
@@ -3020,7 +3020,7 @@
6
True
- 9
+ 15
4
False
0
@@ -3244,6 +3244,150 @@
+
+
+
+ True
+
+ False
+ False
+ GTK_JUSTIFY_LEFT
+ False
+ False
+ 0
+ 0.5
+ 0
+ 0
+
+
+ 0
+ 1
+ 9
+ 10
+ fill
+
+
+
+
+
+
+ True
+ <b>Tab Position</b>
+ False
+ True
+ GTK_JUSTIFY_LEFT
+ False
+ False
+ 0
+ 0.5
+ 0
+ 0
+
+
+ 0
+ 1
+ 10
+ 11
+ fill
+
+
+
+
+
+
+ True
+ True
+ Top
+ True
+ GTK_RELIEF_NORMAL
+ True
+ False
+ False
+ True
+ gconf/general/toolbar_style/text
+
+
+ 0
+ 1
+ 11
+ 12
+ 12
+ fill
+
+
+
+
+
+
+ True
+ True
+ Left
+ True
+ GTK_RELIEF_NORMAL
+ True
+ False
+ False
+ True
+ gconf/general/toolbar_style/text
+
+
+ 0
+ 1
+ 12
+ 13
+ 12
+ fill
+
+
+
+
+
+
+ True
+ True
+ Bottom
+ True
+ GTK_RELIEF_NORMAL
+ True
+ False
+ False
+ True
+ gconf/general/toolbar_style/text
+
+
+ 0
+ 1
+ 13
+ 14
+ 12
+ fill
+
+
+
+
+
+
+ True
+ True
+ Right
+ True
+ GTK_RELIEF_NORMAL
+ True
+ False
+ False
+ True
+ gconf/general/toolbar_style/text
+
+
+ 0
+ 1
+ 14
+ 15
+ 12
+ fill
+
+
+
False
Index: src/gnome/schemas/apps_gnucash_general.schemas.in
===================================================================
--- src/gnome/schemas/apps_gnucash_general.schemas.in (Revision 14575)
+++ src/gnome/schemas/apps_gnucash_general.schemas.in (Arbeitskopie)
@@ -462,5 +462,22 @@
+
+ /schemas/apps/gnucash/general/tab_position
+ /apps/gnucash/general/tab_position
+ gnucash
+ string
+ top
+
+ Position of the notebook tabs
+
+ This setting determines the edge at which the tabs for
+ switching pages in notebooks are drawn. Possible values
+ are "top", "left", "bottom" and "right".
+ It defaults to "top".
+
+
+
+