#pragma once #include "nmObjPointTool.h" // 数值试井绘图对象之工具(线) class NM_PLOT_EXPORT nmObjLineTool : public nmObjPointTool { Q_OBJECT public: nmObjLineTool(); public: // 鼠标各种响应 virtual bool onLeftDown(const QPointF& pt) override; virtual bool onLeftUp(const QPointF& pt) override; // virtual bool onRightDown(const QPointF& pt); // virtual bool onRightUp(const QPointF& pt); virtual bool onMouseMove(const QPointF& pt) override; virtual bool onMouseWheel(const QPointF& pt, int delta) override; virtual bool onLeftDoubleClick(const QPointF& pt) override; // 绘制 virtual void onPaint(QPainter* painter, const ZxPaintParam& param) override; protected: // 根据鼠标当前选择情况确定不同的光标类型 virtual Qt::CursorShape getCursorBy(const int& nOption, const int& nSubIndex) override; protected: // 鼠标点缓存 QVector m_vecPoints; };