Expose layout API and refresh regression docs

This commit is contained in:
Codex
2026-05-09 19:15:23 +08:00
parent 738cf035bb
commit 2388f22c99
21 changed files with 2491 additions and 367 deletions
+24
View File
@@ -177,12 +177,36 @@ public:
void setLayoutMode(StellarX::LayoutMode layoutMode_);
// 设置旧版双锚点输入,并映射到内部统一 LayoutSpec
void setAnchor(StellarX::Anchor anchor_1, StellarX::Anchor anchor_2);
// 直接设置水平轴布局规格。
// 调用该接口后会自动切换到 AnchorToEdges 布局模式;
// 这是新布局模型的公开入口,后设置者会覆盖旧 setAnchor() 对水平轴的映射结果。
void setHorizontalLayoutSpec(const StellarX::AxisLayoutSpec& spec);
// 直接设置垂直轴布局规格。
// 调用该接口后会自动切换到 AnchorToEdges 布局模式;
// 这是新布局模型的公开入口,后设置者会覆盖旧 setAnchor() 对垂直轴的映射结果。
void setVerticalLayoutSpec(const StellarX::AxisLayoutSpec& spec);
// 设置水平轴锚定边集合(left / right)。
void setHorizontalAnchors(bool left, bool right);
// 设置垂直轴锚定边集合(top / bottom)。
void setVerticalAnchors(bool top, bool bottom);
// 设置水平轴尺寸策略(Stretch / FixedSize)。
void setHorizontalSizePolicy(StellarX::AxisSizePolicy policy);
// 设置垂直轴尺寸策略(Stretch / FixedSize)。
void setVerticalSizePolicy(StellarX::AxisSizePolicy policy);
// 设置水平轴固定尺寸位移策略(Start / End / Center / Proportional)。
void setHorizontalAlignPolicy(StellarX::AxisAlignPolicy policy);
// 设置垂直轴固定尺寸位移策略(Start / End / Center / Proportional)。
void setVerticalAlignPolicy(StellarX::AxisAlignPolicy policy);
// 获取旧版锚点 1(兼容读取入口)
StellarX::Anchor getAnchor_1() const;
// 获取旧版锚点 2(兼容读取入口)
StellarX::Anchor getAnchor_2() const;
// 获取旧版布局模式
StellarX::LayoutMode getLayoutMode() const;
// 获取水平轴布局规格;返回的是当前生效的新模型状态,不要求可逆回旧 anchor 语义。
StellarX::AxisLayoutSpec getHorizontalLayoutSpec() const;
// 获取垂直轴布局规格;返回的是当前生效的新模型状态,不要求可逆回旧 anchor 语义。
StellarX::AxisLayoutSpec getVerticalLayoutSpec() const;
// 获取内部统一布局规格;供 Window / Canvas 等统一解算入口使用。
const StellarX::LayoutSpec& getLayoutSpec() const;
// 获取控件能力边界;用于判断某个轴是否允许 Stretch。