LabKit MATLAB Workbench

history

UI utility snapshots and popout tools

id: LK-20260704-ui-utility-snapshots-and-popout-tools
date: 2026-07-04
sequence: 37
type: feat
compatibility: compatible
component: `labkit.ui` | `4.1.0 -> 4.2.0`
scope: UI utility snapshots and popout tools

Context

Users could tune controls and plots during a session, but restoring that work required repeating the settings manually. Popout axes were useful for visual inspection, yet copying data or recreating the plot in a script still required ad hoc commands.

Decision and rationale

Give the runtime a serializable snapshot contract for app state and expose save and load as workbench utilities. Extend popout axes with explicit styling, image copy, data export, and reconstruction-script actions derived from the graphics objects already present on the axes.

Changes

User and data impact

Users could save a supported app state and restore it later from the workbench. Popout plots could be restyled, copied, exported as visible graphics data, or used to generate a MATLAB reconstruction script without changing the original app result.

Compatibility and migration

Apps that did not declare serializable state continued to run without snapshot support. Existing app data and figure files were not converted automatically.

Validation

The commit expanded app-runtime and axes-workbench GUI suites and added package- surface checks for the snapshot APIs. The exact historical command was not recorded.

Evidence

Known limitations and follow-up

Snapshots covered state declared serializable by the app; they were not raw MATLAB workspace dumps. Figure Studio later provided a dedicated workflow for more extensive figure cleanup and export.