ij.plugin.frame
Class RoiManager

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by java.awt.Window
              extended by java.awt.Frame
                  extended by ij.plugin.frame.PlugInFrame
                      extended by ij.plugin.frame.RoiManager
All Implemented Interfaces:
PlugIn, java.awt.event.ActionListener, java.awt.event.FocusListener, java.awt.event.ItemListener, java.awt.event.MouseListener, java.awt.event.MouseWheelListener, java.awt.event.WindowListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible

public class RoiManager
extends PlugInFrame
implements java.awt.event.ActionListener, java.awt.event.ItemListener, java.awt.event.MouseListener, java.awt.event.MouseWheelListener

This plugin implements the Analyze/Tools/ROI Manager command.

See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class java.awt.Frame
java.awt.Frame.AccessibleAWTFrame
 
Nested classes/interfaces inherited from class java.awt.Window
java.awt.Window.AccessibleAWTWindow
 
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
static java.lang.String LOC_KEY
           
 
Fields inherited from class java.awt.Frame
CROSSHAIR_CURSOR, DEFAULT_CURSOR, E_RESIZE_CURSOR, HAND_CURSOR, ICONIFIED, MAXIMIZED_BOTH, MAXIMIZED_HORIZ, MAXIMIZED_VERT, MOVE_CURSOR, N_RESIZE_CURSOR, NE_RESIZE_CURSOR, NORMAL, NW_RESIZE_CURSOR, S_RESIZE_CURSOR, SE_RESIZE_CURSOR, SW_RESIZE_CURSOR, TEXT_CURSOR, W_RESIZE_CURSOR, WAIT_CURSOR
 
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
RoiManager()
           
RoiManager(boolean hideWindow)
           
 
Method Summary
 void actionPerformed(java.awt.event.ActionEvent e)
           
 void add(ImagePlus imp, Roi roi, int n)
          Adds the specified ROI to the list.
 void addRoi(Roi roi)
          Adds the specified ROI.
 void close()
          Overrides PlugInFrame.close().
 int getCount()
          Returns the ROI count.
 boolean getDrawLabels()
           
static RoiManager getInstance()
          Returns a reference to the ROI Manager or null if it is not open.
 java.awt.List getList()
          Returns the selection list.
static java.lang.String getName(java.lang.String index)
          Returns the name of the ROI with the specified index.
 java.util.Hashtable getROIs()
          Returns the ROI Hashtable.
 Roi[] getRoisAsArray()
          Returns the ROIs as an array.
 Roi[] getSelectedRoisAsArray()
          Returns the selected ROIs as an array, or all the ROIs if none are selected.
 int getSliceNumber(java.lang.String label)
          Returns the slice number associated with the specified name, or -1 if the name does not include a slice number.
 void itemStateChanged(java.awt.event.ItemEvent e)
           
 void mouseClicked(java.awt.event.MouseEvent e)
           
 void mouseEntered(java.awt.event.MouseEvent e)
           
 void mouseExited(java.awt.event.MouseEvent e)
           
 void mousePressed(java.awt.event.MouseEvent e)
           
 void mouseReleased(java.awt.event.MouseEvent e)
           
 void mouseWheelMoved(java.awt.event.MouseWheelEvent event)
           
 void processWindowEvent(java.awt.event.WindowEvent e)
           
 boolean runCommand(java.lang.String cmd)
          Executes the ROI Manager "Add", "Add & Draw", "Update", "Delete", "Measure", "Draw", "Show All", Show None", "Fill", "Deselect", "Select All", "Combine", "Split", "Sort" or "Multi Measure" command.
 boolean runCommand(java.lang.String cmd, java.lang.String name)
          Executes the ROI Manager "Open", "Save" or "Rename" command.
 boolean runCommand(java.lang.String cmd, java.lang.String hexColor, double lineWidth)
          Adds the current selection to the ROI Manager, using the specified color (a 6 digit hex string) and line width.
 void select(ImagePlus imp, int index)
          Assigns the ROI at the specified index to 'imp'.
 void select(int index)
          Assigns the ROI at the specified index to the current image.
 void select(int index, boolean shiftKeyDown, boolean altKeyDown)
           
 void setEditMode(ImagePlus imp, boolean editMode)
           
 
Methods inherited from class ij.plugin.frame.PlugInFrame
focusGained, focusLost, run, windowActivated, windowClosed, windowClosing, windowDeactivated, windowDeiconified, windowIconified, windowOpened
 
Methods inherited from class java.awt.Frame
addNotify, getAccessibleContext, getCursorType, getExtendedState, getFrames, getIconImage, getMaximizedBounds, getMenuBar, getState, getTitle, isResizable, isUndecorated, paramString, remove, removeNotify, setCursor, setExtendedState, setIconImage, setMaximizedBounds, setMenuBar, setResizable, setState, setTitle, setUndecorated
 
Methods inherited from class java.awt.Window
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, dispose, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getGraphicsConfiguration, getIconImages, getInputContext, getListeners, getLocale, getModalExclusionType, getMostRecentFocusOwner, getOwnedWindows, getOwner, getOwnerlessWindows, getToolkit, getWarningString, getWindowFocusListeners, getWindowListeners, getWindows, getWindowStateListeners, hide, isActive, isAlwaysOnTop, isAlwaysOnTopSupported, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isShowing, pack, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, reshape, setAlwaysOnTop, setBounds, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setIconImages, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setSize, setSize, setVisible, show, toBack, toFront
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paint, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, setLayout, transferFocusBackward, transferFocusDownCycle, update, 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, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphics, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isPreferredSizeSet, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resize, resize, setBackground, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setName, setPreferredSize, 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 java.awt.MenuContainer
getFont, postEvent
 

Field Detail

LOC_KEY

public static final java.lang.String LOC_KEY
See Also:
Constant Field Values
Constructor Detail

RoiManager

public RoiManager()

RoiManager

public RoiManager(boolean hideWindow)
Method Detail

actionPerformed

public void actionPerformed(java.awt.event.ActionEvent e)
Specified by:
actionPerformed in interface java.awt.event.ActionListener

itemStateChanged

public void itemStateChanged(java.awt.event.ItemEvent e)
Specified by:
itemStateChanged in interface java.awt.event.ItemListener

addRoi

public void addRoi(Roi roi)
Adds the specified ROI.


add

public void add(ImagePlus imp,
                Roi roi,
                int n)
Adds the specified ROI to the list. The third argument ('n') will be used to form the first part of the ROI lable if it is >= 0.


getSliceNumber

public int getSliceNumber(java.lang.String label)
Returns the slice number associated with the specified name, or -1 if the name does not include a slice number.


getDrawLabels

public boolean getDrawLabels()

processWindowEvent

public void processWindowEvent(java.awt.event.WindowEvent e)
Overrides:
processWindowEvent in class java.awt.Window

getInstance

public static RoiManager getInstance()
Returns a reference to the ROI Manager or null if it is not open.


getROIs

public java.util.Hashtable getROIs()
Returns the ROI Hashtable.

See Also:
getCount, getRoisAsArray

getList

public java.awt.List getList()
Returns the selection list.

See Also:
getCount, getRoisAsArray

getCount

public int getCount()
Returns the ROI count.


getRoisAsArray

public Roi[] getRoisAsArray()
Returns the ROIs as an array.


getSelectedRoisAsArray

public Roi[] getSelectedRoisAsArray()
Returns the selected ROIs as an array, or all the ROIs if none are selected.


getName

public static java.lang.String getName(java.lang.String index)
Returns the name of the ROI with the specified index. Can be called from a macro using
call("ij.plugin.frame.RoiManager.getName", index)
Returns "null" if the Roi Manager is not open or index is out of range.


runCommand

public boolean runCommand(java.lang.String cmd)
Executes the ROI Manager "Add", "Add & Draw", "Update", "Delete", "Measure", "Draw", "Show All", Show None", "Fill", "Deselect", "Select All", "Combine", "Split", "Sort" or "Multi Measure" command. Returns false if cmd is not one of these strings.


runCommand

public boolean runCommand(java.lang.String cmd,
                          java.lang.String name)
Executes the ROI Manager "Open", "Save" or "Rename" command. Returns false if cmd is not "Open", "Save" or "Rename", or if an error occurs.


runCommand

public boolean runCommand(java.lang.String cmd,
                          java.lang.String hexColor,
                          double lineWidth)
Adds the current selection to the ROI Manager, using the specified color (a 6 digit hex string) and line width.


select

public void select(int index)
Assigns the ROI at the specified index to the current image.


select

public void select(ImagePlus imp,
                   int index)
Assigns the ROI at the specified index to 'imp'.


select

public void select(int index,
                   boolean shiftKeyDown,
                   boolean altKeyDown)

setEditMode

public void setEditMode(ImagePlus imp,
                        boolean editMode)

close

public void close()
Overrides PlugInFrame.close().

Overrides:
close in class PlugInFrame

mousePressed

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

mouseWheelMoved

public void mouseWheelMoved(java.awt.event.MouseWheelEvent event)
Specified by:
mouseWheelMoved in interface java.awt.event.MouseWheelListener

mouseReleased

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

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

mouseExited

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