From: pin Date: Mon, 12 Apr 2010 15:45:40 +0000 (+0000) Subject: nommage des événements. X-Git-Url: https://svn.cri.ensmp.fr/git/minwii.git/commitdiff_plain/f439fefd7ee0b44442268443f2fefb3d33a47fb8?ds=inline nommage des événements. git-svn-id: https://svn.cri.ensmp.fr/svn/minwii/trunk@139 fe552daf-6dbe-4428-90eb-1537e0879342 --- diff --git a/src/app/events.py b/src/app/events.py index 02444b0..8e13a85 100755 --- a/src/app/events.py +++ b/src/app/events.py @@ -1,8 +1,35 @@ -from pygame.locals import USEREVENT -TIMEOUT = USEREVENT + 1 -NOTEON = USEREVENT + 2 -NOTEOFF = USEREVENT + 3 -NOTEEND = USEREVENT + 4 -COLDOWN = USEREVENT + 5 -COLUP = USEREVENT + 6 -COLOVER = USEREVENT + 7 \ No newline at end of file +import pygame +from sys import modules + +events = ['TIMEOUT', 'NOTEON', 'NOTEOFF', 'NOTEEND', 'COLDOWN', 'COLUP', 'COLOVER'] +eventNames = {} +self = modules[__name__] + +for i, name in enumerate(events) : + eventType = pygame.USEREVENT+i + eventNames[eventType] = name + setattr(self, name, eventType) + +pygame_events = [ + 'NOEVENT', + 'ACTIVEEVENT', + 'KEYDOWN', + 'KEYUP', + 'MOUSEMOTION', + 'MOUSEBUTTONDOWN', + 'MOUSEBUTTONUP', + 'JOYAXISMOTION', + 'JOYBALLMOTION', + 'JOYHATMOTION', + 'JOYBUTTONDOWN', + 'JOYBUTTONUP', + 'VIDEORESIZE', + 'VIDEOEXPOSE', + 'QUIT', + 'SYSWMEVENT', + 'USEREVENT', + 'NUMEVENTS' + ] + +for name in pygame_events : + eventNames[getattr(pygame, name)] = name diff --git a/src/app/eventutils.py b/src/app/eventutils.py index 1172794..e45d5a3 100755 --- a/src/app/eventutils.py +++ b/src/app/eventutils.py @@ -31,8 +31,14 @@ import pygame from StringIO import StringIO from logging import getLogger, basicConfig, DEBUG import sys +from events import TIMEOUT, COLOVER, eventNames basicConfig(level=DEBUG, stream = sys.stdout) -console = getLogger('minwii.eventutils') +console = getLogger('minwii') +eventLog = getLogger('minwii.events') + +hiddenEvents = {pygame.MOUSEMOTION:True, + TIMEOUT:True, + COLOVER:True,} class _EventDispatcher : def __init__(self) : @@ -54,6 +60,8 @@ class _EventDispatcher : events = pygame.event.get() for event in events : listeners = self.registry.get(event.type, {}) + if listeners and not hiddenEvents.has_key(event.type) : + eventLog.info((eventNames.get(event.type, event.type), event)) for listener in listeners.keys() : listener(event) @@ -105,8 +113,3 @@ class EventInitializer(type): class EventHandlerMixin(object) : __metaclass__ = EventInitializer - - #def input(self) : - # event = pygame.event.wait() - # handler = getattr(self, 'eventHandler%s' % event.type, lambda e:None) - # handler(event)