HELIX.Widgets

Namespace

Namespaces

Static Classes

ModificationBarrierStatic Class
Provides a mechanism for managing and restricting modifications to the widget hierarchy while ensuring proper handling of callbacks, rebuilds, and disposals during a modification frame.

The barrier represents a reentrant context in which Reconciler actions, disposals, and frame callbacks are collected and executed once the outermost modification frame completes.

Enums

Structs

Classes

Abstract Classes

ModifierAbstract Class
Modifiers provide a way to manipulate the underlying VisualElement of a widget.
MultiChildWidgetAbstract Class
Base class for a Widget that can contain multiple child widgets.
SingleChildWidgetAbstract Class
Base class for a Widget that contains at most one child widget.
State<T>Abstract Class
The state of a StatefulWidget. It holds its widget's internal state and is used to update the UI when the widget configuration changes.

Once the state is created, a call to InitState will be made immediately before the first Build call.

The state maintains a list of managed disposables that will be disposed when the state is disposed and also provides a Dispose callback method.

Signal values can be directly accessed from within the state's Build methods and dependencies will be automatically tracked by the SignalDependencyTracker.

Once any dependency changes or SetState gets called, a ModificationBarrier.Rebuild will be scheduled. Once the Reconciler rebuilds the object, CanReconcile will be called to determine if the state can be reused with the new widget configuration. If it returns true, DidUpdateWidget will be called to notify the state of the new widget configuration before the Build method is called again.

StatefulWidget<T>Abstract Class
Base class of widgets that maintain state.

The behavior of a StatefulWidget is defined by its State object.

WidgetAbstract Class
Represents the base class for all widgets. Provides a foundation for defining user interface components, with support for diagnostics, modifiers, state reconciliation, and defining widget-specific behavior.

Interfaces

BuildContextInterface
Represents the context in which a Widget is being built.

Provides access to the widget's parent, theme, and other contextual information.

IHierarchyDisposableInterface
Can be implemented by an IElement to use the ModificationBarrier to dispose of it.
ITreeAncestorTraversalHintInterface
Provides a hint to the Reconciler that the target is a part of ITreeAncestorTraversalHint.Owner. Some widgets and modifiers try to resolve their parent using BuildContext.GetDirectParent to access metadata like IPreferExplicitFlex or IPreferStacking. In cases where BuildContext.ParentContext is not available, the Reconciler will attempt to traverse the tree upwards once and check if the element is a IWidgetElement or provides a traversal hint via direct implementation or by setting a ElementTreeAncestorTraversalHint in its userData.
IWidgetElementInterface
A VisualElements that is associated with a Widget. Most BuildContext implementations implement this interface.

Delegates

On this page