Route stroke panel view through app core

This commit is contained in:
2026-06-05 01:01:56 +02:00
parent 75fd7faeb0
commit d5403f082c
8 changed files with 556 additions and 80 deletions

View File

@@ -265,12 +265,16 @@ Known local toolchain state:
color, texture, preset, stroke-refresh, brush texture-list, and stroke-control
execution. `NodePanelBrushPreset` now consumes `pp_app_core` preset-list
planning and `BrushPresetListServices` execution for add/select/move/remove/
clear before the retained legacy bridge mutates child nodes. These paths stay
on the `pp_app_core` contracts while
clear before the retained legacy bridge mutates child nodes.
`NodePanelStroke::update_controls()` now consumes the tested `pp_app_core`
stroke-panel view model for brush float settings, toggles, blend modes, and
thumbnail paths, and `pano_cli plan-brush-stroke-panel-view` exposes that
projection for automation. These paths stay on the `pp_app_core` contracts
while
legacy `Brush`, `Canvas::I`, image load/save, `NodePanelBrush`,
`NodePanelStroke`, quick/color refreshes, direct preset child-node mutation,
and the temporary `NodePanelBrush` friend adapter remain tracked by
`DEBT-0023`.
brush thumbnail/popup ownership, and the temporary `NodePanelBrush` friend
adapter remain tracked by `DEBT-0023`.
- `src/legacy_grid_ui_services.*` is the current UI-shell bridge for grid
heightmap picker/load/reload/clear, lightmap render, and heightmap commit
execution. It keeps those live paths on the `pp_app_core` contracts while