com.quadrique.jbuildingblocks.gui
Class MenuPopup

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by javax.swing.JComponent
              extended by javax.swing.JPopupMenu
                  extended by com.quadrique.jbuildingblocks.gui.MenuPopup
All Implemented Interfaces:
ImageObserver, MenuContainer, Serializable, Accessible, MenuElement

public class MenuPopup
extends JPopupMenu

This class specializes the JPopupMenu class to make sure that the popup menu is always visible on the screen.

Author:
Hervé Rivere
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class javax.swing.JPopupMenu
JPopupMenu.Separator
 
Nested classes/interfaces inherited from class javax.swing.JComponent
JComponent.AccessibleJComponent
 
Nested classes/interfaces inherited from class java.awt.Component
Component.BaselineResizeBehavior
 
Field Summary
 
Fields inherited from class javax.swing.JComponent
TOOL_TIP_TEXT_KEY, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
MenuPopup()
           
 
Method Summary
 JMenuItem addAction(ActionBase zAction)
          add an action to the context sensitive menu
 JMenuItem addAction(JMenu zMenu, ActionBase zAction)
           
 JMenu addMenu(JMenu zMenu, String zText, int zMnemonic)
           
 JMenu addMenu(JMenu zMenu, String zText, int zMnemonic, String zIconFileName)
           
 JMenu addMenu(String zText, int zMnemonic)
           
 JMenu addMenu(String zText, int zMnemonic, String zIconFileName)
           
 void show(Component zInvoker, int zMenuPopupRelativeXLocation, int zMenuPopupRelativeYLocation)
          Simply overrides the show() method to make sure that the popup is entirely visible.
 
Methods inherited from class javax.swing.JPopupMenu
add, add, add, addMenuKeyListener, addPopupMenuListener, addSeparator, getAccessibleContext, getComponent, getComponentAtIndex, getComponentIndex, getDefaultLightWeightPopupEnabled, getInvoker, getLabel, getMargin, getMenuKeyListeners, getPopupMenuListeners, getSelectionModel, getSubElements, getUI, getUIClassID, insert, insert, isBorderPainted, isLightWeightPopupEnabled, isPopupTrigger, isVisible, menuSelectionChanged, pack, processKeyEvent, processMouseEvent, remove, removeMenuKeyListener, removePopupMenuListener, setBorderPainted, setDefaultLightWeightPopupEnabled, setInvoker, setLabel, setLightWeightPopupEnabled, setLocation, setPopupSize, setPopupSize, setSelected, setSelectionModel, setUI, setVisible, updateUI
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintImmediately, paintImmediately, print, printAll, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setVerifyInputWhenFocusTarget, unregisterKeyboardAction, update
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusBackward, transferFocusDownCycle, validate
 
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, contains, createImage, createImage, createVolatileImage, createVolatileImage, dispatchEvent, enable, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

MenuPopup

public MenuPopup()
Method Detail

show

public void show(Component zInvoker,
                 int zMenuPopupRelativeXLocation,
                 int zMenuPopupRelativeYLocation)
Simply overrides the show() method to make sure that the popup is entirely visible. If there is not enough room, the popup is displayed in the reversed direction (on top as opposed to the bottom, to the left as opposed to the right).

Overrides:
show in class JPopupMenu
Parameters:
zInvoker - the component
zMenuPopupRelativeXLocation - the x location relative to the upper left corner
zMenuPopupRelativeYLocation - the y location relative to the upper left corner

addAction

public JMenuItem addAction(ActionBase zAction)
add an action to the context sensitive menu

Parameters:
zAction - the action
Returns:
the newly created menuitem that is associated to the action

addMenu

public JMenu addMenu(String zText,
                     int zMnemonic)
              throws Exception
Parameters:
zText - the text to use for the tile of the menu (e.g. "File")
zMnemonic - the menmonic to use for the menu title (e.g. KeyEvent.VK_F)
Returns:
the newly created JMenu
Throws:
Exception - if an error occurs

addMenu

public JMenu addMenu(JMenu zMenu,
                     String zText,
                     int zMnemonic)
              throws Exception
Parameters:
zText - the text to use for the tile of the menu (e.g. "File")
zMnemonic - the menmonic to use for the menu title (e.g. KeyEvent.VK_F)
Returns:
the newly created JMenu
Throws:
Exception - if an error occurs

addMenu

public JMenu addMenu(String zText,
                     int zMnemonic,
                     String zIconFileName)
              throws Exception
Parameters:
zText - the text to use for the tile of the menu (e.g. "File")
zMnemonic - the menmonic to use for the menu title (e.g. KeyEvent.VK_F)
zIconFileName - the file name for the icon
Returns:
the newly created JMenu
Throws:
Exception - if an error occurs

addMenu

public JMenu addMenu(JMenu zMenu,
                     String zText,
                     int zMnemonic,
                     String zIconFileName)
              throws Exception
Parameters:
zText - the text to use for the tile of the menu (e.g. "File")
zMnemonic - the menmonic to use for the menu title (e.g. KeyEvent.VK_F)
zIconFileName - the file name for the icon
Returns:
the newly created JMenu
Throws:
Exception - if an error occurs

addAction

public JMenuItem addAction(JMenu zMenu,
                           ActionBase zAction)
                    throws Exception
Parameters:
zMenu - the menu
zAction - the action to add to the menu
Returns:
the newly created menuitem associated to the action
Throws:
Exception - if an error occurs


Copyright © 2001-2009 Quadrique Corporation. All Rights Reserved.