# HG changeset patch # User Neil Muller # Date 1259402558 0 # Node ID 450de9dfa1065c7a5501c5359186b974dad41ecf # Parent 882b582da618bfffffd1140b94c0667efa0920ba Move gameboard event prodding into the widgets - better matches pgu internals diff -r 882b582da618 -r 450de9dfa106 gamelib/engine.py --- a/gamelib/engine.py Sat Nov 28 09:58:40 2009 +0000 +++ b/gamelib/engine.py Sat Nov 28 10:02:38 2009 +0000 @@ -67,11 +67,7 @@ self.open_window(game_over) def event(self, e): - if not Game.event(self, e): - if self.gameboard: - return self.gameboard.event(e) - return False - return True + return Game.event(self, e) class MainMenuState(State): diff -r 882b582da618 -r 450de9dfa106 gamelib/gameboard.py --- a/gamelib/gameboard.py Sat Nov 28 09:58:40 2009 +0000 +++ b/gamelib/gameboard.py Sat Nov 28 10:02:38 2009 +0000 @@ -40,6 +40,9 @@ self.gameboard.use_tool(e) elif e.type == MOUSEMOTION and self.gameboard.sprite_cursor: self.gameboard.update_sprite_cursor(e) + else: + return self.gameboard.event(e) + return True class AnimalPositionCache(object): @@ -836,6 +839,7 @@ self.stored_selections[e.key] = self.selected_chickens[:] else: self.restore_selection(self.stored_selections.get(e.key, [])) + return True elif e.type == KEYDOWN: mods = pygame.key.get_mods() if mods & KMOD_CTRL and self.selected_tool == constants.TOOL_SELECT_CHICKENS and self.selected_chickens: diff -r 882b582da618 -r 450de9dfa106 gamelib/toolbar.py --- a/gamelib/toolbar.py Sat Nov 28 09:58:40 2009 +0000 +++ b/gamelib/toolbar.py Sat Nov 28 10:02:38 2009 +0000 @@ -248,6 +248,11 @@ width = constants.TOOLBAR_WIDTH return width, height + def event(self, e): + if not gui.Table.event(self, e): + return self.gameboard.event(e) + return True + class DefaultToolBar(BaseToolBar): IS_DEFAULT = True