Files
FreeCADWasmDev/docs/current/web-commandfeat-d937ec7-boundaries.md
wangdequan 9a7c4f0335 Save FreeCAD Web workspace sources and user validation evidence
IFC native binding remains incomplete; preserve accurate test results.
2026-09-15 22:01:58 +08:00

2.1 KiB

Selected CommandFeat integration boundaries

Batch: d937ec7eef2892d2286973f5

The native document dispatcher now preserves the empty activation body of Std_Recompute in src/Gui/CommandFeat.cpp:62. This must not be mapped to a forced document recomputation. Catalog registration, owner routing and activation prerequisites remain unresolved; this edit does not establish end-to-end support.

Std_RandomColor remains incomplete. The inspected desktop implementation at CommandFeat.cpp:84 chooses colors from CET::R1, enables OverrideMaterial for links, updates ShapeMaterial for links and ShapeAppearance material properties for other view providers. It applies to the complete selection and immediate children of selected App::Part or App::DocumentObjectGroup objects within one command transaction. The native persisted view-state owner and color palette integration must be inspected before implementing this behavior. The isActive body was outside the source window.

Std_SendToPythonConsole remains incomplete. CommandFeat.cpp:224 uses the first extended selection across documents with OldStyleElement resolution. It clears doc/lnk/obj/shp/sub/subs using the desktop try/except sequence, binds the actual document and object, resolves links, obtains the GeoFeature geometry property, binds selected subobjects when geometry exists, and activates and focuses the Python console. It returns for empty selection or a missing first object. The shared interpreter scope, selection resolution and mounted console host must be connected before registration; generating source text alone is insufficient.

All three actual catalog entries and the registry generator still require bounded source anchors. No registration claim, fixed material values, substitute geometry, or console marker was added. The four permitted supplemental windows were used for the packet metadata, CommandFeat.cpp:45, CommandFeat.cpp:224 and WebViewCommands.h:1. Further implementation requires new source windows for the owners and catalog. No builds, tests, business acceptance, browser validation, benchmarks or historical reconciliation were run.