Package org.pushingpixels.flamingo.internal.ui.common.popup

# Class BasicPopupPanelUI

java.lang.Object
javax.swing.plaf.ComponentUI
javax.swing.plaf.PanelUI
org.pushingpixels.flamingo.internal.ui.common.popup.PopupPanelUI
org.pushingpixels.flamingo.internal.ui.common.popup.BasicPopupPanelUI

Direct Known Subclasses:
  `BasicCommandPopupMenuUI`, `BasicRibbonApplicationMenuPopupPanelUI`

public class BasicPopupPanelUI extends PopupPanelUI
Basic UI for popup panel `JPopupPanel`.

## Nested Class Summary

Nested Classes
Modifier and Type
Class
Description
`protected static class`
`BasicPopupPanelUI.PopupPanelEscapeDismisser`
This class is used to trace the changes in the shown popup panels and install ESC key listener on the matching root pane so that the popup panels can be dismissed with the ESC key.
`protected static class`
`BasicPopupPanelUI.WindowTracker`
This class is used to dismiss popup panels on the following events: Mouse click outside any shown popup panel. Closing, iconifying or deactivation of a top-level window. Any change in the component hierarchy of a top-level window. Only one top-level window is tracked at any time.

## Field Summary

Fields
Modifier and Type
Field
Description
`protected JPopupPanel`
`popupPanel`
The associated popup panel.

## Constructor Summary

Constructors
Constructor
Description
`BasicPopupPanelUI()`

## Method Summary

Modifier and Type
Method
Description
`static ComponentUI`
`createUI(JComponent c)`
`protected static void`
`initiliazeGlobalListeners()`
Initializes the global listeners.
`protected void`
`installComponents()`
Installs components on the associated command popup menu.
`protected void`
`installDefaults()`
Installs default settings for the associated command popup menu.
`protected void`
`installListeners()`
Installs listeners on the associated command popup menu.
`void`
`installUI(JComponent c)`
`protected void`
`uninstallComponents()`
Uninstalls subcomponents from the associated command popup menu.
`protected void`
`uninstallDefaults()`
Uninstalls default settings from the associated command popup menu.
`protected void`
`uninstallListeners()`
Uninstalls listeners from the associated command popup menu.
`void`
`uninstallUI(JComponent c)`

### 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

### popupPanel

protected JPopupPanel popupPanel
The associated popup panel.

## Constructor Details

### BasicPopupPanelUI

public BasicPopupPanelUI()

## 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()
Installs default settings for the associated command popup menu.

### installListeners

protected void installListeners()
Installs listeners on the associated command popup menu.

### installComponents

protected void installComponents()
Installs components on the associated command popup menu.

### uninstallDefaults

protected void uninstallDefaults()
Uninstalls default settings from the associated command popup menu.

### uninstallListeners

protected void uninstallListeners()
Uninstalls listeners from the associated command popup menu.

### uninstallComponents

protected void uninstallComponents()
Uninstalls subcomponents from the associated command popup menu.

### initiliazeGlobalListeners

protected static void initiliazeGlobalListeners()
Initializes the global listeners.