CarpenterTreeTable<T> class final

Tabular projection of CarpenterTreeView. Expansion, selection, activation, filtering, reveal and DnD use exactly the same contracts as the regular tree.

Action-lane columns remain pinned to the trailing edge while ordinary data columns scroll underneath them. The same action descriptors open from the pinned lane, secondary pointer press and touch long-press.

Cell geometry is shared by header and rows. Column widths can be supplied through columnWidths, while direct pointer resizing works without a callback and is reported through onColumnWidthChanged when provided.

Inheritance

Constructors

CarpenterTreeTable({Key? key, required List<CarpenterTreeNode<T>> nodes, CarpenterTreeController? controller, String treeColumnId = 'tree', String treeHeader = 'Name', @Deprecated('Use treeWidth: CarpenterTableColumnWidth.flexible(flex: ...) instead.') int treeFlex = 2, CarpenterTableColumnWidth? treeWidth, CarpenterTableColumnAlignment treeAlignment = CarpenterTableColumnAlignment.start, CarpenterTableColumnVerticalAlignment treeVerticalAlignment = CarpenterTableColumnVerticalAlignment.center, bool treeResizable = true, CarpenterTreeTableTreeCellBuilder<T>? treeCellBuilder, List<CarpenterTreeTableColumn<T>> columns = const [], Map<String, LengthUnit> columnWidths = const {}, CarpenterTreeTableColumnWidthChanged? onColumnWidthChanged, Set<Object> expandedIds = const {}, Set<Object> selectedIds = const {}, Set<Object> cutIds = const {}, CarpenterTreeSelectionMode selectionMode = CarpenterTreeSelectionMode.single, CollectionMultiSelectionBehavior multipleSelectionBehavior = CollectionMultiSelectionBehavior.toggle, ScrollController? scrollController, CarpenterTreeExpansionChanged? onExpansionChanged, CarpenterTreeSelectionChanged? onSelectionChanged, CarpenterTreeActivation<T>? onActivated, CarpenterTreeNodePredicate<T>? filter, CarpenterTreeDropCallback<T>? onDrop, CarpenterTreeDropAcceptance<T>? canDrop, CarpenterTreeNodeCallback<T>? onRetryLoad, CarpenterTreeActionsBuilder<T>? actions, CarpenterTreeActionsBuilder<T>? secondaryActions, String actionsHeader = '', String actionsOverflowLabel = 'Действия', CarpenterTreeIconBuilder<T>? iconBuilder, CarpenterDragActivation dragActivation = CarpenterDragActivation.immediate, Set<CarpenterDragOperation> dragOperations = const {CarpenterDragOperation.move}, bool framed = true, String semanticLabel = 'Древовидная таблица'})
Creates a controlled tree-table projection of nodes.
const

Properties

actions → CarpenterTreeActionsBuilder<T>?
Compatibility shorthand for a pinned trailing action column.
final
actionsHeader → String
final
actionsOverflowLabel → String
final
canDrop → CarpenterTreeDropAcceptance<T>?
final
columns → List<CarpenterTreeTableColumn<T>>
final
columnWidths → Map<String, LengthUnit>
final
controller → CarpenterTreeController?
final
cutIds → Set<Object>
Stable row ids that should use pending-cut presentation.
final
dragActivation → CarpenterDragActivation
final
dragOperations → Set<CarpenterDragOperation>
Move/copy/link operations that rows may initiate through drag and drop.
final
expandedIds → Set<Object>
final
filter → CarpenterTreeNodePredicate<T>?
final
framed → bool
final
hashCode → int
The hash code for this object.
no setterinherited
iconBuilder → CarpenterTreeIconBuilder<T>?
final
key → Key?
Controls how one widget replaces another widget in the tree.
finalinherited
multipleSelectionBehavior → CollectionMultiSelectionBehavior
final
nodes → List<CarpenterTreeNode<T>>
final
onActivated → CarpenterTreeActivation<T>?
final
onColumnWidthChanged → CarpenterTreeTableColumnWidthChanged?
final
onDrop → CarpenterTreeDropCallback<T>?
final
onExpansionChanged → CarpenterTreeExpansionChanged?
final
onRetryLoad → CarpenterTreeActivation<T>?
final
onSelectionChanged → CarpenterTreeSelectionChanged?
final
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited
scrollController → ScrollController?
final
secondaryActions → CarpenterTreeActionsBuilder<T>?
Compatibility shorthand for secondary actions in the pinned trailing action column. New code should prefer CarpenterTreeTableColumn.actions.
final
selectedIds → Set<Object>
final
selectionMode → CarpenterTreeSelectionMode
final
semanticLabel → String
final
treeAlignment → CarpenterTableColumnAlignment
final
treeCellBuilder → CarpenterTreeTableTreeCellBuilder<T>?
Optional builder for the leading tree cell of each node row.
final
treeColumnId → String
final
treeFlex → int
final
treeHeader → String
final
treeResizable → bool
final
treeVerticalAlignment → CarpenterTableColumnVerticalAlignment
final
treeWidth → CarpenterTableColumnWidth?
final

Methods

createElement() → StatefulElement
Creates a StatefulElement to manage this widget's location in the tree.
inherited
createState() → State<CarpenterTreeTable<T>>
Creates the mutable state for this widget at a given location in the tree.
override
debugDescribeChildren() → List<DiagnosticsNode>
Returns a list of DiagnosticsNode objects describing this node's children.
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
toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug, int wrapWidth = 65}) → String
Returns a string representation of this node and its descendants.
inherited
toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) → String
Returns a one-line detailed description of the object.
inherited
toStringShort() → String
A short, textual description of this widget.
inherited

Operators

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