X-Git-Url: http://pileus.org/git/?a=blobdiff_plain;f=src%2Fgis_test.c;h=dbc2f272e57b7ea6b1c7e8900607d348deb2fd20;hb=8f2f3918e1bc04ac40a9ba0a24452c1b1b0183ac;hp=646de7700e5c4291bfdbdac71ef6b96dbef5248f;hpb=34c7dbdf473f66024fd3ab3301b9921593d9d420;p=grits diff --git a/src/gis_test.c b/src/gis_test.c index 646de77..dbc2f27 100644 --- a/src/gis_test.c +++ b/src/gis_test.c @@ -24,13 +24,15 @@ /************* * Callbacks * *************/ -static gboolean on_key_press(GtkWidget *widget, GdkEventKey *event, gpointer _) +static gboolean on_key_press(GtkWidget *widget, GdkEventKey *event, + gpointer _window) { g_debug("GisTest: on_key_press - key=%x, state=%x", event->keyval, event->state); + GtkWidget *window = _window; switch (event->keyval) { case GDK_q: - gtk_widget_destroy(widget); + gtk_widget_destroy(window); return TRUE; } return FALSE; @@ -52,21 +54,19 @@ int main(int argc, char **argv) gdk_threads_enter(); GtkWidget *window = gtk_window_new(GTK_WINDOW_TOPLEVEL); g_signal_connect(window, "destroy", G_CALLBACK(gtk_main_quit), NULL); - g_signal_connect(window, "key-press-event", G_CALLBACK(on_key_press), NULL); + g_signal_connect(window, "key-press-event", G_CALLBACK(on_key_press), window); gtk_container_add(GTK_CONTAINER(window), GTK_WIDGET(viewer)); gtk_widget_show_all(window); gdk_threads_leave(); - gis_plugins_load(plugins, "bmng", viewer, prefs); - gis_plugins_load(plugins, "srtm", viewer, prefs); - gis_plugins_load(plugins, "test", viewer, prefs); + while (*argv) + gis_plugins_load(plugins, *argv++, viewer, prefs); gdk_threads_enter(); gtk_main(); - g_object_unref(prefs); - g_object_unref(viewer); gis_plugins_free(plugins); + g_object_unref(prefs); gdk_threads_leave(); return 0; }