com.pixelmed.display
Class DicomImageBlackout
java.lang.Object
java.awt.Component
java.awt.Container
java.awt.Window
java.awt.Frame
javax.swing.JFrame
com.pixelmed.display.DicomImageBlackout
- All Implemented Interfaces:
- ImageObserver, MenuContainer, Serializable, Accessible, RootPaneContainer, WindowConstants
- Direct Known Subclasses:
- DicomCleaner.OurDicomImageBlackout
public class DicomImageBlackout
- extends JFrame
This class displays images and allows the user to black out burned-in annotation, and save the result.
A main method is provided, which can be supplied with a list of file names or pop up a file chooser dialog.
- See Also:
- Serialized Form
| 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 |
| 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, setCursor, setExtendedState, setMaximizedBounds, setMenuBar, setResizable, setState, setTitle, setUndecorated |
| Methods inherited from class java.awt.Window |
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, 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, 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, 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, getBackground, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, 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, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resize, resize, setBackground, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setName, setPreferredSize, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle |
ourAETitle
protected String ourAETitle
dicomFileNames
protected String[] dicomFileNames
currentFileName
protected String currentFileName
currentFileNumber
protected int currentFileNumber
mainPanel
protected Box mainPanel
multiPanel
protected JPanel multiPanel
imagePanel
protected SingleImagePanel imagePanel
list
protected AttributeList list
sImg
protected SourceImage sImg
changesWereMade
protected boolean changesWereMade
previousRows
protected int previousRows
previousColumns
protected int previousColumns
previousPersistentDrawingShapes
protected Vector previousPersistentDrawingShapes
cineSliderControlsPanel
protected JPanel cineSliderControlsPanel
cineSliderChangeListener
protected DicomImageBlackout.CineSliderChangeListener cineSliderChangeListener
cineSlider
protected JSlider cineSlider
imagesRemainingLabel
protected JLabel imagesRemainingLabel
ourEventContext
protected EventContext ourEventContext
burnInOverlays
protected boolean burnInOverlays
useZeroBlackoutValue
protected boolean useZeroBlackoutValue
usePixelPaddingBlackoutValue
protected boolean usePixelPaddingBlackoutValue
useZeroBlackoutValueCheckBox
protected JCheckBox useZeroBlackoutValueCheckBox
usePixelPaddingBlackoutValueCheckBox
protected JCheckBox usePixelPaddingBlackoutValueCheckBox
ourFrameSelectionChangeListener
protected com.pixelmed.display.DicomImageBlackout.OurFrameSelectionChangeListener ourFrameSelectionChangeListener
burnedinflag
protected int burnedinflag
statusNotificationHandler
protected DicomImageBlackout.StatusNotificationHandler statusNotificationHandler
applyActionListener
protected DicomImageBlackout.ApplyActionListener applyActionListener
saveActionListener
protected DicomImageBlackout.SaveActionListener saveActionListener
nextActionListener
protected DicomImageBlackout.NextActionListener nextActionListener
blackoutApplyButton
protected JButton blackoutApplyButton
blackoutSaveButton
protected JButton blackoutSaveButton
blackoutNextButton
protected JButton blackoutNextButton
DicomImageBlackout
public DicomImageBlackout(String title,
String[] dicomFileNames,
DicomImageBlackout.StatusNotificationHandler snh,
int burnedinflag)
Opens a window to display the supplied list of DICOM files to allow them to have burned in annotation blacked out.
Each file will be processed sequentially, with the edited pixel data overwriting the original file.
- Parameters:
title - the string to use in the title bar of the windowdicomFileNames - the list of file names to process, if null a file chooser dialog will be raisedsnh - an instance of StatusNotificationHandler; if null, a default handler will be used that writes to stderrburnedinflag - whether or not and under what circumstances to to add/change BurnedInAnnotation attribute; takes one of the values of BurnedInAnnotationFlagAction
- Throws:
DicomException
recordStateOfDrawingShapesForNextFile
protected void recordStateOfDrawingShapesForNextFile()
createCineSliderIfNecessary
protected void createCineSliderIfNecessary(int min,
int max,
int value)
- Parameters:
min - minimum frame number, starting from 1max - number of framesvalue - frame number, starting from 1
updateDisplayedFileNumber
protected void updateDisplayedFileNumber(int current,
int total)
loadDicomFileOrDirectory
protected void loadDicomFileOrDirectory(String dicomFileName)
Load the named DICOM file and display it in the image panel.
- Parameters:
dicomFileName -
loadDicomFileOrDirectory
protected void loadDicomFileOrDirectory(File currentFile)
Load the named DICOM file and display it in the image panel.
- Parameters:
currentFile -
getScaleFactorToFitInMaximumAvailable
protected double getScaleFactorToFitInMaximumAvailable(double useWidth,
double useHeight,
double maxWidth,
double maxHeight)
changeDimensionToFitInMaximumAvailable
protected Dimension changeDimensionToFitInMaximumAvailable(Dimension useDimension,
Dimension maxDimension,
boolean onlySmaller)
reduceDimensionToFitInMaximumAvailable
protected Dimension reduceDimensionToFitInMaximumAvailable(Dimension useDimension)
addSingleImagePanelToMultiPanelAndEstablishLayout
protected void addSingleImagePanelToMultiPanelAndEstablishLayout()
addSingleImagePanelToMultiPanelAndEstablishLayoutWithCenterMaximumAfterInitialSizeLayout
protected void addSingleImagePanelToMultiPanelAndEstablishLayoutWithCenterMaximumAfterInitialSizeLayout()
showUIComponents
protected void showUIComponents()
buildUIComponents
protected void buildUIComponents()
deconstruct
public void deconstruct()
dispose
public void dispose()
- Overrides:
dispose in class Window
finalize
protected void finalize()
throws Throwable
- Overrides:
finalize in class Object
- Throws:
Throwable
main
public static void main(String[] arg)
The method to invoke the application.
- Parameters:
arg - optionally, a list of files; if absent a file dialog is presented