javax.swing.plaf.metal

Class MetalToolBarUI

Implemented Interfaces:
SwingConstants

public class MetalToolBarUI
extends BasicToolBarUI

A UI delegate for the JToolBar component.

Nested Class Summary

protected class
MetalToolBarUI.MetalContainerListener
A listener (no longer used) that responds when components are added to or removed from the JToolBar.
protected class
MetalToolBarUI.MetalDockingListener
This is the MouseHandler class that allows the user to drag the JToolBar in and out of the parent and dock it if it can.
protected class
MetalToolBarUI.MetalRolloverListener
A listener (no longer used) that responds to property change events in a JToolBar component.

Nested classes/interfaces inherited from class javax.swing.plaf.basic.BasicToolBarUI

BasicToolBarUI.DockingListener, BasicToolBarUI.DragWindow, BasicToolBarUI.FrameListener, BasicToolBarUI.PropertyListener, BasicToolBarUI.ToolBarContListener, BasicToolBarUI.ToolBarFocusListener

Field Summary

protected ContainerListener
contListener
The container listener (an implementation specific field, according to the spec, and not used in GNU Classpath).
protected PropertyChangeListener
rolloverListener
The rollover listener (an implementation specific field, according to the spec, and not used in GNU Classpath).

Fields inherited from class javax.swing.plaf.basic.BasicToolBarUI

constraintBeforeFloating, dockingBorderColor, dockingColor, dockingListener, downKey, dragWindow, floatingBorderColor, floatingColor, focusedCompIndex, leftKey, propertyListener, rightKey, toolBar, toolBarContListener, toolBarFocusListener, upKey

Fields inherited from interface javax.swing.SwingConstants

BOTTOM, CENTER, EAST, HORIZONTAL, LEADING, LEFT, NEXT, NORTH, NORTH_EAST, NORTH_WEST, PREVIOUS, RIGHT, SOUTH, SOUTH_EAST, SOUTH_WEST, TOP, TRAILING, VERTICAL, WEST

Constructor Summary

MetalToolBarUI()
Creates a new instance of this UI delegate.

Method Summary

protected ContainerListener
createContainerListener()
Returns null as permitted by recent versions of the API specification.
protected MouseInputListener
createDockingListener()
Creates and returns an instance of MetalDockingListener.
protected Border
createNonRolloverBorder()
Returns a border with no rollover effect for buttons in the tool bar.
protected PropertyChangeListener
createRolloverListener()
Returns null as permitted by recent versions of the API specification.
static ComponentUI
createUI(JComponent component)
Returns a new instance of MetalToolBarUI.
void
installUI(JComponent c)
Installs the UI on the toolbar.
protected void
setDragOffset(Point p)
Sets the offset for the window used for dragging the toolbar.
void
uninstallUI(JComponent c)
Uninstalls the UI from the toolbar.
void
update(Graphics g, JComponent c)
Paints the background of the component if necessary and then calls paint(g, c).

Methods inherited from class javax.swing.plaf.basic.BasicToolBarUI

canDock, createDockingListener, createDragWindow, createFloatingFrame, createFloatingWindow, createFrameListener, createNonRolloverBorder, createPropertyListener, createRolloverBorder, createToolBarContListener, createToolBarFocusListener, createUI, dragTo, floatAt, getDockingColor, getFloatingColor, getMaximumSize, getMinimumSize, installComponents, installDefaults, installKeyboardActions, installListeners, installNonRolloverBorders, installNormalBorders, installRolloverBorders, installUI, isFloating, isRolloverBorders, navigateFocusedComp, setBorderToNonRollover, setBorderToNormal, setBorderToRollover, setDockingColor, setFloating, setFloatingColor, setFloatingLocation, setOrientation, setRolloverBorders, uninstallComponents, uninstallDefaults, uninstallKeyboardActions, uninstallListeners, uninstallUI

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

Field Details

contListener

protected ContainerListener contListener
The container listener (an implementation specific field, according to the spec, and not used in GNU Classpath).

rolloverListener

protected PropertyChangeListener rolloverListener
The rollover listener (an implementation specific field, according to the spec, and not used in GNU Classpath).

Constructor Details

MetalToolBarUI

public MetalToolBarUI()
Creates a new instance of this UI delegate.

Method Details

createContainerListener

protected ContainerListener createContainerListener()
Returns null as permitted by recent versions of the API specification. Originally it seems this method returned a new instance of MetalToolBarUI.MetalContainerListener, but this is now redundant.
Returns:
null.

createDockingListener

protected MouseInputListener createDockingListener()
Creates and returns an instance of MetalDockingListener.
Overrides:
createDockingListener in interface BasicToolBarUI
Returns:
an instance of MetalDockingListener.

createNonRolloverBorder

protected Border createNonRolloverBorder()
Returns a border with no rollover effect for buttons in the tool bar.
Overrides:
createNonRolloverBorder in interface BasicToolBarUI
Returns:
A border.
See Also:
MetalBorders.getToolbarButtonBorder()

createRolloverListener

protected PropertyChangeListener createRolloverListener()
Returns null as permitted by recent versions of the API specification. Originally it seems this method returned a new instance of MetalToolBarUI.MetalRolloverListener, but this is now redundant.
Returns:
null.

createUI

public static ComponentUI createUI(JComponent component)
Returns a new instance of MetalToolBarUI.
Overrides:
createUI in interface BasicToolBarUI
Parameters:
component - the component for which we return an UI instance
Returns:
A new instance of MetalToolBarUI.

installUI

public void installUI(JComponent c)
Installs the UI on the toolbar. This calls super and sets the rollover property according to the UIManager property "ToolBar.isRollover".
Overrides:
installUI in interface BasicToolBarUI
Parameters:
c - the component to install the UI on

setDragOffset

protected void setDragOffset(Point p)
Sets the offset for the window used for dragging the toolbar. It is set as long as the window is not null (it has been installed).

uninstallUI

public void uninstallUI(JComponent c)
Uninstalls the UI from the toolbar. This calls super and resets the rollover property.
Overrides:
uninstallUI in interface BasicToolBarUI
Parameters:
c - the component to uninstall the UI from

update

public void update(Graphics g,
                   JComponent c)
Paints the background of the component if necessary and then calls paint(g, c). This is overridden to implement the OceanTheme gradient when an OceanTheme is installed.
Overrides:
update in interface ComponentUI
Parameters:
g - the graphics to use
c - the component to paint.
Since:
1.5

MetalToolBarUI.java Copyright (C) 2005 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.