correctly set descending order (except for "sort by text")
This commit is contained in:
@ -72,19 +72,20 @@ class DictListWidget(QListWidget):
|
|||||||
i.set_alarm(state)
|
i.set_alarm(state)
|
||||||
|
|
||||||
|
|
||||||
def set_sort_key(self, sk):
|
def set_sort_key(self, sk, reverse=True):
|
||||||
DictListItem.set_sort_key(sk)
|
DictListItem.set_sort_key(sk)
|
||||||
|
|
||||||
if sk is None:
|
if sk is None:
|
||||||
self.setSortingEnabled(False)
|
self.setSortingEnabled(False)
|
||||||
else:
|
else:
|
||||||
self.setSortingEnabled(True)
|
self.setSortingEnabled(True)
|
||||||
self.sortItems()
|
order = Qt.DescendingOrder if reverse else Qt.AscendingOrder
|
||||||
|
self.sortItems(order)
|
||||||
|
|
||||||
|
|
||||||
def enable_sort_by_insertion_order(self):
|
def enable_sort_by_insertion_order(self):
|
||||||
# map order in dict to indices
|
# map order in dict to indices
|
||||||
mapping = enumerate(reversed(self.items.values()))
|
mapping = enumerate(self.items.values())
|
||||||
mapping = {item.text(): index for index, item in mapping}
|
mapping = {item.text(): index for index, item in mapping}
|
||||||
|
|
||||||
def unsort(x):
|
def unsort(x):
|
||||||
@ -95,7 +96,11 @@ class DictListWidget(QListWidget):
|
|||||||
|
|
||||||
|
|
||||||
def enable_sort_by_text(self):
|
def enable_sort_by_text(self):
|
||||||
self.set_sort_key(lambda x: x.text())
|
self.set_sort_key(lambda x: x.text(), reverse=False)
|
||||||
|
|
||||||
|
|
||||||
|
def enable_sort_by_timestamp(self):
|
||||||
|
self.set_sort_key(lambda x: (x.timestamps.max(), x.text()))
|
||||||
|
|
||||||
|
|
||||||
def disable_sorting(self):
|
def disable_sorting(self):
|
||||||
|
Reference in New Issue
Block a user