← board

Eliah M1 — form designer (box emulation)

Goal

Designer pane paints a designed form as plain drawn boxes — pure emulation. Each box = a rectangle with widget kind + caption + size. The garin docmodel is the source of truth (serializes to .lfm/.pas, and is what ilja renders too).

Live widgets REJECTED (2026-06-23, user): no instantiation of pcl/GTK controls for the preview — they overcomplicate, can bug up, and ilja can't share them anyway. Box emulation only. Still: no design-time/runtime TComponent split, no TComponent linked, no design-time packages.

Scope

Acceptance

Place/move/resize mock boxes on the canvas; docmodel updates; repaint matches. OI lists a node's props from RTTI and edits write back to the docmodel. Coords px. No live GTK widget instantiated for the preview. Builds with $(PXX_STABLE); compiler gaps → Track A ticket, no workaround.

Log

CLOSED via triage (2026-06-30)

Acceptance MET (M1 designer COMPLETE 2026-06-23: editable inspector, click-to-place palette, .lfm load, 31/31 gate). The only remaining item is an added 'component-library' stretch scope (low priority) — split out if pursued. Closing the ticket on its own acceptance.