#ifndef ELECTRICFUNCTIONMODELSVGGROUP_H #define ELECTRICFUNCTIONMODELSVGGROUP_H #include "graphicsFunctionModelItem.h" #include class ElectricFunctionModelSvgItem; class ElectricFunctionModelSvgGroup :public GraphicsFunctionModelGroup { Q_OBJECT public: Q_PROPERTY(QFileInfo Image READ getImage_1 WRITE setImage_1) public: ElectricFunctionModelSvgGroup(const QRect &rect,QGraphicsItem *parent = 0); virtual ~ElectricFunctionModelSvgGroup(); void resize(int,double, double, const QPointF&) override; void updateCoordinate() override; void move(const QPointF&) override; virtual void addSvgItem(ElectricFunctionModelSvgItem* item); virtual void updateMapSvg(QMap map,QString sIndex = ""); //工程模property不含图片,额外存储 virtual void setMonitorDisplayInfo(QMap info) override; //将显示数据更新到子item中 virtual QFileInfo getImage_1() const; virtual void setImage_1(QFileInfo); protected: virtual QPainterPath shape() override; virtual void editShape(int, const QPointF&) override; virtual void paint(QPainter*, const QStyleOptionGraphicsItem*, QWidget*) override; protected: virtual void updateCurState(MonitorItemState e) override; protected: QRectF m_lastBoudingRect; //记录上一时刻的boundingRect QMap m_mapSvg; }; #endif