org.jfree.chart.block

## Interface Arrangement

- All Known Implementing Classes:
    BorderArrangement, CenterArrangement, ColumnArrangement, FlowArrangement

      public interface Arrangement

  An object that is responsible for arranging a collection of `Block`s within a `BlockContainer`.

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `add(Block block, java.lang.Object key)` Adds a block and a key which can be used to determine the position of the block in the arrangement.
    `Size2D` | `arrange(BlockContainer container, java.awt.Graphics2D g2, RectangleConstraint constraint)` Arranges the blocks within the specified container, subject to the given constraint.
    `void` | `clear()` Clears any cached layout information retained by the arrangement.

- - ### Method Detail

    - #### add

          void add(Block block,
                   java.lang.Object key)

      Adds a block and a key which can be used to determine the position of the block in the arrangement. This method is called by the container (you don't need to call this method directly) and gives the arrangement an opportunity to record the details if they are required.
      Parameters:
        `block` - the block.
        `key` - the key (`null` permitted).

    - #### arrange

          Size2D arrange(BlockContainer container,
                         java.awt.Graphics2D g2,
                         RectangleConstraint constraint)

      Arranges the blocks within the specified container, subject to the given constraint.
      Parameters:
        `container` - the container (`null` not permitted).
        `g2` - the graphics device.
        `constraint` - the constraint.
      Returns:
        The container size after the arrangement.

    - #### clear

          void clear()

      Clears any cached layout information retained by the arrangement.