bug delete heirs from wizard
This commit is contained in:
17
qt.py
17
qt.py
@@ -624,7 +624,11 @@ class BalWindow(Logger):
|
||||
|
||||
def delete_heirs(self, heirs):
|
||||
for heir in heirs:
|
||||
del self.heirs[heir]
|
||||
try:
|
||||
del self.heirs[heir]
|
||||
except Exception as e:
|
||||
_logger.debug(f"error deleting heir: {heir} {e}")
|
||||
pass
|
||||
self.heirs.save()
|
||||
self.heir_list.update()
|
||||
return True
|
||||
@@ -1687,7 +1691,7 @@ class BalWizardHeirsWidget(BalWizardWidget):
|
||||
)
|
||||
|
||||
def get_content(self):
|
||||
self.heirs_list = HeirList(self.bal_window, self.parent)
|
||||
self.heirs_list = HeirList(self.bal_window, self)
|
||||
button_add = QPushButton(_("Add"))
|
||||
button_add.clicked.connect(self.add_heir)
|
||||
button_import = QPushButton(_("Import"))
|
||||
@@ -2532,6 +2536,10 @@ class HeirList(MyTreeView, MessageBoxMixin):
|
||||
except Exception:
|
||||
self.update()
|
||||
|
||||
def delete_heirs(self,selected_keys):
|
||||
self.bal_window.delete_heirs(selected_keys)
|
||||
self.update()
|
||||
|
||||
def create_menu(self, position):
|
||||
menu = QMenu()
|
||||
idx = self.indexAt(position)
|
||||
@@ -2560,7 +2568,7 @@ class HeirList(MyTreeView, MessageBoxMixin):
|
||||
lambda p=persistent: self.edit(QModelIndex(p)),
|
||||
)
|
||||
menu.addAction(
|
||||
_("Delete"), lambda: self.bal_window.delete_heirs(selected_keys)
|
||||
_("Delete"), lambda: self.delete_heirs(selected_keys)
|
||||
)
|
||||
menu.exec(self.viewport().mapToGlobal(position))
|
||||
|
||||
@@ -2571,8 +2579,6 @@ class HeirList(MyTreeView, MessageBoxMixin):
|
||||
# selected_keys.append(sel_key)
|
||||
# return selected_keys
|
||||
def update(self):
|
||||
if self.maybe_defer_update():
|
||||
return
|
||||
current_key = self.get_role_data_for_current_item(
|
||||
col=self.Columns.NAME, role=self.ROLE_HEIR_KEY
|
||||
)
|
||||
@@ -2610,6 +2616,7 @@ class HeirList(MyTreeView, MessageBoxMixin):
|
||||
set_current = QPersistentModelIndex(idx)
|
||||
self.set_current_idx(set_current)
|
||||
# FIXME refresh loses sort order; so set "default" here:
|
||||
self.repaint()
|
||||
self.filter()
|
||||
run_hook("update_heirs_tab", self)
|
||||
self.update_will_settings()
|
||||
|
||||
Reference in New Issue
Block a user