Refine editor action shell and add regression tests
This commit is contained in:
@@ -109,6 +109,8 @@
|
||||
- `Inspector` 的 component section header 菜单已开始改成 callback/router 驱动,而不是在 widget 层硬编码动作
|
||||
- `MenuBar` 的 File / View / Help / global shortcut 也开始继续下沉到 shared main-menu router
|
||||
- `Hierarchy / Project` 的 drag-drop payload、拖拽接收与部分选择语义也开始继续下沉到 shared action router
|
||||
- `Hierarchy / Project / Inspector / Console` 的空白点击、popup 请求、日志绘制与 interactive-change 边界也开始继续从 panel 下沉到 shared router/state
|
||||
- `MainMenu / Edit` 的菜单绘制、shortcut 触发与动作执行路径也开始继续合并成统一 router 入口
|
||||
|
||||
### 5. Dock / Layout 层
|
||||
|
||||
@@ -158,6 +160,7 @@
|
||||
- DX12 swapchain / render target / present / resize 已抽成 `Platform/D3D12WindowRenderer.h`
|
||||
- scene title 拼装已抽成 `Core/EditorWindowTitle.h`
|
||||
- crash filter / stderr redirect / logging sink 初始化已继续从 `Application.cpp` 抽离
|
||||
- editor context 初始化、ImGui backend/session 初始化、layer attach/detach 与 frame render 壳方法也已继续从 `Application::Initialize/Shutdown/Render` 主流程中拆出
|
||||
|
||||
## 主要面板状态
|
||||
|
||||
@@ -176,6 +179,7 @@
|
||||
- `Edit` 菜单与上下文快捷键开始共享同一套 edit action router
|
||||
- `File / View / Help / global shortcut` 已开始继续从 panel 下沉到 shared main-menu router
|
||||
- scene status 与 about dialog 已开始继续从 panel 下沉到共享 UI widget/dialog
|
||||
- `MenuBar` 已进一步退化为 router 驱动的薄壳,File/View/Help/Edit 的拼装继续从 panel 移出
|
||||
|
||||
仍待完成:
|
||||
|
||||
@@ -192,6 +196,9 @@
|
||||
- 重命名交互已从 panel 局部字段收口到 shared inline edit state
|
||||
- `Rename` 请求已能从 `MenuBar -> EventBus -> Hierarchy inline edit` 触发
|
||||
- entity drag payload / 目标接收 / root drop / selection click 语义已开始继续从 panel 下沉到 shared hierarchy router
|
||||
- hierarchy 空白点击清空选择与排序 popup 请求/菜单也已开始继续从 panel 下沉
|
||||
- hierarchy 背景 / entity context popup 与 root drop target 入口也已开始继续从 panel 下沉
|
||||
- rename commit 也已开始继续从 panel 直连 command 改成 shared hierarchy router 入口
|
||||
|
||||
仍待完成:
|
||||
|
||||
@@ -208,6 +215,8 @@
|
||||
- 创建文件夹弹窗已改成 shared popup state 驱动
|
||||
- `Back / Open / Delete` 已接 panel-focused keyboard action
|
||||
- asset drag payload / folder drop / 拖拽预览高亮已开始继续从 panel 下沉到 shared project router
|
||||
- item 选择 / item context 请求 / 空白区 context popup 请求也已开始继续从 panel 下沉
|
||||
- asset open 请求也已开始继续从 panel 直连 command 改成 shared project router 入口
|
||||
|
||||
仍待完成:
|
||||
|
||||
@@ -225,6 +234,7 @@
|
||||
- Add Component popup 已接 shared popup state
|
||||
- Add Component popup 菜单项组装已开始从 panel 下沉到 shared inspector action router
|
||||
- 组件 section header 的移除动作已开始从 widget 层硬编码迁回 inspector action router
|
||||
- selection 切换时的 interactive undo finalize、Add Component 按钮与 popup 绘制也已开始继续从 panel 下沉
|
||||
|
||||
仍待完成:
|
||||
|
||||
@@ -240,6 +250,7 @@
|
||||
- `Clear / Filter` 已接 action 层
|
||||
- console filter 状态已从 panel 裸布尔字段收成独立 state object
|
||||
- console toolbar action 与日志文本格式化已继续从 panel 下沉到共享层
|
||||
- log row 列表绘制与复制语义也已开始继续从 panel 下沉到 console router
|
||||
|
||||
仍待完成:
|
||||
|
||||
@@ -289,6 +300,15 @@
|
||||
7. 根据条件补最小回归测试或最小验证脚本
|
||||
重点验证 shortcut、undo、scene dirty/save switch、drag-drop/reparent。
|
||||
|
||||
当前新增验证:
|
||||
|
||||
- 已新增 `tests/editor/test_action_routing.cpp`
|
||||
- 已新增 `tests/editor/CMakeLists.txt` 与 `editor_tests` target
|
||||
- 已覆盖 `Hierarchy Edit route` 的 copy / paste / duplicate / delete / rename request
|
||||
- 已覆盖 `Project Edit route` 的 open / back / delete
|
||||
- 已覆盖 `scene dirty save + load` 后的 selection / undo reset
|
||||
- 已覆盖 `reparent` 的 parent 切换、cycle 拦截与 world position / scale 保持
|
||||
|
||||
## 下一阶段建议执行顺序
|
||||
|
||||
### 第一阶段
|
||||
|
||||
Reference in New Issue
Block a user