Class PopupPanelManager
- java.lang.Object
-
- org.pushingpixels.flamingo.api.common.popup.PopupPanelManager
-
public class PopupPanelManager extends java.lang.ObjectManager for showing and hidingJPopupPanels.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classPopupPanelManager.PopupEventPopup event.static classPopupPanelManager.PopupInfoInformation on a single showing popup.static interfacePopupPanelManager.PopupListenerListener on showing and hiding the popup panels.
-
Field Summary
Fields Modifier and Type Field Description protected java.util.Map<JPopupPanel,javax.swing.Popup>popupPanelsMap of all popup panels and associatedPopupobjects.protected java.util.LinkedList<PopupPanelManager.PopupInfo>shownPathAll currently shown popup panels.
-
Constructor Summary
Constructors Constructor Description PopupPanelManager()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddPopup(javax.swing.JComponent popupOriginator, javax.swing.Popup popup, JPopupPanel popupInitiator)Adds new popup to the tracking structures.voidaddPopupListener(PopupPanelManager.PopupListener l)Adds the specified popup listener.static PopupPanelManagerdefaultManager()Returns the default popup panel manager.protected voidfirePopupHidden(JPopupPanel panel, javax.swing.JComponent popupOriginator)Fires an event on hiding the specified popup panel.protected voidfirePopupShown(JPopupPanel panel, javax.swing.JComponent popupOriginator)Fires an event on showing the specified popup panel.java.util.List<PopupPanelManager.PopupInfo>getShownPath()Returns all currently shown popup panels.voidhideLastPopup()Hides the last shown popup panel.voidhidePopups(java.awt.Component comp)Hides all popup panels based on the specified component.voidremovePopupListener(PopupPanelManager.PopupListener l)Removes the specified popup listener.
-
-
-
Field Detail
-
shownPath
protected java.util.LinkedList<PopupPanelManager.PopupInfo> shownPath
All currently shown popup panels.
-
popupPanels
protected java.util.Map<JPopupPanel,javax.swing.Popup> popupPanels
Map of all popup panels and associatedPopupobjects.
-
-
Method Detail
-
defaultManager
public static PopupPanelManager defaultManager()
Returns the default popup panel manager.- Returns:
- a PopupPanelManager object
-
addPopup
public void addPopup(javax.swing.JComponent popupOriginator, javax.swing.Popup popup, JPopupPanel popupInitiator)Adds new popup to the tracking structures.- Parameters:
popupOriginator- The originating component.popup- The new popup.popupInitiator- The initiator of the popup.
-
hideLastPopup
public void hideLastPopup()
Hides the last shown popup panel.
-
hidePopups
public void hidePopups(java.awt.Component comp)
Hides all popup panels based on the specified component. We find the first ancestor of the specified component that is popup panel, and close all popup panels that were open from that popup panel. If the specified component isnull, all popup panels are closed.- Parameters:
comp- Component.
-
getShownPath
public java.util.List<PopupPanelManager.PopupInfo> getShownPath()
Returns all currently shown popup panels.- Returns:
- All currently shown popup panels.
-
addPopupListener
public void addPopupListener(PopupPanelManager.PopupListener l)
Adds the specified popup listener.- Parameters:
l- Listener to add.
-
removePopupListener
public void removePopupListener(PopupPanelManager.PopupListener l)
Removes the specified popup listener.- Parameters:
l- Listener to remove.
-
firePopupShown
protected void firePopupShown(JPopupPanel panel, javax.swing.JComponent popupOriginator)
Fires an event on showing the specified popup panel.- Parameters:
panel- Popup panel that was shown.popupOriginator- The originating component.
-
firePopupHidden
protected void firePopupHidden(JPopupPanel panel, javax.swing.JComponent popupOriginator)
Fires an event on hiding the specified popup panel.- Parameters:
panel- Popup panel that was hidden.popupOriginator- The originating component.
-
-