diff --git a/cmake/PanoPainterSources.cmake b/cmake/PanoPainterSources.cmake index d7834ea..65a89bf 100644 --- a/cmake/PanoPainterSources.cmake +++ b/cmake/PanoPainterSources.cmake @@ -28,30 +28,12 @@ set(PP_LEGACY_APP_SOURCES src/node_border.cpp src/node_button.cpp src/node_button_custom.cpp - src/node_canvas.cpp src/node_checkbox.cpp - src/node_color_quad.cpp - src/node_colorwheel.cpp src/node_combobox.cpp - src/node_dialog_browse.cpp - src/node_dialog_cloud.cpp - src/node_dialog_export_ppbr.cpp - src/node_dialog_layer_rename.cpp - src/node_dialog_open.cpp - src/node_dialog_picker.cpp - src/node_dialog_resize.cpp src/node_icon.cpp src/node_image.cpp src/node_image_texture.cpp src/node_input_box.cpp - src/node_panel_animation.cpp - src/node_panel_brush.cpp - src/node_panel_color.cpp - src/node_panel_floating.cpp - src/node_panel_grid.cpp - src/node_panel_layer.cpp - src/node_panel_quick.cpp - src/node_panel_stroke.cpp src/node_popup_menu.cpp src/node_progress_bar.cpp src/node_remote_page.cpp @@ -59,11 +41,8 @@ set(PP_LEGACY_APP_SOURCES src/node_settings.cpp src/node_shorcuts.cpp src/node_slider.cpp - src/node_stroke_preview.cpp src/node_text.cpp src/node_text_input.cpp - src/node_tool_bucket.cpp - src/node_viewport.cpp src/pch.cpp src/rtt.cpp src/serializer.cpp @@ -81,10 +60,31 @@ set(PP_PANOPAINTER_APP_SOURCES set(PP_PANOPAINTER_UI_SOURCES src/node_about.cpp + src/node_canvas.cpp src/node_changelog.cpp + src/node_color_quad.cpp + src/node_colorwheel.cpp + src/node_dialog_browse.cpp + src/node_dialog_cloud.cpp + src/node_dialog_export_ppbr.cpp + src/node_dialog_layer_rename.cpp + src/node_dialog_open.cpp + src/node_dialog_picker.cpp + src/node_dialog_resize.cpp src/node_message_box.cpp src/node_metadata.cpp + src/node_panel_animation.cpp + src/node_panel_brush.cpp + src/node_panel_color.cpp + src/node_panel_floating.cpp + src/node_panel_grid.cpp + src/node_panel_layer.cpp + src/node_panel_quick.cpp + src/node_panel_stroke.cpp + src/node_stroke_preview.cpp + src/node_tool_bucket.cpp src/node_usermanual.cpp + src/node_viewport.cpp ) set(PP_WINDOWS_PLATFORM_SOURCES diff --git a/docs/modernization/build-inventory.md b/docs/modernization/build-inventory.md index d61e9ae..0ddaad3 100644 --- a/docs/modernization/build-inventory.md +++ b/docs/modernization/build-inventory.md @@ -10,7 +10,7 @@ Keep it updated as platform paths move to shared CMake targets. | Platform/Target | Current Entrypoint | Notes | | --- | --- | --- | -| Windows desktop | Root `CMakeLists.txt`, preset `windows-msvc-default`; target preset `windows-vs2026-x64` retained for VS 2026 | Raw `.sln/.vcxproj` files removed on 2026-05-31; local machine currently uses Visual Studio 17 2022; `PanoPainter` now links through `pp_platform_windows` and `panopainter_app`, with Windows/vendor link dependencies owned by the platform shell, runtime payload deployment in `cmake/PanoPainterRuntime.cmake`, version metadata owned by `panopainter_app`, and the first modal/help UI nodes owned by `pp_panopainter_ui` | +| Windows desktop | Root `CMakeLists.txt`, preset `windows-msvc-default`; target preset `windows-vs2026-x64` retained for VS 2026 | Raw `.sln/.vcxproj` files removed on 2026-05-31; local machine currently uses Visual Studio 17 2022; `PanoPainter` now links through `pp_platform_windows` and `panopainter_app`, with Windows/vendor link dependencies owned by the platform shell, runtime payload deployment in `cmake/PanoPainterRuntime.cmake`, version metadata owned by `panopainter_app`, and app-specific modal/dialog/panel/canvas workflow nodes owned by `pp_panopainter_ui` | | Windows AppX | `PanoPainterPackage/Package.appxmanifest`, `.wapproj` referenced by solution | Distribution packaging | | macOS | `PanoPainter-OSX/` project files and `Info.plist` | Uses `NSOpenGLView` today | | iOS | `PanoPainter/Info.plist`, related Apple sources | Uses OpenGL ES today | @@ -398,6 +398,10 @@ Known local toolchain state: Known warnings after the current CMake app build: - Legacy code/vendor warnings under `/W4`. +- `pp_panopainter_ui` currently surfaces existing legacy `Node`/`Serializer` + header and static-analysis warnings while it still depends on + `pp_legacy_app`; these should be reduced as the UI core/app UI boundary is + tightened instead of suppressed globally. - Visual Studio vcpkg manifest warning because manifest mode is not enabled. - `LNK4099` missing `yuv.pdb` for retained libyuv binaries. - `LNK4098` runtime library conflict from retained vendor binaries. diff --git a/docs/modernization/roadmap.md b/docs/modernization/roadmap.md index 0e2138a..d79d58a 100644 --- a/docs/modernization/roadmap.md +++ b/docs/modernization/roadmap.md @@ -148,10 +148,11 @@ option targets exist. The Windows desktop app builds through CMake as dependencies now belong to the platform shell target, and Windows runtime payload deployment lives behind `cmake/PanoPainterRuntime.cmake`. `panopainter_app` is now a real static target that owns app version metadata -and version-header generation. The first `pp_panopainter_ui` target now owns a -small app-specific modal/help UI group (`NodeAbout`, `NodeChangelog`, -`NodeMessageBox`, `NodeMetadata`, and `NodeUserManual`) outside -`pp_legacy_app`. Android arm64 now configures and builds headless +and version-header generation. `pp_panopainter_ui` now owns app-specific modal, +dialog, panel, canvas, viewport, color-picker, stroke-preview, and tool UI +workflow nodes outside `pp_legacy_app`; base `Node` controls and layout +plumbing remain in the legacy target until the UI core/app UI boundary is +tightened. Android arm64 now configures and builds headless foundation/tool targets through the root CMake/NDK path. Non-Windows platform app/package files remain during Phase 6 alignment.