Class I15dPanelBuilder
- java.lang.Object
-
- com.jgoodies.forms.builder.AbstractFormBuilder
-
- com.jgoodies.forms.builder.PanelBuilder
-
- com.jgoodies.forms.builder.I15dPanelBuilder
-
- Direct Known Subclasses:
DefaultFormBuilder
public class I15dPanelBuilder extends PanelBuilder
A general purpose panel builder that uses theFormLayout
to lay outJPanel
s. In addition to its superclassPanelBuilder
this class provides convenience behavior to map resource keys to their associated internationalized (i15d) strings when adding labels, titles and titled separators.The localized texts used in methods
#addI15dLabel
and#addI15dTitle
can contain an optional mnemonic marker. The mnemonic and mnemonic index are indicated by a single ampersand (&). For example "&Save", or "Save &as". To use the ampersand itself, duplicate it, for example "Look&&Feel".- Since:
- 1.0.3
- Version:
- $Revision$
- Author:
- Karsten Lentzsch
- See Also:
ResourceBundle
-
-
Constructor Summary
Constructors Constructor Description I15dPanelBuilder(FormLayout layout, java.util.ResourceBundle bundle)
Constructs an instance ofI15dPanelBuilder
for the given layout.I15dPanelBuilder(FormLayout layout, java.util.ResourceBundle bundle, javax.swing.JPanel panel)
Constructs an instance ofI15dPanelBuilder
for the given FormLayout and layout container.I15dPanelBuilder(javax.swing.JPanel panel, FormLayout layout, java.util.ResourceBundle bundle)
Deprecated.Replaced byI15dPanelBuilder(FormLayout, ResourceBundle, JPanel)
.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description javax.swing.JLabel
add15dTitle(java.lang.String resourceKey, java.lang.String encodedConstraints)
Adds a title to the form using the specified constraints.javax.swing.JLabel
addI15dLabel(java.lang.String resourceKey, CellConstraints constraints)
Adds an internationalized (i15d) textual label to the form using the specified constraints.javax.swing.JLabel
addI15dLabel(java.lang.String resourceKey, CellConstraints labelConstraints, java.awt.Component component, CellConstraints componentConstraints)
Adds an internationalized (i15d) label and component to the panel using the given cell constraints.javax.swing.JLabel
addI15dLabel(java.lang.String resourceKey, java.lang.String encodedConstraints)
Adds an internationalized (i15d) textual label to the form using the specified constraints.javax.swing.JComponent
addI15dSeparator(java.lang.String resourceKey, CellConstraints constraints)
Adds an internationalized (i15d) titled separator to the form using the specified constraints.javax.swing.JComponent
addI15dSeparator(java.lang.String resourceKey, java.lang.String encodedConstraints)
Adds an internationalized (i15d) titled separator to the form using the specified constraints.javax.swing.JLabel
addI15dTitle(java.lang.String resourceKey, CellConstraints constraints)
Adds a title to the form using the specified constraints.protected java.lang.String
getI15dString(java.lang.String resourceKey)
Looks up and returns the internationalized (i15d) string for the given resource key from theResourceBundle
.-
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
-
I15dPanelBuilder
public I15dPanelBuilder(FormLayout layout, java.util.ResourceBundle bundle)
Constructs an instance ofI15dPanelBuilder
for the given layout. Uses an instance ofJPanel
as layout container.- Parameters:
layout
- the form layout used to layout the containerbundle
- the resource bundle used to lookup i15d strings
-
I15dPanelBuilder
public I15dPanelBuilder(FormLayout layout, java.util.ResourceBundle bundle, javax.swing.JPanel panel)
Constructs an instance ofI15dPanelBuilder
for the given FormLayout and layout container.- Parameters:
layout
- theFormLayout
used to layout the containerbundle
- theResourceBundle
used to lookup i15d stringspanel
- the layout container
-
I15dPanelBuilder
@Deprecated public I15dPanelBuilder(javax.swing.JPanel panel, FormLayout layout, java.util.ResourceBundle bundle)
Deprecated.Replaced byI15dPanelBuilder(FormLayout, ResourceBundle, JPanel)
.Constructs an instance ofI15dPanelBuilder
for the given FormLayout and layout container.- Parameters:
panel
- the layout containerbundle
- theResourceBundle
used to lookup i15d stringslayout
- theFormLayout
used to layout the container
-
-
Method Detail
-
addI15dLabel
public final javax.swing.JLabel addI15dLabel(java.lang.String resourceKey, CellConstraints constraints)
Adds an internationalized (i15d) textual label to the form using the specified constraints.- Parameters:
resourceKey
- the resource key for the label's textconstraints
- the label's cell constraints- Returns:
- the added label
-
addI15dLabel
public final javax.swing.JLabel addI15dLabel(java.lang.String resourceKey, java.lang.String encodedConstraints)
Adds an internationalized (i15d) textual label to the form using the specified constraints.- Parameters:
resourceKey
- the resource key for the label's textencodedConstraints
- a string representation for the constraints- Returns:
- the added label
-
addI15dLabel
public final javax.swing.JLabel addI15dLabel(java.lang.String resourceKey, CellConstraints labelConstraints, java.awt.Component component, CellConstraints componentConstraints)
Adds an internationalized (i15d) label and component to the panel using the given cell constraints. Sets the label as the component label usingJLabel.setLabelFor(java.awt.Component)
.Note: The
CellConstraints
objects for the label and the component must be different. Cell constraints are implicitly cloned by theFormLayout
when added to the container. However, in this case you may be tempted to reuse aCellConstraints
object in the same way as with many other builder methods that require a singleCellConstraints
parameter. The pitfall is that the methodsCellConstraints.xy**(...)
just set the coordinates but do not create a new instance. And so the second invocation ofxy***(...)
overrides the settings performed in the first invocation before the object is cloned by theFormLayout
.Wrong:
builder.add("name.key", cc.xy(1, 7), // will be modified by the code below nameField, cc.xy(3, 7) // sets the single instance to (3, 7) );
Correct:builder.add("name.key", cc.xy(1, 7).clone(), // cloned before the next modification nameField, cc.xy(3, 7) // sets this instance to (3, 7) );
- Parameters:
resourceKey
- the resource key for the labellabelConstraints
- the label's cell constraintscomponent
- the component to addcomponentConstraints
- the component's cell constraints- Returns:
- the added label
- Throws:
java.lang.IllegalArgumentException
- if the same cell constraints instance is used for the label and the component- See Also:
JLabel.setLabelFor(java.awt.Component)
-
addI15dSeparator
public final javax.swing.JComponent addI15dSeparator(java.lang.String resourceKey, CellConstraints constraints)
Adds an internationalized (i15d) titled separator to the form using the specified constraints.- Parameters:
resourceKey
- the resource key for the separator titleconstraints
- the separator's cell constraints- Returns:
- the added titled separator
-
addI15dSeparator
public final javax.swing.JComponent addI15dSeparator(java.lang.String resourceKey, java.lang.String encodedConstraints)
Adds an internationalized (i15d) titled separator to the form using the specified constraints.- Parameters:
resourceKey
- the resource key for the separator titleencodedConstraints
- a string representation for the constraints- Returns:
- the added titled separator
-
addI15dTitle
public final javax.swing.JLabel addI15dTitle(java.lang.String resourceKey, CellConstraints constraints)
Adds a title to the form using the specified constraints.- Parameters:
resourceKey
- the resource key for the separator titleconstraints
- the separator's cell constraints- Returns:
- the added title label
-
add15dTitle
public final javax.swing.JLabel add15dTitle(java.lang.String resourceKey, java.lang.String encodedConstraints)
Adds a title to the form using the specified constraints.- Parameters:
resourceKey
- the resource key for the separator titleencodedConstraints
- a string representation for the constraints- Returns:
- the added title label
-
getI15dString
protected java.lang.String getI15dString(java.lang.String resourceKey)
Looks up and returns the internationalized (i15d) string for the given resource key from theResourceBundle
.- Parameters:
resourceKey
- the key to look for in the resource bundle- Returns:
- the associated internationalized string, or the resource key itself in case of a missing resource
- Throws:
java.lang.IllegalStateException
- if noResourceBundle
has been set
-
-