Extract node canvas events and preview/node geometry shells
This commit is contained in:
@@ -82,14 +82,29 @@ Current hotspot files:
|
||||
- `src/canvas.cpp`: 17 lines
|
||||
- `src/app_layout.cpp`: 125 lines
|
||||
- `src/canvas_modes.cpp`: 176 lines
|
||||
- `src/node.cpp`: 260 lines
|
||||
- `src/node.cpp`: 222 lines
|
||||
- `src/main.cpp`: 130 lines
|
||||
- `src/node_panel_brush.cpp`: 189 lines
|
||||
- `src/node_stroke_preview.cpp`: 280 lines
|
||||
- `src/node_canvas.cpp`: 219 lines
|
||||
- `src/node_stroke_preview.cpp`: 192 lines
|
||||
- `src/node_canvas.cpp`: 69 lines
|
||||
- `src/app.cpp`: 113 lines
|
||||
- `src/app_dialogs.cpp`: 168 lines
|
||||
|
||||
Latest slice:
|
||||
|
||||
- `NodeCanvas::handle_event()` now routes through
|
||||
`handle_legacy_node_canvas_event(...)` in
|
||||
`src/legacy_canvas_tool_services.*`, leaving `src/node_canvas.cpp` as a much
|
||||
thinner controller shell.
|
||||
- The remaining low-level `NodeStrokePreview` viewport/query and texture-slot
|
||||
plumbing now lives in
|
||||
`src/legacy_node_stroke_preview_runtime_services.*` instead of staying
|
||||
inline in `src/node_stroke_preview.cpp`.
|
||||
- The remaining generic `Node` geometry/state pocket for `SetSize(...)`,
|
||||
`SetMinSize(...)`, `SetMaxSize(...)`, and `SetPosition(const glm::vec2)` now
|
||||
lives in `src/legacy_ui_node_style.*` instead of staying inline in
|
||||
`src/node.cpp`.
|
||||
|
||||
Current architecture mismatches that must be treated as real blockers:
|
||||
|
||||
- `pp_platform_api` still compiles Apple implementation files instead of only
|
||||
@@ -262,6 +277,9 @@ Current architecture mismatches that must be treated as real blockers:
|
||||
pass planning, shader setup, and live render request assembly now also
|
||||
routes through `src/legacy_node_stroke_preview_runtime_services.*` instead
|
||||
of staying inline in `src/node_stroke_preview.cpp`, while
|
||||
the low-level preview GL dispatch and texture-slot binding pocket now also
|
||||
routes through `src/legacy_node_stroke_preview_runtime_services.*` instead
|
||||
of staying inline in `src/node_stroke_preview.cpp`, while
|
||||
`NodeStrokePreview` remaining mix-pass planning and execution now also route
|
||||
through `src/legacy_node_stroke_preview_draw_services.*`, which trims the
|
||||
last dedicated mix-orchestration pocket from `src/node_stroke_preview.cpp`,
|
||||
|
||||
@@ -235,8 +235,8 @@ Current slice:
|
||||
which trims another coherent setup pocket from
|
||||
`src/node_stroke_preview.cpp` even though worker/readback ownership and
|
||||
broader preview flow still remain inline.
|
||||
- `src/node_stroke_preview.cpp` is now 280 lines after moving the preview
|
||||
background-capture and stroke-frame planning pocket into
|
||||
- `src/node_stroke_preview.cpp` is now 192 lines after moving the remaining
|
||||
preview GL dispatch and texture-slot binding pocket into
|
||||
`legacy_node_stroke_preview_runtime_services.*`.
|
||||
- The remaining immediate preview pass shell in
|
||||
`NodeStrokePreview::draw_stroke_immediate()` now also routes through
|
||||
@@ -337,10 +337,10 @@ Current slice:
|
||||
route through `execute_node_canvas_draw_merged_pass(...)`, which trims
|
||||
another coherent merged draw-orchestration block from the live node even
|
||||
though the broader draw loop still remains inline.
|
||||
- `NodeCanvas::handle_event()` now also routes through the local
|
||||
`execute_node_canvas_handle_event(...)` helper, which trims another coherent
|
||||
input-routing block from `src/node_canvas.cpp` even though the node still
|
||||
owns broader canvas/controller behavior.
|
||||
- `NodeCanvas::handle_event()` now routes through
|
||||
`handle_legacy_node_canvas_event(...)` in
|
||||
`src/legacy_canvas_tool_services.*`, which moves the live input/controller
|
||||
pocket out of `src/node_canvas.cpp` and keeps the node on a thinner shell.
|
||||
- `NodeCanvas` restore/clear context, resize handling, camera reset, buffer
|
||||
creation, cursor visibility/update, tick, and destroy ownership now also
|
||||
live in `src/legacy_node_canvas_state_services.*` instead of staying inline
|
||||
@@ -352,6 +352,12 @@ Current slice:
|
||||
inline in `src/node_stroke_preview.cpp`, which materially thins the preview
|
||||
node around its runtime-facing shell even though live pass execution still
|
||||
remains.
|
||||
- The remaining low-level preview GL/runtime pocket for viewport queries,
|
||||
clear-color restore, texture-slot binding, mixer unbind, and
|
||||
destination/pattern texture plumbing now also lives in
|
||||
`src/legacy_node_stroke_preview_runtime_services.*` instead of staying
|
||||
inline in `src/node_stroke_preview.cpp`, which trims another coherent
|
||||
runtime-facing shell pocket from the live node.
|
||||
- The remaining live render/pass orchestration in
|
||||
`NodeStrokePreview::draw_stroke_immediate()` now also lives in
|
||||
`src/legacy_node_stroke_preview_draw_services.*` instead of staying inline in
|
||||
@@ -374,6 +380,11 @@ Current slice:
|
||||
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
|
||||
thinner controller surface around event routing and state wrappers.
|
||||
- The remaining generic node geometry/state pocket for `Node::SetSize(...)`,
|
||||
`SetMinSize(...)`, `SetMaxSize(...)`, and `SetPosition(const glm::vec2)`
|
||||
now also lives in `src/legacy_ui_node_style.*` instead of staying inline in
|
||||
`src/node.cpp`, which trims another coherent base scene-graph shell pocket
|
||||
without changing the public surface.
|
||||
|
||||
Write scope:
|
||||
- `src/node_stroke_preview.cpp`
|
||||
@@ -848,6 +859,12 @@ Current slice:
|
||||
`Node::GetRTL()` now also lives in `src/legacy_ui_node_style.*` instead of
|
||||
staying inline in `src/node.cpp`, which trims another coherent generic node
|
||||
shell pocket without changing the public surface.
|
||||
- The remaining geometry/state pocket for `Node::SetSize(...)`,
|
||||
`Node::SetMinSize(...)`, `Node::SetMaxSize(...)`, and
|
||||
`Node::SetPosition(const glm::vec2)` now also lives in
|
||||
`src/legacy_ui_node_style.*` instead of staying inline in `src/node.cpp`,
|
||||
which materially thins the live base shell by moving the cached size/position
|
||||
mutation and redraw signaling out of the node file.
|
||||
- The remaining generic `Node` lifecycle/state pocket for no-op lifecycle
|
||||
hooks, add/remove propagation, move construction, destruction cleanup, and
|
||||
base clone plumbing now also lives in `src/legacy_ui_node_lifecycle.*`
|
||||
|
||||
Reference in New Issue
Block a user