X-Git-Url: https://scm.cri.ensmp.fr/git/minwii.git/blobdiff_plain/e7854ed82aa375273bfbf772493739f875817061..46f3ffd7fdde386f41020171b5733e55a8e64a85:/src/minwii/widgets/songfilebrowser.py diff --git a/src/minwii/widgets/songfilebrowser.py b/src/minwii/widgets/songfilebrowser.py new file mode 100755 index 0000000..973f9ab --- /dev/null +++ b/src/minwii/widgets/songfilebrowser.py @@ -0,0 +1,51 @@ +# -*- 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", + path=path, + ) + + 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 + self.list.add(i, image=self.dir_img, value=i) + + for i in files: + if i.startswith('.') or (not i.endswith('.xml')) : + continue + self.list.add(i,value=i) + + self.list.set_vertical_scroll(0) +