Package org.eclipse.draw2d

# Class AbstractLayout

java.lang.Object
org.eclipse.draw2d.AbstractLayout

All Implemented Interfaces:
  `LayoutManager`

Direct Known Subclasses:
  `AbstractHintLayout`, `DelegatingLayout`, `ScrollBarLayout`, `XYLayout`

public abstract class AbstractLayout extends Object implements LayoutManager
Provides generic support for LayoutManagers.

## Field Summary

Fields
Modifier and Type
Field
Description
`protected boolean`
`isObservingVisibility`
Whether or not this layout pays attention to visiblity of figures when calculating its bounds.
`protected Dimension`
`preferredSize`
The cached preferred size.

## Constructor Summary

Constructors
Constructor
Description
`AbstractLayout()`

## Method Summary

Modifier and Type
Method
Description
`protected final void`
`calculatePreferredSize(IFigure container)`
This method is now `calculatePreferredSize(IFigure, int, int)`.
`protected abstract Dimension`
`calculatePreferredSize(IFigure container, int wHint, int hHint)`
Calculates the preferred size of the given figure, using width and height hints.
`protected Dimension`
`getBorderPreferredSize(IFigure container)`
Returns the preferred size of the figure's border.
`Object`
`getConstraint(IFigure child)`
Returns the constraint for the given figure.
`final void`
`getMinimumSize(IFigure container)`
This method is now `getMinimumSize(IFigure, int, int)`.
`Dimension`
`getMinimumSize(IFigure container, int wHint, int hHint)`
Returns the minimum size of the given figure.
`final void`
`getPreferredSize(IFigure container)`
This method is now `getPreferredSize(IFigure, int, int)`.
`Dimension`
`getPreferredSize(IFigure container, int wHint, int hHint)`
Returns the preferred size of the given figure, using width and height hints.
`void`
`invalidate()`
Tells the LayoutManager to throw away all cached information about the figures it is responsible for.
`protected void`
`invalidate(IFigure child)`
Removes any cached information about the given figure.
`boolean`
`isObservingVisibility()`
Returns whether or not this layout pays attention to visiblity when calculating its bounds.
`void`
`remove(IFigure child)`
Removes the given figure from this LayoutManager's list of figures.
`void`
`setConstraint(IFigure child, Object constraint)`
Sets the constraint for the given figure.
`void`
`setObserveVisibility(boolean newValue)`
Sets isObservingVisibility to the given value.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Methods inherited from interface org.eclipse.draw2d.LayoutManager

`layout`

## Field Details

### preferredSize

protected Dimension preferredSize
The cached preferred size.

### isObservingVisibility

protected boolean isObservingVisibility
Whether or not this layout pays attention to visiblity of figures when calculating its bounds. By default, false.

## Constructor Details

### AbstractLayout

public AbstractLayout()

## Method Details

### calculatePreferredSize

protected final void calculatePreferredSize(IFigure container)
This method is now `calculatePreferredSize(IFigure, int, int)`.

Parameters:
  `container` - the figure

### calculatePreferredSize

protected abstract Dimension calculatePreferredSize(IFigure container, int wHint, int hHint)
Calculates the preferred size of the given figure, using width and height hints.

Parameters:
  `container` - The figure
  `wHint` - The width hint
  `hHint` - The height hint
Returns:
  The preferred size

### getBorderPreferredSize

protected Dimension getBorderPreferredSize(IFigure container)
Returns the preferred size of the figure's border.

Parameters:
  `container` - The figure that the border is on
Returns:
  The border's preferred size

### getConstraint

public Object getConstraint(IFigure child)
Returns the constraint for the given figure.

Specified by:
  `getConstraint` in interface `LayoutManager`
Parameters:
  `child` - The figure
Returns:
  The constraint

### getMinimumSize

public final void getMinimumSize(IFigure container)
This method is now `getMinimumSize(IFigure, int, int)`.

Parameters:
  `container` - the figure

### getMinimumSize

public Dimension getMinimumSize(IFigure container, int wHint, int hHint)
Description copied from interface: `LayoutManager`
Returns the minimum size of the given figure.

Specified by:
  `getMinimumSize` in interface `LayoutManager`
Parameters:
  `container` - The Figure
  `wHint` - the width hint
  `hHint` - the height hint
Returns:
  The minimum size
See Also:
  - `LayoutManager.getMinimumSize(IFigure, int, int)`

### getPreferredSize

public Dimension getPreferredSize(IFigure container, int wHint, int hHint)
Returns the preferred size of the given figure, using width and height hints. If the preferred size is cached, that size is returned. Otherwise, `calculatePreferredSize(IFigure, int, int)` is called.

Specified by:
  `getPreferredSize` in interface `LayoutManager`
Parameters:
  `container` - The figure
  `wHint` - The width hint
  `hHint` - The height hint
Returns:
  The preferred size

### getPreferredSize

public final void getPreferredSize(IFigure container)
This method is now `getPreferredSize(IFigure, int, int)`.

Parameters:
  `container` - the figure

### invalidate

public void invalidate()
Description copied from interface: `LayoutManager`
Tells the LayoutManager to throw away all cached information about the figures it is responsible for. This method is called whenever the owning figure is invalidated.

Specified by:
  `invalidate` in interface `LayoutManager`
See Also:
  - `LayoutManager.invalidate()`

### invalidate

protected void invalidate(IFigure child)
Removes any cached information about the given figure.

Parameters:
  `child` - the child that is invalidated

### isObservingVisibility

public boolean isObservingVisibility()
Returns whether or not this layout pays attention to visiblity when calculating its bounds.

Returns:
  true if invisible figures should not contribute to this layout's bounds.

### remove

public void remove(IFigure child)
Removes the given figure from this LayoutManager's list of figures.

Specified by:
  `remove` in interface `LayoutManager`
Parameters:
  `child` - The figure to remove

### setConstraint

public void setConstraint(IFigure child, Object constraint)
Sets the constraint for the given figure.

Specified by:
  `setConstraint` in interface `LayoutManager`
Parameters:
  `child` - the child
  `constraint` - the child's new constraint

### setObserveVisibility

public void setObserveVisibility(boolean newValue)
Sets isObservingVisibility to the given value.

Parameters:
  `newValue` - `true` if visibility should be observed