Esempio n. 1
0
    def wheelEvent(self, event):
        if self.control_scheme.wheel_zooms:
            dy = event.angleDelta().y()
            # Filter out horizontal wheel motion. We don't support this yet.
            if dy == 0:
                event.ignore()
                return
            self.zoom_camera(dy)
        else:
            if event.modifiers() & Qt.ShiftModifier:
                event = QWheelEvent(event.posF(),
                                    event.globalPosF(),
                                    event.pixelDelta(),
                                    event.angleDelta(),

                                    # Value magically chosen to approximate
                                    # what is happening on nirvana using
                                    # a steelseries mouse...
                                    event.angleDelta().y() / 8,

                                    Qt.Horizontal,  # Qt4 crap
                                    event.buttons(),
                                    event.modifiers(),
                                    event.phase())
            super().wheelEvent(event)
    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())
Esempio n. 3
0
    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)
Esempio n. 4
0
 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)