Refactor layout pipeline, add KEY5 regression, and fix tooltip hide

This commit is contained in:
Codex
2026-04-10 23:26:25 +08:00
parent 241a564095
commit b7ad960518
13 changed files with 719 additions and 290 deletions
+7
View File
@@ -43,6 +43,8 @@ public:
void setX(int x)override;
void setY(int y)override;
void setWidth(int width) override;
void setHeight(int height) override;
//绘制容器及其子控件
void draw() override;
@@ -73,7 +75,12 @@ public:
void commitManagedRepaint() override;
//获取子控件列表
std::vector<std::unique_ptr<Control>>& getControls() { return controls; }
protected:
// 统一解算后,按当前运行态矩形把所有受管理子控件重新映射到新的世界坐标。
void applyResolvedLayoutRect(const StellarX::ResolvedLayoutRect& rect) override;
private:
// 容器自己的几何变化后,需要统一刷新所有子控件的运行态矩形。
void relayoutManagedChildren();
//用来检查对话框是否模态,此控件不做实现
bool model() const override { return false; };
};