55 lines
2.0 KiB
C++
55 lines
2.0 KiB
C++
#ifndef DIAGRAMEDITORSTRUCTCONTAINER_H
|
||
#define DIAGRAMEDITORSTRUCTCONTAINER_H
|
||
|
||
//组态划分后结构的容器,可包含分段母线及间隔、独立间隔、变压器等,以确定组态图空间结构
|
||
#include <QObject>
|
||
#include <QVector2D>
|
||
#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<int,QList<DiagramEditorBlockInfo>> getMapBlocksData(); //返回mapBlock中的数据
|
||
private:
|
||
|
||
QMap<int,QList<DiagramEditorBaseBlock*>> _mapBlocks; //容器中包含的对象列表,<pos,listBlocks> 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
|