mirror of
https://github.com/IfcOpenShell/IfcOpenShell.git
synced 2026-08-10 09:48:32 +00:00
db27d0ec0a
Parametric gizmos (wall/door/window/stair/roof/array/MEP) recompute matrix_basis every frame from obj.matrix_world. While Blender's transform modal (G/R/S and the Bonsai macro overrides) drags the matrix, the gizmos slide off-cursor and fight the transform overlay. Detect via context.window.modal_operators (Blender 4.2+) — the collection of running modal operators. Gate poll() (forward-compat) and draw_prepare() (production path: gizmo.hide=True preserves the GizmoGroup across the drag instead of destroying it). Cover the Bonsai macro override for G key (and Shift/Alt/Ctrl+Shift+D) by matching the BIM_OT_* macro idnames that surface in modal_operators. Forward-compat test walks every parametric-edit module for GizmoGroup subclasses and asserts poll returns False with the detector mocked, so new gizmo groups inherit the hide automatically. Generated with the assistance of an AI coding tool.