Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## context.apps.InOutBoard
Class BoardLayout

    java.lang.Object
      |
      +--context.apps.InOutBoard.BoardLayout

public class BoardLayout
extends java.lang.Object
implements java.awt.LayoutManager, java.io.Serializable

The `BoardLayout` class is a layout manager that lays out a container's components in a rectangular grid.

The container is divided into equal-sized rectangles, and one component is placed in each rectangle.

This layout has the following differences with GridLayout: - it honors the preferred size (from getPreferredSize) of the components - thus, it will show blank space if there aren't enough components - it also keeps columns equally filled but fills column after column instead of row after row - it doesn't eat components' bounding boxes to honor spacing - provides margin gap spacing all around the container

See Also:
  Serialized Form

Constructor Summary
`BoardLayout()` Creates a grid layout with a default of one column per component, in a single row.
`BoardLayout(int rows, int cols)` Creates a grid layout with the specified number of rows and columns.
`BoardLayout(int rows, int cols, int hgap, int vgap, int mgap)` Creates a grid layout with the specified number of rows and columns.

Method Summary
`void` | `addLayoutComponent(java.lang.String name, java.awt.Component comp)` Adds the specified component with the specified name to the layout.
`int` | `getColumns()` Gets the number of columns in this layout.
`int` | `getHgap()` Gets the horizontal gap between components.
`int` | `getMgap()` Gets the margin gap between components and the container.
`int` | `getRows()` Gets the number of rows in this layout.
`int` | `getVgap()` Gets the vertical gap between components.
`void` | `layoutContainer(java.awt.Container parent)` Lays out the specified container using this layout.
`java.awt.Dimension` | `minimumLayoutSize(java.awt.Container parent)` Determines the minimum size of the container argument using this grid layout.
`java.awt.Dimension` | `preferredLayoutSize(java.awt.Container parent)` Determines the preferred size of the container argument using this grid layout.
`void` | `removeLayoutComponent(java.awt.Component comp)` Removes the specified component from the layout.
`void` | `setColumns(int cols)` Sets the number of columns in this layout to the specified value.
`void` | `setHgap(int hgap)` Sets the horizontal gap between components to the specified value.
`void` | `setMgap(int mgap)` Sets the margin gap between components and the container to the specified value.
`void` | `setRows(int rows)` Sets the number of rows in this layout to the specified value.
`void` | `setVgap(int vgap)` Sets the vertical gap between components to the specified value.
`java.lang.String` | `toString()` Returns the string representation of this grid layout's values.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Constructor Detail

### BoardLayout

    public BoardLayout()

  Creates a grid layout with a default of one column per component, in a single row.

### BoardLayout

    public BoardLayout(int rows,
                       int cols)

  Creates a grid layout with the specified number of rows and columns. All components in the layout are given equal size.

  One, but not both, of `rows` and `cols` can be zero, which means that any number of objects can be placed in a row or in a column.

  Parameters:
    `rows` - the rows, with the value zero meaning any number of rows.
    `cols` - the columns, with the value zero meaning any number of columns.

### BoardLayout

    public BoardLayout(int rows,
                       int cols,
                       int hgap,
                       int vgap,
                       int mgap)

  Creates a grid layout with the specified number of rows and columns. All components in the layout are given equal size.

  In addition, the horizontal and vertical gaps are set to the specified values. Horizontal gaps are placed at the left and right edges, and between each of the columns. Vertical gaps are placed at the top and bottom edges, and between each of the rows. Gaps take extra space. The component's display size isn't altered.

  One, but not both, of `rows` and `cols` can be zero, which means that any number of objects can be placed in a row or in a column.

  Parameters:
    `rows` - the rows, with the value zero meaning any number of rows.
    `cols` - the columns, with the value zero meaning any number of columns.
    `hgap` - the horizontal gap.
    `vgap` - the vertical gap.
    `agap` - margin gap.
  Throws:
    java.lang.IllegalArgumentException - if the of `rows` or `cols` is invalid.

Method Detail

### getRows

    public int getRows()

  Gets the number of rows in this layout.
  Returns:
    the number of rows in this layout.

### setRows

    public void setRows(int rows)

  Sets the number of rows in this layout to the specified value.
  Parameters:
    `rows` - the number of rows in this layout.
  Throws:
    java.lang.IllegalArgumentException - if the value of both `rows` and `cols` is set to zero.

### getColumns

    public int getColumns()

  Gets the number of columns in this layout.
  Returns:
    the number of columns in this layout.

### setColumns

    public void setColumns(int cols)

  Sets the number of columns in this layout to the specified value.
  Parameters:
    `cols` - the number of columns in this layout.
  Throws:
    java.lang.IllegalArgumentException - if the value of both `rows` and `cols` is set to zero.

### getHgap

    public int getHgap()

  Gets the horizontal gap between components.
  Returns:
    the horizontal gap between components.

### setHgap

    public void setHgap(int hgap)

  Sets the horizontal gap between components to the specified value.
  Parameters:
    `hgap` - the horizontal gap between components.

### getVgap

    public int getVgap()

  Gets the vertical gap between components.
  Returns:
    the vertical gap between components.

### setVgap

    public void setVgap(int vgap)

  Sets the vertical gap between components to the specified value.
  Parameters:
    `vgap` - the vertical gap between components.

### getMgap

    public int getMgap()

  Gets the margin gap between components and the container.
  Returns:
    the margin gap.

### setMgap

    public void setMgap(int mgap)

  Sets the margin gap between components and the container to the specified value.
  Parameters:
    `mgap` - the margin gap.

### addLayoutComponent

    public void addLayoutComponent(java.lang.String name,
                                   java.awt.Component comp)

  Adds the specified component with the specified name to the layout.
  Specified by:
    addLayoutComponent in interface java.awt.LayoutManager
  Parameters:
    `name` - the name of the component.
    `comp` - the component to be added.

### removeLayoutComponent

    public void removeLayoutComponent(java.awt.Component comp)

  Removes the specified component from the layout.
  Specified by:
    removeLayoutComponent in interface java.awt.LayoutManager
  Parameters:
    `comp` - the component to be removed.
  Since:
    JDK1.0

### preferredLayoutSize

    public java.awt.Dimension preferredLayoutSize(java.awt.Container parent)

  Determines the preferred size of the container argument using this grid layout.

  The preferred width of a grid layout is the largest preferred width of any of the widths in the container times the number of columns, plus the horizontal padding times the number of columns plus one, plus the left and right insets of the target container.

  The preferred height of a grid layout is the largest preferred height of any of the widths in the container times the number of rows, plus the vertical padding times the number of rows plus one, plus the top and left insets of the target container.

  Specified by:
    preferredLayoutSize in interface java.awt.LayoutManager
  Parameters:
    `target` - the container in which to do the layout.
  Returns:
    the preferred dimensions to lay out the subcomponents of the specified container.
  See Also:
    `java.awt.BoardLayout#minimumLayoutSize`, `Container.getPreferredSize()`

### minimumLayoutSize

    public java.awt.Dimension minimumLayoutSize(java.awt.Container parent)

  Determines the minimum size of the container argument using this grid layout.

  The minimum width of a grid layout is the largest minimum width of any of the widths in the container times the number of columns, plus the horizontal padding times the number of columns plus one, plus the left and right insets of the target container.

  The minimum height of a grid layout is the largest minimum height of any of the widths in the container times the number of rows, plus the vertical padding times the number of rows plus one, plus the top and left insets of the target container.

  Specified by:
    minimumLayoutSize in interface java.awt.LayoutManager
  Parameters:
    `target` - the container in which to do the layout.
  Returns:
    the minimum dimensions needed to lay out the subcomponents of the specified container.
  See Also:
    `java.awt.BoardLayout#preferredLayoutSize`, `Container.doLayout()`

### layoutContainer

    public void layoutContainer(java.awt.Container parent)

  Lays out the specified container using this layout.

  This method reshapes the components in the specified target container in order to satisfy the constraints of the `BoardLayout` object.

  The grid layout manager determines the size of individual components by dividing the free space in the container into equal-sized portions according to the number of rows and columns in the layout. The container's free space equals the container's size minus any insets and any specified horizontal or vertical gap. All components in a grid layout are given the same size.

  Specified by:
    layoutContainer in interface java.awt.LayoutManager
  Parameters:
    `target` - the container in which to do the layout.
  See Also:
    `Container`, `Container.doLayout()`

### toString

    public java.lang.String toString()

  Returns the string representation of this grid layout's values.
  Overrides:
    toString in class java.lang.Object
  Returns:
    a string representation of this grid layout.

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD