Class ButtonStackBuilder
- java.lang.Object
-
- com.jgoodies.forms.builder.AbstractFormBuilder
-
- com.jgoodies.forms.builder.PanelBuilder
-
- com.jgoodies.forms.builder.ButtonStackBuilder
-
public final class ButtonStackBuilder extends PanelBuilder
A non-visual builder that assists you in building consistent button stacks using theFormLayout
.This builder sets a hint for narrow margin for the gridded buttons. This can reduce the button stack's width if some buttons have long texts. For example, a stack with 'OK', 'Cancel', 'Configure...' will likely exceed the minimum button width. The narrow margins help getting narrow stacks. Note that some look&feels do not support the narrow margin feature, and conversely, others have only narrow margins. The JGoodies look&feels honor the setting, the Mac Aqua l&f uses narrow margins all the time.
Example:
The following example builds a button stack with Close, Up and Down, where Up and Down are related, and Close is not related to the other buttons, which makes a wide gap for the unrelated and a smaller gap for the related buttons.private JPanel createCloseUpDownButtonStack( JButton close, JButton up, JButton down) { ButtonStackBuilder builder = new ButtonStackBuilder(); builder.addGridded(close); builder.addUnrelatedGap(); builder.addGridded(up); builder.addRelatedGap(); builder.addGridded(down); return builder.getPanel(); }
- Version:
- $Revision$
- Author:
- Karsten Lentzsch
- See Also:
ButtonBarBuilder
,ButtonBarFactory
,LayoutStyle
-
-
Constructor Summary
Constructors Constructor Description ButtonStackBuilder()
Constructs an instance ofButtonStackBuilder
on a defaultJPanel
using a preconfigured FormLayout as layout manager.ButtonStackBuilder(javax.swing.JPanel panel)
Constructs an instance ofButtonStackBuilder
on the given panel using a preconfigured FormLayout as layout manager.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addButtons(javax.swing.JButton[] buttons)
Adds a sequence of related buttons separated by a default gap.void
addFixed(javax.swing.JComponent component)
Adds a fixed size component.void
addGlue()
Adds a glue that will be given the extra space, if this box is larger than its preferred size.void
addGridded(javax.swing.JComponent component)
Adds a gridded component.void
addRelatedGap()
Adds the standard gap for related components.void
addStrut(ConstantSize size)
Adds a strut of a specified size.void
addUnrelatedGap()
Adds the standard gap for unrelated components.-
Methods inherited from class com.jgoodies.forms.builder.PanelBuilder
add, addLabel, addLabel, addLabel, addLabel, addSeparator, addSeparator, addSeparator, addSeparator, addTitle, addTitle, addTitle, getComponentFactory, getPanel, setBorder, setComponentFactory, setDefaultDialogBorder
-
Methods inherited from class com.jgoodies.forms.builder.AbstractFormBuilder
add, add, add, appendColumn, appendColumn, appendGlueColumn, appendGlueRow, appendLabelComponentsGapColumn, appendParagraphGapRow, appendRelatedComponentsGapColumn, appendRelatedComponentsGapRow, appendRow, appendRow, appendUnrelatedComponentsGapColumn, appendUnrelatedComponentsGapRow, cellConstraints, createLeftAdjustedConstraints, getColumn, getColumnCount, getColumnIncrementSign, getContainer, getLayout, getLeadingColumn, getRow, getRowCount, isLeftToRight, nextColumn, nextColumn, nextLine, nextLine, nextRow, nextRow, setAlignment, setBounds, setColumn, setColumnSpan, setExtent, setHAlignment, setLeftToRight, setOrigin, setRow, setRowSpan, setVAlignment
-
-
-
-
Constructor Detail
-
ButtonStackBuilder
public ButtonStackBuilder()
Constructs an instance ofButtonStackBuilder
on a defaultJPanel
using a preconfigured FormLayout as layout manager.
-
ButtonStackBuilder
public ButtonStackBuilder(javax.swing.JPanel panel)
Constructs an instance ofButtonStackBuilder
on the given panel using a preconfigured FormLayout as layout manager.- Parameters:
panel
- the layout container
-
-
Method Detail
-
addButtons
public void addButtons(javax.swing.JButton[] buttons)
Adds a sequence of related buttons separated by a default gap.- Parameters:
buttons
- an array of buttons to add
-
addFixed
public void addFixed(javax.swing.JComponent component)
Adds a fixed size component.- Parameters:
component
- the component to add
-
addGridded
public void addGridded(javax.swing.JComponent component)
Adds a gridded component.- Parameters:
component
- the component to add
-
addGlue
public void addGlue()
Adds a glue that will be given the extra space, if this box is larger than its preferred size.
-
addRelatedGap
public void addRelatedGap()
Adds the standard gap for related components.
-
addUnrelatedGap
public void addUnrelatedGap()
Adds the standard gap for unrelated components.
-
addStrut
public void addStrut(ConstantSize size)
Adds a strut of a specified size.- Parameters:
size
- a constant that describes the gap
-
-