|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectcom.yworks.yfiles.server.graphml.flexio.data.DefaultNodeHierarchy
A default implementation of INodeHierarchy using the utility functions offered by
NodeHierarchy.
| Constructor Summary | |
DefaultNodeHierarchy(Graph graph)
Creates a new instance of a DefaultNodeHierarchy which uses the specified graph to work on. |
|
| Method Summary | |
void |
enableGrouping()
Adds the DataProviders that are required for working with hierarchic layout graphs
and calls transferMapperIDs(). |
NodeList |
getChildren(Node parent)
Returns a list of all child nodes of the given parent node. |
NodeList |
getNeighbors(Node node)
Returns a list containing the given node and all it's neighbor nodes. |
NodeList |
getNodes()
Returns a node cursor that allows for breadth-first iteration over the node hierarchy of the provided graph. |
Node |
getParent(Node child)
Gets the parent node of the provided node. |
NodeList |
getTopLevelNodes()
Returns a cursor over all top level nodes of the provided graph, i.e., all nodes for which NodeHierarchy.getParent( node ) yields null. |
boolean |
isGroupNode(Node node)
Whether the given node is considered a group node. |
void |
setGroupNode(Node node,
boolean isGroupNode)
Sets whether the provided node should be considered a group node. |
void |
setParent(NodeList children,
Node parent)
Adds all nodes contained in the provided NodeList as children
of the provided parent node. |
void |
setParent(Node child,
Node parent)
Sets the parent node for a given node. |
void |
transferMapperIDs()
Replaces the DataProvider for grouping keys with the id data provider used by yFiles FLEX. |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
public DefaultNodeHierarchy(Graph graph)
graph - The graph to work on.| Method Detail |
public Node getParent(Node child)
INodeHierarchynull is returned.
getParent in interface INodeHierarchychild - The child node.
null if child is a top-level node.
public void setParent(Node child,
Node parent)
INodeHierarchychild a top-level node, pass null as the
parent.
Calls INodeHierarchy.enableGrouping() to make sure that the graph instance supports hierarchies.
setParent in interface INodeHierarchychild - The node to assign a new parent.parent - The parent node to assign to child.
public void setParent(NodeList children,
Node parent)
INodeHierarchyNodeList as children
of the provided parent node.
setParent in interface INodeHierarchychildren - A list of nodes to be added as children of the provided parent node.parent - The parent node.
public void setGroupNode(Node node,
boolean isGroupNode)
INodeHierarchy
setGroupNode in interface INodeHierarchynode - A node.isGroupNode - Whether to consider the given node a group node.public boolean isGroupNode(Node node)
INodeHierarchy
This method may return true, even if the given node doesn't have any child nodes.
isGroupNode in interface INodeHierarchynode - A node.
public NodeList getChildren(Node parent)
INodeHierarchy
getChildren in interface INodeHierarchyparent - A parent node.
public NodeList getNeighbors(Node node)
INodeHierarchyIf the given node is top-level, all top-level nodes are returned. Otherwise all child nodes of the given node's parent node are returned.
getNeighbors in interface INodeHierarchynode - The node to get the neighbors for.
public void enableGrouping()
INodeHierarchyDataProviders that are required for working with hierarchic layout graphs
and calls INodeHierarchy.transferMapperIDs().
enableGrouping in interface INodeHierarchyGroupingKeys,
INodeHierarchy.transferMapperIDs()public NodeList getNodes()
INodeHierarchy
getNodes in interface INodeHierarchypublic NodeList getTopLevelNodes()
INodeHierarchyNodeHierarchy.getParent( node ) yields null.
getTopLevelNodes in interface INodeHierarchypublic void transferMapperIDs()
INodeHierarchy After using this function, graph.getDataProvider( GroupingKeys.NODE_ID_DPKEY ) and
graph.getDataProvider(AbstractGraphRoundtripSupport.NODE_2_ID_DPKEY ) will yield the same instance.
This instance will automatically generate ids for newly created nodes.
Clients should only call this function if the graph is read directly using a GraphML I/O handler instance.
transferMapperIDs in interface INodeHierarchyAbstractGraphRoundtripSupport.NODE_2_ID_DPKEY,
GroupingKeys.NODE_ID_DPKEY,
GroupingKeys.PARENT_NODE_ID_DPKEY
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||