Extract brush refresh and thin unmerged NodeCanvas pass
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`: 285 lines
|
||||
- `src/app_layout.cpp`: 229 lines
|
||||
- `src/canvas_modes.cpp`: 1798 lines
|
||||
- `src/node.cpp`: 1594 lines
|
||||
- `src/main.cpp`: 434 lines
|
||||
- `src/main.cpp`: 390 lines
|
||||
- `src/node_panel_brush.cpp`: 1197 lines
|
||||
- `src/node_stroke_preview.cpp`: 890 lines
|
||||
- `src/node_canvas.cpp`: 881 lines
|
||||
- `src/node_canvas.cpp`: 831 lines
|
||||
- `src/app.cpp`: 502 lines
|
||||
- `src/app_dialogs.cpp`: 142 lines
|
||||
|
||||
@@ -132,7 +132,10 @@ Current architecture mismatches that must be treated as real blockers:
|
||||
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(...)`.
|
||||
`execute_legacy_canvas_draw_unmerged_node_canvas_shell(...)`, while the
|
||||
broader unmerged cache/viewport/background/composite pass setup now also
|
||||
routes through
|
||||
`execute_legacy_canvas_draw_unmerged_node_canvas_pass(...)`.
|
||||
- `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
|
||||
@@ -150,8 +153,9 @@ Current architecture mismatches that must be treated as real blockers:
|
||||
`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`, 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
|
||||
`src/app_layout_draw_toolbar.cpp`, while brush-refresh now also lives in
|
||||
`src/app_layout_brush.cpp`, and `src/app_layout.cpp` is now mostly
|
||||
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
|
||||
@@ -175,9 +179,9 @@ Current architecture mismatches that must be treated as real blockers:
|
||||
retained local state object instead of separate process-wide globals, the
|
||||
Win32 async GL/context lock state now lives under
|
||||
`src/platform_windows/windows_platform_services.cpp` instead of `main.cpp`
|
||||
retained state, the main-thread queued task state now sits behind a narrow
|
||||
retained helper instead of `RetainedState.main_tasklist` /
|
||||
`main_task_mutex`, the canvas async worker now sits behind a named retained
|
||||
retained state, the main-thread queued task state now lives under
|
||||
`src/platform_windows/windows_platform_services.cpp` instead of staying in
|
||||
`src/main.cpp`, the canvas async worker now sits behind a named retained
|
||||
local worker-state helper instead of a bare static accessor, the
|
||||
prepared-file worker and the canvas async import/export/save/open worker now
|
||||
live under `AppRuntime` instead of retained static app-events/canvas
|
||||
|
||||
@@ -230,6 +230,11 @@ Current slice:
|
||||
`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`.
|
||||
- `NodeCanvas` broader unmerged cache/viewport/background/composite pass setup
|
||||
now also routes through
|
||||
`execute_legacy_canvas_draw_unmerged_node_canvas_pass(...)`, which removes
|
||||
another coherent outer-shell block even though the broader node draw loop
|
||||
still lives in `src/node_canvas.cpp`.
|
||||
|
||||
Write scope:
|
||||
- `src/node_stroke_preview.cpp`
|
||||
@@ -308,7 +313,7 @@ targets look like helpers under one old monolith.
|
||||
Status: In Progress
|
||||
|
||||
Why now:
|
||||
`src/app_layout.cpp` is still a 285-line mixed file that builds menus,
|
||||
`src/app_layout.cpp` is still a 229-line mixed file that builds menus,
|
||||
attaches callbacks, computes planner inputs, and mutates UI state directly.
|
||||
|
||||
Current slice:
|
||||
@@ -341,6 +346,8 @@ Current slice:
|
||||
- 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.
|
||||
- Brush-refresh now also lives in `src/app_layout_brush.cpp`, and
|
||||
`src/app_layout.cpp` is down to the remaining layout/bootstrap composition.
|
||||
|
||||
Write scope:
|
||||
- `src/app_layout.cpp`
|
||||
@@ -483,8 +490,9 @@ Current slice:
|
||||
`src/platform_windows/windows_platform_services.cpp` instead of `main.cpp`
|
||||
retained state, and `main.cpp` only seeds that platform-owned context handle
|
||||
pair during initialization and context recreation
|
||||
- `main.cpp` main-thread queued task state now sits behind a narrow retained
|
||||
helper instead of `RetainedState.main_tasklist` / `main_task_mutex` directly
|
||||
- `main.cpp` main-thread queued task state now lives under
|
||||
`src/platform_windows/windows_platform_services.cpp` instead of staying in
|
||||
the entry TU
|
||||
- Win32 pointer API loading, stylus/ink timer ownership and decay, `WT_PACKET`
|
||||
reset, and `WM_POINTERUPDATE` pen/touch handling now live in
|
||||
`src/platform_windows/windows_stylus_input.cpp` instead of `src/main.cpp`,
|
||||
|
||||
Reference in New Issue
Block a user