Multiple sort dialog: Allow removing saved sorts via a sub-menu of the Load button

This commit is contained in:
Kovid Goyal 2021-10-28 21:05:06 +05:30
parent f4bf609c25
commit 1796385b34
No known key found for this signature in database
GPG Key ID: 06BC317B515ACE7C

View File

@ -162,12 +162,23 @@ class ChooseMultiSort(Dialog):
for name in sorted(specs, key=primary_sort_key):
ac = m.addAction(name, self.load_spec)
ac.setObjectName(name)
m.addSeparator()
m = m.addMenu(_('Remove saved sort'))
for name in sorted(specs, key=primary_sort_key):
ac = m.addAction(name, self.remove_spec)
ac.setObjectName(name)
def load_spec(self):
name = self.sender().objectName()
spec = self.saved_specs[name]
self.apply_spec(spec)
def remove_spec(self):
name = self.sender().objectName()
q = self.saved_specs
if q.pop(name, None):
self.saved_specs = q
def iteritems(self):
cl = self.column_list
return (cl.item(i) for i in range(cl.count()))