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

## org.jdesktop.swingx.prompt
Class PromptSupport

    java.lang.Object
      org.jdesktop.swingx.prompt.PromptSupport

    public final class PromptSupport

extends java.lang.Object

Sets prompt text, foreground, background and `PromptSupport.FocusBehavior` properties on a JTextComponent by calling `JComponent.putClientProperty(Object, Object)`. These properties are used by `PromptTextUI` instances to render the prompt of a text component.

This class is used by `JXTextField`, `JXFormattedTextField` and `JXTextArea` to get and set prompt properties. `PromptTextUI` retrieves these properties using PromptSupport.

Author:
  Peter Weishapl , Karl Schaefer
See Also:
  `JXTextField`, `JXFormattedTextField`, `JXTextArea`, `PromptTextUI`

Nested Class Summary
`static class` | `PromptSupport.FocusBehavior` Determines how the `JTextComponent` is rendered when focused and no text is present.

Field Summary
`static java.lang.String` | `BACKGROUND` The prompt background property.
`static java.lang.String` | `BACKGROUND_PAINTER` The prompt background property.
`static java.lang.String` | `FOCUS_BEHAVIOR` The focus behavior property.
`static java.lang.String` | `FONT_STYLE` The font style property, if different from the components font.
`static java.lang.String` | `FOREGROUND` The color of the prompt text property.
`static java.lang.String` | `PROMPT` The prompt text property.

Method Summary
`static java.awt.Color` | `getBackground(javax.swing.text.JTextComponent textComponent)` Get the background color of the `textComponent`, when no text is present.
`static
`<T extends javax.swing.text.JTextComponent> Painter<? super T>`
` | `getBackgroundPainter(T textComponent)` Get the background painter of the `textComponent`, when no text is present.
`static PromptSupport.FocusBehavior` | `getFocusBehavior(javax.swing.text.JTextComponent textComponent)` Get the `PromptSupport.FocusBehavior` of `textComponent`.
`static java.lang.Integer` | `getFontStyle(javax.swing.text.JTextComponent textComponent)` Returns the font style of the prompt text, or `null` if the prompt's font style should not differ from the `textComponent`s font.
`static java.awt.Color` | `getForeground(javax.swing.text.JTextComponent textComponent)` Get the foreground color of the prompt text.
`static java.lang.String` | `getPrompt(javax.swing.text.JTextComponent textComponent)` Get the prompt text of `textComponent`.
`static void` | `init(java.lang.String promptText, java.awt.Color promptForeground, java.awt.Color promptBackground, javax.swing.text.JTextComponent textComponent)` Convenience method to set the `promptText` and `promptTextColor` on a `JTextComponent`.
`static void` | `setBackground(java.awt.Color background, javax.swing.text.JTextComponent textComponent)` Sets the prompts background color on `textComponent` and repaints the component to reflect the changes.
`static
`<T extends javax.swing.text.JTextComponent> void`
` | `setBackgroundPainter(Painter<? super T> background, T textComponent)` Sets the prompts background painter on `textComponent` and repaints the component to reflect the changes.
`static void` | `setFocusBehavior(PromptSupport.FocusBehavior focusBehavior, javax.swing.text.JTextComponent textComponent)` Sets the `PromptSupport.FocusBehavior` on `textComponent` and repaints the component to reflect the changes, if it is the focus owner.
`static void` | `setFontStyle(java.lang.Integer fontStyle, javax.swing.text.JTextComponent textComponent)` Set the style of the prompt font, if different from the `textComponent`s font.
`static void` | `setForeground(java.awt.Color promptTextColor, javax.swing.text.JTextComponent textComponent)` Sets the foreground color of the prompt on `textComponent` and repaints the component to reflect the changes.
`static void` | `setPrompt(java.lang.String promptText, javax.swing.text.JTextComponent textComponent)` Sets the prompt text on `textComponent`.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### PROMPT

    public static final java.lang.String PROMPT

  The prompt text property.

  See Also:
    Constant Field Values

### FOREGROUND

    public static final java.lang.String FOREGROUND

  The color of the prompt text property.

  See Also:
    Constant Field Values

### BACKGROUND

    public static final java.lang.String BACKGROUND

  The prompt background property.

  See Also:
    Constant Field Values

### BACKGROUND_PAINTER

    public static final java.lang.String BACKGROUND_PAINTER

  The prompt background property.

  See Also:
    Constant Field Values

### FOCUS_BEHAVIOR

    public static final java.lang.String FOCUS_BEHAVIOR

  The focus behavior property.

  See Also:
    Constant Field Values

### FONT_STYLE

    public static final java.lang.String FONT_STYLE

  The font style property, if different from the components font.

  See Also:
    Constant Field Values

Method Detail

### init

    public static void init(java.lang.String promptText,
                            java.awt.Color promptForeground,
                            java.awt.Color promptBackground,
                            javax.swing.text.JTextComponent textComponent)

  Convenience method to set the `promptText` and `promptTextColor` on a `JTextComponent`.

  If `stayOnUIChange` is true, The prompt support will stay installed, even when the text components UI changes. See `#install(JTextComponent, boolean)`.

  Parameters:
    `promptText` -
    `promptForeground` -
    `promptBackground` -
    `textComponent` -

### getFocusBehavior

    public static PromptSupport.FocusBehavior getFocusBehavior(javax.swing.text.JTextComponent textComponent)

  Get the `PromptSupport.FocusBehavior` of `textComponent`.

  Parameters:
    `textComponent` -
  Returns:
    the `PromptSupport.FocusBehavior` or `PromptSupport.FocusBehavior.HIDE_PROMPT` if none is set

### setFocusBehavior

    public static void setFocusBehavior(PromptSupport.FocusBehavior focusBehavior,
                                        javax.swing.text.JTextComponent textComponent)

  Sets the `PromptSupport.FocusBehavior` on `textComponent` and repaints the component to reflect the changes, if it is the focus owner.

  Parameters:
    `focusBehavior` -
    `textComponent` -

### getPrompt

    public static java.lang.String getPrompt(javax.swing.text.JTextComponent textComponent)

  Get the prompt text of `textComponent`.

  Parameters:
    `textComponent` -
  Returns:
    the prompt text

### setPrompt

    public static void setPrompt(java.lang.String promptText,
                                 javax.swing.text.JTextComponent textComponent)

  Sets the prompt text on `textComponent`. Also sets the tooltip text to the prompt text if `textComponent` has no tooltip text or the current tooltip text is the same as the current prompt text.

  Calls `#install(JTextComponent)` to ensure that the `textComponent`s UI is wrapped by the appropriate `PromptTextUI`.

  Parameters:
    `promptText` -
    `textComponent` -

### getForeground

    public static java.awt.Color getForeground(javax.swing.text.JTextComponent textComponent)

  Get the foreground color of the prompt text. If no color has been set, the `textComponent`s disabled text color will be returned.

  Parameters:
    `textComponent` -
  Returns:
    the color of the prompt text or `JTextComponent.getDisabledTextColor()` if none is set

### setForeground

    public static void setForeground(java.awt.Color promptTextColor,
                                     javax.swing.text.JTextComponent textComponent)

  Sets the foreground color of the prompt on `textComponent` and repaints the component to reflect the changes. This color will be used when no text is present.

  Parameters:
    `promptTextColor` -
    `textComponent` -

### getBackground

    public static java.awt.Color getBackground(javax.swing.text.JTextComponent textComponent)

  Get the background color of the `textComponent`, when no text is present. If no color has been set, the `textComponent`s background color color will be returned.

  Parameters:
    `textComponent` -
  Returns:
    the the background color of the text component, when no text is present

### setBackground

    public static void setBackground(java.awt.Color background,
                                     javax.swing.text.JTextComponent textComponent)

  Sets the prompts background color on `textComponent` and repaints the component to reflect the changes. This background color will only be used when no text is present.

  Calls `#install(JTextComponent)` to ensure that the `textComponent`s UI is wrapped by the appropriate `PromptTextUI`.

  Parameters:
    `background` -
    `textComponent` -

### getBackgroundPainter

    public static <T extends javax.swing.text.JTextComponent> Painter<? super T> getBackgroundPainter(T textComponent)

  Get the background painter of the `textComponent`, when no text is present. If no painter has been set, then `null` will be returned.

  Parameters:
    `textComponent` -
  Returns:
    the background painter of the text component

### setBackgroundPainter

    public static <T extends javax.swing.text.JTextComponent> void setBackgroundPainter(Painter<? super T> background,
                                                                                        T textComponent)

  Sets the prompts background painter on `textComponent` and repaints the component to reflect the changes. This background painter will only be used when no text is present.

  Calls `#install(JTextComponent)` to ensure that the `textComponent`s UI is wrapped by the appropriate `PromptTextUI`.

  Parameters:
    `background` -
    `textComponent` -

### setFontStyle

    public static void setFontStyle(java.lang.Integer fontStyle,
                                    javax.swing.text.JTextComponent textComponent)

  Set the style of the prompt font, if different from the `textComponent`s font.

  Allowed values are `Font.PLAIN`, `Font.ITALIC`, `Font.BOLD`, a combination of `Font.BOLD` and `Font.ITALIC` or `null` if the prompt font should be the same as the `textComponent`s font.

  Parameters:
    `fontStyle` -
    `textComponent` -

### getFontStyle

    public static java.lang.Integer getFontStyle(javax.swing.text.JTextComponent textComponent)

  Returns the font style of the prompt text, or `null` if the prompt's font style should not differ from the `textComponent`s font.

  Parameters:
    `textComponent` -
  Returns:
    font style of the prompt text

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 © 2010. All Rights Reserved.