javax.swing.plaf.basic

Class BasicRootPaneUI

Implemented Interfaces:
EventListener, PropertyChangeListener
Known Direct Subclasses:
MetalRootPaneUI

public class BasicRootPaneUI
extends RootPaneUI
implements PropertyChangeListener

Method Summary

static ComponentUI
createUI(JComponent x)
Creates a delegate object for the specified component.
protected void
installComponents(JRootPane rp)
Installs additional look and feel components to the root pane.
protected void
installDefaults(JRootPane rp)
Installs the look and feel defaults for JRootPane.
protected void
installKeyboardActions(JRootPane rp)
Installs look and feel keyboard actions on the root pane.
protected void
installListeners(JRootPane rp)
Installs any look and feel specific listeners on the root pane.
void
installUI(JComponent c)
Sets up the specified component so it conforms the the design guidelines of the implemented look and feel.
void
propertyChange(PropertyChangeEvent event)
Fired after a Bean's property has changed.
protected void
uninstallComponents(JRootPane rp)
Uninstalls look and feel components from the root pane.
protected void
uninstallDefaults(JRootPane rp)
Uninstalls the look and feel defaults that have been installed in installDefaults(JRootPane).
protected void
uninstallKeyboardActions(JRootPane rp)
Uninstalls look and feel keyboard actions from the root pane.
protected void
uninstallListeners(JRootPane rp)
Uninstalls any look and feel specific listeners from the root pane.
void
uninstallUI(JComponent c)
Uninstalls this UI from the root pane.

Methods inherited from class javax.swing.plaf.ComponentUI

contains, createUI, getAccessibleChild, getAccessibleChildrenCount, getMaximumSize, getMinimumSize, getPreferredSize, installUI, paint, uninstallUI, update

Methods inherited from class java.lang.Object

clone, equals, extends Object> getClass, finalize, hashCode, notify, notifyAll, toString, wait, wait, wait

Method Details

createUI

public static ComponentUI createUI(JComponent x)
Creates a delegate object for the specified component. Users should use the createUI method of a suitable subclass. The implementation of ComponentUI always throws an error.
Overrides:
createUI in interface ComponentUI
Parameters:

installComponents

protected void installComponents(JRootPane rp)
Installs additional look and feel components to the root pane.
Parameters:
rp - the root pane to install the components to

installDefaults

protected void installDefaults(JRootPane rp)
Installs the look and feel defaults for JRootPane.
Parameters:
rp - the root pane to install the defaults to

installKeyboardActions

protected void installKeyboardActions(JRootPane rp)
Installs look and feel keyboard actions on the root pane.
Parameters:
rp - the root pane to install the keyboard actions to

installListeners

protected void installListeners(JRootPane rp)
Installs any look and feel specific listeners on the root pane.
Parameters:
rp - the root pane to install the listeners to

installUI

public void installUI(JComponent c)
Sets up the specified component so it conforms the the design guidelines of the implemented look and feel. When the look and feel changes, a ComponentUI delegate is created. The delegate object then receives an installUI message.

This method should perform the following tasks:

  • Set visual properties such as borders, fonts, colors, or icons. However, no change should be performed for those properties whose values have been directly set by the client application. To allow the distinction, LookAndFeels are expected to use values that implement the UIResource marker interface, such as BorderUIResource or ColorUIResource.
  • If necessary, install a LayoutManager.
  • Embed custom sub-components. For instance, the UI delegate for a JSplitPane might install a special component for the divider.
  • Register event listeners.
  • Set up properties related to keyborad navigation, such as mnemonics or focus traversal policies.
Overrides:
installUI in interface ComponentUI
Parameters:
c - the component for which this delegate will provide services.

propertyChange

public void propertyChange(PropertyChangeEvent event)
Fired after a Bean's property has changed.
Specified by:
propertyChange in interface PropertyChangeListener
Parameters:

uninstallComponents

protected void uninstallComponents(JRootPane rp)
Uninstalls look and feel components from the root pane.
Parameters:
rp - the root pane to uninstall the components from

uninstallDefaults

protected void uninstallDefaults(JRootPane rp)
Uninstalls the look and feel defaults that have been installed in installDefaults(JRootPane).
Parameters:
rp - the root pane to uninstall the defaults from

uninstallKeyboardActions

protected void uninstallKeyboardActions(JRootPane rp)
Uninstalls look and feel keyboard actions from the root pane.
Parameters:
rp - the root pane to uninstall the keyboard actions from

uninstallListeners

protected void uninstallListeners(JRootPane rp)
Uninstalls any look and feel specific listeners from the root pane.
Parameters:
rp - the root pane to uninstall the listeners from

uninstallUI

public void uninstallUI(JComponent c)
Overrides:
uninstallUI in interface ComponentUI
Parameters:
c - the root pane to uninstall the UI from

BasicRootPaneUI.java -- Copyright (C) 2002, 2004 Free Software Foundation, Inc. This file is part of GNU Classpath. GNU Classpath is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Classpath is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Classpath; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. Linking this library statically or dynamically with other modules is making a combined work based on this library. Thus, the terms and conditions of the GNU General Public License cover the whole combination. As a special exception, the copyright holders of this library give you permission to link this library with independent modules to produce an executable, regardless of the license terms of these independent modules, and to copy and distribute the resulting executable under terms of your choice, provided that you also meet, for each linked independent module, the terms and conditions of the license of that module. An independent module is a module which is not derived from or based on this library. If you modify this library, you may extend this exception to your version of the library, but you are not obligated to do so. If you do not wish to do so, delete this exception statement from your version.