Package com.jgoodies.forms.factories
Class DefaultComponentFactory
- java.lang.Object
-
- com.jgoodies.forms.factories.DefaultComponentFactory
-
- All Implemented Interfaces:
ComponentFactory
public final class DefaultComponentFactory extends java.lang.Object implements ComponentFactory
A singleton implementation of theComponentFactoryinterface that creates UI components as required by thePanelBuilder.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$
- Author:
- Karsten Lentzsch
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description javax.swing.JLabelcreateLabel(java.lang.String textWithMnemonic)Creates and returns a label with an optional mnemonic.javax.swing.JComponentcreateSeparator(java.lang.String textWithMnemonic)Creates and returns a labeled separator with the label in the left-hand side.javax.swing.JComponentcreateSeparator(java.lang.String textWithMnemonic, int alignment)Creates and returns a labeled separator.javax.swing.JComponentcreateSeparator(javax.swing.JLabel label)Creates and returns a labeled separator.javax.swing.JLabelcreateTitle(java.lang.String textWithMnemonic)Creates and returns a title label that uses the foreground color and font of aTitledBorder.static DefaultComponentFactorygetInstance()Returns the sole instance of this factory class.
-
-
-
Method Detail
-
getInstance
public static DefaultComponentFactory getInstance()
Returns the sole instance of this factory class.- Returns:
- the sole instance of this factory class
-
createLabel
public javax.swing.JLabel createLabel(java.lang.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- Specified by:
createLabelin interfaceComponentFactory- Parameters:
textWithMnemonic- the label's text - may contain an ampersand (&) to mark a mnemonic- Returns:
- an label with optional mnemonic
-
createTitle
public javax.swing.JLabel createTitle(java.lang.String textWithMnemonic)
Creates and returns a title label that uses the foreground color and font of aTitledBorder.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- Specified by:
createTitlein interfaceComponentFactory- Parameters:
textWithMnemonic- the label's text - may contain an ampersand (&) to mark a mnemonic- Returns:
- an emphasized title label
-
createSeparator
public javax.swing.JComponent createSeparator(java.lang.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 aTitledBorder.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
-
createSeparator
public javax.swing.JComponent createSeparator(java.lang.String textWithMnemonic, int alignment)Creates and returns a labeled separator. Useful to separate paragraphs in a panel, which is often a better choice than aTitledBorder.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- Specified by:
createSeparatorin interfaceComponentFactory- Parameters:
textWithMnemonic- the label's text - may contain an ampersand (&) to mark a mnemonicalignment- text alignment, one ofSwingConstants.LEFT,SwingConstants.CENTER,SwingConstants.RIGHT- Returns:
- a separator with title label
-
createSeparator
public javax.swing.JComponent createSeparator(javax.swing.JLabel label)
Creates and returns a labeled separator. Useful to separate paragraphs in a panel, which is often a better choice than aTitledBorder.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:
java.lang.NullPointerException- if the label isnull- Since:
- 1.0.6
-
-