self.state = state
self.dirty = 1
- @event_handler(pygame.MOUSEBUTTONDOWN)
+ #@event_handler(pygame.MOUSEBUTTONDOWN)
def onMouseDown(self, event) :
- if self.rect.collidepoint(*event.pos) :
- self.update(True)
- self.raiseNoteOn()
+ if self.rect.collidepoint(*event.pos) and self.state :
+ self.raiseKeyDown()
@event_handler(pygame.MOUSEBUTTONUP)
def onMouseUp(self, event) :
- self.update(False)
- self.raiseNoteOff()
+ self.raiseKeyUp()
- def raiseNoteOn(self) :
- evt = pygame.event.Event(events.NOTEON, tone=self.tone)
+ def raiseKeyDown(self) :
+ evt = pygame.event.Event(events.KEYDOWN, column=self)
pygame.event.post(evt)
+ print 'down', self.tone.nom
- def raiseNoteOff(self) :
- evt = pygame.event.Event(events.NOTEOFF, tone=self.tone)
- pygame.event.post(evt)
+ def raiseKeyUp(self) :
+ if self.state :
+ evt = pygame.event.Event(events.KEYUP, column=self)
+ pygame.event.post(evt)
+ print 'up', self.tone.nom
+
+# def raiseNoteOn(self) :
+# evt = pygame.event.Event(events.NOTEON, tone=self.tone)
+# pygame.event.post(evt)
+#
+# def raiseNoteOff(self) :
+# evt = pygame.event.Event(events.NOTEOFF, tone=self.tone)
+# pygame.event.post(evt)