X-Git-Url: https://git.stderr.nl/gitweb?a=blobdiff_plain;f=src%2Fmain.c;h=fd2700d48651379122af5d4aaa3e4e226c935f3d;hb=352f99218b90bc9a3e5386afc3f12c36c3ebec60;hp=978f788252eb5cb6c533aa5b063219510cc830e5;hpb=46974bb948c0a7ca82b476a578b6199e438bab41;p=rodin%2Fchimara.git diff --git a/src/main.c b/src/main.c index 978f788..fd2700d 100644 --- a/src/main.c +++ b/src/main.c @@ -42,9 +42,6 @@ #include "callbacks.h" #include "error.h" -#include "event.h" -#include "abort.h" -#include "glk.h" #include "chimara-glk.h" /* Global pointers to widgets */ @@ -52,6 +49,18 @@ GtkBuilder *builder = NULL; GtkWidget *window = NULL; GtkWidget *glk = NULL; +static void +on_started(ChimaraGlk *glk) +{ + g_printerr("Started!\n"); +} + +static void +on_stopped(ChimaraGlk *glk) +{ + g_printerr("Stopped!\n"); +} + static void create_window(void) { @@ -63,6 +72,8 @@ create_window(void) gtk_builder_connect_signals(builder, NULL); glk = chimara_glk_new(); + g_signal_connect(glk, "started", G_CALLBACK(on_started), NULL); + g_signal_connect(glk, "stopped", G_CALLBACK(on_stopped), NULL); GtkBox *vbox = GTK_BOX( gtk_builder_get_object(builder, "vbox") ); if(vbox == NULL) @@ -104,7 +115,7 @@ main(int argc, char *argv[]) g_object_unref( G_OBJECT(builder) ); - if( !chimara_glk_run(CHIMARA_GLK(glk), &error) ) { + if( !chimara_glk_run(CHIMARA_GLK(glk), ".libs/gridtest.so", &error) ) { error_dialog(GTK_WINDOW(window), error, "Error starting Glk library: "); return 1; } @@ -113,7 +124,7 @@ main(int argc, char *argv[]) gtk_main(); gdk_threads_leave(); - signal_abort(); + chimara_glk_stop(CHIMARA_GLK(glk)); chimara_glk_wait(CHIMARA_GLK(glk)); return 0;