diff options
author | James <olpc@localhost.localdomain> | 2007-02-04 21:53:36 (GMT) |
---|---|---|
committer | James <olpc@localhost.localdomain> | 2007-02-04 21:53:36 (GMT) |
commit | bb6ba47652bbf684192d2ba0b104928abf8dcf92 (patch) | |
tree | aa164e8a0939863c2bcfdac671973bb9e215d4d2 /Edit | |
parent | e51ca0bc0f8d74c5dc9a3e7ef64e783b3171f9dd (diff) |
adjust note onsets correctly for multiplage edit-mode playback
Diffstat (limited to 'Edit')
-rw-r--r-- | Edit/MainWindow.py | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/Edit/MainWindow.py b/Edit/MainWindow.py index f99e62e..2a8465b 100644 --- a/Edit/MainWindow.py +++ b/Edit/MainWindow.py @@ -383,14 +383,23 @@ class MainWindow( gtk.EventBox ): else: self.displayPage( self.pages_playing[0] ) - numticks = sum([self.noteDB.getPage(id).ticks for id in self.pages_playing ] ) + numticks = 0 + page_onset = {} + for pid in self.pages_playing: + page_onset[pid] = numticks + numticks += self.noteDB.getPage(pid).ticks + print 'play!' print 'pages : ', self.pages_playing print 'trackset : ', trackset print 'numticks : ', numticks print 'notes : ', len(notes), 'notes' self.csnd.loopClear() + for n in notes: + n.onset += page_onset[n.pageId] self.csnd.loopAdd(notes) + for n in notes: + n.onset -= page_onset[n.pageId] self.csnd.loopSetTick(0) self.csnd.loopSetNumTicks( numticks ) self.csnd.loopSetTempo(self._data['tempo']) |