for(ptr = actions; *ptr; ptr += 2)
gtk_action_group_add_action_with_accel(actiongroup, GTK_ACTION(load_object(ptr[0])), ptr[1]);
for(ptr = actions; *ptr; ptr += 2)
gtk_action_group_add_action_with_accel(actiongroup, GTK_ACTION(load_object(ptr[0])), ptr[1]);
if( !gtk_ui_manager_add_ui_from_file(uimanager, "chimara.menus", &error) ) {
error_dialog(NULL, error, "Error while building interface: ");
return;
}
if( !gtk_ui_manager_add_ui_from_file(uimanager, "chimara.menus", &error) ) {
error_dialog(NULL, error, "Error while building interface: ");
return;
}
g_object_set(glk, "border-width", 6, "spacing", 6, NULL);
chimara_glk_set_default_font_string(CHIMARA_GLK(glk), "Serif 12");
chimara_glk_set_monospace_font_string(CHIMARA_GLK(glk), "Monospace 12");
g_signal_connect(glk, "started", G_CALLBACK(on_started), NULL);
g_signal_connect(glk, "stopped", G_CALLBACK(on_stopped), NULL);
g_object_set(glk, "border-width", 6, "spacing", 6, NULL);
chimara_glk_set_default_font_string(CHIMARA_GLK(glk), "Serif 12");
chimara_glk_set_monospace_font_string(CHIMARA_GLK(glk), "Monospace 12");
g_signal_connect(glk, "started", G_CALLBACK(on_started), NULL);
g_signal_connect(glk, "stopped", G_CALLBACK(on_stopped), NULL);
gtk_box_pack_end(vbox, glk, TRUE, TRUE, 0);
gtk_box_pack_start(vbox, menubar, FALSE, FALSE, 0);
gtk_box_pack_start(vbox, toolbar, FALSE, FALSE, 0);
gtk_box_pack_end(vbox, glk, TRUE, TRUE, 0);
gtk_box_pack_start(vbox, menubar, FALSE, FALSE, 0);
gtk_box_pack_start(vbox, toolbar, FALSE, FALSE, 0);
- if( !chimara_glk_run(CHIMARA_GLK(glk), "../interpreters/frotz/.libs/frotz.so", argc, argv, &error) ) {
+ if(argc < 2) {
+ error_dialog(GTK_WINDOW(window), NULL, "Must provide a game file");
+ return 1;
+ }
+
+ if( !chimara_if_run_game(CHIMARA_IF(glk), argv[1], &error) ) {