X-Git-Url: https://git.stderr.nl/gitweb?a=blobdiff_plain;f=player%2Fmain.c;h=ff5c681cdf6588e5e182b8cffd38c1988b0542d9;hb=012d66921278f7271a323a50c81bb9e2d6ce6aeb;hp=9722235c680309e32c785dffafeae4705c9d462d;hpb=b30b05a569c24260332a746ed867a78730a19627;p=projects%2Fchimara%2Fchimara.git diff --git a/player/main.c b/player/main.c index 9722235..ff5c681 100644 --- a/player/main.c +++ b/player/main.c @@ -55,6 +55,7 @@ static GtkWidget *glk = NULL; GtkBuilder *builder = NULL; GtkWidget *aboutwindow = NULL; GtkWidget *prefswindow = NULL; +GtkWidget *toolbar = NULL; GObject * load_object(const gchar *name) @@ -110,6 +111,7 @@ create_window(void) aboutwindow = GTK_WIDGET(load_object("aboutwindow")); prefswindow = GTK_WIDGET(load_object("prefswindow")); GtkActionGroup *actiongroup = GTK_ACTION_GROUP(load_object("actiongroup")); + GtkToggleAction *toolbar_action = GTK_TOGGLE_ACTION(load_object("toolbar")); const gchar **ptr; GtkRecentFilter *filter = gtk_recent_filter_new(); @@ -137,7 +139,7 @@ create_window(void) } #endif /* DEBUG */ } - + glk = chimara_if_new(); g_object_set(glk, "ignore-errors", TRUE, @@ -188,11 +190,16 @@ create_window(void) gtk_ui_manager_insert_action_group(uimanager, actiongroup, 0); GtkWidget *menubar = gtk_ui_manager_get_widget(uimanager, "/menubar"); - //GtkWidget *toolbar = gtk_ui_manager_get_widget(uimanager, "/toolbar"); + toolbar = gtk_ui_manager_get_widget(uimanager, "/toolbar"); + gtk_widget_set_no_show_all(toolbar, TRUE); + if(gtk_toggle_action_get_active(toolbar_action)) + gtk_widget_show(toolbar); + else + gtk_widget_hide(toolbar); 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_start(vbox, toolbar, FALSE, FALSE, 0); gtk_builder_connect_signals(builder, glk); g_signal_connect(glk, "notify::program-name", G_CALLBACK(change_window_title), window); @@ -223,6 +230,9 @@ main(int argc, char *argv[]) g_object_unref( G_OBJECT(uimanager) ); + if(argc == 3) { + g_object_set(glk, "graphics-file", argv[2], NULL); + } if(argc >= 2) { if( !chimara_if_run_game(CHIMARA_IF(glk), argv[1], &error) ) { error_dialog(GTK_WINDOW(window), error, "Error starting Glk library: ");