Search this API

y.layout.hierarchic.incremental
Interface IncrementalHintsFactory


public interface IncrementalHintsFactory

Factory interface for IncrementalHierarchicLayouter. Use this factory to obtain hints that will be interpreted by the layouter if they are bound to a DataProvider instance that is registered with the LayoutGraph using the IncrementalHierarchicLayouter.INCREMENTAL_HINTS_DPKEY key.
An instance of a class implementing this interface can be obtained through IncrementalHierarchicLayouter.createIncrementalHintsFactory().


Method Summary
 Object createLayerIncrementallyHint(Object forNodeId)
          Creates a hint object for a node that should be inserted incrementally during the layering phase.
 Object createSequenceIncrementallyHint(Object forItemId)
          Creates a hint object for a node or edge that should be inserted incrementally after the sequencing phase.
 Object createUseExactCoordinatesHint(Object forNodeId)
          Creates a hint object for a node that should be inserted incrementally into the graph at its exact current position.
 Object createUseExactLayerCoordinatesHint(Object forNodeId)
          Creates a hint object for a node that should be inserted incrementally into the graph at its exact current layer position.
 Object createUseExactSequenceCoordinatesHint(Object forNodeId)
          Creates a hint object for a node that should be inserted incrementally into the graph at its exact current sequence position.
 

Method Detail

createLayerIncrementallyHint

Object createLayerIncrementallyHint(Object forNodeId)
Creates a hint object for a node that should be inserted incrementally during the layering phase. This will place the node in a suitable layer, thus possibly creating new layers. Neighbors of this node may be marked as to be laid out incrementally, too. This makes it possible to incrementally add whole subgraphs to the current layout.

Parameters:
forNodeId - the node to be layered and sequenced incrementally together with its adjacent edges and possibly marked neighboring nodes.
Returns:
an Object that can be interpreted by HierarchicLayouter

createSequenceIncrementallyHint

Object createSequenceIncrementallyHint(Object forItemId)
Creates a hint object for a node or edge that should be inserted incrementally after the sequencing phase. This will prevent the layering from being changed. The node will be placed into an already existing layer that is determined by the HierarchicLayouter.getLayerer() implementation, i.e. "from sketch". Adjacent edges will automatically be be rerouted optimally. Creates a hint object for an edge that should be routed incrementally after the sequencing phase. This will prevent the layering from being changed. The edge will be rerouted in a locally optimal fashion.

Parameters:
forItemId - the node or edge to be sequenced/inserted incrementally.
Returns:
an Object that can be interpreted by HierarchicLayouter

createUseExactCoordinatesHint

Object createUseExactCoordinatesHint(Object forNodeId)
Creates a hint object for a node that should be inserted incrementally into the graph at its exact current position. The node will be placed into an already existing layer that is determined by the layerer implementation. The position within its layer will be determined by its current position.

Parameters:
forNodeId - the node to be placed at its exact current position.
Returns:
an Object that can be interpreted by HierarchicLayouter
See Also:
createUseExactSequenceCoordinatesHint(Object), createUseExactLayerCoordinatesHint(Object), SimplexNodePlacer.setExactPlacementEnforced(boolean)

createUseExactLayerCoordinatesHint

Object createUseExactLayerCoordinatesHint(Object forNodeId)
Creates a hint object for a node that should be inserted incrementally into the graph at its exact current layer position. The node will be placed into an already existing layer that is determined by the layerer at the position that it occupies initially. The position within its layer will be determined by the NodePlacer.

Parameters:
forNodeId - the node to be placed at its exact current layer position.
Returns:
an Object that can be interpreted by HierarchicLayouter
See Also:
createUseExactCoordinatesHint(Object), createUseExactSequenceCoordinatesHint(Object), SimplexNodePlacer.setExactPlacementEnforced(boolean)

createUseExactSequenceCoordinatesHint

Object createUseExactSequenceCoordinatesHint(Object forNodeId)
Creates a hint object for a node that should be inserted incrementally into the graph at its exact current sequence position. The node will be placed into an already existing layer that is determined by the layerer at the position that is deemed best for its layer. The position within the sequence of its layer will be determined by its current coordinates.

Parameters:
forNodeId - the node to be placed at its exact current sequence position.
Returns:
an Object that can be interpreted by HierarchicLayouter
See Also:
createUseExactCoordinatesHint(Object), createUseExactLayerCoordinatesHint(Object), SimplexNodePlacer.setExactPlacementEnforced(boolean)

© Copyright 2000-2013,
yWorks GmbH.
All rights reserved.