declare namespace javax { namespace swing { /** * {@code UIManager} manages the current look and feel, the set of * available look and feels, {@code PropertyChangeListeners} that * are notified when the look and feel changes, look and feel defaults, and * convenience methods for obtaining various default values. *
* UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); ** The following example illustrates setting the look and feel based on * class name: *
* UIManager.setLookAndFeel("javax.swing.plaf.metal.MetalLookAndFeel"); ** Once the look and feel has been changed it is imperative to invoke * {@code updateUI} on all {@code JComponents}. The method {@link * SwingUtilities#updateComponentTreeUI} makes it easy to apply {@code * updateUI} to a containment hierarchy. Refer to it for * details. The exact behavior of not invoking {@code * updateUI} after changing the look and feel is * unspecified. It is very possible to receive unexpected exceptions, * painting problems, or worse. *
swing.defaultlaf
is
* {@code non-null}, use its value as the default look and feel class
* name.
* swing.properties
* exists and contains the key swing.defaultlaf
,
* use its value as the default look and feel class name. The location
* that is checked for swing.properties
may vary depending
* upon the implementation of the Java platform. Typically the
* swing.properties
file is located in the lib
* subdirectory of the Java installation directory.
* Refer to the release notes of the implementation being used for
* further details.
* * It's important to note that {@code getDefaults} returns a custom * instance of {@code UIDefaults} with this resolution logic built into it. * For example, {@code UIManager.getDefaults().getString("Table.foreground")} * is equivalent to {@code UIManager.getString("Table.foreground")}. Both * resolve using the algorithm just described. In many places the * documentation uses the word defaults to refer to the custom instance * of {@code UIDefaults} with the resolution logic as previously described. *
* When the look and feel is changed, {@code UIManager} alters only the * look and feel defaults; the developer and system defaults are not * altered by the {@code UIManager} in any way. *
* The set of defaults a particular look and feel supports is defined * and documented by that look and feel. In addition, each look and * feel, or {@code ComponentUI} provided by a look and feel, may * access the defaults at different times in their life cycle. Some * look and feels may aggressively look up defaults, so that changing a * default may not have an effect after installing the look and feel. * Other look and feels may lazily access defaults so that a change to * the defaults may effect an existing look and feel. Finally, other look * and feels might not configure themselves from the defaults table in * any way. None-the-less it is usually the case that a look and feel * expects certain defaults, so that in general * a {@code ComponentUI} provided by one look and feel will not * work with another look and feel. *
* 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 {@link java.beans.XMLEncoder}.
* @author Thomas Ball
* @author Hans Muller
*/
// @ts-ignore
class UIManager extends java.lang.Object implements java.io.Serializable {
// @ts-ignore
constructor()
/**
* Returns an array of {@code LookAndFeelInfo}s representing the
* {@code LookAndFeel} implementations currently available. The
* LookAndFeelInfo
objects can be used by an
* application to construct a menu of look and feel options for
* the user, or to determine which look and feel to set at startup
* time. To avoid the penalty of creating numerous {@code
* LookAndFeel} objects, {@code LookAndFeelInfo} maintains the
* class name of the {@code LookAndFeel} class, not the actual
* {@code LookAndFeel} instance.
*
* The following example illustrates setting the current look and feel * from an instance of {@code LookAndFeelInfo}: *
* UIManager.setLookAndFeel(info.getClassName()); ** @return an array of
LookAndFeelInfo
objects
* @see #setLookAndFeel
*/
// @ts-ignore
public static getInstalledLookAndFeels(): javax.swing.UIManager.LookAndFeelInfo[]
/**
* Sets the set of available look and feels. While this method does
* not check to ensure all of the {@code LookAndFeelInfos} are
* {@code non-null}, it is strongly recommended that only {@code non-null}
* values are supplied in the {@code infos} array.
* @param infos set of LookAndFeelInfo
objects specifying
* the available look and feels
* @see #getInstalledLookAndFeels
* @throws NullPointerException if {#code infos} is {@code null}
*/
// @ts-ignore
public static setInstalledLookAndFeels(infos: javax.swing.UIManager.LookAndFeelInfo[]): void
/**
* Adds the specified look and feel to the set of available look
* and feels. While this method allows a {@code null} {@code info},
* it is strongly recommended that a {@code non-null} value be used.
* @param info a LookAndFeelInfo
object that names the
* look and feel and identifies the class that implements it
* @see #setInstalledLookAndFeels
*/
// @ts-ignore
public static installLookAndFeel(info: javax.swing.UIManager.LookAndFeelInfo): void
/**
* Adds the specified look and feel to the set of available look
* and feels. While this method does not check the
* arguments in any way, it is strongly recommended that {@code
* non-null} values be supplied.
* @param name descriptive name of the look and feel
* @param className name of the class that implements the look and feel
* @see #setInstalledLookAndFeels
*/
// @ts-ignore
public static installLookAndFeel(name: java.lang.String | string, className: java.lang.String | string): void
/**
* Returns the current look and feel or null
.
* @return current look and feel, or null
* @see #setLookAndFeel
*/
// @ts-ignore
public static getLookAndFeel(): javax.swing.LookAndFeel
/**
* Sets the current look and feel to {@code newLookAndFeel}.
* If the current look and feel is {@code non-null} {@code
* uninitialize} is invoked on it. If {@code newLookAndFeel} is
* {@code non-null}, {@code initialize} is invoked on it followed
* by {@code getDefaults}. The defaults returned from {@code
* newLookAndFeel.getDefaults()} replace those of the defaults
* from the previous look and feel. If the {@code newLookAndFeel} is
* {@code null}, the look and feel defaults are set to {@code null}.
* * A value of {@code null} can be used to set the look and feel * to {@code null}. As the {@code LookAndFeel} is required for * most of Swing to function, setting the {@code LookAndFeel} to * {@code null} is strongly discouraged. *
* This is a JavaBeans bound property.
* @param newLookAndFeel {#code LookAndFeel} to install
* @throws UnsupportedLookAndFeelException if
* {#code newLookAndFeel} is {@code non-null} and
* {@code newLookAndFeel.isSupportedLookAndFeel()} returns
* {@code false}
* @see #getLookAndFeel
*/
// @ts-ignore
public static setLookAndFeel(newLookAndFeel: javax.swing.LookAndFeel): void
/**
* Loads the {@code LookAndFeel} specified by the given class
* name, using the current thread's context class loader, and
* passes it to {@code setLookAndFeel(LookAndFeel)}.
* @param className a string specifying the name of the class that implements
* the look and feel
* @exception ClassNotFoundException if the LookAndFeel
* class could not be found
* @exception InstantiationException if a new instance of the class
* couldn't be created
* @exception IllegalAccessException if the class or initializer isn't accessible
* @exception UnsupportedLookAndFeelException if
* lnf.isSupportedLookAndFeel()
is false
* @throws ClassCastException if {#code className} does not identify
* a class that extends {@code LookAndFeel}
*/
// @ts-ignore
public static setLookAndFeel(className: java.lang.String | string): void
/**
* Returns the name of the LookAndFeel
class that implements
* the native system look and feel if there is one, otherwise
* the name of the default cross platform LookAndFeel
* class. This value can be overriden by setting the
* swing.systemlaf
system property.
* @return the String
of the LookAndFeel
* class
* @see #setLookAndFeel
* @see #getCrossPlatformLookAndFeelClassName
*/
// @ts-ignore
public static getSystemLookAndFeelClassName(): string
/**
* Returns the name of the LookAndFeel
class that implements
* the default cross platform look and feel -- the Java
* Look and Feel (JLF). This value can be overriden by setting the
* swing.crossplatformlaf
system property.
* @return a string with the JLF implementation-class
* @see #setLookAndFeel
* @see #getSystemLookAndFeelClassName
*/
// @ts-ignore
public static getCrossPlatformLookAndFeelClassName(): string
/**
* Returns the defaults. The returned defaults resolve using the
* logic specified in the class documentation.
* @return a UIDefaults
object containing the default values
*/
// @ts-ignore
public static getDefaults(): javax.swing.UIDefaults
/**
* Returns a font from the defaults. If the value for {@code key} is
* not a {@code Font}, {@code null} is returned.
* @param key an Object
specifying the font
* @return the Font
object
* @throws NullPointerException if {#code key} is {@code null}
*/
// @ts-ignore
public static getFont(key: java.lang.Object | any): java.awt.Font
/**
* Returns a font from the defaults that is appropriate
* for the given locale. If the value for {@code key} is
* not a {@code Font}, {@code null} is returned.
* @param key an Object
specifying the font
* @param l the Locale
for which the font is desired; refer
* to {#code UIDefaults} for details on how a {@code null}
* {@code Locale} is handled
* @return the Font
object
* @throws NullPointerException if {#code key} is {@code null}
* @since 1.4
*/
// @ts-ignore
public static getFont(key: java.lang.Object | any, l: java.util.Locale): java.awt.Font
/**
* Returns a color from the defaults. If the value for {@code key} is
* not a {@code Color}, {@code null} is returned.
* @param key an Object
specifying the color
* @return the Color
object
* @throws NullPointerException if {#code key} is {@code null}
*/
// @ts-ignore
public static getColor(key: java.lang.Object | any): java.awt.Color
/**
* Returns a color from the defaults that is appropriate
* for the given locale. If the value for {@code key} is
* not a {@code Color}, {@code null} is returned.
* @param key an Object
specifying the color
* @param l the Locale
for which the color is desired; refer
* to {#code UIDefaults} for details on how a {@code null}
* {@code Locale} is handled
* @return the Color
object
* @throws NullPointerException if {#code key} is {@code null}
* @since 1.4
*/
// @ts-ignore
public static getColor(key: java.lang.Object | any, l: java.util.Locale): java.awt.Color
/**
* Returns an Icon
from the defaults. If the value for
* {@code key} is not an {@code Icon}, {@code null} is returned.
* @param key an Object
specifying the icon
* @return the Icon
object
* @throws NullPointerException if {#code key} is {@code null}
*/
// @ts-ignore
public static getIcon(key: java.lang.Object | any): javax.swing.Icon
/**
* Returns an Icon
from the defaults that is appropriate
* for the given locale. If the value for
* {@code key} is not an {@code Icon}, {@code null} is returned.
* @param key an Object
specifying the icon
* @param l the Locale
for which the icon is desired; refer
* to {#code UIDefaults} for details on how a {@code null}
* {@code Locale} is handled
* @return the Icon
object
* @throws NullPointerException if {#code key} is {@code null}
* @since 1.4
*/
// @ts-ignore
public static getIcon(key: java.lang.Object | any, l: java.util.Locale): javax.swing.Icon
/**
* Returns a border from the defaults. If the value for
* {@code key} is not a {@code Border}, {@code null} is returned.
* @param key an Object
specifying the border
* @return the Border
object
* @throws NullPointerException if {#code key} is {@code null}
*/
// @ts-ignore
public static getBorder(key: java.lang.Object | any): javax.swing.border.Border
/**
* Returns a border from the defaults that is appropriate
* for the given locale. If the value for
* {@code key} is not a {@code Border}, {@code null} is returned.
* @param key an Object
specifying the border
* @param l the Locale
for which the border is desired; refer
* to {#code UIDefaults} for details on how a {@code null}
* {@code Locale} is handled
* @return the Border
object
* @throws NullPointerException if {#code key} is {@code null}
* @since 1.4
*/
// @ts-ignore
public static getBorder(key: java.lang.Object | any, l: java.util.Locale): javax.swing.border.Border
/**
* Returns a string from the defaults. If the value for
* {@code key} is not a {@code String}, {@code null} is returned.
* @param key an Object
specifying the string
* @return the String
* @throws NullPointerException if {#code key} is {@code null}
*/
// @ts-ignore
public static getString(key: java.lang.Object | any): string
/**
* Returns a string from the defaults that is appropriate for the
* given locale. If the value for
* {@code key} is not a {@code String}, {@code null} is returned.
* @param key an Object
specifying the string
* @param l the Locale
for which the string is desired; refer
* to {#code UIDefaults} for details on how a {@code null}
* {@code Locale} is handled
* @return the String
* @since 1.4
* @throws NullPointerException if {#code key} is {@code null}
*/
// @ts-ignore
public static getString(key: java.lang.Object | any, l: java.util.Locale): string
/**
* Returns an integer from the defaults. If the value for
* {@code key} is not an {@code Integer}, or does not exist,
* {@code 0} is returned.
* @param key an Object
specifying the int
* @return the int
* @throws NullPointerException if {#code key} is {@code null}
*/
// @ts-ignore
public static getInt(key: java.lang.Object | any): number /*int*/
/**
* Returns an integer from the defaults that is appropriate
* for the given locale. If the value for
* {@code key} is not an {@code Integer}, or does not exist,
* {@code 0} is returned.
* @param key an Object
specifying the int
* @param l the Locale
for which the int is desired; refer
* to {#code UIDefaults} for details on how a {@code null}
* {@code Locale} is handled
* @return the int
* @throws NullPointerException if {#code key} is {@code null}
* @since 1.4
*/
// @ts-ignore
public static getInt(key: java.lang.Object | any, l: java.util.Locale): number /*int*/
/**
* Returns a boolean from the defaults which is associated with
* the key value. If the key is not found or the key doesn't represent
* a boolean value then {@code false} is returned.
* @param key an Object
specifying the key for the desired boolean value
* @return the boolean value corresponding to the key
* @throws NullPointerException if {#code key} is {@code null}
* @since 1.4
*/
// @ts-ignore
public static getBoolean(key: java.lang.Object | any): boolean
/**
* Returns a boolean from the defaults which is associated with
* the key value and the given Locale
. If the key is not
* found or the key doesn't represent
* a boolean value then {@code false} will be returned.
* @param key an Object
specifying the key for the desired
* boolean value
* @param l the Locale
for which the boolean is desired; refer
* to {#code UIDefaults} for details on how a {@code null}
* {@code Locale} is handled
* @return the boolean value corresponding to the key
* @throws NullPointerException if {#code key} is {@code null}
* @since 1.4
*/
// @ts-ignore
public static getBoolean(key: java.lang.Object | any, l: java.util.Locale): boolean
/**
* Returns an Insets
object from the defaults. If the value
* for {@code key} is not an {@code Insets}, {@code null} is returned.
* @param key an Object
specifying the Insets
object
* @return the Insets
object
* @throws NullPointerException if {#code key} is {@code null}
*/
// @ts-ignore
public static getInsets(key: java.lang.Object | any): java.awt.Insets
/**
* Returns an Insets
object from the defaults that is
* appropriate for the given locale. If the value
* for {@code key} is not an {@code Insets}, {@code null} is returned.
* @param key an Object
specifying the Insets
object
* @param l the Locale
for which the object is desired; refer
* to {#code UIDefaults} for details on how a {@code null}
* {@code Locale} is handled
* @return the Insets
object
* @throws NullPointerException if {#code key} is {@code null}
* @since 1.4
*/
// @ts-ignore
public static getInsets(key: java.lang.Object | any, l: java.util.Locale): java.awt.Insets
/**
* Returns a dimension from the defaults. If the value
* for {@code key} is not a {@code Dimension}, {@code null} is returned.
* @param key an Object
specifying the dimension object
* @return the Dimension
object
* @throws NullPointerException if {#code key} is {@code null}
*/
// @ts-ignore
public static getDimension(key: java.lang.Object | any): java.awt.Dimension
/**
* Returns a dimension from the defaults that is appropriate
* for the given locale. If the value
* for {@code key} is not a {@code Dimension}, {@code null} is returned.
* @param key an Object
specifying the dimension object
* @param l the Locale
for which the object is desired; refer
* to {#code UIDefaults} for details on how a {@code null}
* {@code Locale} is handled
* @return the Dimension
object
* @throws NullPointerException if {#code key} is {@code null}
* @since 1.4
*/
// @ts-ignore
public static getDimension(key: java.lang.Object | any, l: java.util.Locale): java.awt.Dimension
/**
* Returns an object from the defaults.
* @param key an Object
specifying the desired object
* @return the Object
* @throws NullPointerException if {#code key} is {@code null}
*/
// @ts-ignore
public static get(key: java.lang.Object | any): any
/**
* Returns an object from the defaults that is appropriate for
* the given locale.
* @param key an Object
specifying the desired object
* @param l the Locale
for which the object is desired; refer
* to {#code UIDefaults} for details on how a {@code null}
* {@code Locale} is handled
* @return the Object
* @throws NullPointerException if {#code key} is {@code null}
* @since 1.4
*/
// @ts-ignore
public static get(key: java.lang.Object | any, l: java.util.Locale): any
/**
* Stores an object in the developer defaults. This is a cover method
* for {@code getDefaults().put(key, value)}. This only effects the
* developer defaults, not the system or look and feel defaults.
* @param key an Object
specifying the retrieval key
* @param value the Object
to store; refer to
* {#code UIDefaults} for details on how {@code null} is
* handled
* @return the Object
returned by {#link UIDefaults#put}
* @throws NullPointerException if {#code key} is {@code null}
* @see UIDefaults#put
*/
// @ts-ignore
public static put(key: java.lang.Object | any, value: java.lang.Object | any): any
/**
* Returns the appropriate {@code ComponentUI} implementation for
* {@code target}. Typically, this is a cover for
* {@code getDefaults().getUI(target)}. However, if an auxiliary
* look and feel has been installed, this first invokes
* {@code getUI(target)} on the multiplexing look and feel's
* defaults, and returns that value if it is {@code non-null}.
* @param target the JComponent
to return the
* {#code ComponentUI} for
* @return the ComponentUI
object for {#code target}
* @throws NullPointerException if {#code target} is {@code null}
* @see UIDefaults#getUI
*/
// @ts-ignore
public static getUI(target: javax.swing.JComponent): javax.swing.plaf.ComponentUI
/**
* Returns the {@code UIDefaults} from the current look and feel,
* that were obtained at the time the look and feel was installed.
*
* In general, developers should use the {@code UIDefaults} returned from
* {@code getDefaults()}. As the current look and feel may expect
* certain values to exist, altering the {@code UIDefaults} returned
* from this method could have unexpected results.
* @return UIDefaults
from the current look and feel
* @see #getDefaults
* @see #setLookAndFeel(LookAndFeel)
* @see LookAndFeel#getDefaults
*/
// @ts-ignore
public static getLookAndFeelDefaults(): javax.swing.UIDefaults
/**
* Adds a LookAndFeel
to the list of auxiliary look and feels.
* The auxiliary look and feels tell the multiplexing look and feel what
* other LookAndFeel
classes for a component instance are to be used
* in addition to the default LookAndFeel
class when creating a
* multiplexing UI. The change will only take effect when a new
* UI class is created or when the default look and feel is changed
* on a component instance.
*
Note these are not the same as the installed look and feels.
* @param laf the LookAndFeel
object
* @see #removeAuxiliaryLookAndFeel
* @see #setLookAndFeel
* @see #getAuxiliaryLookAndFeels
* @see #getInstalledLookAndFeels
*/
// @ts-ignore
public static addAuxiliaryLookAndFeel(laf: javax.swing.LookAndFeel): void
/**
* Removes a LookAndFeel
from the list of auxiliary look and feels.
* The auxiliary look and feels tell the multiplexing look and feel what
* other LookAndFeel
classes for a component instance are to be used
* in addition to the default LookAndFeel
class when creating a
* multiplexing UI. The change will only take effect when a new
* UI class is created or when the default look and feel is changed
* on a component instance.
*
Note these are not the same as the installed look and feels.
* @return true if the LookAndFeel
was removed from the list
* @see #removeAuxiliaryLookAndFeel
* @see #getAuxiliaryLookAndFeels
* @see #setLookAndFeel
* @see #getInstalledLookAndFeels
*/
// @ts-ignore
public static removeAuxiliaryLookAndFeel(laf: javax.swing.LookAndFeel): boolean
/**
* Returns the list of auxiliary look and feels (can be null
).
* The auxiliary look and feels tell the multiplexing look and feel what
* other LookAndFeel
classes for a component instance are
* to be used in addition to the default LookAndFeel class when creating a
* multiplexing UI.
*
Note these are not the same as the installed look and feels.
* @return list of auxiliary LookAndFeel
s or null
* @see #addAuxiliaryLookAndFeel
* @see #removeAuxiliaryLookAndFeel
* @see #setLookAndFeel
* @see #getInstalledLookAndFeels
*/
// @ts-ignore
public static getAuxiliaryLookAndFeels(): javax.swing.LookAndFeel[]
/**
* Adds a PropertyChangeListener
to the listener list.
* The listener is registered for all properties.
* @param listener the PropertyChangeListener
to be added
* @see java.beans.PropertyChangeSupport
*/
// @ts-ignore
public static addPropertyChangeListener(listener: java.beans.PropertyChangeListener): void
/**
* Removes a PropertyChangeListener
from the listener list.
* This removes a PropertyChangeListener
that was registered
* for all properties.
* @param listener the PropertyChangeListener
to be removed
* @see java.beans.PropertyChangeSupport
*/
// @ts-ignore
public static removePropertyChangeListener(listener: java.beans.PropertyChangeListener): void
/**
* Returns an array of all the PropertyChangeListener
s added
* to this UIManager with addPropertyChangeListener().
* @return all of the PropertyChangeListener
s added or an empty
* array if no listeners have been added
* @since 1.4
*/
// @ts-ignore
public static getPropertyChangeListeners(): java.beans.PropertyChangeListener[]
}
}
}