Profile: attempt on better zoom and pan logic

QGraphicsView::AnchorUnderMouse does not work for
Qt 4.8.1 on Ubuntu 12.04 and if the mouseMoveEvent
overload is disabled it practically can be seen that
the anchor point is [0, 0] instead of the mouse location.

After a suggestion found on the web this patch attempts
to use the hidden scroll bars to calculate reposition
on pan and zoom *near the mouse cursor.

On the other hand QAbstactSlider (QScrollBar) class
strangly uses negative offsets for minimum scroll
position, which makes the implementation even more
ugly.

[*near] because it's not that accurate!

Signed-off-by: Lubomir I. Ivanov <neolit123@gmail.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
Lubomir I. Ivanov 2013-07-04 23:55:27 +03:00 committed by Dirk Hohndel
parent 1257adfd26
commit c7f8ada4ff
2 changed files with 25 additions and 5 deletions

View file

@ -124,6 +124,7 @@ private:
void plot_depth_scale();
QColor get_sac_color(int sac, int avg_sac);
void scrollViewTo(const QPoint pos);
QPen defaultPen;
QBrush defaultBrush;