Package com.explodingpixels.macwidgets

## Class ComponentBottomBar

- java.lang.Object
- - com.explodingpixels.macwidgets.TriAreaComponent
  - - com.explodingpixels.macwidgets.ComponentBottomBar

    public class ComponentBottomBar
    extends TriAreaComponent

### Nested Class Summary

Nested Classes
`protected class` `ComponentBottomBar.SplitterHandleMouseMovementHandler`

### Field Summary

Fields
`protected ComponentBottomBar.SplitterHandleMouseMovementHandler` `fMouseListener`
`protected javax.swing.JSplitPane` `fSplitPane`
`protected javax.swing.JLabel` `fSplitterHandle`
`protected static javax.swing.ImageIcon` `SPLITTER_HANDLE`

### Constructor Summary

Constructors
`ComponentBottomBar()`

### Method Summary

All Methods Instance Methods Concrete Methods
`void` `addComponentToCenterWithBorder​(javax.swing.JComponent toolToAdd)`
`void` `addComponentToLeftWithBorder​(javax.swing.JComponent toolToAdd)`
`void` `addComponentToRightWithBorder​(javax.swing.JComponent toolToAdd)`
`javax.swing.JComponent` `createAndAddButton​(javax.swing.Icon icon, java.awt.event.ActionListener actionListener)` Adds a new button with the given icon.
`PopdownButton` `createAndAddPopdownButton​(javax.swing.Icon icon, PopupMenuCustomizer popupMenuCustomizer)` Add a new pop-down style button.
`void` `hideResizeHandle()` Hides the resize handle.
`void` `installDraggableWidgetOnSplitPane​(javax.swing.JSplitPane splitPane)` Connects the draggable widget in this `ComponentBottomBar` to the divider of the given `JSplitPane`.

### Methods inherited from class com.explodingpixels.macwidgets.TriAreaComponent

`addComponentToCenter, addComponentToCenter, addComponentToLeft, addComponentToLeft, addComponentToRight, addComponentToRight, getCenterComponentCount, getComponent, getLeftComponentCount, getRightComponentCount, installWindowDraggerOnWindow, setBackgroundPainter`

### Methods inherited from class java.lang.Object

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

### Field Detail

#### SPLITTER_HANDLE

    protected static final javax.swing.ImageIcon SPLITTER_HANDLE

#### fSplitPane

    protected javax.swing.JSplitPane fSplitPane

#### fSplitterHandle

    protected final javax.swing.JLabel fSplitterHandle

#### fMouseListener

    protected final ComponentBottomBar.SplitterHandleMouseMovementHandler fMouseListener

### Constructor Detail

#### ComponentBottomBar

    public ComponentBottomBar()

### Method Detail

#### addComponentToLeftWithBorder

    public void addComponentToLeftWithBorder​(javax.swing.JComponent toolToAdd)

#### addComponentToCenterWithBorder

    public void addComponentToCenterWithBorder​(javax.swing.JComponent toolToAdd)

#### addComponentToRightWithBorder

    public void addComponentToRightWithBorder​(javax.swing.JComponent toolToAdd)

#### installDraggableWidgetOnSplitPane

    public void installDraggableWidgetOnSplitPane​(javax.swing.JSplitPane splitPane)

Connects the draggable widget in this `ComponentBottomBar` to the divider of the given `JSplitPane`. Thus when the user drags the `ComponentBottomBar` draggable widget, the given `JSplitPane`s divider location will be adjusted. DO THIS LAST AFTER YOU ADD ALL OTHER COMPONENTS TO THE RIGHT

Parameters:
  `splitPane` - the `JSplitPane` to connect the draggable widget to.

#### createAndAddPopdownButton

    public PopdownButton createAndAddPopdownButton​(javax.swing.Icon icon,
                                                   PopupMenuCustomizer popupMenuCustomizer)

Add a new pop-down style button. The given `PopupMenuCustomizer` will be called just prior to each showing of the menu.

Parameters:
  `icon` - the icon to use in the pop-down menu.
  `popupMenuCustomizer` - the `PopupMenuCustomizer` to be called just prior to showing the menu.

#### createAndAddButton

    public javax.swing.JComponent createAndAddButton​(javax.swing.Icon icon,
                                                     java.awt.event.ActionListener actionListener)

Adds a new button with the given icon. The given `ActionListener` will be called when the button is pressed.

Parameters:
  `icon` - the icon to use for the button.
  `actionListener` - the `ActionListener` to call when the button is pressed.

#### hideResizeHandle

    public void hideResizeHandle()

Hides the resize handle.