def wheelEvent(self, event: QWheelEvent): """ WheelEvent is the callback for wheel events of the operating system. Dependent on the OS, this can be a trackpad or a mouse wheel """ if not (self.imageOpened): return # Disable wheel if x position is leaving image compartment if (event.x() > self.ui.verticalScrollBar.pos().x()): return if (event.source() == Qt.MouseEventSynthesizedBySystem): # touch pad geasture - use direct scrolling, not zooming # this is usually indicative for Mac OS subs = np.asarray( [float(event.pixelDelta().x()), float(event.pixelDelta().y())]) / 32000.0 * self.getZoomValue() self.relativeCoords -= subs if (self.relativeCoords[0] < -0.5): self.relativeCoords[0] = -0.5 if (self.relativeCoords[1] < -0.5): self.relativeCoords[1] = -0.5 else: # mouse wheel - use scrolling inc = 1 if (event.angleDelta().y() > 0): inc = -1 self.setZoomValue(self.getZoomValue() * np.power(1.25, -inc)) self.showImage() self.updateScrollbars()
def wheelEvent(self, evt: QtGui.QWheelEvent) -> None: self.__mouse_pos = evt.pos() measure_editor = self.track.measureEditorAt(evt.pos()) if isinstance(measure_editor, MeasureEditor): measure_evt = QtGui.QWheelEvent( evt.pos() - measure_editor.topLeft(), evt.globalPos(), evt.pixelDelta(), evt.angleDelta(), 0, Qt.Horizontal, evt.buttons(), evt.modifiers(), evt.phase(), evt.source()) measure_evt.setAccepted(False) self.wheelMeasureEvent(measure_editor, measure_evt) evt.setAccepted(measure_evt.isAccepted())
def eventFilter(self, object, event): if (event.type() == QEvent.Wheel and not self.__d_ignoreWheelEvent): we = QWheelEvent(event) pos = self.wheelRect().center() wheelEvent = QWheelEvent(pos, QWidget.mapToGlobal(self, pos), we.pixelDelta(), we.angleDelta(), we.buttons(), we.modifiers(), we.phase(), we.inverted(), we.source()) self.__d_ignoreWheelEvent = True QApplication.sendEvent(self, wheelEvent) self.__d_ignoreWheelEvent = False return True return Qwt.QwtWheel.eventFilter(object, event)
def wheelEvent(self, evt: QtGui.QWheelEvent) -> None: evt = QtGui.QWheelEvent(evt.pos() + self.offset(), evt.globalPos(), evt.pixelDelta(), evt.angleDelta(), 0, Qt.Horizontal, evt.buttons(), evt.modifiers(), evt.phase(), evt.source()) self.__toolbox.wheelEvent(evt)