|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectjava.awt.Component
java.awt.Container
java.awt.Window
java.awt.Dialog
ij.gui.GenericDialog
public class GenericDialog
This class is a customizable modal dialog box. Here is an example GenericDialog with one string field and two numeric fields:
public class Generic_Dialog_Example implements PlugIn { static String title="Example"; static int width=512,height=512; public void run(String arg) { GenericDialog gd = new GenericDialog("New Image"); gd.addStringField("Title: ", title); gd.addNumericField("Width: ", width, 0); gd.addNumericField("Height: ", height, 0); gd.showDialog(); if (gd.wasCanceled()) return; title = gd.getNextString(); width = (int)gd.getNextNumber(); height = (int)gd.getNextNumber(); IJ.newImage(title, "8-bit", width, height, 1); } }To work with macros, the first word of each component label must be unique. If this is not the case, add underscores, which will be converted to spaces when the dialog is displayed. For example, change the checkbox labels "Show Quality" and "Show Residue" to "Show_Quality" and "Show_Residue".
Nested Class Summary |
---|
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 |
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 | |
---|---|
protected java.util.Vector |
checkbox
|
protected java.util.Vector |
choice
|
protected java.util.Vector |
defaultText
|
protected java.util.Vector |
defaultValues
|
static int |
MAX_SLIDERS
|
protected java.util.Vector |
numberField
|
protected java.util.Vector |
slider
|
protected java.util.Vector |
stringField
|
protected java.awt.TextArea |
textArea1
|
protected java.awt.TextArea |
textArea2
|
protected java.awt.Component |
theLabel
|
Fields inherited from class java.awt.Dialog |
---|
DEFAULT_MODALITY_TYPE |
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 | |
---|---|
GenericDialog(java.lang.String title)
Creates a new GenericDialog with the specified title. |
|
GenericDialog(java.lang.String title,
java.awt.Frame parent)
Creates a new GenericDialog using the specified title and parent frame. |
Method Summary | |
---|---|
void |
actionPerformed(java.awt.event.ActionEvent e)
|
void |
addCheckbox(java.lang.String label,
boolean defaultValue)
Adds a checkbox. |
void |
addCheckboxGroup(int rows,
int columns,
java.lang.String[] labels,
boolean[] defaultValues)
Adds a group of checkboxs using a grid layout. |
void |
addChoice(java.lang.String label,
java.lang.String[] items,
java.lang.String defaultItem)
Adds a popup menu. |
void |
addDialogListener(DialogListener dl)
Add an Object implementing the DialogListener interface. |
void |
addHelp(java.lang.String url)
|
void |
addMessage(java.lang.String text)
Adds a message consisting of one or more lines of text. |
void |
addNumericField(java.lang.String label,
double defaultValue,
int digits)
Adds a numeric field. |
void |
addNumericField(java.lang.String label,
double defaultValue,
int digits,
int columns,
java.lang.String units)
Adds a numeric field. |
void |
addPanel(java.awt.Panel panel)
Adds a Panel to the dialog. |
void |
addPanel(java.awt.Panel panel,
int contraints,
java.awt.Insets insets)
Adds a Panel to the dialog with custom contraint and insets. |
void |
addPreviewCheckbox(PlugInFilterRunner pfr)
Adds a checkbox labelled "Preview" for "automatic" preview. |
void |
addPreviewCheckbox(PlugInFilterRunner pfr,
java.lang.String label)
Add the preview checkbox with user-defined label; for details see the addPreviewCheckbox method with standard "Preview" label. |
void |
addSlider(java.lang.String label,
double minValue,
double maxValue,
double defaultValue)
|
void |
addStringField(java.lang.String label,
java.lang.String defaultText)
Adds an 8 column text field. |
void |
addStringField(java.lang.String label,
java.lang.String defaultText,
int columns)
Adds a text field. |
void |
addTextAreas(java.lang.String text1,
java.lang.String text2,
int rows,
int columns)
Adds one or two (side by side) text areas. |
void |
adjustmentValueChanged(java.awt.event.AdjustmentEvent e)
|
void |
centerDialog(boolean b)
Display dialog centered on the primary screen? |
void |
enableYesNoCancel()
Make this a "Yes No Cancel" dialog. |
void |
enableYesNoCancel(java.lang.String yesLabel,
java.lang.String noLabel)
Make this a "Yes No Cancel" dialog with custom labels. |
void |
focusGained(java.awt.event.FocusEvent e)
|
void |
focusLost(java.awt.event.FocusEvent e)
|
java.awt.Button[] |
getButtons()
Returns references to the "OK" ("Yes"), "Cancel", and if present, "No" buttons as an array. |
java.util.Vector |
getCheckboxes()
Returns the Vector containing the Checkboxes. |
java.util.Vector |
getChoices()
Returns the Vector containing the Choices. |
java.lang.String |
getErrorMessage()
Returns an error message if getNextNumber was unable to convert a string into a number, otherwise, returns null. |
java.awt.Insets |
getInsets()
|
java.awt.Component |
getMessage()
Returns a reference to the Label or MultiLineLabel created by the last addMessage() call, or null if addMessage() was not called. |
boolean |
getNextBoolean()
Returns the state of the next checkbox. |
java.lang.String |
getNextChoice()
Returns the selected item in the next popup menu. |
int |
getNextChoiceIndex()
Returns the index of the selected item in the next popup menu. |
double |
getNextNumber()
Returns the contents of the next numeric field. |
java.lang.String |
getNextString()
Returns the contents of the next text field. |
java.lang.String |
getNextText()
Returns the contents of the next textarea. |
java.util.Vector |
getNumericFields()
Returns the Vector containing the numeric TextFields. |
java.awt.Checkbox |
getPreviewCheckbox()
Returns a reference to the Preview Checkbox. |
java.util.Vector |
getSliders()
Returns the Vector containing the sliders (Scrollbars). |
java.util.Vector |
getStringFields()
Returns the Vector containing the string TextFields. |
java.awt.TextArea |
getTextArea1()
Returns a reference to textArea1. |
java.awt.TextArea |
getTextArea2()
Returns a reference to textArea2. |
protected java.lang.Double |
getValue(java.lang.String text)
|
void |
hideCancelButton()
No not display "Cancel" button. |
boolean |
invalidNumber()
Returns true if one or more of the numeric fields contained an invalid number. |
void |
itemStateChanged(java.awt.event.ItemEvent e)
|
void |
keyPressed(java.awt.event.KeyEvent e)
|
void |
keyReleased(java.awt.event.KeyEvent e)
|
void |
keyTyped(java.awt.event.KeyEvent e)
|
void |
paint(java.awt.Graphics g)
|
void |
previewRunning(boolean isRunning)
Used by PlugInFilterRunner to provide visable feedback whether preview is running or not by switching from "Preview" to "wait..." |
void |
setEchoChar(char echoChar)
Sets the echo character for the next string field. |
void |
setInsets(int top,
int left,
int bottom)
Set the insets (margins), in pixels, that will be used for the next component added to the dialog. |
void |
setOKLabel(java.lang.String label)
Sets a replacement label for the "OK" button. |
protected void |
setup()
|
void |
showDialog()
Displays this dialog box. |
void |
textValueChanged(java.awt.event.TextEvent e)
|
boolean |
wasCanceled()
Returns true if the user clicked on "Cancel". |
boolean |
wasOKed()
Returns true if the user has clicked on "OK" or a macro is running. |
void |
windowActivated(java.awt.event.WindowEvent e)
|
void |
windowClosed(java.awt.event.WindowEvent e)
|
void |
windowClosing(java.awt.event.WindowEvent e)
|
void |
windowDeactivated(java.awt.event.WindowEvent e)
|
void |
windowDeiconified(java.awt.event.WindowEvent e)
|
void |
windowIconified(java.awt.event.WindowEvent e)
|
void |
windowOpened(java.awt.event.WindowEvent e)
|
Methods inherited from class java.awt.Dialog |
---|
addNotify, getAccessibleContext, getModalityType, getTitle, hide, isModal, isResizable, isUndecorated, paramString, setModal, setModalityType, setResizable, setTitle, setUndecorated, setVisible, show, toBack |
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, isActive, isAlwaysOnTop, isAlwaysOnTopSupported, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isShowing, pack, postEvent, processEvent, processWindowEvent, processWindowFocusEvent, processWindowStateEvent, removeNotify, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, reshape, setAlwaysOnTop, setBounds, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setIconImage, setIconImages, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setSize, setSize, 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, getLayout, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, 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, remove, 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 |
Field Detail |
---|
public static final int MAX_SLIDERS
protected java.util.Vector numberField
protected java.util.Vector stringField
protected java.util.Vector checkbox
protected java.util.Vector choice
protected java.util.Vector slider
protected java.awt.TextArea textArea1
protected java.awt.TextArea textArea2
protected java.util.Vector defaultValues
protected java.util.Vector defaultText
protected java.awt.Component theLabel
Constructor Detail |
---|
public GenericDialog(java.lang.String title)
public GenericDialog(java.lang.String title, java.awt.Frame parent)
Method Detail |
---|
public void addNumericField(java.lang.String label, double defaultValue, int digits)
label
- the labeldefaultValue
- value to be initially displayeddigits
- number of digits to right of decimal pointpublic void addNumericField(java.lang.String label, double defaultValue, int digits, int columns, java.lang.String units)
label
- the labeldefaultValue
- value to be initially displayeddigits
- number of digits to right of decimal pointcolumns
- width of field in charactersunits
- a string displayed to the right of the fieldpublic void addStringField(java.lang.String label, java.lang.String defaultText)
label
- the labeldefaultText
- the text initially displayedpublic void addStringField(java.lang.String label, java.lang.String defaultText, int columns)
label
- the labeldefaultText
- text initially displayedcolumns
- width of the text fieldpublic void setEchoChar(char echoChar)
public void addCheckbox(java.lang.String label, boolean defaultValue)
label
- the labeldefaultValue
- the initial statepublic void addPreviewCheckbox(PlugInFilterRunner pfr)
pfr
- A reference to the PlugInFilterRunner calling the PlugInFilter
if automatic preview is desired, null otherwise.public void addPreviewCheckbox(PlugInFilterRunner pfr, java.lang.String label)
public void addCheckboxGroup(int rows, int columns, java.lang.String[] labels, boolean[] defaultValues)
rows
- the number of rowscolumns
- the number of columnslabels
- the labelsdefaultValues
- the initial statespublic void addChoice(java.lang.String label, java.lang.String[] items, java.lang.String defaultItem)
label
- the labelitems
- the menu itemsdefaultItem
- the menu item initially selectedpublic void addMessage(java.lang.String text)
public void addTextAreas(java.lang.String text1, java.lang.String text2, int rows, int columns)
text1
- initial contents of the first text areatext2
- initial contents of the second text area or nullrows
- the number of rowsrows
- the number of columnspublic void addSlider(java.lang.String label, double minValue, double maxValue, double defaultValue)
public void addPanel(java.awt.Panel panel)
public void addPanel(java.awt.Panel panel, int contraints, java.awt.Insets insets)
public void setInsets(int top, int left, int bottom)
Default insets: addMessage: 0,20,0 (empty string) or 10,20,0 addCheckbox: 15,20,0 (first checkbox) or 0,20,0 addCheckboxGroup: 10,0,0 addNumericField: 5,0,3 (first field) or 0,0,3 addStringField: 5,0,5 (first field) or 0,0,5 addChoice: 5,0,5 (first field) or 0,0,5
public void setOKLabel(java.lang.String label)
public void enableYesNoCancel()
public void enableYesNoCancel(java.lang.String yesLabel, java.lang.String noLabel)
GenericDialog gd = new GenericDialog("YesNoCancel Demo"); gd.addMessage("This is a custom YesNoCancel dialog"); gd.enableYesNoCancel("Do something", "Do something else"); gd.showDialog(); if (gd.wasCanceled()) IJ.log("User clicked 'Cancel'"); else if (gd.wasOKed()) IJ. log("User clicked 'Yes'"); else IJ. log("User clicked 'No'");
public void hideCancelButton()
public void addDialogListener(DialogListener dl)
dl
- the Object that wants to listen.public boolean wasCanceled()
public boolean wasOKed()
public double getNextNumber()
protected java.lang.Double getValue(java.lang.String text)
public boolean invalidNumber()
public java.lang.String getErrorMessage()
public java.lang.String getNextString()
public boolean getNextBoolean()
public java.lang.String getNextChoice()
public int getNextChoiceIndex()
public java.lang.String getNextText()
public void showDialog()
public java.util.Vector getNumericFields()
public java.util.Vector getStringFields()
public java.util.Vector getCheckboxes()
public java.util.Vector getChoices()
public java.util.Vector getSliders()
public java.awt.TextArea getTextArea1()
public java.awt.TextArea getTextArea2()
public java.awt.Component getMessage()
public java.awt.Checkbox getPreviewCheckbox()
public java.awt.Button[] getButtons()
public void previewRunning(boolean isRunning)
public void centerDialog(boolean b)
protected void setup()
public void actionPerformed(java.awt.event.ActionEvent e)
actionPerformed
in interface java.awt.event.ActionListener
public void textValueChanged(java.awt.event.TextEvent e)
textValueChanged
in interface java.awt.event.TextListener
public void itemStateChanged(java.awt.event.ItemEvent e)
itemStateChanged
in interface java.awt.event.ItemListener
public void focusGained(java.awt.event.FocusEvent e)
focusGained
in interface java.awt.event.FocusListener
public void focusLost(java.awt.event.FocusEvent e)
focusLost
in interface java.awt.event.FocusListener
public void keyPressed(java.awt.event.KeyEvent e)
keyPressed
in interface java.awt.event.KeyListener
public void keyReleased(java.awt.event.KeyEvent e)
keyReleased
in interface java.awt.event.KeyListener
public void keyTyped(java.awt.event.KeyEvent e)
keyTyped
in interface java.awt.event.KeyListener
public java.awt.Insets getInsets()
getInsets
in class java.awt.Container
public void adjustmentValueChanged(java.awt.event.AdjustmentEvent e)
adjustmentValueChanged
in interface java.awt.event.AdjustmentListener
public void paint(java.awt.Graphics g)
paint
in class java.awt.Container
public void windowClosing(java.awt.event.WindowEvent e)
windowClosing
in interface java.awt.event.WindowListener
public void addHelp(java.lang.String url)
public void windowActivated(java.awt.event.WindowEvent e)
windowActivated
in interface java.awt.event.WindowListener
public void windowOpened(java.awt.event.WindowEvent e)
windowOpened
in interface java.awt.event.WindowListener
public void windowClosed(java.awt.event.WindowEvent e)
windowClosed
in interface java.awt.event.WindowListener
public void windowIconified(java.awt.event.WindowEvent e)
windowIconified
in interface java.awt.event.WindowListener
public void windowDeiconified(java.awt.event.WindowEvent e)
windowDeiconified
in interface java.awt.event.WindowListener
public void windowDeactivated(java.awt.event.WindowEvent e)
windowDeactivated
in interface java.awt.event.WindowListener
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |