SyncedSliverTree<TKey, TItem>.flat constructor

const SyncedSliverTree<TKey, TItem>.flat({
  1. required Iterable<TItem> items,
  2. required TKey keyOf(
    1. TItem item
    ),
  3. required TKey? parentOf(
    1. TItem item
    ),
  4. required TreeItemBuilder<TKey, TItem> itemBuilder,
  5. bool preserveExpansion = true,
  6. bool initiallyExpanded = true,
  7. Duration animationDuration = const Duration(milliseconds: 300),
  8. Curve animationCurve = Curves.easeInOut,
  9. double indentWidth = 0.0,
  10. int maxStickyDepth = 0,
  11. Key? key,
})

Creates a synced sliver tree from flat items with optional parent keys.

Implementation

const SyncedSliverTree.flat({
  required Iterable<TItem> items,
  required TKey Function(TItem item) keyOf,
  required TKey? Function(TItem item) parentOf,
  required this.itemBuilder,
  this.preserveExpansion = true,
  this.initiallyExpanded = true,
  this.animationDuration = const Duration(milliseconds: 300),
  this.animationCurve = Curves.easeInOut,
  this.indentWidth = 0.0,
  this.maxStickyDepth = 0,
  super.key,
}) : _mode = _SyncedSliverTreeMode.flat,
     _tree = null,
     _nodeRoots = null,
     _nodeChildrenOf = null,
     _hierarchyRoots = null,
     _flatItems = items,
     _snapshot = null,
     _keyOf = keyOf,
     _childrenOf = null,
     _parentOf = parentOf;