edu.northwestern.at.wordhoard.swing.calculator.menus
Class EditMenu

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by javax.swing.JComponent
              extended by javax.swing.AbstractButton
                  extended by javax.swing.JMenuItem
                      extended by javax.swing.JMenu
                          extended by edu.northwestern.at.wordhoard.swing.calculator.menus.BaseMenu
                              extended by edu.northwestern.at.wordhoard.swing.calculator.menus.EditMenu
All Implemented Interfaces:
java.awt.image.ImageObserver, java.awt.ItemSelectable, java.awt.MenuContainer, java.io.Serializable, javax.accessibility.Accessible, javax.swing.MenuElement, javax.swing.SwingConstants
Direct Known Subclasses:
CalculatorEditMenu

public class EditMenu
extends BaseMenu

WordHoard Calculator Edit Menu.

See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class edu.northwestern.at.wordhoard.swing.calculator.menus.BaseMenu
BaseMenu.GenericActionListener, BaseMenu.OutputResults
 
Nested classes/interfaces inherited from class javax.swing.JMenu
javax.swing.JMenu.AccessibleJMenu, javax.swing.JMenu.WinListener
 
Nested classes/interfaces inherited from class javax.swing.JMenuItem
javax.swing.JMenuItem.AccessibleJMenuItem
 
Nested classes/interfaces inherited from class javax.swing.AbstractButton
javax.swing.AbstractButton.AccessibleAbstractButton, javax.swing.AbstractButton.ButtonChangeListener
 
Nested classes/interfaces inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
 
Nested classes/interfaces inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
 
Nested classes/interfaces inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
protected  javax.swing.JMenuItem clearMenuItem
          Clear current display.
protected  javax.swing.JMenuItem copyMenuItem
          Copy selected contents to clipboard.
protected  javax.swing.JMenuItem cutMenuItem
          Cut selected contents to clipboard.
 javax.swing.event.MenuListener editMenuListener
          Edit menu listener.
protected  javax.swing.JMenuItem pasteMenuItem
          Paste clipboard contents.
protected  javax.swing.JMenuItem selectAllMenuItem
          Select all available text.
protected  javax.swing.JMenuItem unselectMenuItem
          Deselect any currently selected text.
 
Fields inherited from class edu.northwestern.at.wordhoard.swing.calculator.menus.BaseMenu
menuBar, menuName, parentWindow, RADIOBUTTONMENUITEM, TEXTMENUITEM
 
Fields inherited from class javax.swing.JMenu
popupListener
 
Fields inherited from class javax.swing.AbstractButton
actionListener, BORDER_PAINTED_CHANGED_PROPERTY, changeEvent, changeListener, CONTENT_AREA_FILLED_CHANGED_PROPERTY, DISABLED_ICON_CHANGED_PROPERTY, DISABLED_SELECTED_ICON_CHANGED_PROPERTY, FOCUS_PAINTED_CHANGED_PROPERTY, HORIZONTAL_ALIGNMENT_CHANGED_PROPERTY, HORIZONTAL_TEXT_POSITION_CHANGED_PROPERTY, ICON_CHANGED_PROPERTY, itemListener, MARGIN_CHANGED_PROPERTY, MNEMONIC_CHANGED_PROPERTY, model, MODEL_CHANGED_PROPERTY, PRESSED_ICON_CHANGED_PROPERTY, ROLLOVER_ENABLED_CHANGED_PROPERTY, ROLLOVER_ICON_CHANGED_PROPERTY, ROLLOVER_SELECTED_ICON_CHANGED_PROPERTY, SELECTED_ICON_CHANGED_PROPERTY, TEXT_CHANGED_PROPERTY, VERTICAL_ALIGNMENT_CHANGED_PROPERTY, VERTICAL_TEXT_POSITION_CHANGED_PROPERTY
 
Fields inherited from class javax.swing.JComponent
accessibleContext, 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
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface javax.swing.SwingConstants
BOTTOM, CENTER, EAST, HORIZONTAL, LEADING, LEFT, NEXT, NORTH, NORTH_EAST, NORTH_WEST, PREVIOUS, RIGHT, SOUTH, SOUTH_EAST, SOUTH_WEST, TOP, TRAILING, VERTICAL, WEST
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
EditMenu(AbstractWindow parentWindow)
          Create edit menu.
EditMenu(javax.swing.JMenuBar menuBar, AbstractWindow parentWindow)
          Create edit menu.
 
Method Summary
protected  void clear()
          Clear text.
protected  boolean clipboardHasPasteableData()
          Check if clipboard has pasteable data.
protected  void copy(java.awt.event.ActionEvent event)
          Do edit menu copy.
protected  void createMenuItems()
          Create the menu items.
protected  void cut(java.awt.event.ActionEvent event)
          Do edit menu cut.
 void handleEditMenuCanceledOrDeselected()
          Handles edit menu canceled or deselected.
protected  void handleEditMenuSelected(javax.swing.event.MenuEvent menuEvent)
          Handle a menu selected event.
protected  void paste(java.awt.event.ActionEvent event)
          Do edit menu paste.
protected  void selectAll(java.awt.event.ActionEvent event)
          Do edit menu select all.
 void setCutCopyPaste(CutCopyPaste copyable)
          Set menu status from a CutCopyPaste object.
 void setSelectAll(SelectAll selectAll)
          Set menu status from a SelectAll object.
protected  void unselect(java.awt.event.ActionEvent event)
          Do edit menu unselect.
 
Methods inherited from class edu.northwestern.at.wordhoard.swing.calculator.menus.BaseMenu
addACancelButton, addACloseButton, addMenuItem, addMenuItem, addMenuItem, addMenuItem, addMenuItem, addMenuItem, addMenuItem, addMenuItem, cancelToClose, closePersistenceManager, createProgressPanel, displayErrorMessage, getCalculatorWindow, getConsole, getEditMenu, getFocusedTextComponent, getInputTextPane, getInterpreter, getMainTabbedPane, getNextOutputWindowTitle, getNextOutputWindowTitle, getResultsPanel, getTableOfContentsWindow, handleLoggedIn, handleLogin, handleLogout, notYetImplemented, performAction, performAction, setBusyCursor, setDefaultCursor
 
Methods inherited from class javax.swing.JMenu
add, add, add, add, add, addMenuListener, addSeparator, applyComponentOrientation, createActionChangeListener, createActionComponent, createWinListener, doClick, fireMenuCanceled, fireMenuDeselected, fireMenuSelected, getAccessibleContext, getComponent, getDelay, getItem, getItemCount, getMenuComponent, getMenuComponentCount, getMenuComponents, getMenuListeners, getPopupMenu, getPopupMenuOrigin, getSubElements, getUIClassID, insert, insert, insert, insertSeparator, isMenuComponent, isPopupMenuVisible, isSelected, isTearOff, isTopLevelMenu, menuSelectionChanged, paramString, processKeyEvent, remove, remove, remove, removeAll, removeMenuListener, setAccelerator, setComponentOrientation, setDelay, setMenuLocation, setModel, setPopupMenuVisible, setSelected, updateUI
 
Methods inherited from class javax.swing.JMenuItem
actionPropertyChanged, addMenuDragMouseListener, addMenuKeyListener, configurePropertiesFromAction, fireMenuDragMouseDragged, fireMenuDragMouseEntered, fireMenuDragMouseExited, fireMenuDragMouseReleased, fireMenuKeyPressed, fireMenuKeyReleased, fireMenuKeyTyped, getAccelerator, getMenuDragMouseListeners, getMenuKeyListeners, init, isArmed, processKeyEvent, processMenuDragMouseEvent, processMenuKeyEvent, processMouseEvent, removeMenuDragMouseListener, removeMenuKeyListener, setArmed, setEnabled, setUI
 
Methods inherited from class javax.swing.AbstractButton
addActionListener, addChangeListener, addImpl, addItemListener, checkHorizontalKey, checkVerticalKey, createActionListener, createActionPropertyChangeListener, createChangeListener, createItemListener, doClick, fireActionPerformed, fireItemStateChanged, fireStateChanged, getAction, getActionCommand, getActionListeners, getChangeListeners, getDisabledIcon, getDisabledSelectedIcon, getDisplayedMnemonicIndex, getHideActionText, getHorizontalAlignment, getHorizontalTextPosition, getIcon, getIconTextGap, getItemListeners, getLabel, getMargin, getMnemonic, getModel, getMultiClickThreshhold, getPressedIcon, getRolloverIcon, getRolloverSelectedIcon, getSelectedIcon, getSelectedObjects, getText, getUI, getVerticalAlignment, getVerticalTextPosition, imageUpdate, isBorderPainted, isContentAreaFilled, isFocusPainted, isRolloverEnabled, paintBorder, removeActionListener, removeChangeListener, removeItemListener, removeNotify, setAction, setActionCommand, setBorderPainted, setContentAreaFilled, setDisabledIcon, setDisabledSelectedIcon, setDisplayedMnemonicIndex, setFocusPainted, setHideActionText, setHorizontalAlignment, setHorizontalTextPosition, setIcon, setIconTextGap, setLabel, setLayout, setMargin, setMnemonic, setMnemonic, setMultiClickThreshhold, setPressedIcon, setRolloverEnabled, setRolloverIcon, setRolloverSelectedIcon, setSelectedIcon, setText, setUI, setVerticalAlignment, setVerticalTextPosition
 
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, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
 
Methods inherited from class java.awt.Container
add, add, add, addContainerListener, addPropertyChangeListener, addPropertyChangeListener, 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, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, transferFocusBackward, 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, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface javax.swing.MenuElement
processKeyEvent, processMouseEvent
 

Field Detail

copyMenuItem

protected javax.swing.JMenuItem copyMenuItem
Copy selected contents to clipboard.


cutMenuItem

protected javax.swing.JMenuItem cutMenuItem
Cut selected contents to clipboard.


pasteMenuItem

protected javax.swing.JMenuItem pasteMenuItem
Paste clipboard contents.


selectAllMenuItem

protected javax.swing.JMenuItem selectAllMenuItem
Select all available text.


unselectMenuItem

protected javax.swing.JMenuItem unselectMenuItem
Deselect any currently selected text.


clearMenuItem

protected javax.swing.JMenuItem clearMenuItem
Clear current display.


editMenuListener

public javax.swing.event.MenuListener editMenuListener
Edit menu listener.

Constructor Detail

EditMenu

public EditMenu(AbstractWindow parentWindow)
Create edit menu.

Parameters:
parentWindow - The parent window of this menu.

EditMenu

public EditMenu(javax.swing.JMenuBar menuBar,
                AbstractWindow parentWindow)
Create edit menu.

Parameters:
menuBar - The menu bar to which to attach this menu.
parentWindow - The parent window of this menu.
Method Detail

createMenuItems

protected void createMenuItems()
Create the menu items.

Overrides:
createMenuItems in class BaseMenu

handleEditMenuSelected

protected void handleEditMenuSelected(javax.swing.event.MenuEvent menuEvent)
                               throws java.lang.Exception
Handle a menu selected event.

Parameters:
menuEvent - Menu event.

Enable or disable the edit menu items depending upon the availability of clipboard text or current text selection.

Throws:
java.lang.Exception

handleEditMenuCanceledOrDeselected

public void handleEditMenuCanceledOrDeselected()
Handles edit menu canceled or deselected.

When the Edit menu is canceled or deselected, we reenable all the commands so that the command key shortcuts will still work.


clipboardHasPasteableData

protected boolean clipboardHasPasteableData()
Check if clipboard has pasteable data.

Returns:
true if clipboard has pasteable text.

clear

protected void clear()
              throws java.lang.Exception
Clear text.

Throws:
java.lang.Exception

copy

protected void copy(java.awt.event.ActionEvent event)
             throws java.lang.Exception
Do edit menu copy.

Throws:
java.lang.Exception

cut

protected void cut(java.awt.event.ActionEvent event)
            throws java.lang.Exception
Do edit menu cut.

Throws:
java.lang.Exception

paste

protected void paste(java.awt.event.ActionEvent event)
              throws java.lang.Exception
Do edit menu paste.

Throws:
java.lang.Exception

selectAll

protected void selectAll(java.awt.event.ActionEvent event)
                  throws java.lang.Exception
Do edit menu select all.

Throws:
java.lang.Exception

unselect

protected void unselect(java.awt.event.ActionEvent event)
                 throws java.lang.Exception
Do edit menu unselect.

Throws:
java.lang.Exception

setCutCopyPaste

public void setCutCopyPaste(CutCopyPaste copyable)
Set menu status from a CutCopyPaste object.

Parameters:
copyable - Object implementing the CutCopyPaste interface.

On output, sets the status of the Cut, Copy, and Paste menu items to reflect the status of the cutCopyPaste object.


setSelectAll

public void setSelectAll(SelectAll selectAll)
Set menu status from a SelectAll object.

Parameters:
selectAll - Object implementing the SelectAll interface.

On output, sets the status of the Select All and Unselect menu items to reflect the status of the SelectAll object.