mirror of
https://github.com/subsurface/subsurface.git
synced 2024-11-30 22:20:21 +00:00
Make the main display saner
This tweaks: - packing to be what you'd kind of expect - makes the "summary info" always visible - the "extended info" is now on a notebook page of its own - dive profile the first notebook page, since the summary information is visible regardless. which all just seems a lot more logical. Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
3d01a5f71a
commit
23c6a42b08
3 changed files with 29 additions and 11 deletions
|
@ -10,6 +10,7 @@ extern int selected_dive;
|
|||
|
||||
extern GtkWidget *dive_profile_frame(void);
|
||||
extern GtkWidget *dive_info_frame(void);
|
||||
extern GtkWidget *extended_dive_info_frame(void);
|
||||
extern GtkWidget *create_dive_list(void);
|
||||
extern void update_dive_info(struct dive *dive);
|
||||
extern void repaint_dive(void);
|
||||
|
|
18
info.c
18
info.c
|
@ -51,19 +51,31 @@ GtkWidget *dive_info_frame(void)
|
|||
|
||||
datetime = gtk_entry_new();
|
||||
gtk_editable_set_editable(GTK_EDITABLE(datetime), FALSE);
|
||||
|
||||
gtk_box_pack_start(GTK_BOX(hbox), datetime, FALSE, FALSE, 0);
|
||||
|
||||
depth = gtk_entry_new();
|
||||
gtk_editable_set_editable(GTK_EDITABLE(depth), FALSE);
|
||||
|
||||
gtk_box_pack_start(GTK_BOX(hbox), depth, FALSE, FALSE, 0);
|
||||
|
||||
duration = gtk_entry_new();
|
||||
gtk_editable_set_editable(GTK_EDITABLE(duration), FALSE);
|
||||
|
||||
gtk_box_pack_start(GTK_BOX(hbox), duration, FALSE, FALSE, 0);
|
||||
|
||||
return frame;
|
||||
}
|
||||
|
||||
GtkWidget *extended_dive_info_frame(void)
|
||||
{
|
||||
GtkWidget *frame;
|
||||
GtkWidget *vbox;
|
||||
|
||||
frame = gtk_frame_new("Extended dive info");
|
||||
gtk_widget_show(frame);
|
||||
|
||||
vbox = gtk_vbox_new(FALSE, 5);
|
||||
gtk_container_add(GTK_CONTAINER(frame), vbox);
|
||||
|
||||
/* Add extended info here: name, description, yadda yadda */
|
||||
update_dive_info(current_dive);
|
||||
return frame;
|
||||
}
|
||||
|
|
21
main.c
21
main.c
|
@ -154,35 +154,40 @@ int main(int argc, char **argv)
|
|||
g_signal_connect(G_OBJECT(win), "destroy", G_CALLBACK(on_destroy), NULL);
|
||||
main_window = win;
|
||||
|
||||
vbox = gtk_vbox_new(FALSE, 1);
|
||||
vbox = gtk_vbox_new(FALSE, 0);
|
||||
gtk_container_add(GTK_CONTAINER(win), vbox);
|
||||
|
||||
menubar = get_menubar_menu(win);
|
||||
gtk_box_pack_start(GTK_BOX(vbox), menubar, FALSE, TRUE, 0);
|
||||
gtk_box_pack_start(GTK_BOX(vbox), menubar, FALSE, FALSE, 0);
|
||||
|
||||
/* Table for the list of dives, cairo window, and dive info */
|
||||
table = gtk_table_new(2, 2, FALSE);
|
||||
gtk_container_set_border_width(GTK_CONTAINER(table), 5);
|
||||
gtk_box_pack_end(GTK_BOX(vbox), table, FALSE, TRUE, 0);
|
||||
gtk_box_pack_end(GTK_BOX(vbox), table, TRUE, TRUE, 0);
|
||||
gtk_widget_show(table);
|
||||
|
||||
/* Create the atual divelist */
|
||||
divelist = create_dive_list();
|
||||
gtk_table_attach_defaults(GTK_TABLE(table), divelist, 0, 1, 0, 2);
|
||||
gtk_table_attach(GTK_TABLE(table), divelist, 0, 1, 0, 2,
|
||||
0, GTK_FILL | GTK_SHRINK | GTK_EXPAND, 0, 0);
|
||||
|
||||
/* Frame for minimal dive info */
|
||||
frame = dive_info_frame();
|
||||
gtk_table_attach(GTK_TABLE(table), frame, 1, 2, 0, 1, 0, 0, 0, 0);
|
||||
|
||||
/* Notebook for dive info vs profile vs .. */
|
||||
notebook = gtk_notebook_new();
|
||||
gtk_table_attach_defaults(GTK_TABLE(table), notebook, 1, 2, 1, 2);
|
||||
|
||||
/* Frame for dive info */
|
||||
frame = dive_info_frame();
|
||||
gtk_notebook_append_page(GTK_NOTEBOOK(notebook), frame, gtk_label_new("Dive Info"));
|
||||
|
||||
/* Frame for dive profile */
|
||||
frame = dive_profile_frame();
|
||||
gtk_notebook_append_page(GTK_NOTEBOOK(notebook), frame, gtk_label_new("Dive Profile"));
|
||||
dive_profile = frame;
|
||||
|
||||
/* Frame for extended dive info */
|
||||
frame = extended_dive_info_frame();
|
||||
gtk_notebook_append_page(GTK_NOTEBOOK(notebook), frame, gtk_label_new("Extended dive Info"));
|
||||
|
||||
gtk_widget_set_app_paintable(win, TRUE);
|
||||
gtk_widget_show_all(win);
|
||||
|
||||
|
|
Loading…
Reference in a new issue