DelphiWASM FMX apps

build info...

The canvas below is painted entirely by Pascal. Every rectangle, rounded corner and glyph position is computed inside the module and pushed through the 28-call drawing ABI; the host only executes the calls. Clicks, the wheel and the keyboard go back the other way through the platform ABI.

Try: click the buttons, tick the check box and click again, and click a button then drag off it before releasing — that last one must not count, because a click is a press and a release on the same control. In FmxDashboard, drag the track bar and pick a size: the panels are laid out by Align, not by coordinates.

In FmxFonts, pick a family and watch the ruled lines move with it — they are drawn at the offsets font_metrics reported, so they are the measurement, not a decoration. Tick Underline and nothing moves, which is correct: underline and strikeout do not change a font's metrics. The four bundled families are WOFF2 files this page ships and caches in IndexedDB, so they measure the same on every machine; Show system fonts asks Chromium for the ones actually installed here (it prompts, which is why it is a button rather than something the page does on its own).

All three apps are ordinary Delphi FMX projects — a .dpr, a form unit with {$R *.fmx} and a designed .fmx. build_examples.cmd builds the same files into Windows executables.

Drawing instructions — the display list the module pushes, and anything it writes to stdout