# Class WrapLayout

java.lang.Object
java.awt.FlowLayout
com.treemap.swing.legend.WrapLayout

All Implemented Interfaces:
  `LayoutManager, Serializable`

public class WrapLayout extends FlowLayout
FlowLayout subclass that fully supports wrapping of components.

See Also:
  - Serialized Form

- ## Field Summary

  ### Fields inherited from class FlowLayout

  `CENTER, LEADING, LEFT, RIGHT, TRAILING`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `WrapLayout()`
  Constructs a new `WrapLayout` with a left alignment and a default 5-unit horizontal and vertical gap.
  `WrapLayout(int align)`
  Constructs a new `FlowLayout` with the specified alignment and a default 5-unit horizontal and vertical gap.
  `WrapLayout(int align, int hgap, int vgap)`
  Creates a new flow layout manager with the indicated alignment and the indicated horizontal and vertical gaps.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `Dimension`
  `minimumLayoutSize(Container target)`
  Returns the minimum dimensions needed to layout the visible components contained in the specified target container.
  `Dimension`
  `preferredLayoutSize(Container target)`
  Returns the preferred dimensions for this layout given the visible components in the specified target container.

  ### Methods inherited from class FlowLayout

  `addLayoutComponent, getAlignment, getAlignOnBaseline, getHgap, getVgap, layoutContainer, removeLayoutComponent, setAlignment, setAlignOnBaseline, setHgap, setVgap, toString`

  ### Methods inherited from class Object

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

- ## Constructor Details

  - ### WrapLayout

    public WrapLayout()
    Constructs a new `WrapLayout` with a left alignment and a default 5-unit horizontal and vertical gap.

  - ### WrapLayout

    public WrapLayout(int align)
    Constructs a new `FlowLayout` with the specified alignment and a default 5-unit horizontal and vertical gap. The value of the alignment argument must be one of `WrapLayout`, `WrapLayout`, or `WrapLayout`.
    Parameters:
      `align` - the alignment value

  - ### WrapLayout

    public WrapLayout(int align, int hgap, int vgap)
    Creates a new flow layout manager with the indicated alignment and the indicated horizontal and vertical gaps.

    The value of the alignment argument must be one of `WrapLayout`, `WrapLayout`, or `WrapLayout`.

    Parameters:
      `align` - the alignment value
      `hgap` - the horizontal gap between components
      `vgap` - the vertical gap between components

- ## Method Details

  - ### preferredLayoutSize

    public Dimension preferredLayoutSize(Container target)
    Returns the preferred dimensions for this layout given the visible components in the specified target container.
    Specified by:
      `preferredLayoutSize` in interface `LayoutManager`
    Overrides:
      `preferredLayoutSize` in class `FlowLayout`
    Parameters:
      `target` - the component which needs to be laid out
    Returns:
      the preferred dimensions to lay out the subcomponents of the specified container

  - ### minimumLayoutSize

    public Dimension minimumLayoutSize(Container target)
    Returns the minimum dimensions needed to layout the visible components contained in the specified target container.
    Specified by:
      `minimumLayoutSize` in interface `LayoutManager`
    Overrides:
      `minimumLayoutSize` in class `FlowLayout`
    Parameters:
      `target` - the component which needs to be laid out
    Returns:
      the minimum dimensions to lay out the subcomponents of the specified container