DiagramDesigner/diagramCavas/include/util/creatingSelector.h

48 lines
1.1 KiB
C
Raw Normal View History

2024-12-03 20:07:25 +08:00
/**
*\file creatingSelector.h
*
*\brief selector
*
*\author dsc
*/
#ifndef CREATINGSELECTOR_H
#define CREATINGSELECTOR_H
#include "baseSelector.h"
#include "global.h"
enum CreatingMethod
{
CM_drag, //多拽,默认的创建方式
CM_click //单击点选,如多边形、线段等
};
class GraphicsBaseItem;
class DesignerScene;
class CreatingSelector : public BaseSelector
{
Q_OBJECT
public:
2025-02-06 16:36:50 +08:00
explicit CreatingSelector(FixedPortsModel* model,QObject *parent = 0);
2024-12-03 20:07:25 +08:00
virtual ~CreatingSelector();
public:
virtual void mousePressEvent(QGraphicsSceneMouseEvent*, DesignerScene*);
virtual void mouseMoveEvent(QGraphicsSceneMouseEvent*, DesignerScene*);
virtual void mouseReleaseEvent(QGraphicsSceneMouseEvent*, DesignerScene*);
2025-03-28 18:08:21 +08:00
void setCreatingItem(modelStateInfo& info) { m_creatingItemInfo=info; }
2024-12-03 20:07:25 +08:00
private:
CreatingMethod m_creatingMethod;
2025-03-28 18:08:21 +08:00
modelStateInfo m_creatingItemInfo;
2024-12-03 20:07:25 +08:00
GraphicsBaseItem* m_pCreatingItem;
QPointF m_scalBasePoint;
};
#endif