ij.gui
Class ImageCanvas

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Canvas
          extended by ij.gui.ImageCanvas
All Implemented Interfaces:
java.awt.event.MouseListener, java.awt.event.MouseMotionListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.lang.Cloneable, java.util.EventListener, javax.accessibility.Accessible

public class ImageCanvas
extends java.awt.Canvas
implements java.awt.event.MouseListener, java.awt.event.MouseMotionListener, java.lang.Cloneable

This is as Canvas used to display images in a Window.

See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class java.awt.Canvas
java.awt.Canvas.AccessibleAWTCanvas
 
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 static java.awt.Cursor crosshairCursor
           
protected static java.awt.Cursor defaultCursor
           
protected static java.awt.Cursor handCursor
           
protected  boolean imageUpdated
           
protected  ImagePlus imp
           
protected static java.awt.Cursor moveCursor
           
static boolean usePointer
           
 
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
ImageCanvas(ImagePlus imp)
           
 
Method Summary
 java.awt.Point getCursorLoc()
          Returns the current cursor location.
 double getMagnification()
           
 java.awt.Dimension getPreferredSize()
           
 java.awt.Rectangle getSrcRect()
           
 void mouseClicked(java.awt.event.MouseEvent e)
           
 void mouseDragged(java.awt.event.MouseEvent e)
           
 void mouseEntered(java.awt.event.MouseEvent e)
           
 void mouseExited(java.awt.event.MouseEvent e)
           
 void mouseMoved(java.awt.event.MouseEvent e)
           
 void mousePressed(java.awt.event.MouseEvent e)
           
 void mouseReleased(java.awt.event.MouseEvent e)
           
 int offScreenX(int x)
          Converts a screen x-coordinate to an offscreen x-coordinate.
 int offScreenY(int y)
          Converts a screen y-coordinate to an offscreen y-coordinate.
 void paint(java.awt.Graphics g)
           
 void print(java.awt.Graphics g, double scale)
           
 int screenX(int x)
          Converts an offscreen x-coordinate to a screen x-coordinate.
 int screenY(int y)
          Converts an offscreen y-coordinate to a screen y-coordinate.
 void setCursor(int x, int y)
          Sets the cursor based on the current tool and cursor location.
protected  void setDrawingColor(int ox, int oy, boolean setBackground)
           
 void setDrawingSize(int width, int height)
           
 void setImageUpdated()
          ImagePlus.updateAndDraw calls this method to get paint to update the image from the ImageProcessor.
 void setMagnification(double magnification)
           
 void update(java.awt.Graphics g)
           
 void zoomIn(int x, int y)
          Zooms in by making the window bigger.
 void zoomOut(int x, int y)
          Zooms out by making srcRect bigger.
 
Methods inherited from class java.awt.Canvas
addNotify, createBufferStrategy, createBufferStrategy, getAccessibleContext, getBufferStrategy
 
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, deliverEvent, disable, disableEvents, dispatchEvent, doLayout, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getAlignmentX, getAlignmentY, getBackground, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentAt, getComponentAt, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeys, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphics, getGraphicsConfiguration, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getListeners, getLocale, getLocation, getLocation, getLocationOnScreen, getMaximumSize, getMinimumSize, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getToolkit, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, invalidate, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusCycleRoot, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, layout, list, list, list, list, list, locate, location, lostFocus, minimumSize, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, paramString, postEvent, preferredSize, prepareImage, prepareImage, print, printAll, processComponentEvent, processEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removeNotify, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, reshape, resize, resize, setBackground, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeys, setFocusTraversalKeysEnabled, setFont, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setMinimumSize, setName, setPreferredSize, setSize, setSize, setVisible, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle, validate
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

defaultCursor

protected static java.awt.Cursor defaultCursor

handCursor

protected static java.awt.Cursor handCursor

moveCursor

protected static java.awt.Cursor moveCursor

crosshairCursor

protected static java.awt.Cursor crosshairCursor

usePointer

public static boolean usePointer

imp

protected ImagePlus imp

imageUpdated

protected boolean imageUpdated
Constructor Detail

ImageCanvas

public ImageCanvas(ImagePlus imp)
Method Detail

setDrawingSize

public void setDrawingSize(int width,
                           int height)

setImageUpdated

public void setImageUpdated()
ImagePlus.updateAndDraw calls this method to get paint to update the image from the ImageProcessor.


update

public void update(java.awt.Graphics g)
Overrides:
update in class java.awt.Canvas

print

public void print(java.awt.Graphics g,
                  double scale)

paint

public void paint(java.awt.Graphics g)
Overrides:
paint in class java.awt.Canvas

getPreferredSize

public java.awt.Dimension getPreferredSize()
Overrides:
getPreferredSize in class java.awt.Component

getCursorLoc

public java.awt.Point getCursorLoc()
Returns the current cursor location.


setCursor

public void setCursor(int x,
                      int y)
Sets the cursor based on the current tool and cursor location.


offScreenX

public int offScreenX(int x)
Converts a screen x-coordinate to an offscreen x-coordinate.


offScreenY

public int offScreenY(int y)
Converts a screen y-coordinate to an offscreen y-coordinate.


screenX

public int screenX(int x)
Converts an offscreen x-coordinate to a screen x-coordinate.


screenY

public int screenY(int y)
Converts an offscreen y-coordinate to a screen y-coordinate.


getMagnification

public double getMagnification()

setMagnification

public void setMagnification(double magnification)

getSrcRect

public java.awt.Rectangle getSrcRect()

zoomIn

public void zoomIn(int x,
                   int y)
Zooms in by making the window bigger. If we can't make it bigger, then make the srcRect smaller.


zoomOut

public void zoomOut(int x,
                    int y)
Zooms out by making srcRect bigger. If we can't make it bigger, then make the window smaller.


setDrawingColor

protected void setDrawingColor(int ox,
                               int oy,
                               boolean setBackground)

mousePressed

public void mousePressed(java.awt.event.MouseEvent e)
Specified by:
mousePressed in interface java.awt.event.MouseListener

mouseExited

public void mouseExited(java.awt.event.MouseEvent e)
Specified by:
mouseExited in interface java.awt.event.MouseListener

mouseDragged

public void mouseDragged(java.awt.event.MouseEvent e)
Specified by:
mouseDragged in interface java.awt.event.MouseMotionListener

mouseReleased

public void mouseReleased(java.awt.event.MouseEvent e)
Specified by:
mouseReleased in interface java.awt.event.MouseListener

mouseMoved

public void mouseMoved(java.awt.event.MouseEvent e)
Specified by:
mouseMoved in interface java.awt.event.MouseMotionListener

mouseClicked

public void mouseClicked(java.awt.event.MouseEvent e)
Specified by:
mouseClicked in interface java.awt.event.MouseListener

mouseEntered

public void mouseEntered(java.awt.event.MouseEvent e)
Specified by:
mouseEntered in interface java.awt.event.MouseListener