Files
FreeCADWasmDev/docs/current/bim-views-remaining.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.2 KiB

BIM Views remaining implementation

Batch: 5e1903eb7fa9ab79a7f6e46e Record: BIM:desktop:BIM_Views

Implementation remains incomplete. No native registration or application behavior was changed in this turn. No build, test, browser validation, benchmark, or historical reconciliation was run.

Source decisions

freecad-source/src/Mod/BIM/bimcommands/BimViews.py:39 defines the Views Manager command. Its Activated method finds or creates the Qt dock, toggles visibility, updates the status button when present, and persists RestoreBimViews. Showing an existing dock invokes update().

The inspected activation window connects a manager with Active, AddLevel, AddProxy, Delete, Toggle, Isolate, SaveView, and Rename actions. SaveView's tooltip explicitly describes saving the current camera position to selected items. A web implementation therefore needs actual view state as well as current-document operations; a registration entry alone is insufficient.

Remaining boundaries

  • Read the desktop action method bodies and refresh/selection behavior before implementing their document and camera semantics.
  • Locate the existing Views branch, if present, in the native workflow owner and establish its calling scope and response contract. The inspected first 100 lines of BIMSelectedWorkflow.h and BIMManagementCommands.h did not establish this; this is not evidence that later code lacks the behavior.
  • Trace native executable registration, the BIM worker/facade envelope, and the module adapter before changing the actual catalog with tools/generate_feature_capability_registry.py.
  • Connect the manager to the mounted workbench host, including current-document selection, visibility, refresh, and real camera save/restore as required by the desktop methods.
  • Leave build/sync/route receipts to the outer pipeline and usage validation to users, as instructed.

The packet metadata read and three source reads consumed the four supplemental windows allowed for this turn. Further source inspection was not performed. The native-source-candidate-unregistered gap remains unresolved, rather than being treated as missing desktop business source or cleared with a marker.