Package org.pushingpixels.flamingo.internal.ui.bcb

# Class BasicBreadcrumbBarUI

java.lang.Object
javax.swing.plaf.ComponentUI
org.pushingpixels.flamingo.internal.ui.bcb.BreadcrumbBarUI
org.pushingpixels.flamingo.internal.ui.bcb.BasicBreadcrumbBarUI

public class BasicBreadcrumbBarUI extends BreadcrumbBarUI
Basic UI for breadcrumb bar (`JBreadcrumbBar`).

## Nested Class Summary

Nested Classes
Modifier and Type
Class
Description
`protected class`
`BasicBreadcrumbBarUI.BreadcrumbBarLayout`
Layout for the breadcrumb bar.

## Field Summary

Fields
Modifier and Type
Field
Description
`protected JBreadcrumbBar`
`breadcrumbBar`
The associated breadcrumb bar.
`protected LinkedList<JCommandButton>`
`buttonStack`
`protected ComponentListener`
`componentListener`
`protected JCommandButton`
`dummy`
`protected JPanel`
`mainPanel`
`protected LinkedList`
`modelStack`
Contains the item path.
`protected BreadcrumbPathListener`
`pathListener`
`protected JScrollablePanel<JPanel>`
`scrollerPanel`

## Constructor Summary

Constructors
Constructor
Description
`BasicBreadcrumbBarUI()`

## Method Summary

Modifier and Type
Method
Description
`protected LayoutManager`
`createLayoutManager()`
Invoked by `installUI` to create a layout manager object to manage the `JBreadcrumbBar`.
`static ComponentUI`
`createUI(JComponent c)`
`protected void`
`installComponents(JBreadcrumbBar bar)`
`protected void`
`installDefaults(JBreadcrumbBar bar)`
`protected void`
`installListeners(JBreadcrumbBar bar)`
`void`
`installUI(JComponent c)`
`protected Object`
`pushChoice(BreadcrumbItem bi, boolean toUpdateUI)`
Pushes an item to the top position of the stack.
`protected Object`
`pushChoices(org.pushingpixels.flamingo.internal.ui.bcb.BreadcrumbItemChoices bic)`
Pushes a choice to the top position of the stack.
`protected Object`
`pushChoices(org.pushingpixels.flamingo.internal.ui.bcb.BreadcrumbItemChoices bic, boolean toUpdateUI)`
Pushes a choice to the top position of the stack.
`protected void`
`uninstallComponents(JBreadcrumbBar bar)`
`protected void`
`uninstallDefaults(JBreadcrumbBar bar)`
`protected void`
`uninstallListeners(JBreadcrumbBar bar)`
`void`
`uninstallUI(JComponent c)`
`protected void`
`updateComponents()`

### Methods inherited from class javax.swing.plaf.ComponentUI

`contains, getAccessibleChild, getAccessibleChildrenCount, getBaseline, getBaselineResizeBehavior, getMaximumSize, getMinimumSize, getPreferredSize, paint, update`

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

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

## Field Details

### breadcrumbBar

protected JBreadcrumbBar breadcrumbBar
The associated breadcrumb bar.

### mainPanel

protected JPanel mainPanel

### scrollerPanel

protected JScrollablePanel<JPanel> scrollerPanel

### componentListener

protected ComponentListener componentListener

### dummy

protected JCommandButton dummy

### modelStack

protected LinkedList modelStack
Contains the item path.

### buttonStack

protected LinkedList<JCommandButton> buttonStack

### pathListener

protected BreadcrumbPathListener pathListener

## Constructor Details

### BasicBreadcrumbBarUI

public BasicBreadcrumbBarUI()

## Method Details

### createUI

public static ComponentUI createUI(JComponent c)

### installUI

public void installUI(JComponent c)

Overrides:
  `installUI` in class `ComponentUI`

### uninstallUI

public void uninstallUI(JComponent c)

Overrides:
  `uninstallUI` in class `ComponentUI`

### installDefaults

protected void installDefaults(JBreadcrumbBar bar)

### installComponents

protected void installComponents(JBreadcrumbBar bar)

### installListeners

protected void installListeners(JBreadcrumbBar bar)

### uninstallDefaults

protected void uninstallDefaults(JBreadcrumbBar bar)

### uninstallComponents

protected void uninstallComponents(JBreadcrumbBar bar)

### uninstallListeners

protected void uninstallListeners(JBreadcrumbBar bar)

### createLayoutManager

protected LayoutManager createLayoutManager()
Invoked by `installUI` to create a layout manager object to manage the `JBreadcrumbBar`.

Returns:
  a layout manager object
See Also:
  - `BasicBreadcrumbBarUI.BreadcrumbBarLayout`

### updateComponents

protected void updateComponents()

### pushChoices

protected Object pushChoices(org.pushingpixels.flamingo.internal.ui.bcb.BreadcrumbItemChoices bic)
Pushes a choice to the top position of the stack. If the current top is already a `BreadcrumbItemChoices`, replace it.

Parameters:
  `bic` - The choice item to push.
Returns:
  The item that has been pushed.

### pushChoices

protected Object pushChoices(org.pushingpixels.flamingo.internal.ui.bcb.BreadcrumbItemChoices bic, boolean toUpdateUI)
Pushes a choice to the top position of the stack. If the current top is already a `BreadcrumbItemChoices`, replace it.

Parameters:
  `bic` - The choice item to push.
  `toUpdateUI` - Indication whether the bar should be repainted.
Returns:
  The item that has been pushed.

### pushChoice

protected Object pushChoice(BreadcrumbItem bi, boolean toUpdateUI)
Pushes an item to the top position of the stack. If the current top is already a `BreadcrumbItemChoices`, replace it.

Parameters:
  `bi` - The item to push.
  `toUpdateUI` - Indication whether the bar should be repainted.
Returns:
  The item that has been pushed.