X-Git-Url: http://pileus.org/git/?a=blobdiff_plain;f=src%2Fgis_test.c;h=4c0785a4e938b9d7e252349be00cb55ad35b6556;hb=37170f3b0fe9625d75a294eeef1b4442fa63a7f1;hp=124ed5389e28f22922a37d763a35c92dafce456d;hpb=a2a902d978b6050289f7a92794fb1dc0aa2b5e26;p=grits diff --git a/src/gis_test.c b/src/gis_test.c index 124ed53..4c0785a 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; @@ -47,30 +49,25 @@ int main(int argc, char **argv) GisPrefs *prefs = gis_prefs_new(NULL, NULL); GisPlugins *plugins = gis_plugins_new(NULL); - GisViewer *viewer = gis_viewer_new(); - GisOpenGL *opengl = gis_opengl_new(viewer, plugins); + GisViewer *viewer = gis_opengl_new(plugins); 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); - gtk_container_add(GTK_CONTAINER(window), GTK_WIDGET(opengl)); + 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, opengl, prefs); - //gis_plugins_load(plugins, "srtm", viewer, opengl, prefs); - gis_plugins_load(plugins, "test", viewer, opengl, prefs); - - gis_viewer_set_site(viewer, "KLSX"); + gis_plugins_load(plugins, "bmng", viewer, prefs); + gis_plugins_load(plugins, "srtm", viewer, prefs); + gis_plugins_load(plugins, "test", viewer, prefs); gdk_threads_enter(); gtk_main(); - g_object_unref(prefs); - g_object_unref(viewer); - g_object_unref(opengl); gis_plugins_free(plugins); + g_object_unref(prefs); gdk_threads_leave(); return 0; }