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.
Modifier | Constructor | Description |
---|---|---|
protected |
Constructor for subclasses to call. |
Modifier and Type | Method | Description |
---|---|---|
void |
addCustomEntriesToTable |
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. |
protected MetalTheme()
public abstract String getName()
protected abstract ColorUIResource getPrimary1()
protected abstract ColorUIResource getPrimary2()
protected abstract ColorUIResource getPrimary3()
protected abstract ColorUIResource getSecondary1()
protected abstract ColorUIResource getSecondary2()
protected abstract ColorUIResource getSecondary3()
public abstract FontUIResource getControlTextFont()
public abstract FontUIResource getSystemTextFont()
public abstract FontUIResource getUserTextFont()
public abstract FontUIResource getMenuTextFont()
public abstract FontUIResource getWindowTitleFont()
public abstract FontUIResource getSubTextFont()
protected ColorUIResource getWhite()
0xFFFFFFFF
).protected ColorUIResource getBlack()
0xFF000000
).public ColorUIResource getFocusColor()
getPrimary2()
.public ColorUIResource getDesktopColor()
getPrimary2()
.public ColorUIResource getControl()
getSecondary3()
.public ColorUIResource getControlShadow()
getSecondary2()
.public ColorUIResource getControlDarkShadow()
getSecondary1()
.public ColorUIResource getControlInfo()
getBlack()
.public ColorUIResource getControlHighlight()
getWhite()
.public ColorUIResource getControlDisabled()
getSecondary2()
.public ColorUIResource getPrimaryControl()
getPrimary3()
.public ColorUIResource getPrimaryControlShadow()
getPrimary2()
.public ColorUIResource getPrimaryControlDarkShadow()
getPrimary1()
.public ColorUIResource getPrimaryControlInfo()
getBlack()
.public ColorUIResource getPrimaryControlHighlight()
getWhite()
.public ColorUIResource getSystemTextColor()
getBlack()
.public ColorUIResource getControlTextColor()
getControlInfo()
.public ColorUIResource getInactiveControlTextColor()
getControlDisabled()
.public ColorUIResource getInactiveSystemTextColor()
getSecondary2()
.public ColorUIResource getUserTextColor()
getBlack()
.public ColorUIResource getTextHighlightColor()
getPrimary3()
.public ColorUIResource getHighlightedTextColor()
getControlTextColor()
.public ColorUIResource getWindowBackground()
getWhite()
.public ColorUIResource getWindowTitleBackground()
getPrimary3()
.public ColorUIResource getWindowTitleForeground()
getBlack()
.public ColorUIResource getWindowTitleInactiveBackground()
getSecondary3()
.public ColorUIResource getWindowTitleInactiveForeground()
getBlack()
.public ColorUIResource getMenuBackground()
getSecondary3()
.public ColorUIResource getMenuForeground()
getBlack()
.public ColorUIResource getMenuSelectedBackground()
getPrimary2()
.public ColorUIResource getMenuSelectedForeground()
getBlack()
.public ColorUIResource getMenuDisabledForeground()
getSecondary2()
.public ColorUIResource getSeparatorBackground()
getWhite()
.public ColorUIResource getSeparatorForeground()
getPrimary1()
.public ColorUIResource getAcceleratorForeground()
getPrimary1()
.public ColorUIResource getAcceleratorSelectedForeground()
getBlack()
.public void addCustomEntriesToTable(UIDefaults table)
MetalLookAndFeel
. This implementation does nothing; it is provided for subclasses that wish to customize the defaults table.
table
- the UIDefaults
to add the values to
© 1993, 2023, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/21/docs/api/java.desktop/javax/swing/plaf/metal/MetalTheme.html