From e8f7284bbbc138bdb93699b805e2d9d5ff3d5634 Mon Sep 17 00:00:00 2001 From: nilsonholger Date: Wed, 3 Aug 2016 18:57:11 +0200 Subject: [PATCH] cursor is cross while making/editing labels, change zoom behaviour, thx @isaacgerg --- sloth/gui/annotationscene.py | 4 ++++ sloth/gui/frameviewer.py | 7 ++++++- sloth/items/inserters.py | 1 + 3 files changed, 11 insertions(+), 1 deletion(-) diff --git a/sloth/gui/annotationscene.py b/sloth/gui/annotationscene.py index 3716bdb..7e9a366 100644 --- a/sloth/gui/annotationscene.py +++ b/sloth/gui/annotationscene.py @@ -142,10 +142,14 @@ class AnnotationScene(QGraphicsScene): self._labeltool.currentImageChanged.connect(inserter.imageChange) self._inserter = inserter LOG.debug("Created inserter for class '%s' with default properties '%s'" % (label_class, default_properties)) + # Change cursor to cross + self.views()[0].viewport().setCursor(Qt.CrossCursor) + def onInsertionModeEnded(self): if self._inserter is not None: self._inserter.abort() + self.views()[0].viewport().setCursor(Qt.ArrowCursor) # # common methods diff --git a/sloth/gui/frameviewer.py b/sloth/gui/frameviewer.py index 2525b95..8c85e8c 100644 --- a/sloth/gui/frameviewer.py +++ b/sloth/gui/frameviewer.py @@ -27,6 +27,11 @@ class GraphicsView(QGraphicsView): self._panStartX = -1 self._panStartY = -1 + # Windows photo viewer like controls + self.setRenderHints(QPainter.Antialiasing|QPainter.SmoothPixmapTransform) + self.setTransformationAnchor(QGraphicsView.AnchorUnderMouse) + self.setDragMode(QGraphicsView.ScrollHandDrag) + def fitInView(self): if self.scene() is None: return @@ -207,4 +212,4 @@ class MultiFrameEqualViewer(FrameViewer): self.activateSceneView(index) def getActiveSceneView(self): - return self.scene_views[self.active_scene_view] \ No newline at end of file + return self.scene_views[self.active_scene_view] diff --git a/sloth/items/inserters.py b/sloth/items/inserters.py index 77e7656..371c2a4 100644 --- a/sloth/items/inserters.py +++ b/sloth/items/inserters.py @@ -146,6 +146,7 @@ class RectItemInserter(ItemInserter): self._item = None self._aiming = True + self._scene.views()[0].viewport().setCursor(Qt.CrossCursor) event.accept() def allowOutOfSceneEvents(self):