public class JPopupMenuHelper
extends java.lang.Object
implements java.awt.event.MouseListener, javax.swing.event.PopupMenuListener
| Modifier and Type | Field and Description |
|---|---|
protected java.awt.Component |
component |
protected long |
lastHidden |
protected PopupLocation |
location |
protected javax.swing.JPopupMenu |
popup |
protected java.util.function.Supplier<javax.swing.JPopupMenu> |
popupMaker |
protected long |
threshold |
protected PopupTrigger |
trigger |
| Constructor and Description |
|---|
JPopupMenuHelper(java.awt.Component component,
javax.swing.JPopupMenu popup) |
JPopupMenuHelper(java.awt.Component component,
java.util.function.Supplier<javax.swing.JPopupMenu> popupMaker)
Alternate constructor allows for lazy popup instantiation
|
| Modifier and Type | Method and Description |
|---|---|
protected java.awt.Point |
adjustPopupLocationToFitScreen(int xPosition,
int yPosition)
Moves the popup location so that the menu does not overlap the task bar.
|
protected java.awt.Point |
adjustPopupLocationToFitWindow(int xPosition,
int yPosition) |
void |
bind() |
static void |
bind(java.awt.Component component,
javax.swing.JPopupMenu popup)
Creates a PopupHelper with trigger=OnPress, location=UnderneathComponent, and threshold=20ms and binds it.
|
void |
doShowPopup(java.awt.event.MouseEvent e) |
java.awt.Component |
getComponent() |
PopupLocation |
getLocation() |
javax.swing.JPopupMenu |
getPopup() |
long |
getThreshold() |
PopupTrigger |
getTrigger() |
void |
mouseClicked(java.awt.event.MouseEvent e) |
void |
mouseEntered(java.awt.event.MouseEvent e) |
void |
mouseExited(java.awt.event.MouseEvent e) |
void |
mousePressed(java.awt.event.MouseEvent e) |
void |
mouseReleased(java.awt.event.MouseEvent e) |
void |
popupMenuCanceled(javax.swing.event.PopupMenuEvent e) |
void |
popupMenuWillBecomeInvisible(javax.swing.event.PopupMenuEvent e) |
void |
popupMenuWillBecomeVisible(javax.swing.event.PopupMenuEvent e) |
void |
setComponent(java.awt.Component component) |
void |
setLocation(PopupLocation location) |
void |
setPopup(javax.swing.JPopupMenu popup) |
void |
setThreshold(long threshold) |
void |
setTrigger(PopupTrigger trigger) |
void |
unbind() |
protected java.awt.Component component
protected javax.swing.JPopupMenu popup
protected java.util.function.Supplier<javax.swing.JPopupMenu> popupMaker
protected PopupTrigger trigger
protected PopupLocation location
protected long lastHidden
protected long threshold
public JPopupMenuHelper(java.awt.Component component,
javax.swing.JPopupMenu popup)
public JPopupMenuHelper(java.awt.Component component,
java.util.function.Supplier<javax.swing.JPopupMenu> popupMaker)
public void bind()
public void unbind()
public static void bind(java.awt.Component component,
javax.swing.JPopupMenu popup)
public void setTrigger(PopupTrigger trigger)
public PopupTrigger getTrigger()
public void setLocation(PopupLocation location)
public PopupLocation getLocation()
public long getThreshold()
public void setThreshold(long threshold)
public void setComponent(java.awt.Component component)
public java.awt.Component getComponent()
public void setPopup(javax.swing.JPopupMenu popup)
public javax.swing.JPopupMenu getPopup()
public void popupMenuWillBecomeVisible(javax.swing.event.PopupMenuEvent e)
popupMenuWillBecomeVisible in interface javax.swing.event.PopupMenuListenerpublic void popupMenuWillBecomeInvisible(javax.swing.event.PopupMenuEvent e)
popupMenuWillBecomeInvisible in interface javax.swing.event.PopupMenuListenerpublic void popupMenuCanceled(javax.swing.event.PopupMenuEvent e)
popupMenuCanceled in interface javax.swing.event.PopupMenuListenerpublic void mouseClicked(java.awt.event.MouseEvent e)
mouseClicked in interface java.awt.event.MouseListenerpublic void doShowPopup(java.awt.event.MouseEvent e)
public void mousePressed(java.awt.event.MouseEvent e)
mousePressed in interface java.awt.event.MouseListenerpublic void mouseReleased(java.awt.event.MouseEvent e)
mouseReleased in interface java.awt.event.MouseListenerpublic void mouseEntered(java.awt.event.MouseEvent e)
mouseEntered in interface java.awt.event.MouseListenerpublic void mouseExited(java.awt.event.MouseEvent e)
mouseExited in interface java.awt.event.MouseListenerprotected java.awt.Point adjustPopupLocationToFitScreen(int xPosition,
int yPosition)
protected java.awt.Point adjustPopupLocationToFitWindow(int xPosition,
int yPosition)