widgets_extended library

Classes

AnimationState
Animation state for a single node (standalone animations only).
BulkAnimationData<TKey>
Snapshot of the controller's bulk-animation state at a single point in time, fetched as one unit so render-layer hot paths can avoid the four separate getter calls (isBulkAnimating, bulkAnimationValue, bulkAnimationGeneration, isBulkMember) that would otherwise be needed each layout.
ItemView<K extends Object, Section, Item>
Rich view of a visible item passed to an item builder.
RenderSliverTree<TKey, TData>
Render object for displaying a tree structure as a sliver.
SectionedListController<K extends Object, Section, Item>
The imperative engine behind a SectionedSliverList.
SectionedSliverList<K extends Object, Section, Item>
A header + items sliver. See the library docs for the two forms.
SectionView<K extends Object, Section, Item>
Rich view of a visible section header passed to a header builder.
SlideAnimation<TKey>
Slide animation state for a single node in a FLIP-style reorder.
SliverReorderableTree<TKey, TData>
Declarative drag-and-drop reorderable SliverTree.
SliverTree<TKey, TData>
A sliver that displays a tree structure with support for expand/collapse animations.
SliverTreeElement<TKey, TData>
Element for SliverTree that creates and manages child elements.
SliverTreeParentData
Parent data for children of RenderSliverTree.
SyncedSliverTree<TKey, TItem>
A sliver widget that declaratively displays a tree and animates changes.
SyncedTreeNode<TKey, TItem>
TreeChildManager<TKey>
Interface for managing child render objects in RenderSliverTree.
TreeController<TKey, TData>
Controller for a SliverTree widget.
TreeDropTarget<TKey>
Resolved drop target for the current pointer position during a drag.
TreeItemView<TKey, TItem>
Rich view of a visible synced tree node passed to itemBuilder.
TreeNode<TKey, TData>
User-provided data for a tree node.
TreeNodeBuilder<TKey, TData>
A widget that listens to a TreeController but only rebuilds when the specified node's hasChildren or isExpanded state changes.
TreeReorderController<TKey, TData>
Controls a drag-and-drop reorder over a TreeController.
TreeSnapshot<TKey, TItem>
Immutable normalized tree structure consumed by SyncedSliverTree.
TreeSyncController<TKey, TData>
A controller that syncs a TreeController to a desired state using animated diffs.

Enums

AncestorExpansionMode
How TreeController.animateScrollToKey handles ancestors of the target key that are currently collapsed.
AnimationType
The type of animation a node is currently undergoing.
TreeDropZone
Where the pointer lies relative to a candidate drop-target row.

Extensions

TreeItemViewWatch on TreeItemView<TKey, TItem>

Typedefs

ReorderableNodeWrapper = Widget Function({required Widget child, Widget? handle, bool longPressToDrag})
Signature of the wrap callback passed to SliverReorderableTree.nodeBuilder.
SectionHeaderBuilder<K extends Object, Section, Item> = Widget Function(BuildContext context, SectionView<K, Section, Item> view)
Builds a header widget for a visible section.
SectionItemBuilder<K extends Object, Section, Item> = Widget Function(BuildContext context, ItemView<K, Section, Item> view)
Builds a row widget for a visible item.
TreeItemBuilder<TKey, TItem> = Widget Function(BuildContext context, TreeItemView<TKey, TItem> node)
Builds a widget for a visible synced tree node.