DiagramDesigner/diagramCavas/include/graphicsItem/electricSvgItem.h

29 lines
809 B
C++

#ifndef ELECTRICSVGITEM_H
#define ELECTRICSVGITEM_H
#include "graphicsBaseItem.h"
#include <QGraphicsSvgItem>
class ElectricSvgItem :public GraphicsProjectModelItem
{
Q_OBJECT
public:
ElectricSvgItem(const QRect &rect, bool genNewPort = true,QGraphicsItem *parent = 0); //genNewPort生成新接线点
virtual ~ElectricSvgItem();
void resize(int,double, double, const QPointF&);
void updateCoordinate();
void move(const QPointF&);
virtual void loadSvg(const QByteArray& data);
protected:
virtual QPainterPath shape();
virtual void editShape(int, const QPointF&);
virtual void paint(QPainter*, const QStyleOptionGraphicsItem*, QWidget*);
protected:
QRectF m_lastBoudingRect; //记录上一时刻的boundingRect
QSvgRenderer* m_pRender;
};
#endif