]> git.tdb.fi Git - ext/subsurface.git/blobdiff - info.c
Make the main display saner
[ext/subsurface.git] / info.c
diff --git a/info.c b/info.c
index efd17f896f85ec987a9c26900710087cfd3fd2fb..6d91a0f26c5704a25d800608dc2163cda20df4fb 100644 (file)
--- a/info.c
+++ b/info.c
@@ -12,6 +12,13 @@ void update_dive_info(struct dive *dive)
        struct tm *tm;
        char buffer[80];
 
+       if (!dive) {
+               gtk_entry_set_text(GTK_ENTRY(datetime), "no dive");
+               gtk_entry_set_text(GTK_ENTRY(depth), "");
+               gtk_entry_set_text(GTK_ENTRY(duration), "");
+               return;
+       }
+
        tm = gmtime(&dive->when);
        snprintf(buffer, sizeof(buffer),
                "%04d-%02d-%02d "
@@ -44,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;
 }