X-Git-Url: https://git.ctpug.org.za/?a=blobdiff_plain;f=naja%2Fevents.py;h=1d7609f5937cc61d81b89de4a0c805e7398f72b0;hb=ae81bf6bf108dfce2ece923587aa4004149feed0;hp=0e102edf9229d0de4fbdc327514e0b08046144c8;hpb=d9ded620200ed74517f17f83f01313470ffca222;p=naja.git diff --git a/naja/events.py b/naja/events.py index 0e102ed..1d7609f 100644 --- a/naja/events.py +++ b/naja/events.py @@ -6,8 +6,13 @@ import pygame.event as pge 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 @@ -32,16 +37,12 @@ class SceneChangeEvent(NajaEvent): 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" - @classmethod - def post(cls): - super(InvalidateTheWorld, cls).post() + +class SelectEvent(NajaEvent): + TYPE = "SELECT"