]> sigrok.org Git - pulseview.git/commitdiff
View: Make horizontal arrow-key scrolling useful
authorSoeren Apel <redacted>
Wed, 3 Dec 2014 09:39:41 +0000 (10:39 +0100)
committerJoel Holdsworth <redacted>
Wed, 3 Dec 2014 22:57:22 +0000 (22:57 +0000)
Currently, the horizontal scroll bar scrolls by a very small amount
of time when the arrow keys on the keyboard are used. This is because
View::horizontalScrollBar's single step size is never set.

In order to make the arrow keys become useful, this patch sets this
step size equal to the major tick width of the ruler. This results
in scrolling by a fair amount of time without losing track of the
context and also preserving the positions of the major ticks on
the ruler when scrolling.

pv/view/view.cpp

index fce5b18c2fc487b52a3cb365b47e2d4a9f76c65c..5877c22d87584ed2e506e5dfdf5e76b35d5b6fa8 100644 (file)
@@ -451,7 +451,10 @@ void View::update_scroll()
        get_scroll_layout(length, offset);
        length = max(length - areaSize.width(), 0.0);
 
+       int major_tick_distance = tick_period_ / scale_;
+
        horizontalScrollBar()->setPageStep(areaSize.width() / 2);
+       horizontalScrollBar()->setSingleStep(major_tick_distance);
 
        updating_scroll_ = true;