#ifndef ELECTRICSVGITEM_H #define ELECTRICSVGITEM_H #include "graphicsBaseItem.h" #include 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(){}; virtual void loadSvg(QByteArray); //第二种load直接加载图片 virtual void updateMapSvg(QMap map); 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; QMap m_mapSvg; }; #endif