- java.lang.Object
-
- javax.swing.plaf.ComponentUI
-
- javax.swing.plaf.RootPaneUI
-
- javax.swing.plaf.basic.BasicRootPaneUI
-
- javax.swing.plaf.metal.MetalRootPaneUI
-
- All Implemented Interfaces:
PropertyChangeListener,EventListener
public class MetalRootPaneUI extends BasicRootPaneUI
Provides the metal look and feel implementation ofRootPaneUI.MetalRootPaneUIprovides support for thewindowDecorationStyleproperty ofJRootPane.MetalRootPaneUIdoes this by way of installing a customLayoutManager, a privateComponentto render the appropriate widgets, and a privateBorder. TheLayoutManageris always installed, regardless of the value of thewindowDecorationStyleproperty, but theBorderandComponentare only installed/added if thewindowDecorationStyleis other thanJRootPane.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.beanspackage. Please seeXMLEncoder.- Since:
- 1.4
-
-
Constructor Summary
Constructors Constructor Description MetalRootPaneUI()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static ComponentUIcreateUI(JComponent c)Creates a UI for aJRootPane.voidinstallUI(JComponent c)Invokes supers implementation ofinstallUIto install the necessary state onto the passed inJRootPaneto render the metal look and feel implementation ofRootPaneUI.voidpropertyChange(PropertyChangeEvent e)Invoked when a property changes.voiduninstallUI(JComponent c)Invokes supers implementation to uninstall any of its state.-
Methods declared in class javax.swing.plaf.basic.BasicRootPaneUI
installComponents, installDefaults, installKeyboardActions, installListeners, uninstallComponents, uninstallDefaults, uninstallKeyboardActions, uninstallListeners
-
Methods declared in class javax.swing.plaf.ComponentUI
contains, getAccessibleChild, getAccessibleChildrenCount, getBaseline, getBaselineResizeBehavior, getMaximumSize, getMinimumSize, getPreferredSize, paint, update
-
-
-
-
Method Detail
-
createUI
public static ComponentUI createUI(JComponent c)
Creates a UI for aJRootPane.- Parameters:
c- the JRootPane the RootPaneUI will be created for- Returns:
- the RootPaneUI implementation for the passed in JRootPane
-
installUI
public void installUI(JComponent c)
Invokes supers implementation ofinstallUIto install the necessary state onto the passed inJRootPaneto render the metal look and feel implementation ofRootPaneUI. If thewindowDecorationStyleproperty of theJRootPaneis other thanJRootPane.NONE, this will add a customComponentto render the widgets toJRootPane, as well as installing a customBorderandLayoutManageron theJRootPane.- Overrides:
installUIin classComponentUI- Parameters:
c- the JRootPane to install state onto- See Also:
ComponentUI.uninstallUI(javax.swing.JComponent),JComponent.setUI(javax.swing.plaf.ComponentUI),JComponent.updateUI()
-
uninstallUI
public void uninstallUI(JComponent c)
Invokes supers implementation to uninstall any of its state. This will also reset theLayoutManagerof theJRootPane. If aComponenthas been added to theJRootPaneto render the window decoration style, this method will remove it. Similarly, this will revert the Border and LayoutManager of theJRootPaneto what it was beforeinstallUIwas invoked.- Overrides:
uninstallUIin classComponentUI- Parameters:
c- the JRootPane to uninstall state from- See Also:
ComponentUI.installUI(javax.swing.JComponent),JComponent.updateUI()
-
propertyChange
public void propertyChange(PropertyChangeEvent e)
Invoked when a property changes.MetalRootPaneUIis primarily interested in events originating from theJRootPaneit has been installed on identifying the propertywindowDecorationStyle. If thewindowDecorationStylehas changed to a value other thanJRootPane.NONE, this will add aComponentto theJRootPaneto render the window decorations, as well as installing aBorderon theJRootPane. On the other hand, if thewindowDecorationStylehas changed toJRootPane.NONE, this will remove theComponentthat has been added to theJRootPaneas well resetting the Border to what it was beforeinstallUIwas invoked.- Specified by:
propertyChangein interfacePropertyChangeListener- Overrides:
propertyChangein classBasicRootPaneUI- Parameters:
e- A PropertyChangeEvent object describing the event source and the property that has changed.
-
-