Package xal.extension.widgets.apputils
Class SimpleChartPopupMenu
java.lang.Object
java.awt.Component
java.awt.Container
javax.swing.JComponent
javax.swing.JPopupMenu
xal.extension.widgets.apputils.SimpleChartPopupMenu
- All Implemented Interfaces:
MouseListener
,ImageObserver
,MenuContainer
,Serializable
,EventListener
,Accessible
,MenuElement
Popup menu that can be attached to a Chart to provide common actions for the
user. Supported chart types must have a ChartPopupAdaptor and an associated
constructor in this class. If you want the menu to appear with a popup event,
then you must add it as a mouse listener of the target view. Alternatively
you can use one of the static convenience methods:
addPopupMenuTo()
to both create the popup menu and add it as a
mouse listener to the chart.- Author:
- tap
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class javax.swing.JPopupMenu
JPopupMenu.AccessibleJPopupMenu, JPopupMenu.Separator
Nested classes/interfaces inherited from class javax.swing.JComponent
JComponent.AccessibleJComponent
Nested classes/interfaces inherited from class java.awt.Container
Container.AccessibleAWTContainer
Nested classes/interfaces inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected Component
protected ChartPopupAdaptor
protected SimpleChartDialog
protected JFileChooser
static final String
protected Action
static final String
protected Action
static final String
protected Action
static final String
static final String
protected Action
protected Action
static final String
static final String
protected Action
protected Action
Fields inherited from class javax.swing.JComponent
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
Fields inherited from class java.awt.Component
accessibleContext, 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
ConstructorsConstructorDescriptionSimpleChartPopupMenu
(Component aChart, ChartPopupAdaptor anAdaptor) Primary constructorCreate a simple chart popup menu for a FunctionGraphsJPanel chart -
Method Summary
Modifier and TypeMethodDescriptionstatic SimpleChartPopupMenu
addPopupMenuTo
(Component aChart, ChartPopupAdaptor anAdaptor) Convenience method for creating a SimpleChartPopupMenu and adding it as a menu listener to the chart.static SimpleChartPopupMenu
addPopupMenuTo
(FunctionGraphsJPanel aChart) Convenience method for creating a SimpleChartPopupMenu and adding it as a menu listener to the chart.protected void
Build the popup menu by adding all of the defined actionsprotected void
Define the actions for the popup menuvoid
handleMouseEvent
(MouseEvent event) handle the mouse eventprotected void
Create and initialize the GUI componentsvoid
mouseClicked
(MouseEvent event) implement MouseListener interfacevoid
mouseEntered
(MouseEvent event) implement MouseListener interfacevoid
mouseExited
(MouseEvent event) implement MouseListener interfacevoid
mousePressed
(MouseEvent event) implement MouseListener interfacevoid
mouseReleased
(MouseEvent event) implement MouseListener interfacevoid
setActionEnabled
(String actionID, boolean enableState) Enable/Disable the action specified by the actionID.protected void
setup()
Initialize the popup menu.protected void
Put the actions in the table.protected void
update()
Update the components to reflect the state of the chartMethods inherited from class javax.swing.JPopupMenu
add, add, add, addMenuKeyListener, addPopupMenuListener, addSeparator, createActionChangeListener, createActionComponent, firePopupMenuCanceled, firePopupMenuWillBecomeInvisible, firePopupMenuWillBecomeVisible, getAccessibleContext, getComponent, getComponentAtIndex, getComponentIndex, getDefaultLightWeightPopupEnabled, getInvoker, getLabel, getMargin, getMenuKeyListeners, getPopupMenuListeners, getSelectionModel, getSubElements, getUI, getUIClassID, insert, insert, isBorderPainted, isLightWeightPopupEnabled, isPopupTrigger, isVisible, menuSelectionChanged, pack, paintBorder, paramString, processFocusEvent, processKeyEvent, processKeyEvent, processMouseEvent, remove, removeMenuKeyListener, removePopupMenuListener, setBorderPainted, setDefaultLightWeightPopupEnabled, setInvoker, setLabel, setLightWeightPopupEnabled, setLocation, setPopupSize, setPopupSize, setSelected, setSelectionModel, setUI, setVisible, show, updateUI
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, 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, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, 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, setUI, setVerifyInputWhenFocusTarget, unregisterKeyboardAction, update
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, 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, processContainerEvent, processEvent, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusDownCycle, validate, validateTree
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, 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, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, 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, processComponentEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
-
Field Details
-
SCALE_ONCE_ID
- See Also:
-
X_AUTOSCALE_ID
- See Also:
-
Y_AUTOSCALE_ID
- See Also:
-
X_GRID_ID
- See Also:
-
Y_GRID_ID
- See Also:
-
OPTIONS_DIALOG_ID
- See Also:
-
IMAGE_CAPTURE_ID
- See Also:
-
chartAdaptor
-
actionTable
-
scaleOnceAction
-
xAutoScaleAction
-
yAutoScaleAction
-
xGridAction
-
yGridAction
-
optionsAction
-
imageCaptureAction
-
chart
-
chartDialog
-
fileChooser
-
-
Constructor Details
-
SimpleChartPopupMenu
Primary constructor -
SimpleChartPopupMenu
Create a simple chart popup menu for a FunctionGraphsJPanel chart
-
-
Method Details
-
addPopupMenuTo
Convenience method for creating a SimpleChartPopupMenu and adding it as a menu listener to the chart.- Parameters:
aChart
- The chart to manageanAdaptor
- The chart popup adaptor to use- Returns:
- The popup menu instance
-
addPopupMenuTo
Convenience method for creating a SimpleChartPopupMenu and adding it as a menu listener to the chart.- Parameters:
aChart
- The chart to manage- Returns:
- The popup menu instance
-
setup
protected void setup()Initialize the popup menu. -
initComponents
protected void initComponents()Create and initialize the GUI components -
defineActions
protected void defineActions()Define the actions for the popup menu -
storeActions
protected void storeActions()Put the actions in the table. -
buildMenu
protected void buildMenu()Build the popup menu by adding all of the defined actions -
update
protected void update()Update the components to reflect the state of the chart -
setActionEnabled
Enable/Disable the action specified by the actionID.- Parameters:
actionID
- The id of the action to enable/disable.enableState
- The desired enable/disable state.
-
mouseClicked
implement MouseListener interface- Specified by:
mouseClicked
in interfaceMouseListener
-
mouseEntered
implement MouseListener interface- Specified by:
mouseEntered
in interfaceMouseListener
-
mouseExited
implement MouseListener interface- Specified by:
mouseExited
in interfaceMouseListener
-
mousePressed
implement MouseListener interface- Specified by:
mousePressed
in interfaceMouseListener
-
mouseReleased
implement MouseListener interface- Specified by:
mouseReleased
in interfaceMouseListener
-
handleMouseEvent
handle the mouse event
-