Package gov.nih.mipav.view.dialogs
Class JDialogColorEdge
- 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.JDialogColorEdge
-
- All Implemented Interfaces:
AlgorithmInterface
,ScriptableActionInterface
,DialogDefaultsInterface
,java.awt.event.ActionListener
,java.awt.event.FocusListener
,java.awt.event.ItemListener
,java.awt.event.WindowListener
,java.awt.image.ImageObserver
,java.awt.MenuContainer
,java.io.Serializable
,java.util.EventListener
,javax.accessibility.Accessible
,javax.swing.RootPaneContainer
,javax.swing.WindowConstants
public class JDialogColorEdge extends JDialogScriptableBase implements AlgorithmInterface
GUI for entering parameters for the Color Edge algorithm and making it scriptable.- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class gov.nih.mipav.view.dialogs.JDialogBase
JDialogBase.CancelAction, JDialogBase.HelpAction, JDialogBase.OKAction
-
Nested classes/interfaces inherited from class javax.swing.JDialog
javax.swing.JDialog.AccessibleJDialog
-
Nested classes/interfaces inherited from class java.awt.Dialog
java.awt.Dialog.AccessibleAWTDialog, java.awt.Dialog.ModalExclusionType, java.awt.Dialog.ModalityType
-
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 AlgorithmColorEdge
algoColorEdge
DOCUMENT ME!private long
blue1
DOCUMENT ME!private javax.swing.JTextField
blue1Text
DOCUMENT ME!private long
blue2
DOCUMENT ME!private javax.swing.JTextField
blue2Text
DOCUMENT ME!private int
displayLoc
DOCUMENT ME!private long
green1
DOCUMENT ME!private javax.swing.JTextField
green1Text
DOCUMENT ME!private long
green2
DOCUMENT ME!private javax.swing.JTextField
green2Text
DOCUMENT ME!private long
red1
DOCUMENT ME!private javax.swing.JTextField
red1Text
DOCUMENT ME!private long
red2
DOCUMENT ME!private javax.swing.JTextField
red2Text
DOCUMENT ME!private ModelImage
resultImage
DOCUMENT ME!private static long
serialVersionUID
Use serialVersionUID for interoperability.private ModelImage
sourceImage
DOCUMENT ME!private java.lang.String[]
titles
DOCUMENT ME!private ViewUserInterface
userInterface
DOCUMENT ME!-
Fields inherited from class gov.nih.mipav.view.dialogs.JDialogScriptableBase
displayInNewFrame, isComplete, scriptParameters
-
Fields 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, voiManager
-
Fields inherited from class javax.swing.JDialog
accessibleContext, rootPane, rootPaneCheckingEnabled
-
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
-
-
Constructor Summary
Constructors Constructor Description JDialogColorEdge()
Empty constructor needed for dynamic instantiation (used during scripting).JDialogColorEdge(javax.swing.JFrame owner, ModelImage mi)
Creates an modal extension of JDialogBase, using the title, "Local Normalization".
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
actionPerformed(java.awt.event.ActionEvent ae)
a button has been clicked!void
algorithmPerformed(AlgorithmBase algorithm)
This method is required if the AlgorithmPerformed interface is implemented.private javax.swing.JPanel
buildColorPanel()
part of the algorithm rests on finding the original image minus an estimation of the local mean.private javax.swing.JPanel
buildOkayCancelPanel()
creates the planel which contains the OKAY and Cancel buttons. sets their sizes, colours and listeners.protected void
callAlgorithm()
Once all the necessary variables are set, call the local normalization algorithm based on what type of image this is and whether or not there is a separate destination image.private javax.swing.JTextField
createEntryField(java.lang.String presetText)
Builds a new JTextField, with the given String, sets its font (to MipavUtil.font12), sets the foreground colour (to Color.black), sets column width to 7, then returns the newly made JTextField.protected void
doPostAlgorithmActions()
Store the result image in the script runner's image table now that the action execution is finished.ModelImage
getResultImage()
Accessor that returns the image.void
setBlue1(long blue1)
DOCUMENT ME!void
setBlue2(long blue2)
DOCUMENT ME!void
setDisplayLocNew()
Accessor that sets the display loc variable to new, so that a new image is created once the algorithm completes.void
setDisplayLocReplace()
Accessor that sets the display loc variable to replace, so the current image is replaced once the algorithm completes.void
setGreen1(long green1)
DOCUMENT ME!void
setGreen2(long green2)
DOCUMENT ME!protected void
setGUIFromParams()
Set the dialog GUI using the script parameters while running this algorithm as part of a script.void
setRed1(long red1)
DOCUMENT ME!void
setRed2(long red2)
DOCUMENT ME!private boolean
setVariables()
Use the GUI results to set up the variables needed to run the algorithm.protected void
storeParamsFromGUI()
Record 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, setComplete
-
Methods 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, itemStateChanged, 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, windowOpened
-
Methods 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, update
-
Methods inherited from class java.awt.Dialog
addNotify, getModalityType, getTitle, hide, isModal, isResizable, isUndecorated, setBackground, setModal, setModalityType, setOpacity, setResizable, setShape, setTitle, setUndecorated, show, toBack
-
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, 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, 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, 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 Detail
-
serialVersionUID
private static final long serialVersionUID
Use serialVersionUID for interoperability.- See Also:
- Constant Field Values
-
algoColorEdge
private AlgorithmColorEdge algoColorEdge
DOCUMENT ME!
-
displayLoc
private int displayLoc
DOCUMENT ME!
-
red1
private long red1
DOCUMENT ME!
-
green1
private long green1
DOCUMENT ME!
-
blue1
private long blue1
DOCUMENT ME!
-
red1Text
private javax.swing.JTextField red1Text
DOCUMENT ME!
-
green1Text
private javax.swing.JTextField green1Text
DOCUMENT ME!
-
blue1Text
private javax.swing.JTextField blue1Text
DOCUMENT ME!
-
red2
private long red2
DOCUMENT ME!
-
green2
private long green2
DOCUMENT ME!
-
blue2
private long blue2
DOCUMENT ME!
-
red2Text
private javax.swing.JTextField red2Text
DOCUMENT ME!
-
green2Text
private javax.swing.JTextField green2Text
DOCUMENT ME!
-
blue2Text
private javax.swing.JTextField blue2Text
DOCUMENT ME!
-
resultImage
private ModelImage resultImage
DOCUMENT ME!
-
sourceImage
private ModelImage sourceImage
DOCUMENT ME!
-
titles
private java.lang.String[] titles
DOCUMENT ME!
-
userInterface
private ViewUserInterface userInterface
DOCUMENT ME!
-
-
Constructor Detail
-
JDialogColorEdge
public JDialogColorEdge()
Empty constructor needed for dynamic instantiation (used during scripting).
-
JDialogColorEdge
public JDialogColorEdge(javax.swing.JFrame owner, ModelImage mi)
Creates an modal extension of JDialogBase, using the title, "Local Normalization". Creates an options panel; this contains: the inputs for the unsharp masking; the inputs for blurring; and the inputs for choosing which colour channels to process. This last set of options are not selectable on images which are not colour images. It creates the OKAY and CANCEL buttons on a panel, to b be placed at the bottom of the dialog.The panel is then pack()'d and then setVisible(true).
- Parameters:
owner
- DOCUMENT ME!mi
- DOCUMENT ME!
-
-
Method Detail
-
actionPerformed
public void actionPerformed(java.awt.event.ActionEvent ae)
a button has been clicked! Cancel will dispose of the dialog, OK sets the variables and calls the algorithm; any errors in setting the variables upon OK are written to the debug pane. Help brings up the help text.- Specified by:
actionPerformed
in interfacejava.awt.event.ActionListener
- Overrides:
actionPerformed
in classJDialogBase
- Parameters:
ae
- DOCUMENT ME!
-
algorithmPerformed
public void algorithmPerformed(AlgorithmBase algorithm)
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:
algorithmPerformed
in interfaceAlgorithmInterface
- Parameters:
algorithm
- Algorithm that caused the event.
-
getResultImage
public ModelImage getResultImage()
Accessor that returns the image.- Returns:
- The result image.
-
setBlue1
public void setBlue1(long blue1)
DOCUMENT ME!- Parameters:
blue1
- DOCUMENT ME!
-
setBlue2
public void setBlue2(long blue2)
DOCUMENT ME!- Parameters:
blue2
- DOCUMENT ME!
-
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.
-
setGreen1
public void setGreen1(long green1)
DOCUMENT ME!- Parameters:
green1
- DOCUMENT ME!
-
setGreen2
public void setGreen2(long green2)
DOCUMENT ME!- Parameters:
green2
- DOCUMENT ME!
-
setRed1
public void setRed1(long red1)
DOCUMENT ME!- Parameters:
red1
- DOCUMENT ME!
-
setRed2
public void setRed2(long red2)
DOCUMENT ME!- Parameters:
red2
- DOCUMENT ME!
-
callAlgorithm
protected void callAlgorithm()
Once all the necessary variables are set, call the local normalization algorithm based on what type of image this is and whether or not there is a separate destination image.- Specified by:
callAlgorithm
in classJDialogScriptableBase
-
doPostAlgorithmActions
protected void doPostAlgorithmActions()
Store the result image in the script runner's image table now that the action execution is finished.- Overrides:
doPostAlgorithmActions
in classJDialogScriptableBase
-
setGUIFromParams
protected void setGUIFromParams()
Set the dialog GUI using the script parameters while running this algorithm as part of a script.- Specified by:
setGUIFromParams
in classJDialogScriptableBase
-
storeParamsFromGUI
protected void storeParamsFromGUI() throws ParserException
Record the parameters just used to run this algorithm in a script.- Specified by:
storeParamsFromGUI
in classJDialogScriptableBase
- Throws:
ParserException
- If there is a problem creating/recording the new parameters.
-
buildColorPanel
private javax.swing.JPanel buildColorPanel()
part of the algorithm rests on finding the original image minus an estimation of the local mean.This is the same as using as unsharp-mask filter; so, this panel is a recreation of the inputs made in the JDialogUnsharpMask.
- Returns:
- The color panel.
- See Also:
JDialogUnsharpMask
-
buildOkayCancelPanel
private javax.swing.JPanel buildOkayCancelPanel()
creates the planel which contains the OKAY and Cancel buttons. sets their sizes, colours and listeners.- Returns:
- DOCUMENT ME!
-
createEntryField
private javax.swing.JTextField createEntryField(java.lang.String presetText)
Builds a new JTextField, with the given String, sets its font (to MipavUtil.font12), sets the foreground colour (to Color.black), sets column width to 7, then returns the newly made JTextField.- Parameters:
presetText
- the String to have the JTextField display.- Returns:
- a black-text, font12'd, JTextField displaying presetText.
-
setVariables
private boolean setVariables()
Use the GUI results to set up the variables needed to run the algorithm.- Returns:
true
if parameters set successfully,false
otherwise.
-
-