changeset 542:baf75d5ee50d

Shift+group to add to current selection.
author Jeremy Thurgood <firxen@gmail.com>
date Sat, 28 Nov 2009 10:11:57 +0000
parents 450de9dfa106
children 03be16420e8b
files gamelib/gameboard.py
diffstat 1 files changed, 5 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/gamelib/gameboard.py	Sat Nov 28 10:02:38 2009 +0000
+++ b/gamelib/gameboard.py	Sat Nov 28 10:11:57 2009 +0000
@@ -838,7 +838,8 @@
                 # store current selection
                 self.stored_selections[e.key] = self.selected_chickens[:]
             else:
-                self.restore_selection(self.stored_selections.get(e.key, []))
+                additive = (mods & KMOD_SHIFT)
+                self.restore_selection(self.stored_selections.get(e.key, []), additive)
             return True
         elif e.type == KEYDOWN:
             mods = pygame.key.get_mods()
@@ -850,8 +851,9 @@
                 pygame.mouse.set_cursor(*cursors.cursors['select'])
         return False
 
-    def restore_selection(self, selection):
-        self.unselect_all()
+    def restore_selection(self, selection, additive=False):
+        if not additive:
+            self.unselect_all()
         for chick in selection[:]:
             if chick in self.chickens:
                 self.select_animal(chick)