]> CRI, Mines Paris - PSL - minwii.git/blobdiff - src/minwii/app.py
Bugfixes en tout genre de la version 2.0.0.
[minwii.git] / src / minwii / app.py
index c56700aed7288129f29f00b0670b5d054f381b4f..29326fd678bf61deb3551e0b7c9a4daa25a0b36d 100755 (executable)
@@ -102,15 +102,17 @@ class MinWii(object):
         pygame.display.set_caption('MINWii')
         WT = self.WT
         
         pygame.display.set_caption('MINWii')
         WT = self.WT
         
-        songFile, playMode, wiimoteIndex = '', 'NORMAL', 0
+        songFile, playMode, displayNotes, wiimoteIndex = '', 'NORMAL', True, 0
 
         while True :
             WT.resume()
             WT.selectWiimote(self.nwiimotes - 1) # la télécommande est la souris
             self.screen = SCREEN_HOME
 
         while True :
             WT.resume()
             WT.selectWiimote(self.nwiimotes - 1) # la télécommande est la souris
             self.screen = SCREEN_HOME
-            exit, songFile, playMode, wiimoteIndex = \
-                self.selectSongAndOptions(songFile, playMode, wiimoteIndex)
-            if exit : break
+            exit, songFile, playMode, displayNotes, wiimoteIndex = \
+                self.selectSongAndOptions(songFile, playMode, displayNotes, wiimoteIndex)
+            if exit :
+                WT.quit()
+                break
             
             
             self.screen = SCREEN_INSTRUMENTS
             
             
             self.screen = SCREEN_INSTRUMENTS
@@ -120,20 +122,22 @@ class MinWii(object):
             
             self.screen = SCREEN_PLAY
             WT.selectWiimote(wiimoteIndex)
             
             self.screen = SCREEN_PLAY
             WT.selectWiimote(wiimoteIndex)
-            self.runPlayingScreen(songFile, playMode, instrumentDescription)
+            self.runPlayingScreen(songFile, playMode, displayNotes, instrumentDescription)
             WT.pause()
     
     
             WT.pause()
     
     
-    def selectSongAndOptions(self, songFile, playMode, wiimoteIndex) :
+    def selectSongAndOptions(self, songFile, playMode, displayNotes, wiimoteIndex) :
         """ lance l'écran de paramétrage et retourne un tuple comportant :
             - drapeau de sortie de l'application (booléen)
             - chemin du fichier de la chanson
             - mode (entier)
         """ lance l'écran de paramétrage et retourne un tuple comportant :
             - drapeau de sortie de l'application (booléen)
             - chemin du fichier de la chanson
             - mode (entier)
+            - affichage des notes (booléen)
             - wiimote sélectionnée (entier)
         """
         home = Home(songPath=SONG_FILE_PATH,
                     songFile=songFile,
                     playMode=playMode,
             - wiimote sélectionnée (entier)
         """
         home = Home(songPath=SONG_FILE_PATH,
                     songFile=songFile,
                     playMode=playMode,
+                    displayNotes=displayNotes,
                     wiimoteIndex=wiimoteIndex,
                     nwiimotes=self.nwiimotes)
         app = self.app
                     wiimoteIndex=wiimoteIndex,
                     nwiimotes=self.nwiimotes)
         app = self.app
@@ -163,6 +167,7 @@ class MinWii(object):
         return (home.exitApp,
                 home.songFile,
                 home.selectedPlayMode,
         return (home.exitApp,
                 home.songFile,
                 home.selectedPlayMode,
+                home.displayNotes,
                 home.selectedWiimoteIndex)
     
     def selectInstrument(self) :
                 home.selectedWiimoteIndex)
     
     def selectInstrument(self) :
@@ -182,7 +187,7 @@ class MinWii(object):
             console.info('ajustement octave : %d', instru['octave'])
         return instru
     
             console.info('ajustement octave : %d', instru['octave'])
         return instru
     
-    def runPlayingScreen(self, songFile, playMode, instrumentDescription) :
+    def runPlayingScreen(self, songFile, playMode, displayNotes, instrumentDescription) :
         """ Lance l'écran de jeu principal avec la chanson 'songFile' dans le mode 'playMode'
             avec l'instrument midi 'instrumentDescription'.
         """
         """ Lance l'écran de jeu principal avec la chanson 'songFile' dans le mode 'playMode'
             avec l'instrument midi 'instrumentDescription'.
         """
@@ -192,10 +197,10 @@ class MinWii(object):
         self.synth.adjust_octave(0, octave)
         self.synth.program_select(0, bank, preset)
         if playMode == PLAYING_MODES_DICT['IMPRO'] :
         self.synth.adjust_octave(0, octave)
         self.synth.program_select(0, bank, preset)
         if playMode == PLAYING_MODES_DICT['IMPRO'] :
-            playingScreen = PlayingScreen(self.synth)
+            playingScreen = PlayingScreen(self.synth, displayNotes=displayNotes)
         else :
             song = musicXml2Song(songFile)
         else :
             song = musicXml2Song(songFile)
-            self.playingScreen = playingScreen = SongPlayingScreen(self.synth, song, mode=playMode)
+            self.playingScreen = playingScreen = SongPlayingScreen(self.synth, song, mode=playMode, displayNotes=displayNotes)
         playingScreen.run()
         pygame.event.clear()
         EventDispatcher.reset()
         playingScreen.run()
         pygame.event.clear()
         EventDispatcher.reset()