forked from Wobbl/Wobuzz
Implemented saving of the sortorder to the .wbz.m3u
This commit is contained in:
parent
894b3d213a
commit
78b60dba02
3 changed files with 68 additions and 4 deletions
|
@ -9,6 +9,7 @@ from .track import TrackItem
|
|||
|
||||
class PlaylistView(QTreeWidget):
|
||||
itemDropped = pyqtSignal(QTreeWidget, list)
|
||||
sort_signal = pyqtSignal(int, Qt.SortOrder)
|
||||
|
||||
playing_mark = QIcon.fromTheme(QIcon.ThemeIcon.MediaPlaybackStart)
|
||||
|
||||
|
@ -42,6 +43,7 @@ class PlaylistView(QTreeWidget):
|
|||
|
||||
self.itemActivated.connect(self.on_track_activation)
|
||||
self.header.sectionClicked.connect(self.on_header_click)
|
||||
self.sort_signal.connect(self.sortItems)
|
||||
|
||||
def on_header_click(self, section_index: int):
|
||||
if section_index == 0: # this would just invert the current sorting
|
||||
|
@ -73,7 +75,10 @@ class PlaylistView(QTreeWidget):
|
|||
# convert True/False to Qt.SortOrder.AscendingOrder/Qt.SortOrder.DescendingOrder
|
||||
qorder = Qt.SortOrder.AscendingOrder if order else Qt.SortOrder.DescendingOrder
|
||||
|
||||
self.sortItems(index, qorder)
|
||||
# somehow, QTreeWidget.sortItems() cant be called from a thread, so we have to use a signal to execute it
|
||||
# in the main thread
|
||||
self.sort_signal.emit(index, qorder)
|
||||
# self.sortItems(index, qorder)
|
||||
|
||||
self.on_sort()
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue