[iagno] Sync in Preferences dialog the main settings.
- From: Michael Catanzaro <mcatanzaro src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [iagno] Sync in Preferences dialog the main settings.
- Date: Mon, 21 Jul 2014 02:36:16 +0000 (UTC)
commit ba7beafecec8675056865209771a22d905889bf9
Author: Arnaud Bonatti <arnaud bonatti gmail com>
Date: Sun Jul 20 20:06:51 2014 +0200
Sync in Preferences dialog the main settings.
https://bugzilla.gnome.org/show_bug.cgi?id=733415
src/iagno.vala | 31 ++++++++++++++++---------------
1 files changed, 16 insertions(+), 15 deletions(-)
---
diff --git a/src/iagno.vala b/src/iagno.vala
index a143f6c..24efea4 100644
--- a/src/iagno.vala
+++ b/src/iagno.vala
@@ -538,19 +538,19 @@ public class Iagno : Gtk.Application
Gtk.TreeIter iter;
model.append (out iter);
model.set (iter, 0, _("Play first (Dark)"), 1, "first");
- if (settings.get_string ("play-as") == "first")
- combo.set_active_iter (iter);
model.append (out iter);
model.set (iter, 0, _("Play second (Light)"), 1, "second");
- if (settings.get_string ("play-as") == "second")
- combo.set_active_iter (iter);
model.append (out iter);
model.set (iter, 0, _("Two players"), 1, "two-players");
- if (settings.get_string ("play-as") == "two-players")
- {
- combo.set_active_iter (iter);
- level_combo.sensitive = false;
- }
+ combo.set_id_column (1);
+ settings.changed["play-as"].connect (() => {
+ var mode = settings.get_string ("play-as");
+ combo.set_active_id (mode);
+ level_combo.sensitive = (mode == "two-players") ? false : true;
+ });
+ var mode = settings.get_string ("play-as");
+ combo.set_active_id (mode);
+ level_combo.sensitive = (mode == "two-players") ? false : true;
grid.attach (combo, 1, 0, 1, 1);
label = new Gtk.Label (_("Computer:"));
@@ -565,16 +565,14 @@ public class Iagno : Gtk.Application
level_combo.model = model;
model.append (out iter);
model.set (iter, 0, _("Level one"), 1, 1);
- if (settings.get_int ("computer-level") == 1)
- level_combo.set_active_iter (iter);
model.append (out iter);
model.set (iter, 0, _("Level two"), 1, 2);
- if (settings.get_int ("computer-level") == 2)
- level_combo.set_active_iter (iter);
model.append (out iter);
model.set (iter, 0, _("Level three"), 1, 3);
- if (settings.get_int ("computer-level") == 3)
- level_combo.set_active_iter (iter);
+ settings.changed["computer-level"].connect (() => {
+ level_combo.set_active (settings.get_int ("computer-level") - 1);
+ });
+ level_combo.set_active (settings.get_int ("computer-level") - 1);
grid.attach (level_combo, 1, 1, 1, 1);
label = new Gtk.Label.with_mnemonic (_("_Tile set:"));
@@ -630,6 +628,9 @@ public class Iagno : Gtk.Application
grid.attach (theme_combo, 1, 2, 1, 1);
var enable_sounds_button = new Gtk.CheckButton.with_mnemonic (_("E_nable sounds"));
+ settings.changed["sound"].connect (() => {
+ enable_sounds_button.set_active (settings.get_boolean ("sound"));
+ });
enable_sounds_button.set_active (settings.get_boolean ("sound"));
enable_sounds_button.toggled.connect (sound_select);
grid.attach (enable_sounds_button, 0, 3, 2, 1);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]