Runtime

## org.eclipse.gmf.runtime.diagram.ui.services.layout
Interface ILayoutNodeProvider

All Superinterfaces:
  IProvider

All Known Implementing Classes:
  AbstractLayoutNodeProvider, LayoutService

public interface ILayoutNodeProvider
extends IProvider

The interface for providers of the layout provider extension point. The `ILayoutNodeProvider.layoutLayoutNodes(List, boolean, IAdaptable)` method call is invoked by internal diagram code for "arrange" actions. Consideration of dependencies has to be done when choosing the priority of the provider. The layout operation is executed on the first provider (in descending order of priority) that is found to provide the operation. IMPORTANT: This interface is not intended to be implemented by clients. Clients should inherit from `AbstractLayoutNodeProvider`. New methods may be added in the future.

Method Summary
`java.lang.Runnable` `layoutLayoutNodes(java.util.List layoutNodes, boolean offsetFromBoundingBox, IAdaptable layoutHint)` Layout this map of nodes, using the specified layout hint.

Methods inherited from interface org.eclipse.gmf.runtime.common.core.service.IProvider
`addProviderChangeListener, provides, removeProviderChangeListener`

Method Detail

### layoutLayoutNodes

    public java.lang.Runnable layoutLayoutNodes(java.util.List layoutNodes,
                                                boolean offsetFromBoundingBox,
                                                IAdaptable layoutHint)

  Layout this map of nodes, using the specified layout hint.

  Parameters:
    `layoutNodes` - List of `ILayoutNode` objects that are to participate in the layout.
    `offsetFromBoundingBox` - `boolean` indicating whether the Nodes should be laid out relative to the bounding box of the Nodes in the nodesToSizes Map.
    `layoutHint` - `IAdaptable` hint to the provider to determine the layout kind. `IAdaptable` will typically adapt to string that can be one of `LayoutType.DEFAULT` or `LayoutType.RADIAL`.
  Returns:
    `Runnable` that contains the layout changes to be executed.

Runtime

Guidelines for using Eclipse APIs.

Copyright (c) IBM Corp., Borland Software Corp., and others 2005,2006. All rights reserved.