#ifndef DIAGRAMEDITORSTRUCTCONTAINER_H #define DIAGRAMEDITORSTRUCTCONTAINER_H //组态划分后结构的容器,可包含分段母线及间隔、独立间隔、变压器等,以确定组态图空间结构 #include #include #include "global.h" class DiagramEditorBaseBlock; class DiagramEditorStructContainer : public QObject { Q_OBJECT public: DiagramEditorStructContainer(QObject *parent = 0); virtual ~DiagramEditorStructContainer(); public: bool insertBlock(int,DiagramEditorBaseBlock*); auto& getBlockMap() {return _mapBlocks;} void setId(const QString& s) {sId = s;} QString getId() {return sId;} void setMidUpY(double d){dMidUpY = d;} double getMidUpY() {return dMidUpY;} void setMidDownY(double d){dMidDownY = d;} double getMidDownY() {return dMidDownY;} void setWidth(double d){dWidth = d;} double getWidth() {return dWidth;} void setHeight(double d){dHeight = d;} double getHeight() {return dHeight;} void setStartX(double d){dStartX = d;} double getStartX() {return dStartX;} void setStartY(double d){dStartY = d;} double getStartY() {return dStartY;} void setMaxUpH(double d){dMaxUpH = d;} double getMaxUpH() {return dMaxUpH;} void setMaxDownH(double d){dMaxDownH = d;} double getMaxDownH() {return dMaxDownH;} QMap> getMapBlocksData(); //返回mapBlock中的数据 void clearData(); private: QMap> _mapBlocks; //容器中包含的对象列表, pos当前容器中的位置:0上,1中上,2中下,3下 QString sId; double dMidUpY; //1母上边界 double dMidDownY; //2母下边界 double dStartX; //起始x double dStartY; //起始y double dWidth; //宽度 double dHeight; double dMaxUpH; //上方最大高度(1母线到上边界) double dMaxDownH; //下方最大高度(2母线到下边界) }; #endif