fx_desktop library
Desktop-first Flutter components and layout contracts for Xojo-style UI.
FxDesktop focuses on dense desktop and Flutter Web/WASM workflows. It does not try to replace Flutter's normal mobile or tablet responsive patterns.
Classes
- FxBooleanCellType
- A boolean cell type.
- FxButton
- A compact desktop button comparable to Xojo's DesktopButton.
- FxCardContainer
- A generator-friendly indexed card stack.
- FxCellType
- Defines rendering and interaction strategies for list/grid cells.
- FxCheckBox
- A checkbox comparable to Xojo's DesktopCheckBox.
- FxChoiceCellType
- A choice/dropdown cell type.
- FxColorPicker
- A desktop color selector comparable to Xojo's DesktopColorPicker.
- FxColumnWidth
- Defines column sizing strategies for FxDesktop tables.
- FxComboBox
- An editable combo box comparable to Xojo's DesktopComboBox.
- FxComponentDescriptor
- AI-readable component metadata for generation and documentation.
- FxDateTimePicker
- A desktop date/time picker comparable to Xojo's DesktopDateTimePicker.
-
FxDbLookupProvider<
K> - A database-style multi-column lookup provider.
- FxDesktopLocalizations
-
Callers can lookup localized strings with an instance of FxDesktopLocalizations
returned by
FxDesktopLocalizations.of(context). - FxDisclosureTriangle
- A compact collapsible section control comparable to Xojo's disclosure UI.
-
FxEnumLookupProvider<
T extends Enum> - A standard enum-based lookup provider.
- FxFixedColumnWidth
- A fixed column width specification.
- FxFlexItem
- Child metadata wrapper for FxFlexLayout.
- FxFlexItemSpec
- Serializable child metadata for flex layouts.
- FxFlexLayout
- CSS Flexbox-like layout widget for desktop/Web-WASM UI.
- FxFlexLayoutManager
- Non-visual manager/adapter for flex layout specs.
- FxFractionalColumnWidth
- A fractional column width specification.
- FxGrid
- A desktop data/cell grid comparable to Xojo's DesktopGrid.
- FxGridArea
- A reusable named CSS Grid-like area.
- FxGridCellRange
- Represents a rectangular selection range of cells in an FxGrid.
- FxGridColumn
- A column descriptor for FxGrid.
- FxGridLayout
- CSS Grid-like layout widget for desktop/Web-WASM UI.
- FxGridLayoutManager
- Non-visual manager/adapter for grid layout specs.
- FxGridPlacement
- Explicit placement wrapper for FxGridLayout children.
- FxGridPlacementSpec
- Serializable placement metadata for grid layouts.
- FxGridRow
- A row descriptor for FxGrid.
- FxGroupBox
- A framed desktop group comparable to Xojo's DesktopGroupBox.
- FxLabel
- A plain label comparable to Xojo's DesktopLabel.
- FxLayoutSpec
- Serializable layout description for AI agents, JinjaX, and Xojo generation.
- FxListBox
- A Xojo-style desktop list box with columns, rows, sticky header, and single selection.
- FxListBoxColumn
- A column descriptor for FxListBox.
- FxListBoxRow
- A row descriptor for FxListBox.
- FxLocalizationGallery
- One-window localization gallery for FxDesktop component-owned text.
- FxLocalizationIssue
- A structured localization diagnostic.
- FxLocalizationKey
- Stable localization key metadata for tools and diagnostics.
- FxLocalizedText
- Serializable localized text used by FxDesktop component models.
- FxLookupCellType
- A lookup cell type.
-
FxLookupComboBox<
K> - A combo box dropdown cell editor hosted in Flutter's global Overlay.
-
FxLookupItem<
K> - A container representing an option within a lookup selection list.
-
FxLookupProvider<
K> - A contract for resolving raw keys (IDs) to display values and retrieving selection options.
-
FxMapLookupProvider<
K> - A standard static map-based lookup provider.
- FxMaskTextInputFormatter
- A TextInputFormatter that enforces a mask pattern on text input.
- FxPagePanel
- A headless indexed page container comparable to Xojo's DesktopPagePanel.
- FxPopupMenu
- A fixed-choice menu comparable to Xojo's DesktopPopupMenu.
- FxProgressBar
- A determinate progress indicator comparable to Xojo's DesktopProgressBar.
- FxProgressWheel
- An indeterminate progress indicator comparable to Xojo's DesktopProgressWheel.
-
FxRadioButton<
T> - A single radio option comparable to Xojo's DesktopRadioButton.
-
FxRadioGroup<
T> - A managed exclusive option set comparable to Xojo's DesktopRadioGroup.
-
FxRadioOption<
T> - A single option in an FxRadioGroup.
- FxRemainingColumnWidth
- A column width that consumes remaining viewport space.
- FxRibbonCollapseChangedEvent
- Collapse state changed.
- FxRibbonDefinition
- Root ribbon definition.
- FxRibbonDesigner
- Embeddable visual designer for FxRibbonDefinition.
- FxRibbonEmbeddedIcon
-
Icon asset embedded in a
.ribbonbundle. - FxRibbonEvent
- Base class for ribbon events.
- FxRibbonGroup
- A labeled item group in a ribbon tab.
- FxRibbonIconRegistry
-
Immutable icon registry keyed by ribbon
iconKey. - FxRibbonIconSource
- Runtime icon source for ribbon rendering.
- FxRibbonIconView
- Renders a ribbon icon source.
- FxRibbonItem
- A command item inside a FxRibbonGroup.
- FxRibbonItemPressedEvent
- A ribbon item body was activated.
- FxRibbonLaidGroup
- Laid-out ribbon group geometry.
- FxRibbonLaidItem
- Laid-out ribbon item geometry.
- FxRibbonLaidTab
- Laid-out ribbon tab geometry.
- FxRibbonLayout
- Deterministic ribbon layout result.
- FxRibbonLayoutMetrics
- Ribbon layout metrics.
- FxRibbonMenuActionEvent
- A dropdown or split-button menu item was selected.
- FxRibbonMenuItem
- Menu item inside dropdown and split-button ribbon commands.
- FxRibbonSamples
- Built-in ribbon samples used by docs, tests, and the designer.
- FxRibbonSelection
- Selected object inside the ribbon designer.
- FxRibbonTab
- A top-level ribbon tab.
- FxRibbonTabChangedEvent
- Active tab changed.
- FxRibbonThemeData
- Theme extension for FxRibbonToolbar and FxRibbonDesigner.
- FxRibbonToolbar
- Flutter-native Office-style ribbon toolbar for desktop and web.
- FxRibbonValidationIssue
- One validation issue.
- FxRibbonValidationResult
- Ribbon validation result.
- FxRibbonValidator
- Validates ribbon definitions and source JSON.
-
FxSegmentedButton<
T> - A single-selection mode selector comparable to Xojo's DesktopSegmentedButton.
-
FxSegmentedOption<
T> - A single option in an FxSegmentedButton.
- FxSeparator
- A horizontal or vertical rule comparable to Xojo's DesktopSeparator.
- FxSlider
- A numeric range input comparable to Xojo's DesktopSlider.
- FxStyledLabel
- A styled text label comparable to a Xojo styled text label pattern.
- FxStyledTextSpan
- A single styled run in an FxStyledLabel.
- FxTabPanel
- A visible tabbed container comparable to Xojo's DesktopTabPanel.
- FxTextArea
- A labeled multiline input comparable to DesktopTextArea.
- FxTextCellType
- A text cell type.
- FxTextField
- A labeled single-line text input comparable to DesktopTextField.
- FxTextInputConstraints
- Serializable input constraints for desktop text controls.
- FxTextInputFormat
- Serializable single-line text display format.
- FxTheme
- Desktop-oriented theme extension for FxDesktop widgets.
- FxTrackSize
- A CSS Grid-like track size used by FxGridLayout.
- FxUndoAction
- A reversible semantic operation tracked by FxUndoController.
- FxUndoController
- Tracks app-level semantic undo and redo actions for FxDesktop apps.
- FxUndoScope
- Provides an FxUndoController to a widget subtree.
Enums
- FxAlignItems
- Cross-axis alignment for flex layouts.
- FxButtonProminence
- Desktop button emphasis.
- FxCellAlignment
- Horizontal alignment for text in list/grid cells.
- FxChoiceOrientation
- Layout direction for choice controls with multiple options.
- FxComponentSupportLevel
- How directly an FxDesktop component maps to a Xojo component.
- FxControlSize
- Standard desktop control densities used by FxDesktop components.
- FxDateTimePickerMode
- Display and selection mode for FxDateTimePicker.
- FxFlexDirection
- Flex direction shared by Flutter Desktop and Web/WASM.
- FxFlexWrap
- Flex wrapping behavior.
- FxGridSelectionMode
- Selection mode for FxGrid.
- FxJustifyContent
- Main-axis distribution for flex layouts.
- FxLayoutKind
- Serializable layout type.
- FxLayoutOverflow
- Overflow strategy for layout widgets.
- FxListBoxSelectionMode
- Selection mode for FxListBox.
- FxLocalizationIssueCode
- Localization issue categories emitted by FxDesktop tools.
- FxRibbonDensity
- Ribbon visual density.
- FxRibbonEmbeddedIconKind
- Embedded icon kind persisted in a ribbon definition.
- FxRibbonIconKind
- Supported runtime icon source kinds.
- FxRibbonInteractionMode
- Pointer interaction mode.
- FxRibbonItemType
- Item kinds supported by FxRibbonItem.
- FxRibbonValidationCode
- Stable ribbon validation code.
- FxRibbonValidationSeverity
- Validation severity.
- FxSeparatorOrientation
- Orientation for FxSeparator.
- FxTableState
- Presentation states for FxDesktop table controls.
- FxTextInputConstraintKind
- Built-in text constraint categories for FxTextField and FxTextArea.
- FxTextInputFormatType
- Supported single-line display formats for FxTextField.
- FxTrackSizeType
- Grid track type.
- FxXojoTarget
- Generation target for Xojo template maps.
Constants
-
fxComponentRegistry
→ const List<
FxComponentDescriptor> - Built-in component registry for FxDesktop.
Functions
-
fxDesktopLocalizationsOf(
BuildContext context) → FxDesktopLocalizations -
Resolves FxDesktop localizations from
context, falling back to English. -
lookupFxDesktopLocalizations(
Locale locale) → FxDesktopLocalizations
Typedefs
- FxCellRendererBuilder = Widget Function(BuildContext context, String rowId, String columnId, Object? value, bool isSelected, bool isHovered)
- Callback signature for custom cell rendering.
-
FxColorPickerDelegate
= Future<
Color?> Function(BuildContext context, Color? selectedColor) - Shows a color picker and returns the selected color.
-
FxDatePickerDelegate
= Future<
DateTime?> Function(BuildContext context, DateTime? selectedDate, DateTime firstDate, DateTime lastDate) - Shows a date picker and returns the selected date.
-
FxDesktopLocalizationsDelegate
= LocalizationsDelegate<
FxDesktopLocalizations> - Public delegate type used by FxDesktop localization integrations.
- FxRibbonLocalizedText = FxLocalizedText
- Localized ribbon text uses the suite-wide FxDesktop localized text model.
-
FxTimePickerDelegate
= Future<
TimeOfDay?> Function(BuildContext context, TimeOfDay initialTime) - Shows a time picker and returns the selected time.