From 36ff753e2e4b6639744c23b5e782109febe6f6e1 Mon Sep 17 00:00:00 2001 From: Boldi Date: Wed, 15 Nov 2023 18:46:39 +0000 Subject: [PATCH 1/2] Add dataChanged signal when selection changed --- zxlive/rewrite_action.py | 1 + 1 file changed, 1 insertion(+) diff --git a/zxlive/rewrite_action.py b/zxlive/rewrite_action.py index 1d2b01b4..caf18906 100644 --- a/zxlive/rewrite_action.py +++ b/zxlive/rewrite_action.py @@ -218,3 +218,4 @@ def update_on_selection(self) -> None: g = self.proof_panel.graph_scene.g self.root_item.update_on_selection(g, selection, edges) + self.dataChanged.emit(QModelIndex(), QModelIndex(), []) From cd63c70686e03240d93e7303052ffcb746903913 Mon Sep 17 00:00:00 2001 From: Boldi Date: Wed, 15 Nov 2023 19:00:51 +0000 Subject: [PATCH 2/2] Include `selected_edges` in `ProofPanel.parse_selection` --- zxlive/proof_panel.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/zxlive/proof_panel.py b/zxlive/proof_panel.py index 92526dc5..8e8a2896 100644 --- a/zxlive/proof_panel.py +++ b/zxlive/proof_panel.py @@ -128,14 +128,14 @@ def init_rewrites_bar(self) -> None: def parse_selection(self) -> tuple[list[VT], list[ET]]: selection = list(self.graph_scene.selected_vertices) + edges = set(self.graph_scene.selected_edges) g = self.graph_scene.g - edges = [] for e in g.edges(): s,t = g.edge_st(e) if s in selection and t in selection: - edges.append(e) + edges.add(e) - return selection, edges + return selection, list(edges) def _vert_moved(self, vs: list[tuple[VT, float, float]]) -> None: cmd = MoveNodeInStep(self.graph_view, vs, self.step_view)