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

## com.jgoodies.forms.factories
Class FormFactory

    java.lang.Object
      com.jgoodies.forms.factories.FormFactory

    public final class FormFactory

extends Object

A factory that creates instances of FormLayout for frequently used form layouts. It makes form creation easier and more consistent.

I consider removing the `FormLayout` factory methods. These seem to be less usefull and may lead to poor layout readability. If you want to use these methods, you may consider copying them to your codebase.

The forms are described by major and minor columns. Major columns consist of a leading label and a set of related components, for example: a label plus textfield, or label plus textfield plus button. The component part of a major column is divided into minor columns as shown in this layout:

     <-    major column 1        ->  <-     major column 2       ->
     label1 textfield1a textfield1b  label2 textfield2a textfield2b
     label3 textfield3a textfield3b  label4 textfield4
     label5 textfield5               label6 textfield6

Many forms use 1, 2, 3 or 4 major columns, which in turn are often split into 1, 2, 3 or 4 minor columns.

Version:
  $Revision: 1.1 $
Author:
  Karsten Lentzsch
See Also:
  `FormLayout`, `ColumnSpec`

Field Summary
`static ColumnSpec` | `BUTTON_COLSPEC` Describes a logical horizontal column for a fixed size button.
`static ColumnSpec` | `DEFAULT_COLSPEC` An unmodifyable `ColumnSpec` that determines its preferred width by computing the maximum of all column component preferred widths and its minimum width by computing all column component minimum widths.
`static RowSpec` | `DEFAULT_ROWSPEC` An unmodifyable `RowSpec` that determines its preferred height by computing the maximum of all column component preferred heights and its minimum height by computing all column component minimum heights.
`static ColumnSpec` | `GLUE_COLSPEC` An unmodifyable `ColumnSpec` that has an initial width of 0 pixels and that grows.
`static RowSpec` | `GLUE_ROWSPEC` An unmodifyable `RowSpec` that has an initial height of 0 pixels and that grows.
`static ColumnSpec` | `GROWING_BUTTON_COLSPEC` Describes a logical horizontal column for a growing button.
`static ColumnSpec` | `LABEL_COMPONENT_GAP_COLSPEC` Describes a logical horizontal gap between a label and an associated component.
`static RowSpec` | `LINE_GAP_ROWSPEC` Describes the logical vertical default gap between two rows in the grid.
`static ColumnSpec` | `MIN_COLSPEC` An unmodifyable `ColumnSpec` that determines its width by computing the maximum of all column component minimum widths.
`static RowSpec` | `MIN_ROWSPEC` An unmodifyable `RowSpec` that determines its height by computing the maximum of all column component minimum heights.
`static RowSpec` | `NARROW_LINE_GAP_ROWSPEC` Describes a logical vertical narrow gap between two rows in the grid.
`static RowSpec` | `PARAGRAPH_GAP_ROWSPEC` Describes the logical vertical default gap between two paragraphs in the layout grid.
`static ColumnSpec` | `PREF_COLSPEC` An unmodifyable `ColumnSpec` that determines its width by computing the maximum of all column component preferred widths.
`static RowSpec` | `PREF_ROWSPEC` An unmodifyable `RowSpec` that determines its height by computing the maximum of all column component preferred heights.
`static ColumnSpec` | `RELATED_GAP_COLSPEC` Describes a logical horizontal gap between two related components.
`static RowSpec` | `RELATED_GAP_ROWSPEC` Describes a logical vertzical gap between two related components.
`static ColumnSpec` | `UNRELATED_GAP_COLSPEC` Describes a logical horizontal gap between two unrelated components.
`static RowSpec` | `UNRELATED_GAP_ROWSPEC` Describes a logical vertical gap between two unrelated components.

Method Summary
`static FormLayout` | `createColumnLayout(int majorColumns, int minorColumns, ColumnSpec labelColumnSpec)` Creates and returns an instance of `FormLayout` to build forms with the specified number of major and minor columns.
`static FormLayout` | `createColumnLayout(int majorColumns, int minorColumns, ColumnSpec labelColumnSpec, ColumnSpec componentColumnSpec, ConstantSize indent, ConstantSize majorColumnGap, ConstantSize minorColumnGap)` Creates and returns an instance of `FormLayout` to build forms with the given number of major columns.
`static FormLayout` | `createColumnLayout(int majorColumns, int minorColumns, ColumnSpec labelColumnSpec, ConstantSize indent, ConstantSize minorColumnGap)` Creates and returns an instance of `FormLayout` to build forms with the given number of major columns.
`static ColumnSpec` | `createGapColumnSpec(ConstantSize gapSize)` Creates and returns a `ColumnSpec` that represents a gap with the specified `ConstantSize`.
`static RowSpec` | `createGapRowSpec(ConstantSize gapSize)` Creates and returns a `RowSpec` that represents a gap with the specified `ConstantSize`.

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

Field Detail

### MIN_COLSPEC

    public static final ColumnSpec MIN_COLSPEC

  An unmodifyable `ColumnSpec` that determines its width by computing the maximum of all column component minimum widths.

  See Also:
    `PREF_COLSPEC`, `DEFAULT_COLSPEC`

### PREF_COLSPEC

    public static final ColumnSpec PREF_COLSPEC

  An unmodifyable `ColumnSpec` that determines its width by computing the maximum of all column component preferred widths.

  See Also:
    `MIN_COLSPEC`, `DEFAULT_COLSPEC`

### DEFAULT_COLSPEC

    public static final ColumnSpec DEFAULT_COLSPEC

  An unmodifyable `ColumnSpec` that determines its preferred width by computing the maximum of all column component preferred widths and its minimum width by computing all column component minimum widths.

  Useful to let a column shrink from preferred width to minimum width if the container space gets scarce.

  See Also:
    `MIN_COLSPEC`, `PREF_COLSPEC`

### GLUE_COLSPEC

    public static final ColumnSpec GLUE_COLSPEC

  An unmodifyable `ColumnSpec` that has an initial width of 0 pixels and that grows. Useful to describe glue columns that fill the space between other columns.

  See Also:
    `GLUE_ROWSPEC`

### LABEL_COMPONENT_GAP_COLSPEC

    public static final ColumnSpec LABEL_COMPONENT_GAP_COLSPEC

  Describes a logical horizontal gap between a label and an associated component. Useful for builders that automatically fill a grid with labels and components.

  Note: In a future version this constant will likely be moved to a class `LogicalSize` or `StyledSize`.

  Since:
    1.0.3

### RELATED_GAP_COLSPEC

    public static final ColumnSpec RELATED_GAP_COLSPEC

  Describes a logical horizontal gap between two related components. For example the OK and Cancel buttons are considered related.

  Note: In a future version this constant will likely be moved to a class `LogicalSize` or `StyledSize`.

  See Also:
    `UNRELATED_GAP_COLSPEC`

### UNRELATED_GAP_COLSPEC

    public static final ColumnSpec UNRELATED_GAP_COLSPEC

  Describes a logical horizontal gap between two unrelated components.

  Note: In a future version this constant will likely be moved to a class `LogicalSize` or `StyledSize`.

  See Also:
    `RELATED_GAP_COLSPEC`

### BUTTON_COLSPEC

    public static final ColumnSpec BUTTON_COLSPEC

  Describes a logical horizontal column for a fixed size button. This spec honors the current layout style's default button minimum width.

  Note: In a future version this constant will likely be moved to a class `LogicalSize` or `StyledSize`.

  See Also:
    `GROWING_BUTTON_COLSPEC`

### GROWING_BUTTON_COLSPEC

    public static final ColumnSpec GROWING_BUTTON_COLSPEC

  Describes a logical horizontal column for a growing button. This spec does not use the layout style's default button minimum width.

  Note: In a future version this constant will likely be moved to a class `LogicalSize` or `StyledSize`.

  See Also:
    `BUTTON_COLSPEC`

### MIN_ROWSPEC

    public static final RowSpec MIN_ROWSPEC

  An unmodifyable `RowSpec` that determines its height by computing the maximum of all column component minimum heights.

  See Also:
    `PREF_ROWSPEC`, `DEFAULT_ROWSPEC`

### PREF_ROWSPEC

    public static final RowSpec PREF_ROWSPEC

  An unmodifyable `RowSpec` that determines its height by computing the maximum of all column component preferred heights.

  See Also:
    `MIN_ROWSPEC`, `DEFAULT_ROWSPEC`

### DEFAULT_ROWSPEC

    public static final RowSpec DEFAULT_ROWSPEC

  An unmodifyable `RowSpec` that determines its preferred height by computing the maximum of all column component preferred heights and its minimum height by computing all column component minimum heights.

  Useful to let a column shrink from preferred height to minimum height if the container space gets scarce.

  See Also:
    `MIN_COLSPEC`, `PREF_COLSPEC`

### GLUE_ROWSPEC

    public static final RowSpec GLUE_ROWSPEC

  An unmodifyable `RowSpec` that has an initial height of 0 pixels and that grows. Useful to describe glue rows that fill the space between other rows.

  See Also:
    `GLUE_COLSPEC`

### RELATED_GAP_ROWSPEC

    public static final RowSpec RELATED_GAP_ROWSPEC

  Describes a logical vertzical gap between two related components. For example the OK and Cancel buttons are considered related.

  Note: In a future version this constant will likely be moved to a class `LogicalSize` or `StyledSize`.

  See Also:
    `UNRELATED_GAP_ROWSPEC`

### UNRELATED_GAP_ROWSPEC

    public static final RowSpec UNRELATED_GAP_ROWSPEC

  Describes a logical vertical gap between two unrelated components.

  Note: In a future version this constant will likely be moved to a class `LogicalSize` or `StyledSize`.

  See Also:
    `RELATED_GAP_ROWSPEC`

### NARROW_LINE_GAP_ROWSPEC

    public static final RowSpec NARROW_LINE_GAP_ROWSPEC

  Describes a logical vertical narrow gap between two rows in the grid. Useful if the vertical space is scarce or if an individual vertical gap shall be small than the default line gap.

  Note: In a future version this constant will likely be moved to a class `LogicalSize` or `StyledSize`.

  See Also:
    `LINE_GAP_ROWSPEC`, `PARAGRAPH_GAP_ROWSPEC`

### LINE_GAP_ROWSPEC

    public static final RowSpec LINE_GAP_ROWSPEC

  Describes the logical vertical default gap between two rows in the grid. A little bit larger than the narrow line gap.

  Note: In a future version this constant will likely be moved to a class `LogicalSize` or `StyledSize`.

  See Also:
    `NARROW_LINE_GAP_ROWSPEC`, `PARAGRAPH_GAP_ROWSPEC`

### PARAGRAPH_GAP_ROWSPEC

    public static final RowSpec PARAGRAPH_GAP_ROWSPEC

  Describes the logical vertical default gap between two paragraphs in the layout grid. This gap is larger than the default line gap.

  Note: In a future version this constant will likely be moved to a class `LogicalSize` or `StyledSize`.

  See Also:
    `NARROW_LINE_GAP_ROWSPEC`, `LINE_GAP_ROWSPEC`

Method Detail

### createColumnLayout

    public static FormLayout createColumnLayout(int majorColumns,
                                                int minorColumns,
                                                ColumnSpec labelColumnSpec)

  Creates and returns an instance of `FormLayout` to build forms with the specified number of major and minor columns.

  The layout will use default values for all gaps.

  This method may be removed from a future version.

  Parameters:
    `majorColumns` - the number of used major columns
    `minorColumns` - the number of used minor columns
    `labelColumnSpec` - specifies the label columns
  Returns:
    a prepared `FormLayout`

### createColumnLayout

    public static FormLayout createColumnLayout(int majorColumns,
                                                int minorColumns,
                                                ColumnSpec labelColumnSpec,
                                                ConstantSize indent,
                                                ConstantSize minorColumnGap)

  Creates and returns an instance of `FormLayout` to build forms with the given number of major columns. Major columns consists of a label and a component section, where each component section is divided into the given number of minor columns.

  The layout will use the specified gaps to separate major columns, and the label and component section.

  This method may be removed from a future version.

  Parameters:
    `majorColumns` - the number of major columns
    `minorColumns` - the number of minor columns
    `labelColumnSpec` - specifies the label columns
    `indent` - an optional `ConstantSize` that describes the width of the leading indent column
    `minorColumnGap` - a `ConstantSize` that describes the gap between minor columns
  Returns:
    a prepared `FormLayout`

### createColumnLayout

    public static FormLayout createColumnLayout(int majorColumns,
                                                int minorColumns,
                                                ColumnSpec labelColumnSpec,
                                                ColumnSpec componentColumnSpec,
                                                ConstantSize indent,
                                                ConstantSize majorColumnGap,
                                                ConstantSize minorColumnGap)

  Creates and returns an instance of `FormLayout` to build forms with the given number of major columns. Major columns consists of a label and a component section, where each component section is divided into the given number of minor columns.

  The layout will use the specified gaps to separate major columns, minor columns, and the label and component section.

  This method may be removed from a future version.

  Parameters:
    `majorColumns` - the number of major columns
    `minorColumns` - the number of minor columns
    `labelColumnSpec` - specifies the label columns
    `componentColumnSpec` - specifies the label columns
    `indent` - an optional `ConstantSize` that describes the width of the leading indent column
    `majorColumnGap` - a `ConstantSize` that describes the gap between major columns
    `minorColumnGap` - a `ConstantSize` that describes the gap between minor columns
  Returns:
    a prepared `FormLayout`

### createGapColumnSpec

    public static ColumnSpec createGapColumnSpec(ConstantSize gapSize)

  Creates and returns a `ColumnSpec` that represents a gap with the specified `ConstantSize`.

  Parameters:
    `gapSize` - a `ConstantSize` that specifies the gap
  Returns:
    a `ColumnSpec` that describes a horizontal gap

### createGapRowSpec

    public static RowSpec createGapRowSpec(ConstantSize gapSize)

  Creates and returns a `RowSpec` that represents a gap with the specified `ConstantSize`.

  Parameters:
    `gapSize` - a `ConstantSize` that specifies the gap
  Returns:
    a `RowSpec` that describes a vertical gap

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

Copyright © 2002-2006 JGoodies Karsten Lentzsch. All Rights Reserved.