#pragma once #include "nmDefines.h" #include "ZxObjToolBase.h" #include "nmPlot_global.h" // 数值试井绘图对象之工具(基类) class NM_PLOT_EXPORT nmObjToolBase : public ZxObjToolBase { Q_OBJECT public: nmObjToolBase(); public: // 鼠标各种响应 virtual bool onLeftDown(const QPointF& pt); virtual bool onLeftUp(const QPointF& pt); virtual bool onMouseMove(const QPointF& pt); virtual bool onMouseWheel(const QPointF& pt, int delta); virtual bool onLeftDoubleClick(const QPointF& pt); // 绘制 virtual void onPaint(QPainter* painter, const ZxPaintParam& param); signals: // 鼠标交互完成(双击) void sigPtsFinished(QVector& vec); public: NM_Obj_Type getNOT(); protected: NM_Obj_Type m_oNot; //内部类型标识,不涉及序列化 };