summaryrefslogtreecommitdiffstats
path: root/info.c
diff options
context:
space:
mode:
authorGravatar Linus Torvalds <torvalds@linux-foundation.org>2011-09-02 20:00:10 -0700
committerGravatar Linus Torvalds <torvalds@linux-foundation.org>2011-09-02 20:00:10 -0700
commit3def2b1aacd9c018f1bfe9b7f8bce467239cc3b0 (patch)
treeb764c532540aebb42377b4ece5e9cebda5e62b9b /info.c
parent5f05173e793d49319c727240014b59a04bd4075c (diff)
downloadsubsurface-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.c35
1 files changed, 25 insertions, 10 deletions
diff --git a/info.c b/info.c
index dc3a95bde..75936f4fe 100644
--- a/info.c
+++ b/info.c
@@ -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;
}