Package gov.nih.mipav.view
Class ViewJFrameRegisteredImages
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- java.awt.Window
-
- java.awt.Frame
-
- javax.swing.JFrame
-
- gov.nih.mipav.view.ViewJFrameRegisteredImages
-
- All Implemented Interfaces:
java.awt.event.ActionListener,java.awt.image.ImageObserver,java.awt.MenuContainer,java.io.Serializable,java.util.EventListener,javax.accessibility.Accessible,javax.swing.event.ChangeListener,javax.swing.event.ListSelectionListener,javax.swing.RootPaneContainer,javax.swing.WindowConstants
public class ViewJFrameRegisteredImages extends javax.swing.JFrame implements java.awt.event.ActionListener, javax.swing.event.ListSelectionListener, javax.swing.event.ChangeListenerContains a seperatly running thread which checks the list of registered images. The list is updated at a rate which is user-specified. The frame will allow the user to adjust how frequently the list will be updated. For efficiency, no updating will occur if the frame has been minimized.The registered images frame provides direct user access to the function Runtime.getRuntime.gc() via a "Garbage Collector" button.
There are a number of possible supported uses. There is an unimplemented button to remove un-framed images from the ViewUserInterface image hashtable and there is a button to bring framed-images to the front.
This class has a number of inside classes:
- ImageRegistryMonitor (a type of Thread) to update the list of images registered with the ViewUserInterface
- MouseClickAdapter (a type of MouseAdapter) to attempt to bring the selected image's frame to the front
- ImageCellRenderer (a type of JLabel) to present both the image-name and a helpful icon depicting whether or not the associated image is in a frame or not
- Version:
- 15 April 2002
- Author:
- Lynne M. Pusanik, Matthew J. McAuliffe, Ph.D., David A. Parsons
- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private classViewJFrameRegisteredImages.ImageCellRendererIdentifies components that can be used as "rubber stamps" to paint the cells in a JList.private classViewJFrameRegisteredImages.MouseClickAdapterAs an extension of MouseAdapter, this class merely responds on clicked list events.-
Nested classes/interfaces inherited from class javax.swing.JFrame
javax.swing.JFrame.AccessibleJFrame
-
Nested classes/interfaces inherited from class java.awt.Window
java.awt.Window.AccessibleAWTWindow, java.awt.Window.Type
-
-
Field Summary
Fields Modifier and Type Field Description private javax.swing.JButtoncallFrameDeleteAllButtonButtons for dealing with frame deletion.private javax.swing.JButtoncallFrameDeleteButtonButtons for dealing with frame deletion.private javax.swing.JButtoncallFrameToFrontButtonButton for bringing frame to frontprivate javax.swing.JButtoncallGCButtonButton for dealing with garbage collectionprivate javax.swing.JButtoncallImageDeleteAllButtonButtons for dealing with image deletionsprivate javax.swing.JButtoncallImageDeleteButtonButtons for dealing with image deletionsprivate javax.swing.JListimageListThe list of images and framesprivate javax.swing.JButtonpauseButtonButton for pausing updating of currently registered imagesprivate booleanpausedWhether currently registered images list is updatingprivate javax.swing.JTextFieldsampleRateThe rate at which to update imageListprivate javax.swing.JScrollPanescrollPaneThe scroll pane containing the image listprivate static longserialVersionUIDUse serialVersionUID for interoperability.private ImageRegistryMonitorsurfthread to watch image registry.private ViewUserInterfaceUIThe current user interface-
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
-
-
Constructor Summary
Constructors Constructor Description ViewJFrameRegisteredImages()Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidactionPerformed(java.awt.event.ActionEvent event)Calls various methods based on the user's actions.private javax.swing.JPanelbuildButtonPanel()private voiddeleteItem(java.lang.String name, boolean deleteFrame)Deletes the item specified by name.private voidimageToFront(java.lang.String selectedName)Using the supplied name as the image name, this method finds the frame associated with the image and brings it to the front.protected voidmakeNumericsOnly(javax.swing.JTextField txt)Takes a txt field, and forces the textfield to accept numbers, backspace and delete-key entries.voidsetVisible(boolean flag)Shows the frame with the memory.voidstateChanged(javax.swing.event.ChangeEvent event)Calls various methods based on the changes in the memory panel.voidvalueChanged(javax.swing.event.ListSelectionEvent event)Whenever the list changes, the valueChanged is called.-
Methods inherited from class javax.swing.JFrame
addImpl, createRootPane, frameInit, getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getGraphics, getJMenuBar, getLayeredPane, getRootPane, getTransferHandler, isDefaultLookAndFeelDecorated, isRootPaneCheckingEnabled, paramString, processWindowEvent, remove, repaint, setContentPane, setDefaultCloseOperation, setDefaultLookAndFeelDecorated, setGlassPane, setIconImage, setJMenuBar, setLayeredPane, setLayout, setRootPane, setRootPaneCheckingEnabled, setTransferHandler, update
-
Methods inherited from class java.awt.Frame
addNotify, getCursorType, getExtendedState, getFrames, getIconImage, getMaximizedBounds, getMenuBar, getState, getTitle, isResizable, isUndecorated, remove, removeNotify, setBackground, setCursor, setExtendedState, setMaximizedBounds, setMenuBar, setOpacity, setResizable, setShape, setState, setTitle, setUndecorated
-
Methods inherited from class java.awt.Window
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, dispose, getBackground, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getIconImages, getInputContext, getListeners, getLocale, getModalExclusionType, getMostRecentFocusOwner, getOpacity, getOwnedWindows, getOwner, getOwnerlessWindows, getShape, getToolkit, getType, getWarningString, getWindowFocusListeners, getWindowListeners, getWindows, getWindowStateListeners, hide, isActive, isAlwaysOnTop, isAlwaysOnTopSupported, isAutoRequestFocus, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isOpaque, isShowing, isValidateRoot, pack, paint, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, reshape, setAlwaysOnTop, setAutoRequestFocus, setBounds, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setIconImages, setLocation, setLocation, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setSize, setSize, setType, show, toBack, toFront
-
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, 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, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, 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, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphicsConfiguration, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, 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, 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, requestFocus, requestFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, requestFocusInWindow, resize, resize, revalidate, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setMaximumSize, setMixingCutoutShape, setName, setPreferredSize, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
-
-
-
-
Field Detail
-
serialVersionUID
private static final long serialVersionUID
Use serialVersionUID for interoperability.- See Also:
- Constant Field Values
-
callImageDeleteButton
private javax.swing.JButton callImageDeleteButton
Buttons for dealing with image deletions
-
callImageDeleteAllButton
private javax.swing.JButton callImageDeleteAllButton
Buttons for dealing with image deletions
-
callGCButton
private javax.swing.JButton callGCButton
Button for dealing with garbage collection
-
callFrameToFrontButton
private javax.swing.JButton callFrameToFrontButton
Button for bringing frame to front
-
callFrameDeleteButton
private javax.swing.JButton callFrameDeleteButton
Buttons for dealing with frame deletion.
-
callFrameDeleteAllButton
private javax.swing.JButton callFrameDeleteAllButton
Buttons for dealing with frame deletion.
-
imageList
private javax.swing.JList imageList
The list of images and frames
-
pauseButton
private javax.swing.JButton pauseButton
Button for pausing updating of currently registered images
-
paused
private boolean paused
Whether currently registered images list is updating
-
sampleRate
private javax.swing.JTextField sampleRate
The rate at which to update imageList
-
scrollPane
private javax.swing.JScrollPane scrollPane
The scroll pane containing the image list
-
surf
private ImageRegistryMonitor surf
thread to watch image registry.
-
UI
private ViewUserInterface UI
The current user interface
-
-
Method Detail
-
buildButtonPanel
private javax.swing.JPanel buildButtonPanel()
-
actionPerformed
public void actionPerformed(java.awt.event.ActionEvent event)
Calls various methods based on the user's actions.- Specified by:
actionPerformedin interfacejava.awt.event.ActionListener- Parameters:
event- event that triggered function
-
deleteItem
private void deleteItem(java.lang.String name, boolean deleteFrame)Deletes the item specified by name. If false, only the model image is deleted- Parameters:
name- the object to deletedeleteFrame- whether the frame should be deleted along with the image
-
setVisible
public void setVisible(boolean flag)
Shows the frame with the memory.- Overrides:
setVisiblein classjava.awt.Window- Parameters:
flag- DOCUMENT ME!
-
stateChanged
public void stateChanged(javax.swing.event.ChangeEvent event)
Calls various methods based on the changes in the memory panel.- Specified by:
stateChangedin interfacejavax.swing.event.ChangeListener- Parameters:
event- event that triggered function
-
valueChanged
public void valueChanged(javax.swing.event.ListSelectionEvent event)
Whenever the list changes, the valueChanged is called.calls
callToFrontbutton#doClick()when the list has been double-clicked, to bring the selected image (and associated frame) to the front.- Specified by:
valueChangedin interfacejavax.swing.event.ListSelectionListener- Parameters:
event- DOCUMENT ME!
-
makeNumericsOnly
protected void makeNumericsOnly(javax.swing.JTextField txt)
Takes a txt field, and forces the textfield to accept numbers, backspace and delete-key entries.also tells the pauseButton to click.
- Parameters:
txt- DOCUMENT ME!
-
imageToFront
private void imageToFront(java.lang.String selectedName) throws java.lang.NullPointerException, java.lang.IllegalArgumentExceptionUsing the supplied name as the image name, this method finds the frame associated with the image and brings it to the front. Does nothing when selectedName isnull.- Parameters:
selectedName- DOCUMENT ME!- Throws:
java.lang.NullPointerException- when theselectedNameis in the image list, but not associated with any frame.java.lang.IllegalArgumentException- if theselectedNamecannot be found in the image list
-
-