ColorType (Java Platform SE 8 )
Keywords: javax.swing.plaf.synth.ColorType class
Date: 2026-01-21

javax.swing.plaf.synth

## Class ColorType

- java.lang.Object
- - javax.swing.plaf.synth.ColorType

-     public class ColorType
      extends Object

  A typesafe enumeration of colors that can be fetched from a style.

  Each `SynthStyle` has a set of `ColorType`s that are accessed by way of the `SynthStyle.getColor(SynthContext, ColorType)` method. `SynthStyle`'s `installDefaults` will install the `FOREGROUND` color as the foreground of the Component, and the `BACKGROUND` color to the background of the component (assuming that you have not explicitly specified a foreground and background color). Some components support more color based properties, for example `JList` has the property `selectionForeground` which will be mapped to `FOREGROUND` with a component state of `SynthConstants.SELECTED`.

  The following example shows a custom `SynthStyle` that returns a red Color for the `DISABLED` state, otherwise a black color.

       class MyStyle extends SynthStyle {
           private Color disabledColor = new ColorUIResource(Color.RED);
           private Color color = new ColorUIResource(Color.BLACK);
           protected Color getColorForState(SynthContext context, ColorType type){
               if (context.getComponentState() == SynthConstants.DISABLED) {
                   return disabledColor;
               }
               return color;
           }
       }

  Since:
    1.5

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static ColorType` | `BACKGROUND` ColorType for the background of a region.
    `static ColorType` | `FOCUS` ColorType for the focus.
    `static ColorType` | `FOREGROUND` ColorType for the foreground of a region.
    `static int` | `MAX_COUNT` Maximum number of `ColorType`s.
    `static ColorType` | `TEXT_BACKGROUND` ColorType for the background of a region.
    `static ColorType` | `TEXT_FOREGROUND` ColorType for the foreground of a region.

  - ### Constructor Summary

    Constructors
    Modifier | Constructor and Description
    --- | ---
    `protected` | `ColorType(String description)` Creates a new ColorType with the specified description.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `int` | `getID()` Returns a unique id, as an integer, for this ColorType.
    `String` | `toString()` Returns the textual description of this `ColorType`.

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

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

- - ### Field Detail

    - #### FOREGROUND

          public static final ColorType FOREGROUND

      ColorType for the foreground of a region.

    - #### BACKGROUND

          public static final ColorType BACKGROUND

      ColorType for the background of a region.

    - #### TEXT_FOREGROUND

          public static final ColorType TEXT_FOREGROUND

      ColorType for the foreground of a region.

    - #### TEXT_BACKGROUND

          public static final ColorType TEXT_BACKGROUND

      ColorType for the background of a region.

    - #### FOCUS

          public static final ColorType FOCUS

      ColorType for the focus.

    - #### MAX_COUNT

          public static final int MAX_COUNT

      Maximum number of `ColorType`s.

  - ### Constructor Detail

    - #### ColorType

          protected ColorType(String description)

      Creates a new ColorType with the specified description.
      Parameters:
        `description` - String description of the ColorType.

  - ### Method Detail

    - #### getID

          public final int getID()

      Returns a unique id, as an integer, for this ColorType.
      Returns:
        a unique id, as an integer, for this ColorType.

    - #### toString

          public String toString()

      Returns the textual description of this `ColorType`. This is the same value that the `ColorType` was created with.
      Overrides:
        `toString` in class `Object`
      Returns:
        the description of the string

Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2026, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.