def dispatchEvents(self) :
events = pygame.event.get()
for event in events :
+ #if event.type == pygame.MOUSEMOTION :
+ # if hasattr(event, 'wiimoteid') :
+ # console.info(event)
+ # #return
+
listeners = self.registry.get(event.type, {})
for listener in listeners.keys() :
listener(event)
keys.sort()
for k in keys :
print >> out, "event", k
- for listener in self.registry[k] :
+ for listener in self.registry[k].keys() :
print >> out, listener.__name__
out.seek(0)
return out.read()
EventDispatcher = _EventDispatcher()
-def event_handler(eventType) :
+def event_handler(*eventTypes) :
def markFunctionAsListener(m) :
m.__islistener__ = True
- m.__eventtype__ = eventType
+ m.__eventtypes__ = eventTypes
return m
return markFunctionAsListener
for k, v in dict.items() :
if isinstance(v, types.FunctionType) and hasattr(v, '__islistener__') :
listener = getattr(self, k)
- EventDispatcher.addEventListener(v.__eventtype__, listener)
+ for eventType in v.__eventtypes__ :
+ EventDispatcher.addEventListener(eventType, listener)
def ctor(self, *args, **kw) :
default_ctor = dict.get('__init__')