コード例 #1
0
 def test_initial(self):
     for path in ["/", "/home", os.environ["HOME"], "/usr/bin"]:
         dirlist = DirectoryTree(path)
         model, rows = dirlist.get_selection().get_selected_rows()
         selected = [model[row][0] for row in rows]
         dirlist.destroy()
         self.failUnlessEqual([path], selected)
コード例 #2
0
 def test_bad_initial(self):
     for path in ["/", os.environ["HOME"]]:
         newpath = os.path.join(path, "bin/file/does/not/exist")
         dirlist = DirectoryTree(newpath)
         model, rows = dirlist.get_selection().get_selected_rows()
         selected = [model[row][0] for row in rows]
         dirlist.destroy()
         self.failUnlessEqual([path], selected)
コード例 #3
0
ファイル: test_qltk_filesel.py プロジェクト: qwence/quodlibet
    def test_initial(self):
        paths = ["/", get_home_dir(), "/usr/bin"]
        if os.name == "nt":
            paths = [u"C:\\", get_home_dir()]

        for path in paths:
            dirlist = DirectoryTree(path, folders=self.ROOTS)
            model, rows = dirlist.get_selection().get_selected_rows()
            selected = [model[row][0] for row in rows]
            dirlist.destroy()
            self.failUnlessEqual([path], selected)
コード例 #4
0
    def test_initial(self):
        paths = ["/", get_home_dir(), "/usr/bin"]
        if os.name == "nt":
            paths = [u"C:\\", get_home_dir()]

        for path in paths:
            dirlist = DirectoryTree(path, folders=self.ROOTS)
            model, rows = dirlist.get_selection().get_selected_rows()
            selected = [model[row][0] for row in rows]
            dirlist.destroy()
            self.failUnlessEqual([path], selected)
コード例 #5
0
    def test_initial(self):
        if os.name == "nt":
            paths = [u"C:\\", get_home_dir()]
        else:
            paths = ["/", get_home_dir(), sys.prefix]

        for path in paths:
            dirlist = DirectoryTree(path, folders=self.ROOTS)
            model, rows = dirlist.get_selection().get_selected_rows()
            selected = [model[row][0] for row in rows]
            dirlist.destroy()
            self.failUnlessEqual([os.path.normpath(path)], selected)
コード例 #6
0
 def test_multiple_selections(self):
     dt = DirectoryTree(None, folders=self.ROOTS)
     menu = dt._create_menu()
     dt._popup_menu(menu)
     children = menu.get_children()
     select_sub = children[3]
     self.failUnless("sub-folders" in select_sub.get_label().lower())
     self.failUnless(select_sub.get_sensitive())
     sel = dt.get_selection()
     model = dt.get_model()
     for it, pth in model.iterrows(None):
         sel.select_iter(it)
     self.failUnless(select_sub.get_sensitive(),
                     msg="Select All should work for multiple")
     self.failIf(children[0].get_sensitive(),
                 msg="New Folder should be disabled for multiple")
     self.failUnless(children[3].get_sensitive(),
                     msg="Refresh should be enabled for multiple")
コード例 #7
0
 def test_multiple_selections(self):
     dt = DirectoryTree(None, folders=self.ROOTS)
     menu = dt._create_menu()
     dt._popup_menu(menu)
     children = menu.get_children()
     select_sub = children[3]
     self.failUnless("sub-folders" in select_sub.get_label().lower())
     self.failUnless(select_sub.get_sensitive())
     sel = dt.get_selection()
     model = dt.get_model()
     for it, pth in model.iterrows(None):
         sel.select_iter(it)
     self.failUnless(select_sub.get_sensitive(),
                     msg="Select All should work for multiple")
     self.failIf(children[0].get_sensitive(),
                 msg="New Folder should be disabled for multiple")
     self.failUnless(children[3].get_sensitive(),
                     msg="Refresh should be enabled for multiple")
コード例 #8
0
ファイル: filesystem.py プロジェクト: silkecho/glowing-silk
    def __init__(self, library, main):
        super(FileSystem, self).__init__()
        sw = ScrolledWindow()
        sw.set_policy(gtk.POLICY_AUTOMATIC, gtk.POLICY_AUTOMATIC)
        sw.set_shadow_type(gtk.SHADOW_IN)

        folders = filter(None, split_scan_dirs(config.get("settings", "scan")))

        dt = DirectoryTree(folders=folders)
        targets = [("text/x-quodlibet-songs", gtk.TARGET_SAME_APP, 1),
                   ("text/uri-list", 0, 2)]
        dt.drag_source_set(gtk.gdk.BUTTON1_MASK, targets, gtk.gdk.ACTION_COPY)
        dt.connect('drag-data-get', self.__drag_data_get)

        sel = dt.get_selection()
        sel.unselect_all()
        sel.connect_object('changed', copool.add, self.__songs_selected, dt)
        if main:
            dt.connect('row-activated', lambda *a: self.emit("activated"))
        sw.add(dt)
        self.pack_start(sw)
        self.show_all()