MetalToolBarUI (Java SE 15 & JDK 15)
Description: declaration: module: java.desktop, package: javax.swing.plaf.metal, class: MetalToolBarUI
Keywords: javax.swing.plaf.metal.MetalToolBarUI class

Module java.desktop
Package javax.swing.plaf.metal

# Class MetalToolBarUI

java.lang.Object
javax.swing.plaf.ComponentUI
javax.swing.plaf.ToolBarUI
javax.swing.plaf.basic.BasicToolBarUI
javax.swing.plaf.metal.MetalToolBarUI

All Implemented Interfaces:
  `SwingConstants`

    public class MetalToolBarUI
    extends BasicToolBarUI

A Metal Look and Feel implementation of ToolBarUI. This implementation is a "combined" view/controller.

- ## Nested Class Summary

  Nested Classes
  Modifier and Type | Class | Description
  --- | --- | ---
  `protected class` | `MetalToolBarUI.MetalContainerListener` | No longer used.
  `protected class` | `MetalToolBarUI.MetalDockingListener` | `DockingListener` for `MetalToolBarUI`.
  `protected class` | `MetalToolBarUI.MetalRolloverListener` | No longer used.

  ## Nested classes/interfaces declared in class javax.swing.plaf.basic.BasicToolBarUI

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

- ## Field Summary

  Fields
  Modifier and Type | Field | Description
  --- | --- | ---
  `protected ContainerListener` | `contListener` | This protected field is implementation specific.
  `protected PropertyChangeListener` | `rolloverListener` | This protected field is implementation specific.

  ### Fields declared in class javax.swing.plaf.basic.BasicToolBarUI

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

  ### Fields declared in 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

  Constructors
  Constructor | Description
  --- | ---
  `MetalToolBarUI()` |

- ## Method Summary

  Modifier and Type | Method | Description
  --- | --- | ---
  `protected ContainerListener` | `createContainerListener()` | Creates a container listener that will be added to the JToolBar.
  `protected PropertyChangeListener` | `createRolloverListener()` | Creates a property change listener that will be added to the JToolBar.
  `static ComponentUI` | `createUI​(JComponent c)` | Constructs an instance of `MetalToolBarUI`.
  `protected void` | `setDragOffset​(Point p)` | Sets the offset of the mouse cursor inside the DragWindow.
  `void` | `update​(Graphics g, JComponent c)` | If necessary paints the background of the component, then invokes `paint`.

  ### Methods declared in class javax.swing.plaf.basic.BasicToolBarUI

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

  ### Methods declared in class javax.swing.plaf.ComponentUI

  `contains, getAccessibleChild, getAccessibleChildrenCount, getBaseline, getBaselineResizeBehavior, getMaximumSize, getMinimumSize, getPreferredSize, installUI, paint, uninstallUI`

  ### Methods declared in class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Field Details

  - ### contListener

    protected ContainerListener contListener
    This protected field is implementation specific. Do not access directly or override. Use the create method instead.
    See Also:
      `createContainerListener()`

  - ### rolloverListener

    protected PropertyChangeListener rolloverListener
    This protected field is implementation specific. Do not access directly or override. Use the create method instead.
    See Also:
      `createRolloverListener()`

- ## Constructor Details

  - ### MetalToolBarUI

    public MetalToolBarUI()

- ## Method Details

  - ### createUI

    public static ComponentUI createUI​(JComponent c)
    Constructs an instance of `MetalToolBarUI`.
    Parameters:
      `c` - a component
    Returns:
      an instance of `MetalToolBarUI`

  - ### createContainerListener

    protected ContainerListener createContainerListener()
    Creates a container listener that will be added to the JToolBar. If this method returns null then it will not be added to the toolbar.
    Returns:
      an instance of a `ContainerListener` or null

  - ### createRolloverListener

    protected PropertyChangeListener createRolloverListener()
    Creates a property change listener that will be added to the JToolBar. If this method returns null then it will not be added to the toolbar.
    Returns:
      an instance of a `PropertyChangeListener` or null

  - ### setDragOffset

    protected void setDragOffset​(Point p)
    Sets the offset of the mouse cursor inside the DragWindow.
    Parameters:
      `p` - the offset

  - ### update

    public void update​(Graphics g, JComponent c)
    If necessary paints the background of the component, then invokes `paint`.
    Overrides:
      `update` in class `ComponentUI`
    Parameters:
      `g` - Graphics to paint to
      `c` - JComponent painting on
    Throws:
      `NullPointerException` - if `g` or `c` is null
    Since:
      1.5
    See Also:
      `ComponentUI.update(java.awt.Graphics, javax.swing.JComponent)`, `ComponentUI.paint(java.awt.Graphics, javax.swing.JComponent)`