fix: network zoom
This commit is contained in:
@@ -4,25 +4,9 @@
|
||||
#include <iostream>
|
||||
#include <qgraphicsview.h>
|
||||
|
||||
NetworkGraphicsScene::NetworkGraphicsScene(QGraphicsView *parent)
|
||||
NetworkGraphicsScene::NetworkGraphicsScene()
|
||||
: QGraphicsScene()
|
||||
{
|
||||
parent_ = parent;
|
||||
|
||||
}
|
||||
|
||||
void NetworkGraphicsScene::wheelEvent(QGraphicsSceneWheelEvent *wheelEvent)
|
||||
{
|
||||
std::cout << "delta: " << wheelEvent->delta() << "\n";
|
||||
int delta = wheelEvent->delta();
|
||||
if(delta > 0)
|
||||
{
|
||||
parent_->scale(1.1, 1.1);
|
||||
}
|
||||
else if(delta < 0)
|
||||
{
|
||||
parent_->scale(0.9, 0.9);
|
||||
}
|
||||
wheelEvent->accept();
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -6,10 +6,7 @@ class NetworkGraphicsScene
|
||||
: public QGraphicsScene
|
||||
{
|
||||
public:
|
||||
NetworkGraphicsScene(QGraphicsView *parent = nullptr);
|
||||
NetworkGraphicsScene();
|
||||
private:
|
||||
QGraphicsView* parent_;
|
||||
protected:
|
||||
void wheelEvent(QGraphicsSceneWheelEvent *wheelEvent) override;
|
||||
|
||||
};
|
||||
|
||||
@@ -68,3 +68,19 @@ void NetworkGraphicsView::mouseMoveEvent(QMouseEvent *mouseEvent)
|
||||
|
||||
}
|
||||
|
||||
void NetworkGraphicsView::wheelEvent(QWheelEvent *event)
|
||||
{
|
||||
std::cout << "delta: " << event->angleDelta().x() << "\n";
|
||||
std::cout << "delta: " << event->angleDelta().y() << "\n";
|
||||
int delta = event->angleDelta().y();
|
||||
if(delta > 0)
|
||||
{
|
||||
scale(1.1, 1.1);
|
||||
}
|
||||
else if(delta < 0)
|
||||
{
|
||||
scale(0.9, 0.9);
|
||||
}
|
||||
event->accept();
|
||||
}
|
||||
|
||||
|
||||
@@ -14,6 +14,7 @@ private:
|
||||
protected:
|
||||
void mouseMoveEvent(QMouseEvent *mouseEvent) override;
|
||||
void mousePressEvent(QMouseEvent *event) override;
|
||||
void wheelEvent(QWheelEvent *event) override;
|
||||
// void mouseReleaseEvent(QMouseEvent *event) override;
|
||||
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user