B
- the type of the builder, e.g. ButtonBarBuilderpublic abstract class AbstractButtonPanelBuilder<B extends AbstractButtonPanelBuilder<B>> extends AbstractBuilder<B>
ButtonBarBuilder
and
ButtonStackBuilder
.
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.Modifier and Type | Field and Description |
---|---|
protected boolean |
focusGrouped
Indicates whether a focus group has been built in
build() . |
currentCellConstraints
Modifier | Constructor and Description |
---|---|
protected |
AbstractButtonPanelBuilder(FormLayout layout,
JPanel container)
Constructs an AbstractButtonPanelBuilder
for the given FormLayout and layout container.
|
Modifier and Type | Method and Description |
---|---|
protected Component |
add(Component component)
Adds a component to the container using the default cell constraints.
|
protected AbstractButtonPanelBuilder |
addButton(Action... actions)
Constructs an array of JButtons from the given Action array,
and adds them as a sequence of related buttons separated by a default gap.
|
protected AbstractButtonPanelBuilder |
addButton(JComponent... buttons)
Adds one or many sequences of related buttons.
|
protected abstract AbstractButtonPanelBuilder |
addButton(JComponent button) |
protected abstract AbstractButtonPanelBuilder |
addRelatedGap()
Adds the standard gap for related components.
|
protected abstract AbstractButtonPanelBuilder |
addUnrelatedGap()
Adds the standard gap for unrelated components.
|
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.
|
JPanel |
build()
Returns the panel used to build the form and lazily builds
a focus traversal group for all contained AbstractButtons.
|
protected JButton |
createButton(Action action)
Creates and returns a button that is bound to the given Action.
|
protected int |
getColumn() |
protected int |
getRow()
Returns the cursor's row.
|
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(Color background)
Deprecated.
Replaced by
AbstractBuilder.background(Color) |
void |
setBorder(Border border)
Deprecated.
Replaced by
AbstractBuilder.border(Border) |
void |
setLeftToRight(boolean b)
Sets the form fill direction to left-to-right or right-to-left.
|
void |
setOpaque(boolean b)
Deprecated.
Replaced by
AbstractBuilder.opaque(boolean) |
background, border, border, createComponentFactory, getColumnCount, getComponentFactory, getContainer, getLayout, getPanel, getRowCount, opaque, padding, padding, setComponentFactory
protected boolean focusGrouped
build()
.
Reset to false
whenever a component is added.protected AbstractButtonPanelBuilder(FormLayout layout, JPanel container)
layout
- the FormLayout to usecontainer
- the layout containerNullPointerException
- if layout
or container
is null
public final JPanel build()
build
in class AbstractBuilder<B extends AbstractButtonPanelBuilder<B>>
@Deprecated public final void setBackground(Color background)
AbstractBuilder.background(Color)
background
- the color to set as new backgroundJComponent.setBackground(Color)
@Deprecated public final void setBorder(Border border)
AbstractBuilder.border(Border)
border
- the border to setJComponent.setBorder(Border)
@Deprecated public final void setOpaque(boolean b)
AbstractBuilder.opaque(boolean)
b
- true for opaque, false for non-opaqueJComponent.setOpaque(boolean)
public final boolean isLeftToRight()
componentOrientation
property.setLeftToRight(boolean)
,
ComponentOrientation
public final void setLeftToRight(boolean b)
componentOrientation
property.b
- true indicates left-to-right, false right-to-leftisLeftToRight()
,
ComponentOrientation
protected final void nextColumn()
protected final int getColumn()
protected final int getRow()
protected final void nextRow()
protected final void appendColumn(ColumnSpec columnSpec)
columnSpec
- the column specification object to appendprotected final void appendGlueColumn()
protected final void appendRelatedComponentsGapColumn()
protected final void appendUnrelatedComponentsGapColumn()
protected final void appendRow(RowSpec rowSpec)
rowSpec
- the row specification object to appendprotected final void appendGlueRow()
protected final void appendRelatedComponentsGapRow()
protected final void appendUnrelatedComponentsGapRow()
protected final Component add(Component component)
component
- the component to addprotected abstract AbstractButtonPanelBuilder addButton(JComponent button)
protected AbstractButtonPanelBuilder addButton(JComponent... buttons)
null
. The next sequence is separated by an
unrelated gap.
Each button has the minimum width as specified by
LayoutStyle.getDefaultButtonWidth()
. The gap width between
the buttons is LayoutStyle.getRelatedComponentsPadX()
.Although JButtons are expected, general JComponents are accepted to allow custom button component types.
Examples:
builder.addButtons(newButton, editButton, deleteButton); builder.addButtons(newButton, editButton, deleteButton, null, printButton);
buttons
- the buttons to addNullPointerException
- if buttons
is null
IllegalArgumentException
- if buttons
is emptyaddButton(JComponent)
protected AbstractButtonPanelBuilder addButton(Action... actions)
actions
- an array of buttons to addprotected abstract AbstractButtonPanelBuilder addRelatedGap()
protected abstract AbstractButtonPanelBuilder addUnrelatedGap()
protected JButton createButton(Action action)
JGButton
configures
the accessible name and accessible description from Actions
that provide these information.
This default implementation delegates the button creation
to this builder's component factory,
see ComponentFactory.createButton(Action)
).
action
- provides bound visual properties for the buttonCopyright © 2002-2015 JGoodies Software GmbH. All Rights Reserved.