com.jgoodies.forms.factories
public class DefaultComponentFactory extends Object implements ComponentFactory
The texts used in methods #createLabel(String)
and
#createTitle(String)
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".
Version: $Revision: 1.12 $
Method Summary | |
---|---|
JLabel | createLabel(String textWithMnemonic)
Creates and returns a label with an optional mnemonic.
createLabel("Name"); // No mnemonic createLabel("N&ame"); // Mnemonic is 'a' createLabel("Save &as"); // Mnemonic is the second 'a' createLabel("Look&&Feel"); // No mnemonic, text is Look&Feel |
JComponent | createSeparator(String textWithMnemonic)
Creates and returns a labeled separator with the label in the left-hand
side. |
JComponent | createSeparator(String textWithMnemonic, int alignment)
Creates and returns a labeled separator. |
JComponent | createSeparator(JLabel label)
Creates and returns a labeled separator. |
JLabel | createTitle(String textWithMnemonic)
Creates and returns a title label that uses the foreground color
and font of a TitledBorder .
createTitle("Name"); // No mnemonic createTitle("N&ame"); // Mnemonic is 'a' createTitle("Save &as"); // Mnemonic is the second 'a' createTitle("Look&&Feel"); // No mnemonic, text is Look&Feel |
static DefaultComponentFactory | getInstance()
Returns the sole instance of this factory class.
|
static void | setTextAndMnemonic(JLabel label, String textWithMnemonic)
Sets the text of the given label and optionally a mnemonic.
|
createLabel("Name"); // No mnemonic createLabel("N&ame"); // Mnemonic is 'a' createLabel("Save &as"); // Mnemonic is the second 'a' createLabel("Look&&Feel"); // No mnemonic, text is Look&Feel
Parameters: textWithMnemonic the label's text - may contain an ampersand (&) to mark a mnemonic
Returns: an label with optional mnemonic
TitledBorder
.
createSeparator("Name"); // No mnemonic createSeparator("N&ame"); // Mnemonic is 'a' createSeparator("Save &as"); // Mnemonic is the second 'a' createSeparator("Look&&Feel"); // No mnemonic, text is Look&Feel
Parameters: textWithMnemonic the label's text - may contain an ampersand (&) to mark a mnemonic
Returns: a title label with separator on the side
TitledBorder
.
final int LEFT = SwingConstants.LEFT; createSeparator("Name", LEFT); // No mnemonic createSeparator("N&ame", LEFT); // Mnemonic is 'a' createSeparator("Save &as", LEFT); // Mnemonic is the second 'a' createSeparator("Look&&Feel", LEFT); // No mnemonic, text is Look&Feel
Parameters: textWithMnemonic the label's text -
may contain an ampersand (&) to mark a mnemonic alignment text alignment, one of SwingConstants.LEFT
,
SwingConstants.CENTER
, SwingConstants.RIGHT
Returns: a separator with title label
TitledBorder
.
The label's position is determined by the label's horizontal alignment,
which must be one of:
SwingConstants.LEFT
,
SwingConstants.CENTER
,
SwingConstants.RIGHT
.
TODO: Since this method has been marked public in version 1.0.6, we need to precisely describe the semantic of this method.
TODO: Check if we can relax the constraint for the label alignment and also accept LEADING and TRAILING.
Parameters: label the title label component
Returns: a separator with title label
Throws: NullPointerException if the label is null
IllegalArgumentException if the label's horizontal alignment
is not one of: SwingConstants.LEFT
,
SwingConstants.CENTER
,
SwingConstants.RIGHT
.
Since: 1.0.6
TitledBorder
.
createTitle("Name"); // No mnemonic createTitle("N&ame"); // Mnemonic is 'a' createTitle("Save &as"); // Mnemonic is the second 'a' createTitle("Look&&Feel"); // No mnemonic, text is Look&Feel
Parameters: textWithMnemonic the label's text - may contain an ampersand (&) to mark a mnemonic
Returns: an emphasized title label
Returns: the sole instance of this factory class
Parameters: label the label that gets a mnemonic textWithMnemonic the text with optional mnemonic marker
Since: 1.2