Java™ Platform
Standard Ed. 6

javax.swing.plaf.metal
Class MetalTheme

java.lang.Object
  extended by javax.swing.plaf.metal.MetalTheme
Direct Known Subclasses:
DefaultMetalTheme

public abstract class MetalTheme
extends Object

MetalTheme provides the color palette and fonts used by the Java Look and Feel.

MetalTheme is abstract, see DefaultMetalTheme and OceanTheme for concrete implementations.

MetalLookAndFeel maintains the current theme that the the ComponentUI implementations for metal use. Refer to MetalLookAndFeel.setCurrentTheme(MetalTheme) for details on changing the current theme.

MetalTheme provides a number of public methods for getting colors. These methods are implemented in terms of a handful of protected abstract methods. A subclass need only override the protected abstract methods (getPrimary1, getPrimary2, getPrimary3, getSecondary1, getSecondary2, and getSecondary3); although a subclass may override the other public methods for more control over the set of colors that are used.

Concrete implementations of MetalTheme must return non-null values from all methods. While the behavior of returning null is not specified, returning null will result in incorrect behavior.

It is strongly recommended that subclasses return completely opaque colors. To do otherwise may result in rendering problems, such as visual garbage.

See Also:
DefaultMetalTheme, OceanTheme, MetalLookAndFeel.setCurrentTheme(javax.swing.plaf.metal.MetalTheme)

Constructor Summary
MetalTheme()
           
 
Method Summary
 void addCustomEntriesToTable(UIDefaults table)
          Adds values specific to this theme to the defaults table.
 ColorUIResource getAcceleratorForeground()
          Returns the accelerator foreground color.
 ColorUIResource getAcceleratorSelectedForeground()
          Returns the accelerator selected foreground color.
protected  ColorUIResource getBlack()
          Returns the black color.
 ColorUIResource getControl()
          Returns the control color.
 ColorUIResource getControlDarkShadow()
          Returns the control dark shadow color.
 ColorUIResource getControlDisabled()
          Returns the control disabled color.
 ColorUIResource getControlHighlight()
          Returns the control highlight color.
 ColorUIResource getControlInfo()
          Returns the control info color.
 ColorUIResource getControlShadow()
          Returns the control shadow color.
 ColorUIResource getControlTextColor()
          Returns the control text color.
abstract  FontUIResource getControlTextFont()
          Returns the control text font.
 ColorUIResource getDesktopColor()
          Returns the desktop color.
 ColorUIResource getFocusColor()
          Returns the focus color.
 ColorUIResource getHighlightedTextColor()
          Returns the highlighted text color.
 ColorUIResource getInactiveControlTextColor()
          Returns the inactive control text color.
 ColorUIResource getInactiveSystemTextColor()
          Returns the inactive system text color.
 ColorUIResource getMenuBackground()
          Returns the menu background color.
 ColorUIResource getMenuDisabledForeground()
          Returns the menu disabled foreground color.
 ColorUIResource getMenuForeground()
          Returns the menu foreground color.
 ColorUIResource getMenuSelectedBackground()
          Returns the menu selected background color.
 ColorUIResource getMenuSelectedForeground()
          Returns the menu selected foreground color.
abstract  FontUIResource getMenuTextFont()
          Returns the menu text font.
abstract  String getName()
          Returns the name of this theme.
protected abstract  ColorUIResource getPrimary1()
          Returns the primary 1 color.
protected abstract  ColorUIResource getPrimary2()
          Returns the primary 2 color.
protected abstract  ColorUIResource getPrimary3()
          Returns the primary 3 color.
 ColorUIResource getPrimaryControl()
          Returns the primary control color.
 ColorUIResource getPrimaryControlDarkShadow()
          Returns the primary control dark shadow color.
 ColorUIResource getPrimaryControlHighlight()
          Returns the primary control highlight color.
 ColorUIResource getPrimaryControlInfo()
          Returns the primary control info color.
 ColorUIResource getPrimaryControlShadow()
          Returns the primary control shadow color.
protected abstract  ColorUIResource getSecondary1()
          Returns the secondary 1 color.
protected abstract  ColorUIResource getSecondary2()
          Returns the secondary 2 color.
protected abstract  ColorUIResource getSecondary3()
          Returns the secondary 3 color.
 ColorUIResource getSeparatorBackground()
          Returns the separator background color.
 ColorUIResource getSeparatorForeground()
          Returns the separator foreground color.
abstract  FontUIResource getSubTextFont()
          Returns the sub-text font.
 ColorUIResource getSystemTextColor()
          Returns the system text color.
abstract  FontUIResource getSystemTextFont()
          Returns the system text font.
 ColorUIResource getTextHighlightColor()
          Returns the text highlight color.
 ColorUIResource getUserTextColor()
          Returns the user text color.
abstract  FontUIResource getUserTextFont()
          Returns the user text font.
protected  ColorUIResource getWhite()
          Returns the white color.
 ColorUIResource getWindowBackground()
          Returns the window background color.
 ColorUIResource getWindowTitleBackground()
          Returns the window title background color.
abstract  FontUIResource getWindowTitleFont()
          Returns the window title font.
 ColorUIResource getWindowTitleForeground()
          Returns the window title foreground color.
 ColorUIResource getWindowTitleInactiveBackground()
          Returns the window title inactive background color.
 ColorUIResource getWindowTitleInactiveForeground()
          Returns the window title inactive foreground color.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MetalTheme

public MetalTheme()
Method Detail

getName

public abstract String getName()
Returns the name of this theme.

Returns:
the name of this theme

getPrimary1

protected abstract ColorUIResource getPrimary1()
Returns the primary 1 color.

Returns:
the primary 1 color

getPrimary2

protected abstract ColorUIResource getPrimary2()
Returns the primary 2 color.

Returns:
the primary 2 color

getPrimary3

protected abstract ColorUIResource getPrimary3()
Returns the primary 3 color.

Returns:
the primary 3 color

getSecondary1

protected abstract ColorUIResource getSecondary1()
Returns the secondary 1 color.

Returns:
the secondary 1 color

getSecondary2

protected abstract ColorUIResource getSecondary2()
Returns the secondary 2 color.

Returns:
the secondary 2 color

getSecondary3

protected abstract ColorUIResource getSecondary3()
Returns the secondary 3 color.

Returns:
the secondary 3 color

getControlTextFont

public abstract FontUIResource getControlTextFont()
Returns the control text font.

Returns:
the control text font

getSystemTextFont

public abstract FontUIResource getSystemTextFont()
Returns the system text font.

Returns:
the system text font

getUserTextFont

public abstract FontUIResource getUserTextFont()
Returns the user text font.

Returns:
the user text font

getMenuTextFont

public abstract FontUIResource getMenuTextFont()
Returns the menu text font.

Returns:
the menu text font

getWindowTitleFont

public abstract FontUIResource getWindowTitleFont()
Returns the window title font.

Returns:
the window title font

getSubTextFont

public abstract FontUIResource getSubTextFont()
Returns the sub-text font.

Returns:
the sub-text font

getWhite

protected ColorUIResource getWhite()
Returns the white color. This returns opaque white (0xFFFFFFFF).

Returns:
the white color

getBlack

protected ColorUIResource getBlack()
Returns the black color. This returns opaque black (0xFF000000).

Returns:
the black color

getFocusColor

public ColorUIResource getFocusColor()
Returns the focus color. This returns the value of getPrimary2().

Returns:
the focus color

getDesktopColor

public ColorUIResource getDesktopColor()
Returns the desktop color. This returns the value of getPrimary2().

Returns:
the desktop color

getControl

public ColorUIResource getControl()
Returns the control color. This returns the value of getSecondary3().

Returns:
the control color

getControlShadow

public ColorUIResource getControlShadow()
Returns the control shadow color. This returns the value of getSecondary2().

Returns:
the control shadow color

getControlDarkShadow

public ColorUIResource getControlDarkShadow()
Returns the control dark shadow color. This returns the value of getSecondary1().

Returns:
the control dark shadow color

getControlInfo

public ColorUIResource getControlInfo()
Returns the control info color. This returns the value of getBlack().

Returns:
the control info color

getControlHighlight

public ColorUIResource getControlHighlight()
Returns the control highlight color. This returns the value of getWhite().

Returns:
the control highlight color

getControlDisabled

public ColorUIResource getControlDisabled()
Returns the control disabled color. This returns the value of getSecondary2().

Returns:
the control disabled color

getPrimaryControl

public ColorUIResource getPrimaryControl()
Returns the primary control color. This returns the value of getPrimary3().

Returns:
the primary control color

getPrimaryControlShadow

public ColorUIResource getPrimaryControlShadow()
Returns the primary control shadow color. This returns the value of getPrimary2().

Returns:
the primary control shadow color

getPrimaryControlDarkShadow

public ColorUIResource getPrimaryControlDarkShadow()
Returns the primary control dark shadow color. This returns the value of getPrimary1().

Returns:
the primary control dark shadow color

getPrimaryControlInfo

public ColorUIResource getPrimaryControlInfo()
Returns the primary control info color. This returns the value of getBlack().

Returns:
the primary control info color

getPrimaryControlHighlight

public ColorUIResource getPrimaryControlHighlight()
Returns the primary control highlight color. This returns the value of getWhite().

Returns:
the primary control highlight color

getSystemTextColor

public ColorUIResource getSystemTextColor()
Returns the system text color. This returns the value of getBlack().

Returns:
the system text color

getControlTextColor

public ColorUIResource getControlTextColor()
Returns the control text color. This returns the value of getControlInfo().

Returns:
the control text color

getInactiveControlTextColor

public ColorUIResource getInactiveControlTextColor()
Returns the inactive control text color. This returns the value of getControlDisabled().

Returns:
the inactive control text color

getInactiveSystemTextColor

public ColorUIResource getInactiveSystemTextColor()
Returns the inactive system text color. This returns the value of getSecondary2().

Returns:
the inactive system text color

getUserTextColor

public ColorUIResource getUserTextColor()
Returns the user text color. This returns the value of getBlack().

Returns:
the user text color

getTextHighlightColor

public ColorUIResource getTextHighlightColor()
Returns the text highlight color. This returns the value of getPrimary3().

Returns:
the text highlight color

getHighlightedTextColor

public ColorUIResource getHighlightedTextColor()
Returns the highlighted text color. This returns the value of getControlTextColor().

Returns:
the highlighted text color

getWindowBackground

public ColorUIResource getWindowBackground()
Returns the window background color. This returns the value of getWhite().

Returns:
the window background color

getWindowTitleBackground

public ColorUIResource getWindowTitleBackground()
Returns the window title background color. This returns the value of getPrimary3().

Returns:
the window title background color

getWindowTitleForeground

public ColorUIResource getWindowTitleForeground()
Returns the window title foreground color. This returns the value of getBlack().

Returns:
the window title foreground color

getWindowTitleInactiveBackground

public ColorUIResource getWindowTitleInactiveBackground()
Returns the window title inactive background color. This returns the value of getSecondary3().

Returns:
the window title inactive background color

getWindowTitleInactiveForeground

public ColorUIResource getWindowTitleInactiveForeground()
Returns the window title inactive foreground color. This returns the value of getBlack().

Returns:
the window title inactive foreground color

getMenuBackground

public ColorUIResource getMenuBackground()
Returns the menu background color. This returns the value of getSecondary3().

Returns:
the menu background color

getMenuForeground

public ColorUIResource getMenuForeground()
Returns the menu foreground color. This returns the value of getBlack().

Returns:
the menu foreground color

getMenuSelectedBackground

public ColorUIResource getMenuSelectedBackground()
Returns the menu selected background color. This returns the value of getPrimary2().

Returns:
the menu selected background color

getMenuSelectedForeground

public ColorUIResource getMenuSelectedForeground()
Returns the menu selected foreground color. This returns the value of getBlack().

Returns:
the menu selected foreground color

getMenuDisabledForeground

public ColorUIResource getMenuDisabledForeground()
Returns the menu disabled foreground color. This returns the value of getSecondary2().

Returns:
the menu disabled foreground color

getSeparatorBackground

public ColorUIResource getSeparatorBackground()
Returns the separator background color. This returns the value of getWhite().

Returns:
the separator background color

getSeparatorForeground

public ColorUIResource getSeparatorForeground()
Returns the separator foreground color. This returns the value of getPrimary1().

Returns:
the separator foreground color

getAcceleratorForeground

public ColorUIResource getAcceleratorForeground()
Returns the accelerator foreground color. This returns the value of getPrimary1().

Returns:
the accelerator foreground color

getAcceleratorSelectedForeground

public ColorUIResource getAcceleratorSelectedForeground()
Returns the accelerator selected foreground color. This returns the value of getBlack().

Returns:
the accelerator selected foreground color

addCustomEntriesToTable

public void addCustomEntriesToTable(UIDefaults table)
Adds values specific to this theme to the defaults table. This method is invoked when the look and feel defaults are obtained from MetalLookAndFeel.

This implementation does nothing; it is provided for subclasses that wish to customize the defaults table.

Parameters:
table - the UIDefaults to add the values to
See Also:
MetalLookAndFeel.getDefaults()

Java™ Platform
Standard Ed. 6

Submit a bug or feature
For further API reference and developer documentation, see Java SE Developer Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.

Copyright 2008 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.