refactoring de la boîte de dialogue de sélection de la chanson (début).
[minwii.git] / src / app / widgets / home.py
index a56de62..391cb29 100755 (executable)
@@ -1,13 +1,21 @@
 # -*- coding: utf-8 -*-
 """
-widgets minwii.
+Écran de démarrage minwii.
 
 $Id$
 $URL$
 """
-from pgu.gui import Table, Spacer, Label, Button, Switch, Select
+from pgu.gui import Table
+from pgu.gui import Spacer
+from pgu.gui import Label
+from pgu.gui import Button
+from pgu.gui import Switch
+from pgu.gui import Select
+from pgu.gui import CLICK
+from pgu.gui import QUIT
 import pygame
 from gui.constants import reversedReadabilityDict, modeDict
+from songfilebrowser import FileOpenDialog
 
 class Home(Table) :
     """
@@ -16,9 +24,11 @@ class Home(Table) :
     
     def __init__(self,**params):
         Table.__init__(self,**params)
+        self.songPath = params.get('songPath', '.')
         self.spaceSize = (100,100)
         self.font = pygame.font.Font(None,70)
         self._fill()
+        self._initLocalListeners()
 
 
     def _fill(self):
@@ -73,12 +83,25 @@ class Home(Table) :
         self.tr()
         self.td(Spacer(500,500))
     
+    def _initLocalListeners(self) :
+        self.browseButton.connect(CLICK, self.open_file_browser)
+        self.quitButton.connect(CLICK, self._exitHome)
+    
+    def _exitHome(self, data=None) :
+        self.send(QUIT)
+    
     def createLabel(self,text,font = None):
         if font == None :
             font = self.font
         w,h = self.font.size(text)
         label = Label(text,width=w,height=h,font = font)
         return(label)
-        
+    
+    def open_file_browser(self):
+        dlg = FileOpenDialog(self.songPath)
+        #d = MINWiiDialog(font = self.font,width = 800, height = 600,path = "../songs/smwis")
+        #d.connect(pguGui.CHANGE, self.handle_file_browser_closed, d)
+        dlg.open()
+    
 
     
\ No newline at end of file