GridFrame/diagramCavas/include/diagramEditor/editorLayoutConfig.h

33 lines
935 B
C++

#include "common/core_model/diagram.h"
// layout_config.h
/********editor布局配置*******/
class LayoutConfig {
public:
LayoutConfig(int layoutCode = 41) {
parseLayoutCode(layoutCode);
}
Direction mainDirection() const { return m_mainDir; }
Direction subDirection() const { return m_subDir; }
int verticalSpacing() const { return m_verticalSpacing; }
int horizontalSpacing() const { return m_horizontalSpacing; }
void setSpacing(int vertical, int horizontal) {
m_verticalSpacing = vertical;
m_horizontalSpacing = horizontal;
}
private:
void parseLayoutCode(int code) {
m_mainDir = static_cast<Direction>(code / 10);
m_subDir = static_cast<Direction>(code % 10);
}
Direction m_mainDir = Direction::Down;
Direction m_subDir = Direction::Right;
int m_verticalSpacing = 50; // 默认值
int m_horizontalSpacing = 50; // 默认值
};