From 68c3923d5a8b7100a325bf58f37d61e11c2685c8 Mon Sep 17 00:00:00 2001 From: Oscar Gustafsson <oscar.gustafsson@gmail.com> Date: Sat, 29 Apr 2023 22:28:19 +0200 Subject: [PATCH] Add zoom to fit for SFG GUI --- b_asic/GUI/main_window.py | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/b_asic/GUI/main_window.py b/b_asic/GUI/main_window.py index ded267a4..5f75ae09 100644 --- a/b_asic/GUI/main_window.py +++ b/b_asic/GUI/main_window.py @@ -202,6 +202,11 @@ class SFGMainWindow(QMainWindow): self._statusbar_visible.triggered.connect(self._toggle_statusbar) self._ui.view_menu.addAction(self._statusbar_visible) + self._ui.view_menu.addSeparator() + self._zoom_to_fit_action = QAction("Zoom to &fit") + self._zoom_to_fit_action.triggered.connect(self._zoom_to_fit) + self._ui.view_menu.addAction(self._zoom_to_fit_action) + # Non-modal dialogs self._keybindings_page = None self._about_page = None @@ -869,6 +874,12 @@ class SFGMainWindow(QMainWindow): operation._toggle_button(pressed=True) self.update_statusbar("Unselected all operations") + def _zoom_to_fit(self, event=None): + """Callback for zoom to fit SFGs in window.""" + self._graphics_view.fitInView( + self._scene.sceneRect(), Qt.AspectRatioMode.KeepAspectRatio + ) + def _simulate_sfg(self) -> None: """Callback for simulating SFGs in separate threads.""" self._thread = dict() -- GitLab