summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGravatar Linus Torvalds <torvalds@linux-foundation.org>2011-11-20 10:35:27 -0800
committerGravatar Linus Torvalds <torvalds@linux-foundation.org>2011-11-20 10:35:27 -0800
commitf09266897bfc5983646819d79cf2e3b5160c501e (patch)
tree8fb1e0b64d145039bb9a2b64cbb850dd45c97fd4
parenta643e740dc32d474cc4f0ff3f0187418463e44e1 (diff)
parentc36bf636bd8e6f8fdd700a5031ea3e1a7dc0827e (diff)
downloadsubsurface-f09266897bfc5983646819d79cf2e3b5160c501e.tar.gz
Merge branch 'multi-pane'
* multi-pane: Experimental hard-coded three-pane layout Ok, so it's not perfect, but I've been using a version of this for the last week or so by now, and every time I go back to the old layout I just cringe. So the three-pane window approach requires much more display area, and probably wouldn't work wonderfully on low-resolution devices (ie 720x480 or even 1024x600). So for anybody doing a cellphone port, you may need to play around with the interface. But this should be usable even on a netbook, although not as good as on a device with more pixels. Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
-rw-r--r--gtk-gui.c17
1 files changed, 10 insertions, 7 deletions
diff --git a/gtk-gui.c b/gtk-gui.c
index c78d7e667..f4212b41c 100644
--- a/gtk-gui.c
+++ b/gtk-gui.c
@@ -749,6 +749,7 @@ void init_ui(int *argcp, char ***argvp)
GtkWidget *stats;
GtkWidget *menubar;
GtkWidget *vbox;
+ GtkWidget *hpane, *vpane;
GdkScreen *screen;
GtkIconTheme *icon_theme=NULL;
GtkSettings *settings;
@@ -845,9 +846,15 @@ void init_ui(int *argcp, char ***argvp)
menubar = get_menubar_menu(win);
gtk_box_pack_start(GTK_BOX(vbox), menubar, FALSE, FALSE, 0);
+ vpane = gtk_vpaned_new();
+ gtk_box_pack_start(GTK_BOX(vbox), vpane, TRUE, TRUE, 3);
+
+ hpane = gtk_hpaned_new();
+ gtk_paned_add1(GTK_PANED(vpane), hpane);
+
/* Notebook for dive info vs profile vs .. */
notebook = gtk_notebook_new();
- gtk_box_pack_start(GTK_BOX(vbox), notebook, TRUE, TRUE, 6);
+ gtk_paned_add1(GTK_PANED(hpane), notebook);
gtk_notebook_set_group(GTK_NOTEBOOK(notebook), GRP_ID);
g_signal_connect(notebook, "create-window", G_CALLBACK(create_new_notebook_window), NULL);
gtk_drag_dest_set(notebook, GTK_DEST_DEFAULT_ALL, &notebook_target, 1, GDK_ACTION_MOVE);
@@ -857,16 +864,12 @@ void init_ui(int *argcp, char ***argvp)
/* Create the actual divelist */
dive_list = dive_list_create();
gtk_widget_set_name(dive_list, "Dive List");
- gtk_notebook_append_page(GTK_NOTEBOOK(notebook), dive_list, gtk_label_new("Dive List"));
- gtk_notebook_set_tab_detachable(GTK_NOTEBOOK(notebook), dive_list, 1);
- gtk_notebook_set_tab_reorderable(GTK_NOTEBOOK(notebook), dive_list, 1);
+ gtk_paned_add2(GTK_PANED(vpane), dive_list);
/* Frame for dive profile */
dive_profile = dive_profile_widget();
gtk_widget_set_name(dive_profile, "Dive Profile");
- gtk_notebook_append_page(GTK_NOTEBOOK(notebook), dive_profile, gtk_label_new("Dive Profile"));
- gtk_notebook_set_tab_detachable(GTK_NOTEBOOK(notebook), dive_profile, 1);
- gtk_notebook_set_tab_reorderable(GTK_NOTEBOOK(notebook), dive_profile, 1);
+ gtk_paned_add2(GTK_PANED(hpane), dive_profile);
/* Frame for extended dive info */
dive_info = extended_dive_info_widget();