ComponentFactory (JGoodies Forms 1.6 API)
Date: 2012-07-24

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## com.jgoodies.forms.factories
Interface ComponentFactory

All Known Implementing Classes:
  DefaultComponentFactory

    public interface ComponentFactory

An interface that defines the factory methods as used by the `PanelBuilder` and its subclasses.

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 $
Author:
  Karsten Lentzsch
See Also:
  `DefaultComponentFactory`, `PanelBuilder`

Method Summary
`JButton` | `createButton(Action action)` Creates and returns a button that is bound to the given Action.
`JLabel` | `createHeaderLabel(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.
`JLabel` | `createLabel(String textWithMnemonic)` Creates and returns a label with an optional mnemonic.
`JLabel` | `createReadOnlyLabel(String textWithMnemonic)` Creates and returns a label with an optional mnemonic that is intended to label a read-only component.
`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`.

Method Detail

### createButton

    JButton createButton(Action action)

  Creates and returns a button that is bound to the given Action. Useful to return customized buttons, for example, the JGoodies `JGButton` is bound to some custom Action properties.

  Parameters:
    `action` - provides [bound] visual properties for the button
  Returns:
    the created button
  Since:
    1.4

### createLabel

    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

  Parameters:
    `textWithMnemonic` - the label's text - may contain an ampersand (`&`) to mark a mnemonic
  Returns:
    an label with optional mnemonic

### createReadOnlyLabel

    JLabel createReadOnlyLabel(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

    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

  Parameters:
    `textWithMnemonic` - the label's text - may contain an ampersand (`&`) to mark a mnemonic
  Returns:
    an emphasized title label

### createHeaderLabel

    JLabel createHeaderLabel(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

    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

  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 title label with separator on the side

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2002-2012 JGoodies Karsten Lentzsch. All Rights Reserved.