ui: Fixed scrolling broken in graph view

This commit is contained in:
Eberhard Graether
2017-01-27 10:12:12 +01:00
parent 2aa8c4c22c
commit 32550dcb77
4 changed files with 14 additions and 32 deletions
+14 -6
View File
@@ -103,11 +103,6 @@ void QtGraphicsView::ensureVisibleAnimated(const QRectF& rect, int xmargin, int
move->start();
}
void QtGraphicsView::setMouseWheelCallback(const std::function<void(QWheelEvent*)>& callback)
{
m_mouseWheelCallback = callback;
}
void QtGraphicsView::updateZoom(float delta)
{
float factor = 1.0f + 0.001f * delta;
@@ -213,7 +208,20 @@ void QtGraphicsView::keyReleaseEvent(QKeyEvent* event)
void QtGraphicsView::wheelEvent(QWheelEvent* event)
{
m_mouseWheelCallback(event);
bool zoomDefault = ApplicationSettings::getInstance()->getControlsGraphZoomOnMouseWheel();
bool shiftPressed = event->modifiers() == Qt::ShiftModifier;
if (zoomDefault != shiftPressed)
{
if (event->delta() != 0.0f)
{
updateZoom(event->delta());
}
}
else
{
QGraphicsView::wheelEvent(event);
}
}
void QtGraphicsView::contextMenuEvent(QContextMenuEvent* event)
-4
View File
@@ -1,7 +1,6 @@
#ifndef QT_GRAPHICS_VIEW_H
#define QT_GRAPHICS_VIEW_H
#include <functional>
#include <memory>
#include <QGraphicsView>
@@ -26,7 +25,6 @@ public:
void ensureVisibleAnimated(const QRectF& rect, int xmargin = 50, int ymargin = 50);
void setMouseWheelCallback(const std::function<void(QWheelEvent*)>& callback);
void updateZoom(float delta);
protected:
@@ -73,8 +71,6 @@ private:
QAction* m_exportGraphAction;
QAction* m_copyNodeNameAction;
std::function<void(QWheelEvent*)> m_mouseWheelCallback;
};
#endif // QT_GRAPHICS_VIEW_H