DiagramDesigner/include/graphicsItem/itemPort.h

32 lines
752 B
C++

#ifndef ITEMPORT_H
#define ITEMPORT_H
#include "graphicsItem/itemControlHandle.h"
class ElectricConnectLineItem;
class ItemPort : public ItemControlHandle
{
Q_OBJECT
public:
ItemPort(QGraphicsItem *parent);
virtual ~ItemPort();
public:
void setPortPos(PortPos p){_pos = p;}
PortPos portPos() const {return _pos;}
void setConnect(ElectricConnectLineItem* ptr){_ptr = ptr;}
void disConnect(){_ptr = nullptr;}
bool connected() const {return _ptr == nullptr?false:true;}
ElectricConnectLineItem* getConnectPtr() const {return _ptr;}
protected:
virtual void paint(QPainter*, const QStyleOptionGraphicsItem*, QWidget*) override;
private:
PortPos _pos;
ElectricConnectLineItem* _ptr;
};
#endif