UI 重构:文档纳入 TabBar 迁移(P3 完成 2/5)

- Documents/UI_Refactor_Progress.md:阶段看板 P3 标记为「Toolbar + TabBar 已完成」;
  新增第 6 条提交记录(TabBar 新旧实现对照 + 手势语义未变的说明 + 8 场景哈希 + 4 条交互断言)。
- Documents/UI_Refactor_Report.md:交付表 P3 改为 2/5;关键数字(已迁移组件、产物 886,784 B);
  提交清单加入 cd3a3fa;新增 5.1 节描述 TabBar 迁移与双轨验证。

验证:make release / make debug 零警告;Tools/uicheck 69/69;8 场景像素哈希与迁移前一致。
This commit is contained in:
DeepSeek V4.1 Flash committed 2026-10-28 12:42:31 +08:00
1 parent c3b79a6d2c
commit f242fb076c
2 files changed
+36 -4

No files matched your search

+16 -1
View File
@@ -27,7 +27,7 @@ git log --oneline main -1 # df715a0(main 未被任何重构提交触
| **P0** | 离屏回归网 `Tools/uicheck`(入库) | ✅ 完成(62 项断言全绿) |
| **P1** | `UiLayout` + `UiWidget` 基础层 | ✅ 完成(编译零警告,`uicheck` 覆盖) |
| **P2** | `PlotViewPaint.cpp` 零行为分片 | ✅ 完成(**逐像素 0 差异**,见 §2/§3) |
| **P3** | 迁移 chrome(Toolbar / TabBar / 菜单 / 拾色器 / 列表行) | 🔄 **Toolbar 已完成**,其余待做 |
| **P3** | 迁移 chrome(Toolbar / TabBar / 菜单 / 拾色器 / 列表行) | 🔄 **Toolbar + TabBar 已完成**,菜单/拾色器/列表行待做 |
| **P4** | 迁移 5 个浮动面板 | ⏳ 待做 |
| **P5** | 波形管线包成叶子 surface + 共享 DIB | 🔄 **UiSurface + DIB 已完成**;脏区并集待做 |
@@ -218,6 +218,21 @@ Tools/uicheck/uicheck.exe # 62 passed, 0 failed
---
### 6. `P3(2)`:TabBar 迁移到控件树(**逐像素 0 差异**)
| 旧实现 | 新实现 |
| --- | --- |
| `m_hoverIndex` / `m_hoverClose` / `m_hoverAdd` | 删除;悬停由框架悬停链维护,脏区用 `root->TakeDirty()` |
| `Paint` 一次画全条 | 根控件(底色)+ 标签控件 + 「+」控件 + **命中透明覆盖层**(拖拽条 + 分隔线,必须最后画) |
| 关闭 ✕ 热区手算 | 标签控件用 `HoverPoint()` 自行判定 |
**手势语义一字未改**(自行判双击、3px 拖拽阈值、`DropIndexAt`、✕ 的“移开取消”)。
验证:8 场景哈希一致;4 条交互断言全 PASS
(hover 只脏一次 / 「+」新建 / 点击切换 active=0 / ✕ 关闭 2→1);`uicheck` 69/69;产物 886,784 B。
---
## 下一步(接手者请从这里开始)
1. **P3 续**:`TabBar`(标签 + 「+」+ 重命名内联 + 拖拽排序)→ `PopupMenu` / `ColorPicker` 条目行。