com.jgoodies.forms.builder
Class AbstractButtonPanelBuilder

java.lang.Object
  extended by com.jgoodies.forms.builder.AbstractButtonPanelBuilder
Direct Known Subclasses:
ButtonBarBuilder2

public abstract class AbstractButtonPanelBuilder
extends java.lang.Object

The abstract superclass for ButtonBarBuilder2. Provides a cell cursor for traversing the button bar/stack while components are added. It also offers convenience methods to append logical columns and rows.

TODO: Mention the ButtonStackBuilder2 subclass as soon as it is available.

Since:
1.2
Version:
$Revision: 1.7 $
Author:
Karsten Lentzsch

Field Summary
protected static java.lang.String NARROW_KEY
          The client property key used to indicate that a button shall get narrow margins on the left and right hand side.
 
Constructor Summary
protected AbstractButtonPanelBuilder(FormLayout layout, javax.swing.JPanel container)
          Constructs a AbstractFormBuilder for the given FormLayout and layout container.
 
Method Summary
protected  java.awt.Component add(java.awt.Component component)
          Adds a component to the container using the default cell constraints.
protected  void appendColumn(ColumnSpec columnSpec)
          Appends the given column specification to the builder's layout.
protected  void appendGlueColumn()
          Appends a glue column.
protected  void appendGlueRow()
          Appends a glue row.
protected  void appendRelatedComponentsGapColumn()
          Appends a column that is the default gap for related components.
protected  void appendRelatedComponentsGapRow()
          Appends a row that is the default gap for related components.
protected  void appendRow(RowSpec rowSpec)
          Appends the given row specification to the builder's layout.
protected  void appendUnrelatedComponentsGapColumn()
          Appends a column that is the default gap for unrelated components.
protected  void appendUnrelatedComponentsGapRow()
          Appends a row that is the default gap for unrelated components.
protected  int getColumn()
           
 javax.swing.JPanel getContainer()
          Returns the container used to build the form.
 FormLayout getLayout()
          Returns the instance of FormLayout used to build this form.
 javax.swing.JPanel getPanel()
          Returns the panel used to build the form.
 boolean isLeftToRight()
          Returns whether this builder fills the form left-to-right or right-to-left.
protected  void nextColumn()
          Moves to the next column, does the same as #nextColumn(1).
protected  void nextRow()
          Increases the row by one; does the same as #nextRow(1).
 void setBackground(java.awt.Color background)
          Sets the panel's background color.
 void setBorder(javax.swing.border.Border border)
          Sets the panel's border.
 void setLeftToRight(boolean b)
          Sets the form fill direction to left-to-right or right-to-left.
 void setOpaque(boolean b)
          Sets the panel's opaque state.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

NARROW_KEY

protected static final java.lang.String NARROW_KEY
The client property key used to indicate that a button shall get narrow margins on the left and right hand side.

This optional setting will be honored by all JGoodies Look&Feel implementations. The Mac Aqua l&f uses narrow margins only. Other look&feel implementations will likely ignore this key and so may render a wider button margin.

See Also:
Constant Field Values
Constructor Detail

AbstractButtonPanelBuilder

protected AbstractButtonPanelBuilder(FormLayout layout,
                                     javax.swing.JPanel container)
Constructs a AbstractFormBuilder for the given FormLayout and layout container.

Parameters:
layout - the FormLayout to use
container - the layout container
Throws:
java.lang.NullPointerException - if the layout or container is null
Method Detail

getContainer

public final javax.swing.JPanel getContainer()
Returns the container used to build the form.

Returns:
the layout container, a {code JPanel}.

getPanel

public final javax.swing.JPanel getPanel()
Returns the panel used to build the form.

Returns:
the panel used by this builder to build the form

getLayout

public final FormLayout getLayout()
Returns the instance of FormLayout used to build this form.

Returns:
the FormLayout

setBackground

public final void setBackground(java.awt.Color background)
Sets the panel's background color.

Parameters:
background - the color to set as new background
See Also:
JComponent.setBackground(Color)

setBorder

public final void setBorder(javax.swing.border.Border border)
Sets the panel's border.

Parameters:
border - the border to set
See Also:
JComponent.setBorder(Border)

setOpaque

public final void setOpaque(boolean b)
Sets the panel's opaque state.

Parameters:
b - true for opaque, false for non-opaque
Since:
1.1
See Also:
JComponent.setOpaque(boolean)

isLeftToRight

public final boolean isLeftToRight()
Returns whether this builder fills the form left-to-right or right-to-left. The initial value of this property is set during the builder construction from the layout container's componentOrientation property.

Returns:
true indicates left-to-right, false indicates right-to-left
See Also:
setLeftToRight(boolean), ComponentOrientation

setLeftToRight

public final void setLeftToRight(boolean b)
Sets the form fill direction to left-to-right or right-to-left. The initial value of this property is set during the builder construction from the layout container's componentOrientation property.

Parameters:
b - true indicates left-to-right, false right-to-left
See Also:
isLeftToRight(), ComponentOrientation

nextColumn

protected final void nextColumn()
Moves to the next column, does the same as #nextColumn(1).


getColumn

protected int getColumn()

nextRow

protected final void nextRow()
Increases the row by one; does the same as #nextRow(1).


appendColumn

protected final void appendColumn(ColumnSpec columnSpec)
Appends the given column specification to the builder's layout.

Parameters:
columnSpec - the column specification object to append

appendGlueColumn

protected final void appendGlueColumn()
Appends a glue column.

See Also:
appendRelatedComponentsGapColumn(), appendUnrelatedComponentsGapColumn()

appendRelatedComponentsGapColumn

protected final void appendRelatedComponentsGapColumn()
Appends a column that is the default gap for related components.

See Also:
appendGlueColumn(), appendUnrelatedComponentsGapColumn()

appendUnrelatedComponentsGapColumn

protected final void appendUnrelatedComponentsGapColumn()
Appends a column that is the default gap for unrelated components.

See Also:
appendGlueColumn(), appendRelatedComponentsGapColumn()

appendRow

protected final void appendRow(RowSpec rowSpec)
Appends the given row specification to the builder's layout.

Parameters:
rowSpec - the row specification object to append

appendGlueRow

protected final void appendGlueRow()
Appends a glue row.

See Also:
appendRelatedComponentsGapRow(), appendUnrelatedComponentsGapRow()

appendRelatedComponentsGapRow

protected final void appendRelatedComponentsGapRow()
Appends a row that is the default gap for related components.

See Also:
appendGlueRow(), appendUnrelatedComponentsGapRow()

appendUnrelatedComponentsGapRow

protected final void appendUnrelatedComponentsGapRow()
Appends a row that is the default gap for unrelated components.

See Also:
appendGlueRow(), appendRelatedComponentsGapRow()

add

protected final java.awt.Component add(java.awt.Component component)
Adds a component to the container using the default cell constraints. Note that when building from left to right, this method won't adjust the cell constraints if the column span is larger than 1.

Parameters:
component - the component to add
Returns:
the added component


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