From a5b40799ea196d10468cf295d57732b4f11f79e2 Mon Sep 17 00:00:00 2001 From: Markus Roth Date: Sat, 9 Nov 2013 00:32:44 +0100 Subject: [PATCH] Refresh window after toggling fit-to-window mode. Closes issue #67. --- sloth/gui/labeltool.py | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/sloth/gui/labeltool.py b/sloth/gui/labeltool.py index dc65e80..16ab069 100644 --- a/sloth/gui/labeltool.py +++ b/sloth/gui/labeltool.py @@ -124,8 +124,7 @@ class MainWindow(QMainWindow): def onCurrentImageChanged(self): new_image = self.labeltool.currentImage() self.scene.setCurrentImage(new_image) - if self.options["Fit-to-window mode"].isChecked(): - self.view.fitInView() + self.onFitToWindowModeChanged() self.treeview.scrollTo(new_image.index()) img = self.labeltool.getImage(new_image) @@ -147,6 +146,10 @@ class MainWindow(QMainWindow): self.selectionmodel.setCurrentIndex(new_image.index(), QItemSelectionModel.ClearAndSelect|QItemSelectionModel.Rows) + def onFitToWindowModeChanged(self): + if self.options["Fit-to-window mode"].isChecked(): + self.view.fitInView() + def onScaleChanged(self, scale): self.zoominfo.setText("%.2f%%" % (100 * scale, )) @@ -287,6 +290,9 @@ class MainWindow(QMainWindow): self.labeltool.annotationsLoaded. connect(self.onAnnotationsLoaded) self.labeltool.currentImageChanged.connect(self.onCurrentImageChanged) + ## options menu + self.options["Fit-to-window mode"].changed.connect(self.onFitToWindowModeChanged) + def loadApplicationSettings(self): settings = QSettings() size = settings.value("MainWindow/Size", QSize(800, 600))