A class that accepts a collection of objects from the TreeBuilder to build INodes from.
Remarks
Type Parameters
- TDataItem
- The type of the data items in the source.
Type Details
- yfiles module
- view-component
- yfiles-umd modules
- All view modules
- Legacy UMD name
- yfiles.binding.TreeNodesSource
Constructors
TreeNodesSource
(nodeCreator: NodeCreator<TDataItem>, parentEdgeCreator: EdgeCreator<TDataItem>, idProvider?: function(TDataItem, Object):Object)Creates a new source with the given nodeCreator
and parentEdgeCreator
.
Parameters
A map of options to pass to the method.
- nodeCreator - NodeCreator<TDataItem>
- The creator that is used to create the nodes of this source.
- parentEdgeCreator - EdgeCreator<TDataItem>
- The creator that is used to create the edges of this source.
- idProvider - function(TDataItem, Object):Object
- An optional function that yields an id for each element of the associated data collection in the TreeBuilder.
Signature Details
function(dataItem: TDataItem, canonicalId: any) : any
A callback that provides an unique identifier for thedataItem
.id provider are used in NodesSource.idProvider, EdgesSource.idProvider and LabelsSource.idProvider to identify the created nodes, edges and labels and avoid duplicate creation of items with the same ID.
The ID can also be used by parentIdProvider and sourceIdProvider and targetIdProvider to resolve the parent, source, or target nodes.
The ID is further used to identify nodes, edges, and labels during updateGraph.
Parameters
- dataItem - TDataItem
- The value that will be passed in.
- canonicalId - any
- The original canonical id of the value. For data arrays and iterables this is the index into the collection. For Maps and data objects this is the key associated with a value.
Returns
- any
Properties
Gets or sets a provider that yields an id for each element of the associated data collection in the GraphBuilder.
Signature Details
function(dataItem: TDataItem, canonicalId: any) : any
dataItem
.id provider are used in NodesSource.idProvider, EdgesSource.idProvider and LabelsSource.idProvider to identify the created nodes, edges and labels and avoid duplicate creation of items with the same ID.
The ID can also be used by parentIdProvider and sourceIdProvider and targetIdProvider to resolve the parent, source, or target nodes.
The ID is further used to identify nodes, edges, and labels during updateGraph.
Parameters
- dataItem - TDataItem
- The value that will be passed in.
- canonicalId - any
- The original canonical id of the value. For data arrays and iterables this is the index into the collection. For Maps and data objects this is the key associated with a value.
Returns
- any
Gets or sets the NodeCreator<TDataItem> for this source which can be used to adjust the creation behavior.
Gets or sets the NodeCreator<TDataItem> for this source which can be used to adjust the creation behavior of the edges between child nodes and their parents.
See Also
Gets or sets a provider that yields a parent id for each element of the associated data collection in the GraphBuilder.
Remarks
Signature Details
function(dataItem: TDataItem) : any
TValue
for the given dataItem
.Parameters
- dataItem - TDataItem
- The data item for which a value shall be provided.
Returns
- any
Methods
addChildNodesSource
<TChildDataItem>(childDataProvider: function(TDataItem):Object, nodesSource: TreeNodesSource<TChildDataItem>)Binds a collection of child data items to the given nodesSource
.
Type Parameters
- TChildDataItem
- The type of the child data items in the source.
Parameters
A map of options to pass to the method.
- childDataProvider - function(TDataItem):Object
- A function that yields a child data item for each element of the associated data collection in the TreeBuilder.
- nodesSource - TreeNodesSource<TChildDataItem>
- The child node source to which the child data is bound.
createChildNodesSource
<TChildDataItem>(childDataProvider: function(TDataItem):Object, idProvider?: function(TChildDataItem, Object):Object) : TreeNodesSource<TChildDataItem>Registers a collection of child data items functioning as child entities for the NodeCreator<TChildDataItem> of the returned TreeNodesSource<TChildDataItem>.
Remarks
Type Parameters
- TChildDataItem
- The type of the child data items in the source.
Parameters
A map of options to pass to the method.
- childDataProvider - function(TDataItem):Object
- A function that yields a child data item for each element of the associated data collection in the TreeBuilder.
- idProvider - function(TChildDataItem, Object):Object
- An optional function that yields an id for each element of the associated data collection in the TreeBuilder.
Signature Details
function(dataItem: TChildDataItem, canonicalId: any) : any
A callback that provides an unique identifier for thedataItem
.id provider are used in NodesSource.idProvider, EdgesSource.idProvider and LabelsSource.idProvider to identify the created nodes, edges and labels and avoid duplicate creation of items with the same ID.
The ID can also be used by parentIdProvider and sourceIdProvider and targetIdProvider to resolve the parent, source, or target nodes.
The ID is further used to identify nodes, edges, and labels during updateGraph.
Parameters
- dataItem - TChildDataItem
- The value that will be passed in.
- canonicalId - any
- The original canonical id of the value. For data arrays and iterables this is the index into the collection. For Maps and data objects this is the key associated with a value.
Returns
- any
Optionally obtains the id for the parent or null
given each data item for which a node is created.
Remarks
Parameters
A map of options to pass to the method.
- dataItem - TDataItem
- A single data item from the associated data collection in the GraphBuilder.
Returns
- ↪any
- The id of another node or
null
in case the node should be put in the root of the hierarchy.