added possibility to enabling/disabling sorting for the list

This commit is contained in:
2023-02-01 15:26:17 +01:00
parent b02d66b95f
commit 31cbe8ac33

View File

@ -72,4 +72,27 @@ class DictListWidget(QListWidget):
i.set_alarm(state)
def set_sort_key(self, sk):
for i in self.items.values():
i.set_sort_key(sk)
if sk is None:
self.setSortingEnabled(False)
else:
self.setSortingEnabled(True)
self.sortItems()
def disable_sorting(self):
# map order in dict to indices
mapping = enumerate(reversed(self.items.values()))
mapping = {item.text(): index for index, item in mapping}
def unsort(x):
return mapping[x.text()]
self.set_sort_key(unsort)
self.set_sort_key(None)