changeset 656:59d16b45ee4c pyntnclick

Handle ESC from game
author Stefano Rivera <stefano@rivera.za.net>
date Sun, 12 Feb 2012 13:58:02 +0200
parents c77d6aa29bee
children 0df0c81a3d8b
files pyntnclick/gamescreen.py
diffstat 1 files changed, 6 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/pyntnclick/gamescreen.py	Sun Feb 12 13:56:59 2012 +0200
+++ b/pyntnclick/gamescreen.py	Sun Feb 12 13:58:02 2012 +0200
@@ -4,7 +4,7 @@
 
 from pygame import Rect, mouse, Surface
 from pygame.color import Color
-from pygame.locals import MOUSEBUTTONDOWN, MOUSEMOTION
+from pygame.locals import MOUSEBUTTONDOWN, MOUSEMOTION, KEYDOWN, K_ESCAPE
 
 from pyntnclick.cursor import CursorWidget
 from pyntnclick.engine import Screen
@@ -248,6 +248,7 @@
     def setup(self):
         self.running = False
         self.create_initial_state = self.gd.initial_state
+        self.container.add_callback(KEYDOWN, self.key_pressed)
 
     def _clear_all(self):
         for widget in self.container.children[:]:
@@ -285,6 +286,10 @@
 
         self.running = True
 
+    def key_pressed(self, event, widget):
+        if event.key == K_ESCAPE:
+            self.change_screen('menu')
+
     # albow callback:
     def main_menu_cmd(self):
         self.shell.show_screen(self.shell.menu_screen)