X-Git-Url: https://scm.cri.mines-paristech.fr/git/minwii.git/blobdiff_plain/d0939a86a1795f5d2328202dcecf1eca8ebaf914..1355364de08e9b941c6fb93cd95ff0df6703dc21:/src/minwii/widgets/playingscreen.py?ds=sidebyside diff --git a/src/minwii/widgets/playingscreen.py b/src/minwii/widgets/playingscreen.py index 0e179dd..adb6981 100755 --- a/src/minwii/widgets/playingscreen.py +++ b/src/minwii/widgets/playingscreen.py @@ -10,6 +10,7 @@ import pygame import types import minwii.events as events +from minwii.log import eventLogger from minwii.eventutils import event_handler, EventDispatcher, EventHandlerMixin from minwii.musicxml import Tone from minwii.config import FRAMERATE @@ -292,11 +293,17 @@ class SongPlayingScreen(PlayingScreenBase) : def displayNext(self, event=None) : if self.currentColumn: self.currentColumn.update(False) - note, verseIndex = self.noteIterator.next() + try : + note, verseIndex = self.noteIterator.next() + except StopIteration : + self.noteIterator = self.song.iterNotes() + note, verseIndex = self.noteIterator.next() + eventLogger.info(pygame.event.Event(events.SONGEND)) try : syllabus = note.lyrics[verseIndex].syllabus() except IndexError : syllabus = u'…' + column = self.columns[note.midi] column.update(True, syllabus) self.currentColumn = column