Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGonzalo Odiard <godiard@gmail.com>2012-09-25 15:41:29 (GMT)
committer Gonzalo Odiard <godiard@gmail.com>2012-09-25 15:41:29 (GMT)
commitf5a34aaa8fd22624f5a6eda21e8071eaff9ee16d (patch)
tree533d24f0fdf99c9dbf71ca63697e70956965946c
parentaccd3f4d2124a43922f8a70e0f0003ef28aa27a2 (diff)
Fix error in the use of menus to change game and size
This error was introduced when used menuitem instead of combo to change the game and size. Now the icon in the button show the selected option. Signed-off-by: Gonzalo Odiard <gonzalo@laptop.org>
-rw-r--r--activity.py2
-rw-r--r--memorizetoolbar.py20
2 files changed, 14 insertions, 8 deletions
diff --git a/activity.py b/activity.py
index 1fdf8ac..1588cc9 100644
--- a/activity.py
+++ b/activity.py
@@ -122,6 +122,8 @@ class MemorizeActivity(Activity):
self.cardlist.clean_list)
self._createToolbarBuilder.connect('create_new_game',
self.createcardpanel.clean)
+ self._createToolbarBuilder.connect('create_new_game',
+ self._memorizeToolbarBuilder.reset)
self._createToolbarBuilder.connect('create_equal_pairs',
self.change_equal_pairs)
self.game = game.MemorizeGame()
diff --git a/memorizetoolbar.py b/memorizetoolbar.py
index dc6bc98..1a06da7 100644
--- a/memorizetoolbar.py
+++ b/memorizetoolbar.py
@@ -65,6 +65,7 @@ class MemorizeToolbarBuilder(gobject.GObject):
self._demo_games.props.palette.menu.append(menu_item)
menu_item.show()
self.toolbar.insert(self._demo_games, -1)
+ self._selected_game = self.standard_game_names[0]
# Change size combobox
self._size_combo = RadioMenuButton(icon_name='change_size')
@@ -77,6 +78,7 @@ class MemorizeToolbarBuilder(gobject.GObject):
self._size_combo.props.palette.menu.append(menu_item)
menu_item.show()
self.toolbar.insert(self._size_combo, -1)
+ self._selected_game_size = self._sizes[0][0]
# Reset Button
self._restart_button = ToolButton('game-new')
@@ -95,8 +97,10 @@ class MemorizeToolbarBuilder(gobject.GObject):
self._restart_button.set_sensitive(active)
def _game_size_cb(self, widget, i):
- game_size = int(self._sizes[i][0])
- self.emit('game_changed', None, game_size, 'size', None, None)
+ self._selected_game_size = int(self._sizes[i][0])
+ self._size_combo.props.icon_name = self._sizes[i]
+ self.emit('game_changed', None, self._selected_game_size, 'size', None,
+ None)
def __activate_game_cb(self, menu, i):
self._game_selected_index = i
@@ -120,16 +124,16 @@ class MemorizeToolbarBuilder(gobject.GObject):
def _change_game(self):
title = self.translated_game_names[self._game_selected_index]
- game_size = int(self._sizes[self._size_combo.combo.get_active()][0])
+ game_size = int(self._selected_game_size)
game_name = self.standard_game_names[self._game_selected_index]
-
+ self._demo_games.props.icon_name = game_name
game_file = join(dirname(__file__), 'demos', game_name + '.zip')
self.emit('game_changed', game_file, game_size, 'demo', title, None)
+ def reset(self, widget):
+ self._demo_games.props.icon_name = 'memorize-collection'
+
def update_toolbar(self, widget, data, grid):
size = data.get('size')
- self._size_combo.combo.handler_block(self.size_handle_id)
- size_index = self._sizes.index(size + ' X ' + size)
- self._size_combo.combo.set_active(int(size_index))
- self._size_combo.combo.handler_unblock(self.size_handle_id)
+ self._size_combo.props.icon_name = size + ' X ' + size