maptool:
报错,没实现;
This commit is contained in:
61
HPPA/MapToolPan.cpp
Normal file
61
HPPA/MapToolPan.cpp
Normal file
@ -0,0 +1,61 @@
|
||||
#include "stdafx.h"
|
||||
#include "MapToolPan.h"
|
||||
#include "ImageViewer.h"
|
||||
#include <QMouseEvent>
|
||||
#include <QGraphicsView>
|
||||
|
||||
MapToolPan::MapToolPan(Mapcavas* canvas, QObject* parent)
|
||||
: MapTool(canvas, parent)
|
||||
{
|
||||
setCursor(Qt::OpenHandCursor);
|
||||
}
|
||||
|
||||
void MapToolPan::activate()
|
||||
{
|
||||
MapTool::activate();
|
||||
if (canvas())
|
||||
{
|
||||
canvas()->setDragMode(QGraphicsView::NoDrag);
|
||||
}
|
||||
}
|
||||
|
||||
void MapToolPan::deactivate()
|
||||
{
|
||||
m_dragging = false;
|
||||
MapTool::deactivate();
|
||||
}
|
||||
|
||||
void MapToolPan::canvasMousePressEvent(QMouseEvent* e)
|
||||
{
|
||||
if (e->button() == Qt::LeftButton)
|
||||
{
|
||||
m_dragging = true;
|
||||
m_lastPos = e->pos();
|
||||
if (canvas())
|
||||
{
|
||||
canvas()->viewport()->setCursor(Qt::ClosedHandCursor);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void MapToolPan::canvasMouseMoveEvent(QMouseEvent* e)
|
||||
{
|
||||
if (m_dragging && canvas())
|
||||
{
|
||||
QPointF delta = canvas()->mapToScene(e->pos()) - canvas()->mapToScene(m_lastPos);
|
||||
canvas()->translate(delta.x(), delta.y());
|
||||
m_lastPos = e->pos();
|
||||
}
|
||||
}
|
||||
|
||||
void MapToolPan::canvasMouseReleaseEvent(QMouseEvent* e)
|
||||
{
|
||||
if (e->button() == Qt::LeftButton)
|
||||
{
|
||||
m_dragging = false;
|
||||
if (canvas())
|
||||
{
|
||||
canvas()->viewport()->setCursor(Qt::OpenHandCursor);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user