|
Préférences
Moteurs de recherche
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| JavaTM 2 Platform Std. Ed. v1.6.0
javax.swing
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Constructor Summary | |
|---|---|
LookAndFeel()
|
|
| Method Summary | |
|---|---|
UIDefaults |
getDefaults()
Returns the look and feel defaults. |
abstract String |
getDescription()
Return a one line description of this look and feel implementation, e.g. |
static Object |
getDesktopPropertyValue(String systemPropertyName,
Object fallbackValue)
Returns the value of the specified system desktop property by invoking Toolkit.getDefaultToolkit().getDesktopProperty(). |
Icon |
getDisabledIcon(JComponent component,
Icon icon)
Returns an Icon with a disabled appearance. |
Icon |
getDisabledSelectedIcon(JComponent component,
Icon icon)
Returns an Icon for use by disabled
components that are also selected. |
abstract String |
getID()
Return a string that identifies this look and feel. |
LayoutStyle |
getLayoutStyle()
Returns the LayoutStyle for this look
and feel. |
abstract String |
getName()
Return a short string that identifies this look and feel, e.g. |
boolean |
getSupportsWindowDecorations()
Returns true if the LookAndFeel returned
RootPaneUI instances support providing Window
decorations in a JRootPane. |
void |
initialize()
Initializes the look and feel. |
static void |
installBorder(JComponent c,
String defaultBorderName)
Convenience method for setting a component's border property with a value from the defaults. |
static void |
installColors(JComponent c,
String defaultBgName,
String defaultFgName)
Convenience method for setting a component's foreground and background color properties with values from the defaults. |
static void |
installColorsAndFont(JComponent c,
String defaultBgName,
String defaultFgName,
String defaultFontName)
Convenience method for setting a component's foreground, background and font properties with values from the defaults. |
static void |
installProperty(JComponent c,
String propertyName,
Object propertyValue)
Convenience method for installing a property with the specified name and value on a component if that property has not already been set by the developer. |
abstract boolean |
isNativeLookAndFeel()
If the underlying platform has a "native" look and feel, and this is an implementation of it, return true. |
abstract boolean |
isSupportedLookAndFeel()
Return true if the underlying platform supports and or permits
this look and feel. |
static void |
loadKeyBindings(InputMap retMap,
Object[] keys)
Populates an InputMap with the specified bindings. |
static ComponentInputMap |
makeComponentInputMap(JComponent c,
Object[] keys)
Creates a ComponentInputMapUIResource from
keys. |
static Object |
makeIcon(Class<?> baseClass,
String gifFile)
Creates and returns a UIDefault.LazyValue that loads an
image. |
static InputMap |
makeInputMap(Object[] keys)
Creates a InputMapUIResource from keys. |
static JTextComponent.KeyBinding[] |
makeKeyBindings(Object[] keyBindingList)
Convenience method for building an array of KeyBindings. |
void |
provideErrorFeedback(Component component)
Invoked when the user attempts an invalid operation, such as pasting into an uneditable JTextField
that has focus. |
String |
toString()
Returns a string that displays and identifies this object's properties. |
void |
uninitialize()
Uninitializes the look and feel. |
static void |
uninstallBorder(JComponent c)
Convenience method for uninstalling a border. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Constructor Detail |
|---|
public LookAndFeel()
| Method Detail |
|---|
public static void installColors(JComponent c, String defaultBgName, String defaultFgName)
null or a UIResource.
c - component to set the colors ondefaultBgName - key for the backgrounddefaultFgName - key for the foreground
NullPointerException - as described in
exceptionsinstallColorsAndFont(javax.swing.JComponent, java.lang.String, java.lang.String, java.lang.String),
UIManager.getColor(java.lang.Object)public static void installColorsAndFont(JComponent c, String defaultBgName, String defaultFgName, String defaultFontName)
null or a UIResource.
c - component set to the colors and font ondefaultBgName - key for the backgrounddefaultFgName - key for the foregrounddefaultFontName - key for the font
NullPointerException - as described in
exceptionsinstallColors(javax.swing.JComponent, java.lang.String, java.lang.String),
UIManager.getColor(java.lang.Object),
UIManager.getFont(java.lang.Object)public static void installBorder(JComponent c, String defaultBorderName)
null or an instance of UIResource.
c - component to set the border ondefaultBorderName - key specifying the border
NullPointerException - as described in
exceptionspublic static void uninstallBorder(JComponent c)
UIResource, it is set to null.
c - component to uninstall the border on
NullPointerException - if c is nullpublic static void installProperty(JComponent c, String propertyName, Object propertyValue)
UIResource marker, this method
uses private state to determine whether the property has been set
by the client.
c - target component to set the property onpropertyName - name of the property to setpropertyValue - value of the property
IllegalArgumentException - if the specified property is not
one which can be set using this method
ClassCastException - if the property value has not been set
by the developer and the type does not match the property's type
NullPointerException - if c is null, or the
named property has not been set by the developer and
propertyValue is nullpublic static JTextComponent.KeyBinding[] makeKeyBindings(Object[] keyBindingList)
KeyBindings. While this method is not deprecated, developers
should instead use ActionMap and InputMap for
supplying key bindings.
This method returns an array of KeyBindings, one for each
alternating key-action pair in keyBindingList.
A key can either be a String in the format
specified by the KeyStroke.getKeyStroke method, or
a KeyStroke. The action part of the pair is a
String that corresponds to the name of the Action.
The following example illustrates creating a KeyBinding array
from six alternating key-action pairs:
JTextComponent.KeyBinding[] multilineBindings = makeKeyBindings( new Object[] {
"UP", DefaultEditorKit.upAction,
"DOWN", DefaultEditorKit.downAction,
"PAGE_UP", DefaultEditorKit.pageUpAction,
"PAGE_DOWN", DefaultEditorKit.pageDownAction,
"ENTER", DefaultEditorKit.insertBreakAction,
"TAB", DefaultEditorKit.insertTabAction
});
If keyBindingList's length is odd, the last element is
ignored.
Supplying a null value for either the key or
action part of the key-action pair results in
creating a KeyBinding with the corresponding value
null. As other parts of Swing's expect non-null values
in a KeyBinding, you should avoid supplying null as
either the key or action part of the key-action
pair.
keyBindingList - an array of key-action pairs
KeyBindings
NullPointerException - if keyBindingList is null
ClassCastException - if the key part of the pair is
not a KeyStroke or String, or the
action part of the pair is not a StringActionMap,
InputMap,
KeyStroke.getKeyStroke(char)public static InputMap makeInputMap(Object[] keys)
InputMapUIResource from keys. This is
a convenience method for creating a new InputMapUIResource,
invoking loadKeyBindings(map, keys), and returning the
InputMapUIResource.
keys - alternating pairs of keystroke-action key
pairs as described in loadKeyBindings(javax.swing.InputMap, java.lang.Object[])
InputMapUIResourceloadKeyBindings(javax.swing.InputMap, java.lang.Object[])public static ComponentInputMap makeComponentInputMap(JComponent c, Object[] keys)
ComponentInputMapUIResource from
keys. This is a convenience method for creating a
new ComponentInputMapUIResource, invoking loadKeyBindings(map, keys), and returning the ComponentInputMapUIResource.
c - component to create the ComponentInputMapUIResource
withkeys - alternating pairs of keystroke-action key
pairs as described in loadKeyBindings(javax.swing.InputMap, java.lang.Object[])
InputMapUIResource
IllegalArgumentException - if c is nullloadKeyBindings(javax.swing.InputMap, java.lang.Object[]),
ComponentInputMapUIResourcepublic static void loadKeyBindings(InputMap retMap, Object[] keys)
InputMap with the specified bindings.
The bindings are supplied as a list of alternating
keystroke-action key pairs. The keystroke is either
an instance of KeyStroke, or a String
that identifies the KeyStroke for the binding. Refer
to KeyStroke.getKeyStroke(String) for the specific
format. The action key part of the pair is the key
registered in the InputMap for the KeyStroke.
The following illustrates loading an InputMap with two
key-action pairs:
LookAndFeel.loadKeyBindings(inputMap, new Object[] {
"control X", "cut",
"control V", "paste"
});
Supplying a null list of bindings (keys) does not
change retMap in any way.
Specifying a null action key results in
removing the keystroke's entry from the InputMap.
A null keystroke is ignored.
retMap - InputMap to add the key-action
pairs tokeys - bindings to add to retMap
NullPointerException - if keys is
non-null, not empty, and retMap is
nullKeyStroke.getKeyStroke(String),
InputMappublic static Object makeIcon(Class<?> baseClass, String gifFile)
UIDefault.LazyValue that loads an
image. The returned value is an implementation of UIDefaults.LazyValue. When createValue is invoked on
the returned object, the image is loaded. If the image is non-null, it is then wrapped in an Icon that implements UIResource. The image is loaded using Class.getResourceAsStream(gifFile).
This method does not check the arguments in any way. It is
strongly recommended that non-null values are supplied else
exceptions may occur when createValue is invoked on the
returned object.
baseClass - Class used to load the resourcegifFile - path to the image to load
UIDefaults.LazyValue; when resolved the
LazyValue loads the specified imageUIDefaults.LazyValue,
Icon,
Class.getResourceAsStream(String)public LayoutStyle getLayoutStyle()
LayoutStyle for this look
and feel. This never returns null.
You generally don't use the LayoutStyle from
the look and feel, instead use the LayoutStyle
method getInstance.
LayoutStyle for this look and feelLayoutStyle.getInstance()public void provideErrorFeedback(Component component)
JTextField
that has focus. The default implementation beeps. Subclasses
that wish different behavior should override this and provide
the additional feedback.
component - the Component the error occurred in,
may be null
indicating the error condition is not directly
associated with a Componentpublic static Object getDesktopPropertyValue(String systemPropertyName, Object fallbackValue)
Toolkit.getDefaultToolkit().getDesktopProperty().
If the value of the specified property is null,
fallbackValue is returned.
systemPropertyName - the name of the system desktop property being queriedfallbackValue - the object to be returned as the value if the system value is null
Toolkit.getDesktopProperty(java.lang.String)public Icon getDisabledIcon(JComponent component, Icon icon)
Icon with a disabled appearance.
This method is used to generate a disabled Icon when
one has not been specified. For example, if you create a
JButton and only specify an Icon via
setIcon this method will be called to generate the
disabled Icon. If null is passed as
icon this method returns null.
Some look and feels might not render the disabled Icon, in which
case they will ignore this.
component - JComponent that will display the Icon,
may be nullicon - Icon to generate the disabled icon from
Icon, or null if a suitable
Icon can not be generatedpublic Icon getDisabledSelectedIcon(JComponent component, Icon icon)
Icon for use by disabled
components that are also selected. This method is used to generate an
Icon for components that are in both the disabled and
selected states but do not have a specific Icon for this
state. For example, if you create a JButton and only
specify an Icon via setIcon this method
will be called to generate the disabled and selected
Icon. If null is passed as icon this
methods returns null.
Some look and feels might not render the disabled and selected
Icon, in which case they will ignore this.
component - JComponent that will display the Icon,
may be nullicon - Icon to generate disabled and selected icon from
null if a suitable
Icon can not be generated.public abstract String getName()
public abstract String getID()
public abstract String getDescription()
public boolean getSupportsWindowDecorations()
true if the LookAndFeel returned
RootPaneUI instances support providing Window
decorations in a JRootPane.
The default implementation returns false, subclasses that
support Window decorations should override this and return
true.
true if the RootPaneUI instances created by
this look and feel support client side decorationsJDialog.setDefaultLookAndFeelDecorated(boolean),
JFrame.setDefaultLookAndFeelDecorated(boolean),
JRootPane.setWindowDecorationStyle(int)public abstract boolean isNativeLookAndFeel()
true. For
example, when the underlying platform is Solaris running CDE
a CDE/Motif look and feel implementation would return true.
true if this look and feel represents the underlying
platform look and feelpublic abstract boolean isSupportedLookAndFeel()
true if the underlying platform supports and or permits
this look and feel. This method returns false if the look
and feel depends on special resources or legal agreements that
aren't defined for the current platform.
true if this is a supported look and feelUIManager.setLookAndFeel(javax.swing.LookAndFeel)public void initialize()
UIManager when a
look and feel is installed as the current look and feel. This
method is invoked before the UIManager invokes
getDefaults. This method is intended to perform any
initialization for the look and feel. Subclasses
should do any one-time setup they need here, rather than
in a static initializer, because look and feel class objects
may be loaded just to discover that isSupportedLookAndFeel()
returns false.
public void uninitialize()
UIManager when
the look and feel is uninstalled. For example,
UIManager.setLookAndFeel invokes this when the look and
feel is changed.
Subclasses may choose to free up some resources here.
public UIDefaults getDefaults()
UIManager when the
look and feel is set as the current look and feel and after
initialize has been invoked.
initialize(),
uninitialize(),
UIManager.setLookAndFeel(javax.swing.LookAndFeel)public String toString()