jsky.image.gui
Class ImageDisplayMenuBar

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by javax.swing.JComponent
              extended by javax.swing.JMenuBar
                  extended by jsky.image.gui.ImageDisplayMenuBar
All Implemented Interfaces:
java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.accessibility.Accessible, javax.swing.MenuElement
Direct Known Subclasses:
NavigatorImageDisplayMenuBar

public class ImageDisplayMenuBar
extends javax.swing.JMenuBar

Implements a menubar for an ImageDisplayControl.

Version:
$Revision: 1.1 $
Author:
Allan Brighton
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class javax.swing.JMenuBar
javax.swing.JMenuBar.AccessibleJMenuBar
 
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.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
static float MAX_SCALE
          Maximum scale (zoom) factor for menu
static float MIN_SCALE
          Minimum scale (zoom) factor for menu
 
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 java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
ImageDisplayMenuBar(DivaMainImageDisplay imageDisplay, GenericToolBar toolBar)
          Create the menubar for the given main image display.
 
Method Summary
protected  void addScaleMenuItem(javax.swing.JMenu menu, javax.swing.ButtonGroup group, java.lang.String label, float value)
          Add a radio button menu item to the scale menu and given group with the given label and scale value.
protected  javax.swing.JMenu createEditMenu()
          Create the Edit menu.
protected  javax.swing.JMenuItem createEditPreferencesMenuItem()
          Create the Edit => "Preferences" menu item
protected  javax.swing.JMenuItem createFileClearImageMenuItem()
          Create the File => Clear Image menu item
protected  javax.swing.JMenuItem createFileCloseMenuItem()
          Create the File => Close menu item
protected  javax.swing.JMenuItem createFileExitMenuItem()
          Create the File => Exit menu item
protected  javax.swing.JMenu createFileMenu()
          Create the File menu.
protected  javax.swing.JMenuItem createFileNewWindowMenuItem()
          Create the File => "New Window" menu item
protected  javax.swing.JMenuItem createFileOpenURLMenuItem()
          Create the File => "Open URL" menu item
protected  javax.swing.JMenuItem createGoClearHistoryMenuItem()
          Create the Go => "Clear History" menu item.
protected  javax.swing.JMenu createGoMenu(javax.swing.JMenu menu)
          Create or update the Go (history) menu.
protected  javax.swing.JMenuItem createViewColorsMenuItem()
          Create the View => "Colors" menu item
protected  javax.swing.JMenuItem createViewCutLevelsMenuItem()
          Create the View => "Cut Levels" menu item
protected  javax.swing.JMenuItem createViewFitsExtensionsMenuItem()
          Create the View => "FITS Extensions" menu item
protected  javax.swing.JMenuItem createViewFitsKeywordsMenuItem()
          Create the View => "FITS Keywords" menu item
protected  javax.swing.JCheckBoxMenuItem createViewFlipXMenuItem()
          Create the View => "Flip X" menu item
protected  javax.swing.JCheckBoxMenuItem createViewFlipYMenuItem()
          Create the View => "Flip Y" menu item
protected  javax.swing.JMenuItem createViewImagePropertiesMenuItem()
          Create the View => "Image Properties" menu item
protected  javax.swing.JMenu createViewInterpolationMenu()
          Create the View => "Scale Interpolation" menu item
protected  javax.swing.JMenu createViewMenu()
          Create the View menu.
protected  javax.swing.JMenuItem createViewPickObjectMenuItem()
          Create the View => "Pick Object" menu item
protected  javax.swing.JMenu createViewRotateMenu()
          Create the View => "Rotate" menu item
protected  javax.swing.JMenuItem createViewScaleFitToWindowMenuItem()
          Create the View => "Scale" => "Fit Image in Window" menu item
protected  javax.swing.JMenu createViewScaleMenu()
          Create the View => "Scale" menu item
protected  javax.swing.JMenu createViewScaleZoomInMenu()
          Create the View => "Scale" => "Zoom In" menu item
protected  javax.swing.JMenu createViewScaleZoomOutMenu()
          Create the View => "Scale" => "Zoom Out" menu item
protected  javax.swing.JMenu createViewShowToolBarAsMenu()
          Create the View => "Show Toolbar As" menu
protected  javax.swing.JCheckBoxMenuItem createViewSmoothScrollingMenuItem()
          Create the View => "Smooth Scrolling" menu item
protected  javax.swing.JCheckBoxMenuItem createViewToolBarMenuItem()
          Create the View => "Toolbar" menu item
static DivaMainImageDisplay getCurrentImageDisplay()
          Return the current image window (for the Go/history menu, which may be shared by multiple image displays);
 javax.swing.JMenu getEditMenu()
          Return the handle for the Edit menu
 javax.swing.JMenu getFileMenu()
          Return the handle for the File menu
 javax.swing.JMenu getGoMenu()
          Return the handle for the Go menu
 javax.swing.JMenu getGraphicsMenu()
          Return the handle for the Graphics menu
 DivaMainImageDisplay getImageDisplay()
          Return the target image window
 javax.swing.JMenuItem getNewWindowMenuItem()
          Return the File => "New Window" menu item
 javax.swing.JMenuItem getPickObjectMenuItem()
          Return the Pick Object menu item
static java.lang.String getScaleLabel(float f)
          Get the scale menu label for the given float scale factor.
 javax.swing.JMenu getViewMenu()
          Return the handle for the View menu
static void setCurrentImageDisplay(DivaMainImageDisplay imageDisplay)
          Set the current image window (for the Go/history menu, which may be shared by multiple image displays);
 void setScale(float value)
          Set the scale for the image to the given value and update the menu label.
 
Methods inherited from class javax.swing.JMenuBar
add, addNotify, getAccessibleContext, getComponent, getComponentAtIndex, getComponentIndex, getHelpMenu, getMargin, getMenu, getMenuCount, getSelectionModel, getSubElements, getUI, getUIClassID, isBorderPainted, isSelected, menuSelectionChanged, paintBorder, paramString, processKeyBinding, processKeyEvent, processMouseEvent, removeNotify, setBorderPainted, setHelpMenu, setMargin, setSelected, setSelectionModel, setUI, updateUI
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, 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, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyEvent, 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, setEnabled, 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, 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, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, 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, imageUpdate, 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, setComponentOrientation, 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
 

Field Detail

MAX_SCALE

public static final float MAX_SCALE
Maximum scale (zoom) factor for menu

See Also:
Constant Field Values

MIN_SCALE

public static final float MIN_SCALE
Minimum scale (zoom) factor for menu

See Also:
Constant Field Values
Constructor Detail

ImageDisplayMenuBar

public ImageDisplayMenuBar(DivaMainImageDisplay imageDisplay,
                           GenericToolBar toolBar)
Create the menubar for the given main image display.

Parameters:
imageDisplay - the target image display
toolBar - the toolbar associated with this menubar (shares some actions)
Method Detail

getCurrentImageDisplay

public static DivaMainImageDisplay getCurrentImageDisplay()
Return the current image window (for the Go/history menu, which may be shared by multiple image displays);


setCurrentImageDisplay

public static void setCurrentImageDisplay(DivaMainImageDisplay imageDisplay)
Set the current image window (for the Go/history menu, which may be shared by multiple image displays);


createFileMenu

protected javax.swing.JMenu createFileMenu()
Create the File menu.


createFileOpenURLMenuItem

protected javax.swing.JMenuItem createFileOpenURLMenuItem()
Create the File => "Open URL" menu item


createFileClearImageMenuItem

protected javax.swing.JMenuItem createFileClearImageMenuItem()
Create the File => Clear Image menu item


createFileNewWindowMenuItem

protected javax.swing.JMenuItem createFileNewWindowMenuItem()
Create the File => "New Window" menu item


createFileExitMenuItem

protected javax.swing.JMenuItem createFileExitMenuItem()
Create the File => Exit menu item


createFileCloseMenuItem

protected javax.swing.JMenuItem createFileCloseMenuItem()
Create the File => Close menu item


createEditMenu

protected javax.swing.JMenu createEditMenu()
Create the Edit menu.


createEditPreferencesMenuItem

protected javax.swing.JMenuItem createEditPreferencesMenuItem()
Create the Edit => "Preferences" menu item


createViewMenu

protected javax.swing.JMenu createViewMenu()
Create the View menu.


createViewToolBarMenuItem

protected javax.swing.JCheckBoxMenuItem createViewToolBarMenuItem()
Create the View => "Toolbar" menu item


createViewShowToolBarAsMenu

protected javax.swing.JMenu createViewShowToolBarAsMenu()
Create the View => "Show Toolbar As" menu


createViewCutLevelsMenuItem

protected javax.swing.JMenuItem createViewCutLevelsMenuItem()
Create the View => "Cut Levels" menu item


createViewColorsMenuItem

protected javax.swing.JMenuItem createViewColorsMenuItem()
Create the View => "Colors" menu item


createViewPickObjectMenuItem

protected javax.swing.JMenuItem createViewPickObjectMenuItem()
Create the View => "Pick Object" menu item


createViewFitsExtensionsMenuItem

protected javax.swing.JMenuItem createViewFitsExtensionsMenuItem()
Create the View => "FITS Extensions" menu item


createViewFitsKeywordsMenuItem

protected javax.swing.JMenuItem createViewFitsKeywordsMenuItem()
Create the View => "FITS Keywords" menu item


createViewImagePropertiesMenuItem

protected javax.swing.JMenuItem createViewImagePropertiesMenuItem()
Create the View => "Image Properties" menu item


getScaleLabel

public static java.lang.String getScaleLabel(float f)
Get the scale menu label for the given float scale factor.


createViewScaleMenu

protected javax.swing.JMenu createViewScaleMenu()
Create the View => "Scale" menu item


createViewScaleZoomOutMenu

protected javax.swing.JMenu createViewScaleZoomOutMenu()
Create the View => "Scale" => "Zoom Out" menu item


createViewScaleZoomInMenu

protected javax.swing.JMenu createViewScaleZoomInMenu()
Create the View => "Scale" => "Zoom In" menu item


createViewScaleFitToWindowMenuItem

protected javax.swing.JMenuItem createViewScaleFitToWindowMenuItem()
Create the View => "Scale" => "Fit Image in Window" menu item


addScaleMenuItem

protected void addScaleMenuItem(javax.swing.JMenu menu,
                                javax.swing.ButtonGroup group,
                                java.lang.String label,
                                float value)
Add a radio button menu item to the scale menu and given group with the given label and scale value.


setScale

public void setScale(float value)
Set the scale for the image to the given value and update the menu label.


createViewInterpolationMenu

protected javax.swing.JMenu createViewInterpolationMenu()
Create the View => "Scale Interpolation" menu item


createViewRotateMenu

protected javax.swing.JMenu createViewRotateMenu()
Create the View => "Rotate" menu item


createViewFlipXMenuItem

protected javax.swing.JCheckBoxMenuItem createViewFlipXMenuItem()
Create the View => "Flip X" menu item


createViewFlipYMenuItem

protected javax.swing.JCheckBoxMenuItem createViewFlipYMenuItem()
Create the View => "Flip Y" menu item


createViewSmoothScrollingMenuItem

protected javax.swing.JCheckBoxMenuItem createViewSmoothScrollingMenuItem()
Create the View => "Smooth Scrolling" menu item


createGoMenu

protected javax.swing.JMenu createGoMenu(javax.swing.JMenu menu)
Create or update the Go (history) menu.


createGoClearHistoryMenuItem

protected javax.swing.JMenuItem createGoClearHistoryMenuItem()
Create the Go => "Clear History" menu item.


getImageDisplay

public DivaMainImageDisplay getImageDisplay()
Return the target image window


getFileMenu

public javax.swing.JMenu getFileMenu()
Return the handle for the File menu


getEditMenu

public javax.swing.JMenu getEditMenu()
Return the handle for the Edit menu


getViewMenu

public javax.swing.JMenu getViewMenu()
Return the handle for the View menu


getGoMenu

public javax.swing.JMenu getGoMenu()
Return the handle for the Go menu


getGraphicsMenu

public javax.swing.JMenu getGraphicsMenu()
Return the handle for the Graphics menu


getNewWindowMenuItem

public javax.swing.JMenuItem getNewWindowMenuItem()
Return the File => "New Window" menu item


getPickObjectMenuItem

public javax.swing.JMenuItem getPickObjectMenuItem()
Return the Pick Object menu item