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.PopupMenuListener
public void popupMenuWillBecomeInvisible(javax.swing.event.PopupMenuEvent e)
popupMenuWillBecomeInvisible
in interface javax.swing.event.PopupMenuListener
public void popupMenuCanceled(javax.swing.event.PopupMenuEvent e)
popupMenuCanceled
in interface javax.swing.event.PopupMenuListener
public void mouseClicked(java.awt.event.MouseEvent e)
mouseClicked
in interface java.awt.event.MouseListener
public void doShowPopup(java.awt.event.MouseEvent e)
public void mousePressed(java.awt.event.MouseEvent e)
mousePressed
in interface java.awt.event.MouseListener
public void mouseReleased(java.awt.event.MouseEvent e)
mouseReleased
in interface java.awt.event.MouseListener
public void mouseEntered(java.awt.event.MouseEvent e)
mouseEntered
in interface java.awt.event.MouseListener
public void mouseExited(java.awt.event.MouseEvent e)
mouseExited
in interface java.awt.event.MouseListener
protected java.awt.Point adjustPopupLocationToFitScreen(int xPosition, int yPosition)
protected java.awt.Point adjustPopupLocationToFitWindow(int xPosition, int yPosition)