diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2011-09-02 20:00:10 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2011-09-02 20:00:10 -0700 |
commit | 3def2b1aacd9c018f1bfe9b7f8bce467239cc3b0 (patch) | |
tree | b764c532540aebb42377b4ece5e9cebda5e62b9b /info.c | |
parent | 5f05173e793d49319c727240014b59a04bd4075c (diff) | |
download | subsurface-3def2b1aacd9c018f1bfe9b7f8bce467239cc3b0.tar.gz |
Add location note to the top bar too.
I really don't understand the packing rules. This does not look like
what I intended.
Oh well.
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'info.c')
-rw-r--r-- | info.c | 35 |
1 files changed, 25 insertions, 10 deletions
@@ -1,11 +1,12 @@ #include <stdio.h> +#include <string.h> #include <stdlib.h> #include <time.h> #include "dive.h" #include "display.h" -static GtkWidget *divedate, *divetime, *depth, *duration, *temperature; +static GtkWidget *divedate, *divetime, *depth, *duration, *temperature, *locationnote; static GtkTextBuffer *location, *notes; static int location_changed = 1, notes_changed = 1; static struct dive *buffered_dive; @@ -94,14 +95,16 @@ void update_dive_info(struct dive *dive) text = dive->location ? : ""; gtk_text_buffer_set_text(location, text, -1); + gtk_label_set_text(GTK_LABEL(locationnote), text); + text = dive->notes ? : ""; gtk_text_buffer_set_text(notes, text, -1); } -static GtkWidget *info_label(GtkWidget *box, const char *str) +static GtkWidget *info_label(GtkWidget *box, const char *str, GtkJustification jtype) { GtkWidget *label = gtk_label_new(str); - gtk_label_set_justify(GTK_LABEL(label), GTK_JUSTIFY_RIGHT); + gtk_label_set_justify(GTK_LABEL(label), jtype); gtk_box_pack_start(GTK_BOX(box), label, TRUE, TRUE, 0); return label; } @@ -109,20 +112,32 @@ static GtkWidget *info_label(GtkWidget *box, const char *str) GtkWidget *dive_info_frame(void) { GtkWidget *frame; - GtkWidget *hbox; + GtkWidget *hbox, *hbox2; + GtkWidget *vbox; frame = gtk_frame_new("Dive info"); gtk_widget_show(frame); + vbox = gtk_vbox_new(TRUE, 5); + gtk_container_set_border_width(GTK_CONTAINER(vbox), 3); + gtk_container_add(GTK_CONTAINER(frame), vbox); + hbox = gtk_hbox_new(TRUE, 5); gtk_container_set_border_width(GTK_CONTAINER(hbox), 3); - gtk_container_add(GTK_CONTAINER(frame), hbox); + gtk_container_add(GTK_CONTAINER(vbox), hbox); + + hbox2 = gtk_hbox_new(FALSE, 0); + gtk_container_set_border_width(GTK_CONTAINER(hbox2), 3); + gtk_container_add(GTK_CONTAINER(vbox), hbox2); + + divedate = info_label(hbox, "date", GTK_JUSTIFY_RIGHT); + divetime = info_label(hbox, "time", GTK_JUSTIFY_RIGHT); + depth = info_label(hbox, "depth", GTK_JUSTIFY_RIGHT); + duration = info_label(hbox, "duration", GTK_JUSTIFY_RIGHT); + temperature = info_label(hbox, "temperature", GTK_JUSTIFY_RIGHT); - divedate = info_label(hbox, "date"); - divetime = info_label(hbox, "time"); - depth = info_label(hbox, "depth"); - duration = info_label(hbox, "duration"); - temperature = info_label(hbox, "temperature"); + locationnote = info_label(hbox2, "location", GTK_JUSTIFY_LEFT); + gtk_label_set_width_chars(GTK_LABEL(locationnote), 80); return frame; } |