FMultiValueControl<T> class sealed

A FMultiValueControl defines how a FMultiValueNotifier is controlled.

A Control defines how a widget's state is managed:

  • Managed: The widget manages its own controller. Pass configuration parameters directly or provide an external controller for programmatic access.
// Let widget create controller with configuration
FPopover(control: .managed(motion: myMotion, onChange: print));

// Or provide your own controller
FPopover(control: .managed(controller: _myController));
  • Lifted: The parent owns the state. Pass the current value and an onChange callback. Useful for unidirectional data flow or integrating with external state management.
FPopover(
  control: .lifted(
    shown: _shown,
    onChange: (shown) => setState(() => _shown = shown),
  ),
)
Mixed-in types
Implementers

Constructors

FMultiValueControl.lifted({required Set<T> value, required ValueChanged<Set<T>> onChange})
Creates a FMultiValueControl for controlling multi-value notifier using lifted state.
const
factory
FMultiValueControl.managed({FMultiValueNotifier<T>? controller, Set<T>? initial, int min, int? max, ValueChanged<Set<T>>? onChange})
Creates a FMultiValueControl for multiple value selection.
const
factory
FMultiValueControl.managedRadio({FMultiValueNotifier<T>? controller, T? initial, ValueChanged<Set<T>>? onChange})
Creates a FMultiValueControl for single value selection.
const
factory

Properties

hashCode int
The hash code for this object.
no setterinherited
runtimeType Type
A representation of the runtime type of the object.
no setterinherited

Methods

createController() FMultiValueNotifier<T>
Creates a FMultiValueNotifier<T>.
inherited
debugFillProperties(DiagnosticPropertiesBuilder properties) → void
Add additional properties associated with the node.
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) DiagnosticsNode
Returns a debug representation of the object that is used by debugging tools and by DiagnosticsNode.toStringDeep.
inherited
toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) String
A string representation of this object.
inherited
toStringShort() String
A brief description of this object, usually just the runtimeType and the hashCode.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited