Ajout pywiiuse, version transmise par mail par Gary Bishop.
[minwii.git] / src / app / minwii.py
index 7901c9c..b279000 100755 (executable)
@@ -9,6 +9,7 @@ $URL$
 import pygame
 from pgu.gui import Desktop
 from pgu.gui import QUIT
 import pygame
 from pgu.gui import Desktop
 from pgu.gui import QUIT
+from widgets.launch import LaunchScreen
 from widgets.home import Home
 from widgets.playingscreen import SongPlayingScreen, PlayingScreen
 from widgets.instrumentselector import InstrumentSelector
 from widgets.home import Home
 from widgets.playingscreen import SongPlayingScreen, PlayingScreen
 from widgets.instrumentselector import InstrumentSelector
@@ -16,14 +17,21 @@ from synth import Synth
 from eventutils import EventDispatcher
 from musicxml import musicXml2Song
 from config import SONG_FILE_PATH
 from eventutils import EventDispatcher
 from musicxml import musicXml2Song
 from config import SONG_FILE_PATH
+from globals import PLAYING_MODES_DICT
 
 class MinWii(object):
     
     def __init__(self) :
 
 class MinWii(object):
     
     def __init__(self) :
+        LaunchScreen()
         app = Desktop()
         synth = Synth()
 
         app = Desktop()
         synth = Synth()
 
+        modeResolution = (1024,768)
+        pygame.display.set_mode(modeResolution)
+        pygame.display.set_caption('MinWii')
+
         while True :
         while True :
+            # sélection de la chanson
             home = Home(songPath=SONG_FILE_PATH)
             home.connect(QUIT, app.quit)
             app.run(home)
             home = Home(songPath=SONG_FILE_PATH)
             home.connect(QUIT, app.quit)
             app.run(home)
@@ -32,6 +40,7 @@ class MinWii(object):
             if not returnValue :
                 break
             
             if not returnValue :
                 break
             
+            # sélection de l'instrument
             selector = InstrumentSelector()
             selector.run()
             selector.stop()
             selector = InstrumentSelector()
             selector.run()
             selector.stop()
@@ -39,10 +48,16 @@ class MinWii(object):
             EventDispatcher.reset()
             instrumentDescription = selector.selectedInstrument
             
             EventDispatcher.reset()
             instrumentDescription = selector.selectedInstrument
             
-            song = musicXml2Song(home.songFile, printNotes=True)
+            # lancement du lecteur / clavier
+            songFile = home.songFile
+            playMode = home.modeSelect.value
+            playMode = PLAYING_MODES_DICT[playMode]
+            song = musicXml2Song(songFile)
             bank, preset = instrumentDescription['bank'], instrumentDescription['preset']
             bank, preset = instrumentDescription['bank'], instrumentDescription['preset']
+            octave = instrumentDescription.get('octave', 0)
+            synth.adjust_octave(0, octave)
             synth.program_select(0, bank, preset)
             synth.program_select(0, bank, preset)
-            playingScreen = SongPlayingScreen(synth, song)
+            playingScreen = SongPlayingScreen(synth, song, mode=playMode)
             playingScreen.run()
             pygame.event.clear()
             EventDispatcher.reset()
             playingScreen.run()
             pygame.event.clear()
             EventDispatcher.reset()