Package com.jgoodies.forms.factories
Interface ComponentFactory
-
- All Known Implementing Classes:
DefaultComponentFactory
public interface ComponentFactory
An interface that defines the factory methods as used by theFormBuilder
,ListViewBuilder
, and other builders.The String arguments passed to the methods
#createLabel(String)
,#createTitle(String)
, and#createSeparator(String, int)
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.10 $
- See Also:
DefaultComponentFactory
,FormBuilder
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description javax.swing.JButton
createButton(javax.swing.Action action)
Creates and returns a button that is bound to the given Action.javax.swing.JLabel
createHeaderLabel(java.lang.String markedText)
Creates and returns a label intended for pane headers that uses a larger font than the control font and a special foreground color.javax.swing.JLabel
createLabel(java.lang.String textWithMnemonic)
Creates and returns a label with an optional mnemonic.javax.swing.JLabel
createReadOnlyLabel(java.lang.String textWithMnemonic)
Creates and returns a label with an optional mnemonic that is intended to label a read-only component.javax.swing.JComponent
createSeparator(java.lang.String textWithMnemonic, int alignment)
Creates and returns a labeled separator.javax.swing.JLabel
createTitle(java.lang.String textWithMnemonic)
Creates and returns a title label that uses the foreground color and font of aTitledBorder
.
-
-
-
Method Detail
-
createButton
javax.swing.JButton createButton(javax.swing.Action action)
Creates and returns a button that is bound to the given Action. Useful to return customized buttons, for example, the JGoodiesJGButton
is bound to some custom Action properties.- Parameters:
action
- provides [bound] visual properties for the button- Returns:
- the created button
- Since:
- 1.4
-
createLabel
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
- Parameters:
textWithMnemonic
- the label's text - may contain an ampersand (&) to mark a mnemonic- Returns:
- an label with optional mnemonic
-
createReadOnlyLabel
javax.swing.JLabel createReadOnlyLabel(java.lang.String textWithMnemonic)
Creates and returns a label with an optional mnemonic that is intended to label a read-only component.createReadOnlyLabel("Name"); // No mnemonic createReadOnlyLabel("N&ame"); // Mnemonic is 'a' createReadOnlyLabel("Save &as"); // Mnemonic is the second 'a' createReadOnlyLabel("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 intended for read-only components
- Since:
- 1.3
-
createTitle
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
- Parameters:
textWithMnemonic
- the label's text - may contain an ampersand (&) to mark a mnemonic- Returns:
- an emphasized title label
-
createHeaderLabel
javax.swing.JLabel createHeaderLabel(java.lang.String markedText)
Creates and returns a label intended for pane headers that uses a larger font than the control font and a special foreground color. For example, on the Windows platform this method may use the font, size, and color of the TaskDialog main instruction as described by the MS User Experience Guide.If the label text is marked with the mnemonic marker '&', the mnemonic and mnemonic index will be configured. For example if
markedText
is "&Charge Codes", the text will be set to "Charge Codes", the mnemonic is 'C', and the mnemonic index is 0.A simple implementation may just delegate to
createTitle(String)
.- Parameters:
markedText
- the label text with optional mnemonic marker- Returns:
- a label intended for pane headers
- Since:
- 1.6
-
createSeparator
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
- 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 title label with separator on the side
-
-