X-Git-Url: https://scm.cri.minesparis.psl.eu/git/minwii.git/blobdiff_plain/ca8b7eef543b27ef0c8928494a6e138d0f938aa1..8107325baba9dacf2d7721192c981714a262dc09:/src/app/widgets/songfilebrowser.py diff --git a/src/app/widgets/songfilebrowser.py b/src/app/widgets/songfilebrowser.py new file mode 100755 index 0000000..b3acce8 --- /dev/null +++ b/src/app/widgets/songfilebrowser.py @@ -0,0 +1,68 @@ +# -*- coding: utf-8 -*- +""" +Boîte de dialogue pour sélection des chansons. + +$Id$ +$URL$ +""" + +from pgu.gui import FileDialog +import os + +class FileOpenDialog(FileDialog): + + + + def __init__(self, path): + FileDialog.__init__(self, + title_txt="Ouvrir une chanson", + button_txt="Ouvrir", + #cls="dialog", + #folderText = "Folder", + #fileText = "File", + path=path, + #customFont = None, + showCurDir = False + #customWidth = 350, + #customHeight = 150 + ) + + def _list_dir_(self): + self.input_dir.value = self.curdir + self.input_dir.pos = len(self.curdir) + self.input_dir.vpos = 0 + dirs = [] + files = [] + try: + for i in os.listdir(self.curdir): + if os.path.isdir(os.path.join(self.curdir, i)): dirs.append(i) + else: files.append(i) + except: + self.input_file.value = "Opps! no access" + #if '..' not in dirs: dirs.append('..') + dirs.sort() + dirs = ['..'] + dirs + + files.sort() + for i in dirs: + if i.startswith('.') and i != '..' : + continue + #item = ListItem(image=self.dir_img, text=i, value=i) + if self.customFont == None : + self.list.add(i,image=self.dir_img,value=i) + else : + label = basic.Label(i,font = self.customFont) + self.list.add(label,image=self.dir_img,value=i) + for i in files: + #item = ListItem(image=None, text=i, value=i) + if i.startswith('.') or (not i.endswith('.xml')) : + continue + if self.customFont == None : + self.list.add(i,value=i) + else: + label = basic.Label(i,font = self.customFont) + self.list.add(label,value=i) + #self.list.resize() + self.list.set_vertical_scroll(0) + #self.list.repaintall() +