From fd477d5430c84dd4bd9b099bb90acfa554a54635 Mon Sep 17 00:00:00 2001 From: "P. F. Chimento" Date: Thu, 10 Mar 2011 06:59:01 +0100 Subject: [PATCH] Load preferred interpreters from preferences Not editable yet, but that's the next step. --- player/chimara.ui | 26 ++++++++++++++++++++++++-- player/preferences.c | 12 ++++++++++++ 2 files changed, 36 insertions(+), 2 deletions(-) diff --git a/player/chimara.ui b/player/chimara.ui index 44fca73..b2123ab 100644 --- a/player/chimara.ui +++ b/player/chimara.ui @@ -244,9 +244,9 @@ Philip Chimento - + - + @@ -796,6 +796,28 @@ Philip Chimento False False True + + + Format + + + + 0 + + + + + + + Interpreter + + + + 1 + + + + diff --git a/player/preferences.c b/player/preferences.c index f2cbaf0..ef8b67f 100644 --- a/player/preferences.c +++ b/player/preferences.c @@ -98,6 +98,18 @@ preferences_create(ChimaraGlk *glk) gtk_file_chooser_set_filename(blorb_chooser, filename); g_free(filename); } + + /* Initialize the list of preferred interpreters */ + GtkListStore *interp_list = GTK_LIST_STORE( load_object("interpreters") ); + GVariantIter *iter; + char *format, *plugin; + g_settings_get(prefs_settings, "preferred-interpreters", "a{ss}", &iter); + while(g_variant_iter_loop(iter, "{ss}", &format, &plugin)) { + GtkTreeIter tree_iter; + gtk_list_store_append(interp_list, &tree_iter); + gtk_list_store_set(interp_list, &tree_iter, 0, format, 1, plugin, -1); + } + g_variant_iter_free(iter); } static void -- 2.30.2