diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2011-11-20 10:35:27 -0800 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2011-11-20 10:35:27 -0800 |
commit | f09266897bfc5983646819d79cf2e3b5160c501e (patch) | |
tree | 8fb1e0b64d145039bb9a2b64cbb850dd45c97fd4 | |
parent | a643e740dc32d474cc4f0ff3f0187418463e44e1 (diff) | |
parent | c36bf636bd8e6f8fdd700a5031ea3e1a7dc0827e (diff) | |
download | subsurface-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.c | 17 |
1 files changed, 10 insertions, 7 deletions
@@ -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, ¬ebook_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(); |