mirror of
https://github.com/subsurface/subsurface.git
synced 2025-02-01 09:43:24 +00:00
Change layout of dive editing dialog
We had a report that on small screen systems like netbooks with a vertical screen resolution of only 600 pixels Subsurface has usability issues, as the dive editing dialog is taller than the screen. While on some OSs the dialog can at least be moved around so the user can fill it out and click OK or Cancel, on others (Windows XP) that does not appear to be the case. This small change simply takes the equipment part of this dialog and positions it next to the dive info part instead of below it. This appears to solve the immediate issue - but by adding the maximum number of tanks and weight systems the dialog can still grow beyond 600 pixels vertically, so we may have to add a scroll widget in here as well. But for now this should be a nice improvement (and I find it reasonably pleasing on a large display as well). Fixes #67 Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
parent
834dc9f5cb
commit
11a3f3f7f7
1 changed files with 10 additions and 5 deletions
15
info.c
15
info.c
|
@ -754,9 +754,9 @@ static void location_entry_change_cb(GtkComboBox *location, gpointer *userdata)
|
|||
update_gps_entry(0, 0);
|
||||
}
|
||||
|
||||
static void dive_info_widget(GtkWidget *box, struct dive *dive, struct dive_info *info, gboolean multi)
|
||||
static void dive_info_widget(GtkWidget *obox, struct dive *dive, struct dive_info *info, gboolean multi)
|
||||
{
|
||||
GtkWidget *hbox, *label, *frame, *equipment;
|
||||
GtkWidget *hbox, *label, *frame, *equipment, *ibox, *box;
|
||||
#if HAVE_OSM_GPS_MAP
|
||||
GtkWidget *image;
|
||||
#endif
|
||||
|
@ -766,11 +766,16 @@ static void dive_info_widget(GtkWidget *box, struct dive *dive, struct dive_info
|
|||
double value;
|
||||
|
||||
snprintf(buffer, sizeof(buffer), "%s", _("Edit multiple dives"));
|
||||
|
||||
if (!multi)
|
||||
divename(buffer, sizeof(buffer), dive);
|
||||
label = gtk_label_new(buffer);
|
||||
gtk_box_pack_start(GTK_BOX(box), label, FALSE, TRUE, 0);
|
||||
gtk_box_pack_start(GTK_BOX(obox), label, FALSE, TRUE, 0);
|
||||
|
||||
/* two column layout (inner hbox ibox) within the outer vbox (obox) we are given */
|
||||
ibox = gtk_hbox_new(FALSE, 0);
|
||||
gtk_box_pack_start(GTK_BOX(obox), ibox, FALSE, FALSE, 0);
|
||||
box = gtk_vbox_new(FALSE, 0);
|
||||
gtk_box_pack_start(GTK_BOX(ibox), box, FALSE, FALSE, 0);
|
||||
|
||||
info->location = text_entry(box, _("Location"), location_list, dive->location);
|
||||
g_signal_connect(G_OBJECT(info->location), "changed", G_CALLBACK(location_entry_change_cb), NULL);
|
||||
|
@ -830,7 +835,7 @@ static void dive_info_widget(GtkWidget *box, struct dive *dive, struct dive_info
|
|||
gtk_text_buffer_set_text(gtk_text_view_get_buffer(info->notes), dive->notes, -1);
|
||||
}
|
||||
hbox = gtk_hbox_new(FALSE, 3);
|
||||
gtk_box_pack_start(GTK_BOX(box), hbox, FALSE, TRUE, 0);
|
||||
gtk_box_pack_start(GTK_BOX(ibox), hbox, FALSE, TRUE, 0);
|
||||
|
||||
/* create a secondary Equipment widget */
|
||||
frame = gtk_frame_new(_("Equipment"));
|
||||
|
|
Loading…
Add table
Reference in a new issue