Thin node loader, Win32 wrappers, and canvas mode shells

This commit is contained in:
2026-06-17 00:10:39 +02:00
parent acee4db356
commit 371095770d
9 changed files with 302 additions and 289 deletions

View File

@@ -391,6 +391,10 @@ Current slice:
render-target validation, viewport/clear-color save-restore, and immediate
runtime request assembly out of the live node file and leaves
`src/node_stroke_preview.cpp` at 160 lines.
- `CanvasModeGrid` plus `ActionModeGrid` undo/redo now also live in
`src/legacy_canvas_mode_helpers.cpp` instead of staying inline in
`src/canvas_modes.cpp`, which leaves the live canvas-modes file as a
minimal shell.
- `NodeCanvas::init()` plus the remaining `NodeCanvas::draw()` outer shell now
also live in `src/legacy_node_canvas_draw_services.*` instead of staying
inline in `src/node_canvas.cpp`, which materially reduces the live node to a
@@ -908,6 +912,10 @@ Current slice:
base clone plumbing now also lives in `src/legacy_ui_node_lifecycle.*`
instead of staying inline in `src/node.cpp`, which materially thins another
coherent generic scene-graph shell without changing the public surface.
- `Node::load_internal(...)` now also routes through
`load_legacy_ui_node(...)` in `src/legacy_ui_node_loader.*`, which moves the
init/attribute-parse/create/child-load/loaded shell out of `src/node.cpp`
and leaves the remaining live node file thinner.
Write scope:
- `src/node.cpp`
@@ -1090,6 +1098,12 @@ Current slice:
directly in those method bodies
- retained Apple callback injection and broader `platform_legacy` singleton
reach are still open
- The remaining Win32 shell wrappers for close, async lock/swap,
stylus/FPS updates, VR start/stop, window-state save, and the
window-handle accessor now live in
`src/platform_windows/windows_platform_services.cpp` instead of
`src/main.cpp`, which leaves the live entry file as a thinner
startup/runtime dispatcher.
Write scope:
- `src/platform_apple/*`