restitution des mouvements du curseur.
authorpin <pin@fe552daf-6dbe-4428-90eb-1537e0879342>
Tue, 4 May 2010 12:16:40 +0000 (12:16 +0000)
committerpin <pin@fe552daf-6dbe-4428-90eb-1537e0879342>
Tue, 4 May 2010 12:16:40 +0000 (12:16 +0000)
git-svn-id: https://svn.cri.ensmp.fr/svn/minwii/trunk@163 fe552daf-6dbe-4428-90eb-1537e0879342

src/app/logfilereader.py
src/app/widgets/cursors.py

index a32d834..9955623 100755 (executable)
@@ -174,6 +174,10 @@ class LogFilePlayer(PlayingScreenBase) :
                 chan, key = [int(v) for v in message.split(None, 1)]
                 self.synth.noteoff(chan, key)
             
                 chan, key = [int(v) for v in message.split(None, 1)]
                 self.synth.noteoff(chan, key)
             
+            elif eventName.startswith('COL') :
+                pos = [int(n) for n in message.split(None, 4)[-1].strip('()').split(',')]
+                self.cursor.setPosition(pos)
+            
                 
             pygame.event.clear() # à virer
             #EventDispatcher.dispatchEvents()
                 
             pygame.event.clear() # à virer
             #EventDispatcher.dispatchEvents()
index fc05b56..1e3fc4e 100755 (executable)
@@ -99,3 +99,9 @@ class WarpingCursor(pygame.sprite.DirtySprite, EventHandlerMixin):
     def move(self, event) :
         self.dirty = 1
         self.rect.move_ip(event.rel)
     def move(self, event) :
         self.dirty = 1
         self.rect.move_ip(event.rel)
+    
+    def setPosition(self, pos) :
+        self.dirty = 1
+        x, y = pos
+        rx, ry = self.rect.centerx, self.rect.centery
+        self.rect.move_ip(x-rx, y-ry)