1 from qtpy
import QtCore
2 from qtpy
import QtWidgets
8 # pylint: disable=too-many-ancestors
9 class FileTree(standard
.TreeWidget
):
10 def __init__(self
, parent
=None):
11 standard
.TreeWidget
.__init
__(self
, parent
=parent
)
12 self
.setSelectionMode(self
.ExtendedSelection
)
13 self
.setHeaderHidden(True)
15 def set_filenames(self
, filenames
, select
=False):
20 from_filename
= icons
.from_filename
21 for filename
in filenames
:
22 icon
= from_filename(filename
)
23 item
= QtWidgets
.QTreeWidgetItem()
25 item
.setText(0, filename
)
26 item
.setData(0, QtCore
.Qt
.UserRole
, filename
)
28 self
.addTopLevelItems(items
)
30 items
[0].setSelected(True)
32 def has_selection(self
):
33 return bool(self
.selectedItems())
35 def selected_filenames(self
):
36 items
= self
.selectedItems()
39 return [filename_from_item(i
) for i
in items
]
42 def filename_from_item(item
):
43 return item
.data(0, QtCore
.Qt
.UserRole
)