MetalToggleButtonUI (Java SE 9 & JDK 9 )
Keywords: javax.swing.plaf.metal.MetalToggleButtonUI class

Module java.desktop
Package javax.swing.plaf.metal

## Class MetalToggleButtonUI

- java.lang.Object
- - javax.swing.plaf.ComponentUI
  - - javax.swing.plaf.ButtonUI
    - - javax.swing.plaf.basic.BasicButtonUI
      - - javax.swing.plaf.basic.BasicToggleButtonUI
        - - javax.swing.plaf.metal.MetalToggleButtonUI

-     public class MetalToggleButtonUI
      extends BasicToggleButtonUI

  MetalToggleButton implementation

  Warning: Serialized objects of this class will not be compatible with future Swing releases. The current serialization support is appropriate for short term storage or RMI between applications running the same version of Swing. As of 1.4, support for long term storage of all JavaBeans™ has been added to the `java.beans` package. Please see `XMLEncoder`.

- - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `protected Color` | `disabledTextColor` | The color of a disabled text.
    `protected Color` | `focusColor` | The color of a focused toggle button.
    `protected Color` | `selectColor` | The color of a selected button.

    - ### Fields inherited from class javax.swing.plaf.basic.BasicButtonUI

      `defaultTextIconGap, defaultTextShiftOffset`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `MetalToggleButtonUI​()` |

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `static ComponentUI` | `createUI​(JComponent b)` | Constructs the `MetalToogleButtonUI`.
    `protected Color` | `getDisabledTextColor​()` | Returns the color of a disabled text.
    `protected Color` | `getFocusColor​()` | Returns the color of a focused toggle button.
    `protected Color` | `getSelectColor​()` | Returns the color of a selected button.
    `void` | `installDefaults​(AbstractButton b)` | Installs default properties.
    `protected void` | `paintButtonPressed​(Graphics g, AbstractButton b)` | Paints a pressed button.
    `protected void` | `paintFocus​(Graphics g, AbstractButton b, Rectangle viewRect, Rectangle textRect, Rectangle iconRect)` | Paints a focused button.
    `protected void` | `paintIcon​(Graphics g, AbstractButton b, Rectangle iconRect)` | Paints the appropriate icon of the button `b` in the space `iconRect`.
    `protected void` | `paintText​(Graphics g, JComponent c, Rectangle textRect, String text)` | Method which renders the text of the current button.
    `protected void` | `uninstallDefaults​(AbstractButton b)` | Uninstalls default properties.
    `void` | `update​(Graphics g, JComponent c)` | If necessary paints the background of the component, then invokes `paint`.

    - ### Methods inherited from class javax.swing.plaf.basic.BasicButtonUI

      `clearTextShiftOffset, createButtonListener, getBaseline, getBaselineResizeBehavior, getDefaultTextIconGap, getMaximumSize, getMinimumSize, getPreferredSize, installKeyboardActions, installListeners, installUI, paintIcon, paintText, setTextShiftOffset, uninstallKeyboardActions, uninstallListeners, uninstallUI`

    - ### Methods inherited from class javax.swing.plaf.basic.BasicToggleButtonUI

      `getPropertyPrefix, getTextShiftOffset, paint`

    - ### Methods inherited from class javax.swing.plaf.ComponentUI

      `contains, getAccessibleChild, getAccessibleChildrenCount`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### focusColor

          protected Color focusColor

      The color of a focused toggle button.

    - #### selectColor

          protected Color selectColor

      The color of a selected button.

    - #### disabledTextColor

          protected Color disabledTextColor

      The color of a disabled text.

  - ### Constructor Detail

    - #### MetalToggleButtonUI

          public MetalToggleButtonUI​()

  - ### Method Detail

    - #### createUI

          public static ComponentUI createUI​(JComponent b)

      Constructs the `MetalToogleButtonUI`.
      Parameters:
        `b` - a component
      Returns:
        the `MetalToogleButtonUI`.

    - #### installDefaults

          public void installDefaults​(AbstractButton b)

      Description copied from class: `BasicButtonUI`
      Installs default properties.
      Overrides:
        `installDefaults` in class `BasicButtonUI`
      Parameters:
        `b` - an abstract button

    - #### uninstallDefaults

          protected void uninstallDefaults​(AbstractButton b)

      Description copied from class: `BasicButtonUI`
      Uninstalls default properties.
      Overrides:
        `uninstallDefaults` in class `BasicButtonUI`
      Parameters:
        `b` - an abstract button

    - #### getSelectColor

          protected Color getSelectColor​()

      Returns the color of a selected button.
      Returns:
        the color of a selected button

    - #### getDisabledTextColor

          protected Color getDisabledTextColor​()

      Returns the color of a disabled text.
      Returns:
        the color of a disabled text

    - #### getFocusColor

          protected Color getFocusColor​()

      Returns the color of a focused toggle button.
      Returns:
        the color of a focused toggle button

    - #### update

          public void update​(Graphics g,
                             JComponent c)

      If necessary paints the background of the component, then invokes `paint`.
      Overrides:
        `update` in class `ComponentUI`
      Parameters:
        `g` - Graphics to paint to
        `c` - JComponent painting on
      Throws:
        `NullPointerException` - if `g` or `c` is null
      Since:
        1.5
      See Also:
        `ComponentUI.update(java.awt.Graphics, javax.swing.JComponent)`, `ComponentUI.paint(java.awt.Graphics, javax.swing.JComponent)`

    - #### paintButtonPressed

          protected void paintButtonPressed​(Graphics g,
                                            AbstractButton b)

      Description copied from class: `BasicButtonUI`
      Paints a pressed button.
      Overrides:
        `paintButtonPressed` in class `BasicButtonUI`
      Parameters:
        `g` - an instance of `Graphics`
        `b` - an abstract button

    - #### paintText

          protected void paintText​(Graphics g,
                                   JComponent c,
                                   Rectangle textRect,
                                   String text)

      Description copied from class: `BasicButtonUI`
      Method which renders the text of the current button. As of Java 2 platform v 1.4 this method should not be used or overriden. Use the paintText method which takes the AbstractButton argument.
      Overrides:
        `paintText` in class `BasicButtonUI`
      Parameters:
        `g` - an instance of `Graphics`
        `c` - a component
        `textRect` - a bounding rectangle to render the text
        `text` - a string to render

    - #### paintFocus

          protected void paintFocus​(Graphics g,
                                    AbstractButton b,
                                    Rectangle viewRect,
                                    Rectangle textRect,
                                    Rectangle iconRect)

      Description copied from class: `BasicButtonUI`
      Paints a focused button.
      Overrides:
        `paintFocus` in class `BasicButtonUI`
      Parameters:
        `g` - an instance of `Graphics`
        `b` - an abstract button
        `viewRect` - a bounding rectangle to render the button
        `textRect` - a bounding rectangle to render the text
        `iconRect` - a bounding rectangle to render the icon

    - #### paintIcon

          protected void paintIcon​(Graphics g,
                                   AbstractButton b,
                                   Rectangle iconRect)

      Paints the appropriate icon of the button `b` in the space `iconRect`.
      Overrides:
        `paintIcon` in class `BasicToggleButtonUI`
      Parameters:
        `g` - Graphics to paint to
        `b` - Button to render for
        `iconRect` - space to render in
      Throws:
        `NullPointerException` - if any of the arguments are null.
      Since:
        1.5