/** *\file connectingSelector.h * *\brief 用来实现图元连接的selector * *\author by */ #ifndef CONNECTINGSELECTOR_H #define CONNECTINGSELECTOR_H #include "baseSelector.h" class GraphicsBaseItem; class ConnectingSelector : public BaseSelector { Q_OBJECT public: explicit ConnectingSelector(FixedPortsModel* model,QObject *parent = 0); virtual ~ConnectingSelector(); public: bool targetCouldConnect(GraphicsBaseItem* p,QPointF pos); void setTargetHighLight(bool val); //设置目标高亮 void createConnectLline(GraphicsBaseItem* connecting,GraphicsBaseItem* touched,DesignerScene* scene); public: void mousePressEvent(QGraphicsSceneMouseEvent*, DesignerScene*); void mouseMoveEvent(QGraphicsSceneMouseEvent*, DesignerScene*); void mouseReleaseEvent(QGraphicsSceneMouseEvent*, DesignerScene*); private: GraphicsBaseItem* m_pConnectingItem; GraphicsBaseItem* m_pTouchedItem; //连线时接触的对象 bool m_bReadyConnect; //准备连接 }; #endif