Class AbstractLayoutTask

  • All Implemented Interfaces:
    Task
    Direct Known Subclasses:
    AbstractPartitionLayoutTask

    public abstract class AbstractLayoutTask
    extends AbstractTask
    This is a basic implementation of a LayoutAlgorithm Task that does some bookkeeping, but primarily delegates to the doLayout() method. Extensions of this class are meant to operate on the CyNetworkView provided to the constructor (and is available as a protected member variable).

    Module: layout-api

    To use this in your app, include the following dependency in your POM:

    <dependency>
        <groupId>org.cytoscape</groupId>
        <artifactId>layout-api</artifactId>
    </dependency>

    Cytoscape Backwards Compatibility (Abstract Class): This class is abstract and meant to be extended by users. This means that we may add methods for minor version updates. Methods will only be removed for major version updates.
    • Field Detail

      • LAYOUT_ALGORITHM

        protected static final String LAYOUT_ALGORITHM
        The table column name that provides the layout algorithm name.
        See Also:
        Constant Field Values
      • networkView

        protected final CyNetworkView networkView
        The network view that the layout will be applied to.
      • nodesToLayOut

        protected final Set<View<CyNode>> nodesToLayOut
        The node views that will be laid out by the algorithm.
      • layoutAttribute

        protected final String layoutAttribute
        The attribute to be used for this layout. May be null and/or ignored.
      • undo

        protected final UndoSupport undo
        Undo support for the task.
      • recenter

        protected boolean recenter
        Determines whether the resulting set of nodes should be moved back to their original centroid after being laid out.
    • Constructor Detail

      • AbstractLayoutTask

        public AbstractLayoutTask​(String displayName,
                                  CyNetworkView networkView,
                                  Set<View<CyNode>> nodesToLayOut,
                                  String layoutAttribute,
                                  UndoSupport undo)
        Constructor.
        Parameters:
        displayName - The name of the layout algorithm.
        networkView - The network view that the layout algorithm will be applied to.
        nodesToLayOut - The set of nodes to be laid out.
        layoutAttribute - The name of the attribute to use for the layout. May be null or empty.
    • Method Detail

      • run

        public final void run​(TaskMonitor taskMonitor)
        This method is called when the Task begins execution. This method should not be called by the programmer, as it will be called by the TaskManager.
        Specified by:
        run in interface Task
        Specified by:
        run in class AbstractTask
        Parameters:
        taskMonitor - The TaskMonitor provided by TaskManager. to allow the Task to modify its user interface.
      • doLayout

        protected abstract void doLayout​(TaskMonitor taskMonitor)
        This method is designed to actually encapsulate the layout algorithm. It will be called from within the run() method of the task.
        Parameters:
        taskMonitor - Provided to allow updates to the task status.