model library

Pure-Dart data model for a ribbon definition.

This library has no Jaspr dependency, so it can be reused by the canvas renderer, the standalone designer, the LSP server, and unit tests alike. Import jaspr_ribbon_toolbar.dart instead if you also want the components.

Classes

CollapseStateChangedEvent
The ribbon was collapsed or expanded via chevron / double-click.
A menu entry inside a dropdown or split-button was chosen.
IconAsset
An icon asset embedded in a .ribbon bundle (the persistence counterpart of the runtime IconSource/IconRegistry). Storing assets in the bundle makes it self-contained — a saved .ribbon carries its own SVG/PNG data URLs.
ItemPressedEvent
A plain / toggle / checkbox / split-button body was activated.
RibbonColors
The ribbon's colour system, an exact port of Xojo's ResolveColors.
RibbonDefinition
The root of a ribbon definition: the in-memory counterpart of a .ribbon JSON bundle. Shared verbatim by the canvas renderer, the visual designer, and the LSP server.
RibbonEvent
Events emitted by the ribbon.
RibbonGroup
A labeled cluster of controls inside a RibbonTab, separated from neighbouring groups by a vertical divider.
RibbonItem
A single control inside a RibbonGroup.
RibbonMenuItem
An entry inside a dropdown or split-button's popup menu.
RibbonTab
A top-level tab of the ribbon. Counterpart of Xojo's XjRibbonTab.
TabChangedEvent
The active tab changed.

Enums

IconAssetKind
The two supported icon asset formats (mirrors the runtime IconKind).
RibbonItemType
The five core item-type constants, mirroring Xojo's XjRibbonItem kItemType* constants (0–4).