com.jgoodies.forms.factories
Class DefaultComponentFactory
- ComponentFactory
public class DefaultComponentFactory
A singleton implementaton of the
ComponentFactory
interface
that creates UI components as required by the
PanelBuilder
.
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".
JLabel | createLabel(String textWithMnemonic) - Creates and returns a label with an optional mnemonic.
|
JComponent | createSeparator(JLabel label) - Creates and returns a labeled separator.
|
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.
|
JLabel | createTitle(String textWithMnemonic) - Creates and returns a title label that uses the foreground color
and font of a
TitledBorder .
|
static DefaultComponentFactory | getInstance() - Returns the sole instance of this factory class.
|
createLabel
public 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
- createLabel in interface ComponentFactory
textWithMnemonic
- the label's text -
may contain an ampersand (&) to mark a mnemonic
- an label with optional mnemonic
createSeparator
public JComponent createSeparator(JLabel label)
Creates and returns a labeled separator. Useful to separate
paragraphs in a panel, which is often a better choice than a
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.
label
- the title label component
- a separator with title label
createSeparator
public JComponent createSeparator(String textWithMnemonic)
Creates and returns a labeled separator with the label in the left-hand
side. Useful to separate paragraphs in a panel; often a better choice
than a
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
textWithMnemonic
- the label's text -
may contain an ampersand (&) to mark a mnemonic
- a title label with separator on the side
createSeparator
public JComponent createSeparator(String textWithMnemonic,
int alignment)
Creates and returns a labeled separator. Useful to separate
paragraphs in a panel, which is often a better choice than a
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
- createSeparator in interface ComponentFactory
textWithMnemonic
- the label's text -
may contain an ampersand (&) to mark a mnemonicalignment
- text alignment, one of SwingConstants.LEFT
,
SwingConstants.CENTER
, SwingConstants.RIGHT
- a separator with title label
createTitle
public 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
- createTitle in interface ComponentFactory
textWithMnemonic
- the label's text -
may contain an ampersand (&) to mark a mnemonic
- an emphasized title label
getInstance
public static DefaultComponentFactory getInstance()
Returns the sole instance of this factory class.
- the sole instance of this factory class
Copyright © 2002-2007 JGoodies Karsten Lentzsch. All Rights Reserved.