maptool:

报错,没实现;
This commit is contained in:
tangchao0503
2026-03-11 18:09:38 +08:00
parent ece7a34bfb
commit 0b2744656b
12 changed files with 517 additions and 9 deletions

61
HPPA/MapToolPan.cpp Normal file
View 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);
}
}
}