X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=main.c;h=e567ee118fe7ae43281329bc6216dc5cfaed3337;hb=23e831a6ed61878240897cd6a7b276526a3f4ba4;hp=adceca9e6ab1159474ef86ecd4373b523c31e7ed;hpb=0ca546b31e5527713f11676bc965aa1ed8dac619;p=ext%2Fsubsurface.git diff --git a/main.c b/main.c index adceca9..e567ee1 100644 --- a/main.c +++ b/main.c @@ -1,38 +1,9 @@ #include #include #include -#include -#include -#include #include "dive.h" - -static void show_dive(int nr, struct dive *dive) -{ - int i; - struct tm *tm; - - tm = gmtime(&dive->when); - - printf("At %02d:%02d:%02d %04d-%02d-%02d (%d ft max, %d minutes)\n", - tm->tm_hour, tm->tm_min, tm->tm_sec, - tm->tm_year+1900, tm->tm_mon+1, tm->tm_mday, - to_feet(dive->maxdepth), dive->duration.seconds / 60); - - if (!verbose) - return; - - for (i = 0; i < dive->samples; i++) { - struct sample *s = dive->sample + i; - - printf("%4d:%02d: %3d ft, %2d C, %4d PSI\n", - s->time.seconds / 60, - s->time.seconds % 60, - to_feet(s->depth), - to_C(s->temperature), - to_PSI(s->tankpressure)); - } -} +#include "display.h" static int sortfn(const void *_a, const void *_b) { @@ -76,18 +47,13 @@ static void on_destroy(GtkWidget* w, gpointer data) gtk_main_quit(); } -static gboolean on_expose(GtkWidget* w, GdkEventExpose* e, gpointer data) -{ - cairo_t* cr; - cr = gdk_cairo_create(w->window); - cairo_destroy(cr); - return FALSE; -} - int main(int argc, char **argv) { int i; - GtkWidget* win; + GtkWidget *win; + GtkWidget *divelist; + GtkWidget *vbox; + GtkWidget *frame; parse_xml_init(); @@ -107,11 +73,24 @@ int main(int argc, char **argv) win = gtk_window_new(GTK_WINDOW_TOPLEVEL); g_signal_connect(G_OBJECT(win), "destroy", G_CALLBACK(on_destroy), NULL); - g_signal_connect(G_OBJECT(win), "expose-event", G_CALLBACK(on_expose), NULL); + + /* HBOX for the list of dives and cairo window */ + vbox=gtk_hbox_new(FALSE, 5); + gtk_container_set_border_width(GTK_CONTAINER(vbox), 5); + gtk_container_add(GTK_CONTAINER(win), vbox); + gtk_widget_show(vbox); + + /* Create the atual divelist */ + divelist = create_dive_list(); + gtk_container_add(GTK_CONTAINER(vbox), divelist); + + /* Frame for dive profile */ + frame = dive_profile_frame(); + gtk_container_add(GTK_CONTAINER(vbox), frame); + gtk_widget_set_app_paintable(win, TRUE); gtk_widget_show_all(win); gtk_main(); return 0; } -