Extract draw toolbar and thin NodeCanvas and Win32 shell
This commit is contained in:
@@ -80,13 +80,13 @@ What is still carrying too much live ownership:
|
||||
Current hotspot files:
|
||||
|
||||
- `src/canvas.cpp`: 2645 lines
|
||||
- `src/app_layout.cpp`: 353 lines
|
||||
- `src/app_layout.cpp`: 285 lines
|
||||
- `src/canvas_modes.cpp`: 1798 lines
|
||||
- `src/node.cpp`: 1594 lines
|
||||
- `src/main.cpp`: 487 lines
|
||||
- `src/main.cpp`: 434 lines
|
||||
- `src/node_panel_brush.cpp`: 1197 lines
|
||||
- `src/node_stroke_preview.cpp`: 890 lines
|
||||
- `src/node_canvas.cpp`: 910 lines
|
||||
- `src/node_canvas.cpp`: 881 lines
|
||||
- `src/app.cpp`: 502 lines
|
||||
- `src/app_dialogs.cpp`: 142 lines
|
||||
|
||||
@@ -129,7 +129,10 @@ Current architecture mismatches that must be treated as real blockers:
|
||||
`make_legacy_canvas_draw_merge_layer_path_gl_execution(...)` even though the
|
||||
remaining draw lambdas and broader node draw loop still live in
|
||||
`src/node_canvas.cpp`, where the post-draw/display-resolve tail now also
|
||||
routes through `execute_node_canvas_draw_merge_tail(...)`.
|
||||
routes through `execute_node_canvas_draw_merge_tail(...)`, while the
|
||||
unmerged-path onion-range planning, plane filtering, per-layer visit
|
||||
handling, and per-visit layer-path execution now also route through
|
||||
`execute_legacy_canvas_draw_unmerged_node_canvas_shell(...)`.
|
||||
- `app_layout.cpp` and `app_dialogs.cpp` are still mixed shell/controller files
|
||||
rather than thin composition/binding surfaces, even though tools-menu binding
|
||||
plus nested panels/options submenu wiring now live in
|
||||
@@ -146,8 +149,9 @@ Current architecture mismatches that must be treated as real blockers:
|
||||
binding now also lives in `src/app_layout_edit_menu.cpp` and
|
||||
`App::init_menu_edit()` is now a thin call-through, while UI-direction and
|
||||
persisted floating/docked panel-state ownership now also live in
|
||||
`src/app_layout_ui_state.cpp`, and `src/app_layout.cpp` is now mostly
|
||||
layout/bootstrap composition, while the
|
||||
`src/app_layout_ui_state.cpp`, while draw-toolbar binding now also lives in
|
||||
`src/app_layout_draw_toolbar.cpp`, and `src/app_layout.cpp` is now mostly
|
||||
brush-refresh and layout/bootstrap composition, while the
|
||||
informational overlay opener family now also lives in
|
||||
`src/app_dialogs_info_openers.cpp` and the corresponding `App::dialog_*`
|
||||
entrypoints are thinner, while the export/video/PPBR dialog family now also
|
||||
@@ -195,7 +199,9 @@ Current architecture mismatches that must be treated as real blockers:
|
||||
`src/platform_windows/windows_bootstrap_helpers.*` for runtime-data
|
||||
discovery, startup-state initialization, window creation, pixel-format
|
||||
setup, GL loader init, runtime-info logging, and core-context upgrade
|
||||
sequencing, while the Win32 window procedure and retained message-handling
|
||||
sequencing, while BugTrap/SEH recovery setup now also lives in
|
||||
`src/platform_windows/windows_bootstrap_helpers.cpp` instead of
|
||||
`src/main.cpp`, while the Win32 window procedure and retained message-handling
|
||||
shell now also live in `src/platform_windows/windows_window_shell.*`
|
||||
instead of `src/main.cpp`, which materially thins `src/main.cpp` even
|
||||
though broader entrypoint/runtime composition still remains there,
|
||||
|
||||
@@ -225,6 +225,11 @@ Current slice:
|
||||
`execute_legacy_canvas_draw_unmerged_shell(...)`, which removes another
|
||||
coherent orchestration block from `NodeCanvas::draw()` even though the
|
||||
broader node draw loop still lives in `src/node_canvas.cpp`.
|
||||
- `NodeCanvas` unmerged-path onion-range planning, plane filtering, per-layer
|
||||
visit handling, and per-visit layer-path execution now also route through
|
||||
`execute_legacy_canvas_draw_unmerged_node_canvas_shell(...)`, which trims
|
||||
another outer draw-shell block even though the broader node draw loop still
|
||||
lives in `src/node_canvas.cpp`.
|
||||
|
||||
Write scope:
|
||||
- `src/node_stroke_preview.cpp`
|
||||
@@ -303,7 +308,7 @@ targets look like helpers under one old monolith.
|
||||
Status: In Progress
|
||||
|
||||
Why now:
|
||||
`src/app_layout.cpp` is still a 353-line mixed file that builds menus,
|
||||
`src/app_layout.cpp` is still a 285-line mixed file that builds menus,
|
||||
attaches callbacks, computes planner inputs, and mutates UI state directly.
|
||||
|
||||
Current slice:
|
||||
@@ -333,6 +338,9 @@ Current slice:
|
||||
- UI-direction plus persisted floating/docked panel-state ownership now also
|
||||
lives in `src/app_layout_ui_state.cpp`, and `src/app_layout.cpp` is down to
|
||||
the remaining draw-toolbar, brush-refresh, and layout/bootstrap composition.
|
||||
- Draw-toolbar binding now also lives in `src/app_layout_draw_toolbar.cpp`, and
|
||||
`src/app_layout.cpp` is down to the remaining brush-refresh and
|
||||
layout/bootstrap composition.
|
||||
|
||||
Write scope:
|
||||
- `src/app_layout.cpp`
|
||||
@@ -498,6 +506,9 @@ Current slice:
|
||||
discovery, startup-state initialization, window creation, pixel-format
|
||||
setup, GL loader init, runtime-info logging, and core-context upgrade
|
||||
sequencing
|
||||
- BugTrap/SEH recovery setup now also lives in
|
||||
`src/platform_windows/windows_bootstrap_helpers.cpp` instead of
|
||||
`src/main.cpp`
|
||||
- the Win32 window procedure and retained message-handling shell now also live
|
||||
in `src/platform_windows/windows_window_shell.*` instead of `src/main.cpp`,
|
||||
which materially thins the entry file even though broader runtime/entrypoint
|
||||
|
||||
Reference in New Issue
Block a user