Package gov.nih.mipav.view.dialogs
Class JDialogRemoveSlices
java.lang.Object
java.awt.Component
java.awt.Container
java.awt.Window
java.awt.Dialog
javax.swing.JDialog
gov.nih.mipav.view.dialogs.JDialogBase
gov.nih.mipav.view.dialogs.JDialogScriptableBase
gov.nih.mipav.view.dialogs.JDialogRemoveSlices
- All Implemented Interfaces:
AlgorithmInterface,ScriptableActionInterface,DialogDefaultsInterface,ActionListener,FocusListener,ItemListener,WindowListener,ImageObserver,MenuContainer,Serializable,EventListener,Accessible,RootPaneContainer,WindowConstants
Creates the dialog to remove separate slices in an image. Dialog asks which slices the user wishes to remove; it
provides buttons to mark all slices for removal and to de-select any slices from image removal; it gives options to
remove or to cancel. Allows 3D or 4D images; 2D images would not make sense with this operation.**(as of 25 Oct, does
not yet rename removed slice image when saving)**(as of 1 November, does not yet process the more complicated DICOM
images completely.
- Version:
- v0.12 1 Nov 1999 (processes most images)
- Author:
- David Parsons (parsonsd@cbel.cit.nih.gov) (with vast help from M.McAuliffe)
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class gov.nih.mipav.view.dialogs.JDialogBase
JDialogBase.CancelAction, JDialogBase.HelpAction, JDialogBase.OKActionNested classes/interfaces inherited from class javax.swing.JDialog
JDialog.AccessibleJDialogNested classes/interfaces inherited from class java.awt.Dialog
Dialog.AccessibleAWTDialog, Dialog.ModalExclusionType, Dialog.ModalityTypeNested classes/interfaces inherited from class java.awt.Window
Window.AccessibleAWTWindow, Window.TypeNested classes/interfaces inherited from class java.awt.Container
Container.AccessibleAWTContainerNested classes/interfaces inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate JCheckBox[]DOCUMENT ME!private JPanelDOCUMENT ME!private JButtonDOCUMENT ME!static final intDOCUMENT ME!static final intDOCUMENT ME!private JButtonDOCUMENT ME!private boolean[]DOCUMENT ME!private JButtonDOCUMENT ME!private ButtonGroupDOCUMENT ME!private intDOCUMENT ME!private booleanDOCUMENT ME!private booleanDOCUMENT ME!private JLabelDOCUMENT ME!private JLabelDOCUMENT ME!private ModelImageDOCUMENT ME!private booleanIf true, insert a blank rather than a weighted averageprivate JRadioButtonDOCUMENT ME!private intDOCUMENT ME!private intDOCUMENT ME!private int[]DOCUMENT ME!private intDOCUMENT ME!private booleanDOCUMENT ME!private booleanDOCUMENT ME!private JTextFieldDOCUMENT ME!private AlgorithmRemoveSlicesDOCUMENT ME!private JCheckBoxDOCUMENT ME!private JRadioButtonDOCUMENT ME!private AlgorithmReplaceRemovedSlicesDOCUMENT ME!private ModelImageDOCUMENT ME!private JScrollPaneDOCUMENT ME!private static final longUse serialVersionUID for interoperability.private booleanDOCUMENT ME!private String[]DOCUMENT ME!private JButtonDOCUMENT ME!static final intDOCUMENT ME!private JCheckBoxDOCUMENT ME!private ViewUserInterfaceDOCUMENT ME!Fields inherited from class gov.nih.mipav.view.dialogs.JDialogScriptableBase
displayInNewFrame, isComplete, scriptParametersFields inherited from class gov.nih.mipav.view.dialogs.JDialogBase
applyButton, bar, cancelButton, cancelFlag, closeButton, HELP, helpButton, mainDialogPanel, NEW, OKButton, parentFrame, progressBar, REPLACE, runInSeparateThread, runningScriptFlag, runQuiet, serif12, serif12B, voiManagerFields inherited from class javax.swing.JDialog
accessibleContext, rootPane, rootPaneCheckingEnabledFields inherited from class java.awt.Dialog
DEFAULT_MODALITY_TYPEFields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENTFields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTHFields inherited from interface javax.swing.WindowConstants
DISPOSE_ON_CLOSE, DO_NOTHING_ON_CLOSE, EXIT_ON_CLOSE, HIDE_ON_CLOSE -
Constructor Summary
ConstructorsConstructorDescriptionEmpty constructor needed for dynamic instantiation (used during scripting).JDialogRemoveSlices(Frame theParentFrame, ModelImage im) Creates new dialog for removing slices. -
Method Summary
Modifier and TypeMethodDescriptionvoidactionPerformed(ActionEvent event) Closes dialog box when the OK button is pressed and calls the algorithm.voidalgorithmPerformed(AlgorithmBase algorithm) This method is required if the AlgorithmPerformed interface is implemented.protected voidOnce all the necessary variables are set, call the Remove Slices algorithm based on what type of image this is and whether or not there is a separate destination image.protected voidStore the result image in the script runner's image table now that the action execution is finished.Accessor that returns the image.private voidinit()Sets up the GUI (panels, buttons, etc) and displays it on the screen.booleanReturnstrueif only the even image slices have been selected.booleanReturnstrueif only the odd image slices have been selected.booleanAccessor that returns the whether or not the algorithm completed successfully.voiditemStateChanged(ItemEvent event) Unchanged.voidsetCheckListRemove(boolean[] cl) Accessor that sets the which slices to remove according to the boolean array paramater.voidsetCheckListRemove(Vector<String> slices) Accessor that sets the which slices to remove according to the vector of strings.voidSets up so that only even slices will be removed.voidSets up so that only odd slices will be removed.voidAccessor that sets the display loc variable to new, so that a new image is created once the algorithm completes.voidAccessor that sets the display loc variable to replace, so the current image is replaced once the algorithm completes.voidsetDontOpenFrame(boolean dontOpenFrame) DOCUMENT ME!protected voidSet the dialog GUI using the script parameters while running this algorithm as part of a script.private booleanUse the GUI results to set up the variables needed to run the algorithm.protected voidRecord the parameters just used to run this algorithm in a script.Methods inherited from class gov.nih.mipav.view.dialogs.JDialogScriptableBase
getDialogActionString, insertScriptLine, isComplete, scriptRun, setCompleteMethods inherited from class gov.nih.mipav.view.dialogs.JDialogBase
buildApplyButton, buildButtons, buildCancelButton, buildCancelButton, buildCloseButton, buildHelpButton, buildImageComboBox, buildOKButton, buildOKButton, buildOKCancelButtons, buildTitledBorder, buildTitledBorder, createLabel, createProgressBar, createProgressBar, createTextField, focusGained, focusLost, getDialogName, isCancelled, isQuietRunning, isRunInSeparateThread, isScriptRunning, loadDefaults, loadDefaults, makeImageName, makeString, openNewFrame, saveDefaults, saveDefaults, setLeftHandSystem, setQuietRunning, setScriptRunning, setSeparateThread, setVisible, setVisible, setVisibleMenuBar, setVisibleStandard, setVOIManager, setWCSystem, testParameter, testParameterMin, updateFFTFileInfo, updateFileInfo, updateFileInfoOtherModality, updateFileInfoStatic, updateFileInfoStatic, updateFileTypeInfo, updateFileTypeInfo, windowActivated, windowClosed, windowClosing, windowDeactivated, windowDeiconified, windowIconified, windowOpenedMethods inherited from class javax.swing.JDialog
addImpl, createRootPane, dialogInit, getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getGraphics, getJMenuBar, getLayeredPane, getRootPane, getTransferHandler, isDefaultLookAndFeelDecorated, isRootPaneCheckingEnabled, paramString, processWindowEvent, remove, repaint, setContentPane, setDefaultCloseOperation, setDefaultLookAndFeelDecorated, setGlassPane, setJMenuBar, setLayeredPane, setLayout, setRootPane, setRootPaneCheckingEnabled, setTransferHandler, updateMethods inherited from class java.awt.Dialog
addNotify, getModalityType, getTitle, hide, isModal, isResizable, isUndecorated, setBackground, setModal, setModalityType, setOpacity, setResizable, setShape, setTitle, setUndecorated, show, toBackMethods 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, isActive, isAlwaysOnTop, isAlwaysOnTopSupported, isAutoRequestFocus, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isOpaque, isShowing, isValidateRoot, pack, paint, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeNotify, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, reshape, setAlwaysOnTop, setAutoRequestFocus, setBounds, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setIconImage, setIconImages, setLocation, setLocation, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setSize, setSize, setType, toFrontMethods 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, validateTreeMethods 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, remove, 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 Details
-
serialVersionUID
private static final long serialVersionUIDUse serialVersionUID for interoperability.- See Also:
-
CHECKED_EVEN
public static final int CHECKED_EVENDOCUMENT ME!- See Also:
-
CHECKED_ODD
public static final int CHECKED_ODDDOCUMENT ME!- See Also:
-
USER_DEFINED
public static final int USER_DEFINEDDOCUMENT ME!- See Also:
-
checkboxList
DOCUMENT ME! -
checkboxPanel
DOCUMENT ME! -
checkButton
DOCUMENT ME! -
checkEvenButton
DOCUMENT ME! -
checkListRemove
private boolean[] checkListRemoveDOCUMENT ME! -
checkOddButton
DOCUMENT ME! -
destinationGroup
DOCUMENT ME! -
displayLoc
private int displayLocDOCUMENT ME! -
dontOpenFrame
private boolean dontOpenFrameDOCUMENT ME! -
doReplace
private boolean doReplaceDOCUMENT ME! -
exampleLabel
DOCUMENT ME! -
exampleLabel2
DOCUMENT ME! -
image
DOCUMENT ME! -
newImage
DOCUMENT ME! -
nSlices
private int nSlicesDOCUMENT ME! -
numChecked
private int numCheckedDOCUMENT ME! -
origExtents
private int[] origExtentsDOCUMENT ME! -
origNDims
private int origNDimsDOCUMENT ME! -
pressedCheckEven
private boolean pressedCheckEvenDOCUMENT ME! -
pressedCheckOdd
private boolean pressedCheckOddDOCUMENT ME! -
rangeField
DOCUMENT ME! -
removeSlicesAlgo
DOCUMENT ME! -
replaceBox
DOCUMENT ME! -
replaceImage
DOCUMENT ME! -
replaceSlicesAlgo
DOCUMENT ME! -
resultImage
DOCUMENT ME! -
scrollPane
DOCUMENT ME! -
successful
private boolean successfulDOCUMENT ME! -
titles
DOCUMENT ME! -
unCheckButton
DOCUMENT ME! -
useRange
DOCUMENT ME! -
userInterface
DOCUMENT ME! -
insertBlank
private boolean insertBlankIf true, insert a blank rather than a weighted average
-
-
Constructor Details
-
JDialogRemoveSlices
public JDialogRemoveSlices()Empty constructor needed for dynamic instantiation (used during scripting). -
JDialogRemoveSlices
Creates new dialog for removing slices.- Parameters:
theParentFrame- Parent frameim- Source image
-
-
Method Details
-
actionPerformed
Closes dialog box when the OK button is pressed and calls the algorithm.- Specified by:
actionPerformedin interfaceActionListener- Overrides:
actionPerformedin classJDialogBase- Parameters:
event- Event that triggers function
-
algorithmPerformed
This method is required if the AlgorithmPerformed interface is implemented. It is called by the algorithms when it has completed or failed to to complete, so that the dialog can be display the result image and/or clean up.- Specified by:
algorithmPerformedin interfaceAlgorithmInterface- Parameters:
algorithm- Algorithm that caused the event.
-
getResultImage
Accessor that returns the image.- Returns:
- the result image
-
storeParamsFromGUI
Record the parameters just used to run this algorithm in a script.- Specified by:
storeParamsFromGUIin classJDialogScriptableBase- Throws:
ParserException- If there is a problem creating/recording the new parameters.
-
setGUIFromParams
protected void setGUIFromParams()Set the dialog GUI using the script parameters while running this algorithm as part of a script.- Specified by:
setGUIFromParamsin classJDialogScriptableBase
-
doPostAlgorithmActions
protected void doPostAlgorithmActions()Store the result image in the script runner's image table now that the action execution is finished.- Overrides:
doPostAlgorithmActionsin classJDialogScriptableBase
-
isEvenSelected
public boolean isEvenSelected()Returnstrueif only the even image slices have been selected.- Returns:
trueif only even slices selected to be removed,falseotherwise
-
isOddSelected
public boolean isOddSelected()Returnstrueif only the odd image slices have been selected.- Returns:
trueif only odd slices selected to be removed,falseotherwise
-
isSuccessful
public boolean isSuccessful()Accessor that returns the whether or not the algorithm completed successfully.- Returns:
- DOCUMENT ME!
-
itemStateChanged
Unchanged.- Specified by:
itemStateChangedin interfaceItemListener- Overrides:
itemStateChangedin classJDialogBase- Parameters:
event- DOCUMENT ME!
-
setCheckListRemove
public void setCheckListRemove(boolean[] cl) Accessor that sets the which slices to remove according to the boolean array paramater.- Parameters:
cl- for every element that is true, the slice corresponding to that element index will be removed
-
setCheckListRemove
Accessor that sets the which slices to remove according to the vector of strings.- Parameters:
slices- - the list of slices to be removed.
-
setCheckListRemoveEven
public void setCheckListRemoveEven()Sets up so that only even slices will be removed. -
setCheckListRemoveOdd
public void setCheckListRemoveOdd()Sets up so that only odd slices will be removed. -
setDisplayLocNew
public void setDisplayLocNew()Accessor that sets the display loc variable to new, so that a new image is created once the algorithm completes. -
setDisplayLocReplace
public void setDisplayLocReplace()Accessor that sets the display loc variable to replace, so the current image is replaced once the algorithm completes. -
setDontOpenFrame
public void setDontOpenFrame(boolean dontOpenFrame) DOCUMENT ME!- Parameters:
dontOpenFrame- DOCUMENT ME!
-
callAlgorithm
protected void callAlgorithm()Once all the necessary variables are set, call the Remove Slices algorithm based on what type of image this is and whether or not there is a separate destination image.- Specified by:
callAlgorithmin classJDialogScriptableBase
-
init
private void init()Sets up the GUI (panels, buttons, etc) and displays it on the screen. -
setVariables
private boolean setVariables()Use the GUI results to set up the variables needed to run the algorithm.- Returns:
trueif parameters set successfully,falseotherwise.
-