com.tensegrity.graph.layout.controller
Class FreeWorkflowLayoutController

java.lang.Object
  extended bycom.tensegrity.graph.layout.controller.LayoutController
      extended bycom.tensegrity.graph.layout.controller.FreeWorkflowLayoutController
All Implemented Interfaces:
Attributable, AttributableOnSet

public class FreeWorkflowLayoutController
extends LayoutController

The FreeWorkflowLayoutController is a concrete LayoutController class used to layout a free workflow. In a free workflow, visual nodes are not automatically positioned but are placed freely within the workflow view.

This specialized LayoutController uses a dynamic EdgeLayout, which means that the workflow's visual edges are repositioned after every VisualNode change. For instance, when a VisualNode is moved, the all visual edges are repositioned so that they do not intersect it.

A dynamic EdgeLayout is created with a default configuration. In order to change this default, please view the documentation of class DefaultEdgeLayout.

Version:
$Id: FreeWorkflowLayoutController.java,v 1.17 2006/05/31 05:18:50 SharokhKhani Exp $
Author:
Sharokh Khani

Field Summary
 
Fields inherited from class com.tensegrity.graph.layout.controller.LayoutController
ACTIVE, ACTIVE_EDGELAYOUT, ACTIVE_NODELAYOUT, animation, ANIMATION_TIME, animationDuration, ANIMATIONDURATION, ANIMATIONENABLED, ATTRIBUTENAME_EDGE_LAYOUT, ATTRIBUTENAME_GLOBAL_SETTINGS, ATTRIBUTENAME_LAYOUT_CONTEXT, ATTRIBUTENAME_LAYOUT_SETTING, ATTRIBUTENAME_NODE_LAYOUT, DEFAULTEDGELAYOUTCONTEXT, DEFAULTNODELAYOUTCONTEXT, DEPENDING_ON_LAYOUT_DIRECTION, DYNAMIC, DYNAMIC_PORT_REASSIGNMENT, dynamicEdgeLayout, DYNAMICEDGELAYOUT, dynamicNodeLayout, DYNAMICNODELAYOUT, EDGE_OPTIONS, edgeLayoutContext, ENABLE_ANIMATION, GLOBAL_CONFIGURATION, IGNORE_UNCONNECTED_NODES, INACTIVE, LAYOUT_DOMAIN, layoutDomain, LAYOUTDOMAIN_ALL, LAYOUTDOMAIN_CONSIDER_SELECTED_GROUPS, LAYOUTDOMAIN_SELECTION, LAYOUTDOMAIN_USED, LAYOUTDOMAIN_WHOLE, NODE_OPTIONS, nodeLayoutContext, observable, OTHER_OPTIONS, RELAYOUT_EDGES_ON_CHANGE, RELAYOUT_NODES_ON_CHANGE, SELECTED_GROUPS, state, strErrorMessage, visualGraphObjectContainer, visualGraphView, WHOLE_GRAPH
 
Fields inherited from interface com.tensegrity.generic.attribute.AttributableOnSet
TREE_SUBSET_POSTFIX
 
Constructor Summary
FreeWorkflowLayoutController()
          Constructor that create a FreeWorkflowLayoutController
FreeWorkflowLayoutController(LayoutController layoutController, VisualGraphObjectContainer visualgraphobject)
          Constructor that create a FreeWorkflowLayoutController for the VisualGraphObjectContainer given by visualgraphobject that used the LayoutService given by service.
 
Method Summary
 LayoutController deepCopy(VisualGraphObjectContainer visualgraphobject)
          Creates a new independent layout-controller associated with the given VisualGraphObjectContainer.
protected  void init()
          This method must be overwritten by derived LayoutControllers.
 
Methods inherited from class com.tensegrity.graph.layout.controller.LayoutController
addAttributableOnSetListener, addErrorMessage, addLayoutContext, addObserver, addProgressListener, apply, apply, apply, apply, apply, applyDynamic, applyEdgeLayout, applyEdgeLayout, areAttributableEventsEnabled, considerCurrentEdgesRoute, deleteObserver, disableAttributableEvents, duplicateLayoutContext, enableAnimation, enableAttributableEvents, enableDynamicEdgeLayout, enableDynamicNodeLayout, error, getAnimateDuration, getAttribute, getAttributes, getAttributesTree, getAttributesTree, getAttributeType, getAttributeValue, getAutomaticPortReassignment, getAutomaticPortReassignmentDirectionDependent, getBaseLayoutEngine, getBaseLayouter, getConfiguration, getEdgeDefaultLayoutAttributes, getEdgeLayoutContext, getEdgeLayoutContextConstraint, getEdgeLayoutContextList, getEdgeLayouterList, getErrorMessage, getGraphPosition, getIgnoreIsolatedNodes, getLayoutAttribute, getLayoutAttributeSet, getLayoutContext, getLayoutContextList, getLayoutContextList, getLayoutDomain, getLayoutEdgesContextDepended, getLayoutReport, getLayoutService, getNodeDefaultLayoutAttributes, getNodeLayoutContext, getNodeLayoutContextConstraint, getNodeLayoutContextList, getNodeLayouterList, getPreviousEdgeLayoutAttributeMap, getPreviousEdgeLayoutContextMap, getPreviousNodeLayoutAttributeMap, getPreviousNodeLayoutContextMap, getState, getUsingLayoutContexts, getVisualGraphObjectContainer, isAnimationEnabled, isDynamicEdgeLayoutEnabled, isDynamicLayoutSupported, isDynamicNodeLayoutEnabled, isNodeLayoutContext, isRecursive, isValidLayoutContext, journalStartLayout, journalStopLayout, onBeginLayout, onBeginLoading, onBeginVisualSubgraphEdgeLayout, onBeginVisualSubgraphLayout, onEndLayout, onEndLoading, onEndVisualSubgraphEdgeLayout, onEndVisualSubgraphLayout, onLayoutEdgeSubgraph, onLayoutSubgraph, registerLayout, registerLayout, registerLayoutEngine, registerLayoutEngine, removeAttributableOnSetListener, removeLayoutContext, removeProgressListener, setAnimateDuration, setAttribute, setAttributes, setAttributesTree, setAttributesTree, setAttributeValue, setAutomaticPortReassignment, setAutomaticPortReassignmentDirectionDependent, setBorder, setChanged, setChanged, setConfiguration, setEdgeLayoutContext, setGraphPosition, setIgnoreIsolatedNodes, setLayoutAttribute, setLayoutAttributeSet, setLayoutContext, setLayoutDomain, setLayoutEdgesContextDepended, setLayoutService, setNodeLayoutContext, setVisualGraphObjectContainer, toString, updateLayoutAttributeSet
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

FreeWorkflowLayoutController

public FreeWorkflowLayoutController()
Constructor that create a FreeWorkflowLayoutController


FreeWorkflowLayoutController

public FreeWorkflowLayoutController(LayoutController layoutController,
                                    VisualGraphObjectContainer visualgraphobject)
Constructor that create a FreeWorkflowLayoutController for the VisualGraphObjectContainer given by visualgraphobject that used the LayoutService given by service.

Parameters:
layoutController - the FreeWorkflowLayoutController to copy from.
visualgraphobject - the VisualGraphObjectContainer the layout controller should be created for
Method Detail

init

protected void init()
Description copied from class: LayoutController
This method must be overwritten by derived LayoutControllers. It should be used to register necessary Layout and define the according layout-contexts.

Specified by:
init in class LayoutController

deepCopy

public LayoutController deepCopy(VisualGraphObjectContainer visualgraphobject)
Creates a new independent layout-controller associated with the given VisualGraphObjectContainer.

Specified by:
deepCopy in class LayoutController
Parameters:
visualgraphobject - the VisualGraphObjectContainer the copy is to be associated with.
Returns:
a deep-copy of the instance.


Copyright © 2005 Tensegrity Software GmbH. All Rights Reserved. Date of creation: 09.06.2006.