public class MetalRootPaneUI extends BasicRootPaneUI
RootPaneUI.
MetalRootPaneUI provides support for the
windowDecorationStyle property of JRootPane.
MetalRootPaneUI does this by way of installing a custom
LayoutManager, a private Component to render
the appropriate widgets, and a private Border. The
LayoutManager is always installed, regardless of the value of
the windowDecorationStyle property, but the
Border and Component are only installed/added if
the windowDecorationStyle is other than
JRootPane.NONE.
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 XMLEncoder.
| Constructor and Description |
|---|
MetalRootPaneUI() |
| Modifier and Type | Method and Description |
|---|---|
static ComponentUI |
createUI(JComponent c)
Creates a UI for a
JRootPane. |
void |
installUI(JComponent c)
Invokes supers implementation of
installUI to install
the necessary state onto the passed in JRootPane
to render the metal look and feel implementation of
RootPaneUI. |
void |
propertyChange(PropertyChangeEvent e)
Invoked when a property changes.
|
void |
uninstallUI(JComponent c)
Invokes supers implementation to uninstall any of its state.
|
installComponents, installDefaults, installKeyboardActions, installListeners, uninstallComponents, uninstallDefaults, uninstallKeyboardActions, uninstallListenerscontains, getAccessibleChild, getAccessibleChildrenCount, getBaseline, getBaselineResizeBehavior, getMaximumSize, getMinimumSize, getPreferredSize, paint, updatepublic static ComponentUI createUI(JComponent c)
JRootPane.c - the JRootPane the RootPaneUI will be created forpublic void installUI(JComponent c)
installUI to install
the necessary state onto the passed in JRootPane
to render the metal look and feel implementation of
RootPaneUI. If
the windowDecorationStyle property of the
JRootPane is other than JRootPane.NONE,
this will add a custom Component to render the widgets to
JRootPane, as well as installing a custom
Border and LayoutManager on the
JRootPane.installUI in class BasicRootPaneUIc - the JRootPane to install state ontoComponentUI.uninstallUI(javax.swing.JComponent),
JComponent.setUI(javax.swing.plaf.ComponentUI),
JComponent.updateUI()public void uninstallUI(JComponent c)
LayoutManager of the JRootPane.
If a Component has been added to the JRootPane
to render the window decoration style, this method will remove it.
Similarly, this will revert the Border and LayoutManager of the
JRootPane to what it was before installUI
was invoked.uninstallUI in class BasicRootPaneUIc - the JRootPane to uninstall state fromComponentUI.installUI(javax.swing.JComponent),
JComponent.updateUI()public void propertyChange(PropertyChangeEvent e)
MetalRootPaneUI is
primarily interested in events originating from the
JRootPane it has been installed on identifying the
property windowDecorationStyle. If the
windowDecorationStyle has changed to a value other
than JRootPane.NONE, this will add a Component
to the JRootPane to render the window decorations, as well
as installing a Border on the JRootPane.
On the other hand, if the windowDecorationStyle has
changed to JRootPane.NONE, this will remove the
Component that has been added to the JRootPane
as well resetting the Border to what it was before
installUI was invoked.propertyChange in interface PropertyChangeListenerpropertyChange in class BasicRootPaneUIe - A PropertyChangeEvent object describing the event source
and the property that has changed. 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, 2017, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.