Search this API

y.layout.multipage
Interface ElementFactory

All Known Implementing Classes:
DefaultElementFactory

public interface ElementFactory

Factory used by class MultiPageLayouter to create special nodes and edges.


Method Summary
 Edge createConnectorEdge(LayoutContext context, Node connector, Node opposite, Object origEdgeId, boolean atTarget)
          Callback method for creating an edge of type EdgeInfo.TYPE_CONNECTOR.
 Node createConnectorNode(LayoutContext context, YList edgesIds, Object representedNodeId)
          Callback method for creating a node of type NodeInfo.TYPE_CONNECTOR.
 Edge createProxyEdge(LayoutContext context, Node proxyNode, Node opposite, Object replacingEdgeId, Object origNodeId)
          Callback method for creating an edge of type EdgeInfo.TYPE_PROXY.
 Node createProxyNode(LayoutContext context, Object origNodeId)
          Callback method for creating a node of type NodeInfo.TYPE_PROXY.
 Edge createProxyReferenceEdge(LayoutContext context, Node proxyReference, Node opposite, Object referencingCopyId)
          Callback method for creating an edge of type EdgeInfo.TYPE_PROXY_REFERENCE.
 Node createProxyReferenceNode(LayoutContext context, Object referringProxyId)
          Callback method for creating a node of type NodeInfo.TYPE_PROXY_REFERENCE.
 

Method Detail

createConnectorNode

Node createConnectorNode(LayoutContext context,
                         YList edgesIds,
                         Object representedNodeId)
Callback method for creating a node of type NodeInfo.TYPE_CONNECTOR. Note: all implementations have to use method LayoutContext.createNode(Object) to create the node.

Parameters:
context - an object providing relevant layout information, e.g., the current graph as well as various information about the graph elements.
edgesIds - a list that contains the ids of edges that are split by this connector. Note: multi-edges (edges connecting the same nodes) may be split by the same connector pair.
representedNodeId - the id of the node that is represented by this connector.
Returns:
the created connector node
See Also:
NodeInfo.TYPE_CONNECTOR, LayoutContext.createNode(Object), NodeInfo.getRepresentedNode()

createProxyReferenceNode

Node createProxyReferenceNode(LayoutContext context,
                              Object referringProxyId)
Callback method for creating a node of type NodeInfo.TYPE_PROXY_REFERENCE. Note: all implementations have to use method LayoutContext.createNode(Object) to create the node.

Parameters:
context - an object providing relevant layout information, e.g., the current graph as well as various information about the graph elements.
referringProxyId - the id of the proxy to which the created node refers to.
Returns:
the new proxy reference node.
See Also:
NodeInfo.TYPE_PROXY_REFERENCE, LayoutContext.createNode(Object), NodeInfo.TYPE_PROXY

createProxyNode

Node createProxyNode(LayoutContext context,
                     Object origNodeId)
Callback method for creating a node of type NodeInfo.TYPE_PROXY. Note: all implementations have to use method LayoutContext.createNode(Object) to create the node.

Parameters:
context - an object providing relevant layout information, e.g., the current graph as well as various information about the graph elements.
origNodeId - the id of the node for which a proxy has to be created.
Returns:
the proxy.
See Also:
LayoutContext.createNode(Object), NodeInfo.TYPE_PROXY

createConnectorEdge

Edge createConnectorEdge(LayoutContext context,
                         Node connector,
                         Node opposite,
                         Object origEdgeId,
                         boolean atTarget)
Callback method for creating an edge of type EdgeInfo.TYPE_CONNECTOR. The edge should connect the given connector and opposite node. Note: all implementations have to use method LayoutContext.createEdge(y.base.Node, y.base.Node, Object) to create the edge.

Parameters:
context - an object providing relevant layout information, e.g., the current graph as well as various information about the graph elements.
connector - the endpoint of the edge that represents the connector node.
opposite - the other endpoint of the edge.
origEdgeId - the id of the edge that is split by the connector edge.
atTarget - whether or not the connector node is the target of the edge.
Returns:
the created connector edge.
See Also:
EdgeInfo.TYPE_CONNECTOR, LayoutContext.createEdge(y.base.Node, y.base.Node, java.lang.Object)

createProxyReferenceEdge

Edge createProxyReferenceEdge(LayoutContext context,
                              Node proxyReference,
                              Node opposite,
                              Object referencingCopyId)
Callback method for creating an edge of type EdgeInfo.TYPE_PROXY_REFERENCE. This (undirected) edge should connect the given proxy reference and opposite node. Note: all implementations have to use method LayoutContext.createEdge(y.base.Node, y.base.Node, Object) to create the edge.

Parameters:
context - an object providing relevant layout information, e.g., the current graph as well as various information about the graph elements.
proxyReference - the endpoint of the edge that represents the proxy reference node.
opposite - the other endpoint of the new edge.
referencingCopyId - the id of the proxy node that is referenced by the proxy reference node.
Returns:
the created proxy reference edge.
See Also:
EdgeInfo.TYPE_PROXY_REFERENCE, NodeInfo.TYPE_PROXY_REFERENCE, LayoutContext.createEdge(y.base.Node, y.base.Node, java.lang.Object)

createProxyEdge

Edge createProxyEdge(LayoutContext context,
                     Node proxyNode,
                     Node opposite,
                     Object replacingEdgeId,
                     Object origNodeId)
Callback method for creating an edge of type EdgeInfo.TYPE_PROXY. The edge should connect the given proxy node and opposite node. Note: all implementations have to use method LayoutContext.createEdge(y.base.Node, y.base.Node, Object) to create the edge.

Parameters:
context - an object providing relevant layout information, e.g., the current graph as well as various information about the graph elements.
proxyNode - the endpoint of the edge that represents the proxy node.
opposite - the other endpoint of the new edge.
replacingEdgeId - the id of the related edge that is connected to the original node.
origNodeId - the id of the original node to which the proxy node refers to.
Returns:
the created proxy edge.
See Also:
EdgeInfo.TYPE_PROXY, NodeInfo.TYPE_PROXY, LayoutContext.createEdge(y.base.Node, y.base.Node, java.lang.Object)

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