import pygame.locals as pgl
-class NajaEvent(object):
+def finish_event(handled=True, skip_invalidate=False):
+ if not skip_invalidate:
+ InvalidateTheWorld.post()
+ return handled
+
+class NajaEvent(object):
TYPE = "UNKNOWN"
@classmethod
class QuitGameEvent(NajaEvent):
TYPE = "QUIT_GAME"
- @classmethod
- def post(cls):
- super(QuitGameEvent, cls).post()
-
class InvalidateTheWorld(NajaEvent):
# This is used to signal to all the widgets that the world has changed
# and cached state may need to be recreated
TYPE = "INVALIDATE"
+
+class SelectEvent(NajaEvent):
+ TYPE = "SELECT"
+
+
+class LoadGameEvent(NajaEvent):
+ TYPE = "LOAD_GAME"
+
@classmethod
- def post(cls):
- super(InvalidateTheWorld, cls).post()
+ def post(cls, state):
+ super(LoadGameEvent, cls).post(state=state)