实验性功能面板完善 + 预览曲线绘制管线性能优化 + UI主题配色 + 绘制效率及部分遗留问题修复 #2

Merged
LuChiChick merged 13 commits from UI_Refactor into main 2026-11-02 11:59:00 +00:00
Showing only changes of commit 334015c1a9 - Show all commits
+12 -4
View File
@@ -9027,20 +9027,28 @@ rendercheck 8 个场景哈希与基线完全一致;make release / make debug
### 5. 验证 ### 5. 验证
``` ```
.preflight/bugcheck.exe 59/59 .preflight/bugcheck.exe 73/73
A1 空闲 0.7ms · A2 平移 2.5ms · A3 双光标 2.4ms · A4 自由标记光标 5.2ms A1 空闲 0.7ms · A2 中键平移 2.6ms · A2b 左键选区拖动 0.86ms
A5 中心轴拖动 6.6ms(修前 29.8ms) A3 双光标 2.4~2.6ms · A4 自由标记光标 5.2ms
A5 中心轴拖动 6.5ms(修前 29.8ms)
A5b 分解:面板开 5.7ms / 面板关 4.9ms / 无光标 7.2ms;面板 460.5px(修前 9996px) A5b 分解:面板开 5.7ms / 面板关 4.9ms / 无光标 7.2ms;面板 460.5px(修前 9996px)
B 组名展开/收起(283 行):行集合 0 ↔ 283、签名自洽 B 组名展开/收起(283 行):行集合 0 ↔ 283、签名自洽
B3 真实消息路径(WM_LBUTTONDOWN/UP + WM_TIMER + WM_PAINT):展开 90 帧 / 收起 95 帧 B3 真实消息路径(WM_LBUTTONDOWN/UP + WM_TIMER + WM_PAINT):展开 90 帧 / 收起 95 帧
B5 快速连点 3 次 / 动画中途反向:三角与行集合始终一致 B5 快速连点 3 次 / 动画中途反向:三角与行集合始终一致
C 中心轴面板:未勾选条目栏点击无效 / 复选框启用 / 整行收起展开 / C 中心轴面板:未勾选条目栏点击无效 / 复选框启用 / 整行收起展开 /
拖滑块 90% → 45 点 / 复位 → 5 点且上限 50 / 滚轮滚动 60px 拖滑块 90% → 45 点 / 点数值输入上限 100 生效(m_editMeanCenter 正确)/
复位 → 5 点且上限 50 / 滚轮滚动 60px / 内容超高时出现滚动条
D 唯一标签页关闭 → 「视图 1」+ 全折起 + 无选中;手动新建同样 D 唯一标签页关闭 → 「视图 1」+ 全折起 + 无选中;手动新建同样
E **用户复现场景**:两个文件合并成一个网格 + 自由标记(含跟随光标)开启后,
用真实消息路径点组名展开:109 帧、**平均 2.75ms/帧**、最坏 16.8ms、仅 1 帧超 16ms;
**每一帧**三角状态与行集合都一致;列表墨迹 7922(收起)→ 70037(展开)→ 7922(再收起)
.preflight/panelcheck.exe 71/71 markercheck.exe 13/13 ringcheck.exe 6/6 .preflight/panelcheck.exe 71/71 markercheck.exe 13/13 ringcheck.exe 6/6
make release / make debug 零 warning make release / make debug 零 warning
``` ```
⚠️ **A5b 的取值方式**:面板开/关 + 统计开/关 四种组合各测 10 帧取平均。`panel closed` 仍保留
`edgeCenter = true`(统计照跑),这样才能把"面板绘制"与"统计推进"的代价分开。
### 6. 踩坑 ### 6. 踩坑
* ⚠️⚠️ **`PaintEdgeCursor` 的"笨重"必须先分段测量**:本轮一开始把 30ms 归因于"统计扫描" * ⚠️⚠️ **`PaintEdgeCursor` 的"笨重"必须先分段测量**:本轮一开始把 30ms 归因于"统计扫描"