]> sigrok.org Git - pulseview.git/blobdiff - pv/view/viewport.cpp
Viewport: Only zoom in/out at vertical wheel events
[pulseview.git] / pv / view / viewport.cpp
index 03b07fdf13351d3ceab1e8720af701f503046335..2b03b76723147852cede33b727fa6e549785d21d 100644 (file)
@@ -98,7 +98,7 @@ void Viewport::mouseMoveEvent(QMouseEvent *event)
 {
        assert(event);
 
-       if(event->buttons() & Qt::LeftButton)
+       if (event->buttons() & Qt::LeftButton)
        {
                _view.set_scale_offset(_view.scale(),
                        _mouse_down_offset +
@@ -115,12 +115,16 @@ void Viewport::mouseReleaseEvent(QMouseEvent *event)
 void Viewport::wheelEvent(QWheelEvent *event)
 {
        assert(event);
-       _view.zoom(event->delta() / 120, event->x());
+
+       if (event->orientation() == Qt::Vertical) {
+               // Vertical scrolling is interpreted as zooming in/out
+               _view.zoom(event->delta() / 120, event->x());
+       }
 }
 
 void Viewport::draw_cursors_background(QPainter &p)
 {
-       if(!_view.cursors_shown())
+       if (!_view.cursors_shown())
                return;
 
        p.setPen(Qt::NoPen);
@@ -137,7 +141,7 @@ void Viewport::draw_cursors_background(QPainter &p)
 
 void Viewport::draw_cursors_foreground(QPainter &p)
 {
-       if(!_view.cursors_shown())
+       if (!_view.cursors_shown())
                return;
 
        const QRect r = rect();