org.rosuda.deducer.widgets
Class RDialog

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by java.awt.Window
              extended by java.awt.Dialog
                  extended by javax.swing.JDialog
                      extended by org.rosuda.deducer.widgets.RDialog
All Implemented Interfaces:
java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.accessibility.Accessible, javax.swing.RootPaneContainer, javax.swing.WindowConstants
Direct Known Subclasses:
SimpleRDialog, SimpleRSubDialog

public class RDialog
extends javax.swing.JDialog

A JDialog that keeps track of any widgets put into it or widgets put into an RDialog of which it is owner.

Author:
Ian
See Also:
Serialized Form

Nested Class Summary
 
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
 
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 children
           
protected  java.util.Vector components
           
protected  HelpButton helpButton
           
protected  java.util.HashMap models
           
protected  OkayCancelPanel okayCancelPanel
           
protected  RDialog parent
           
protected  java.util.Vector widgets
           
 
Fields inherited from class javax.swing.JDialog
accessibleContext, rootPane, rootPaneCheckingEnabled
 
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 javax.swing.WindowConstants
DISPOSE_ON_CLOSE, DO_NOTHING_ON_CLOSE, EXIT_ON_CLOSE, HIDE_ON_CLOSE
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
RDialog()
           
RDialog(java.awt.Dialog owner)
           
RDialog(java.awt.Dialog owner, boolean modal)
           
RDialog(java.awt.Dialog owner, java.lang.String title)
           
RDialog(java.awt.Dialog owner, java.lang.String title, boolean modal)
           
RDialog(java.awt.Dialog owner, java.lang.String title, boolean modal, java.awt.GraphicsConfiguration gc)
           
RDialog(java.awt.Frame owner)
           
RDialog(java.awt.Frame owner, boolean modal)
           
RDialog(java.awt.Frame owner, java.lang.String title)
           
RDialog(java.awt.Frame owner, java.lang.String title, boolean modal)
           
RDialog(java.awt.Frame owner, java.lang.String title, boolean modal, java.awt.GraphicsConfiguration gc)
           
 
Method Summary
 java.awt.Component add(java.awt.Component comp)
           
 java.awt.Component add(java.awt.Component comp, int index)
           
 void add(java.awt.Component comp, int top, int right, int bottom, int left, java.lang.String topType, java.lang.String rightType, java.lang.String bottomType, java.lang.String leftType)
           
 void add(java.awt.Component comp, java.lang.Object constraints)
           
 void add(java.awt.Component comp, java.lang.Object constraints, int index)
           
 java.awt.Component add(java.lang.String name, java.awt.Component comp)
           
 void addHelpButton(java.lang.String pageLocation)
          adds a help button
 void addSubDialog(RDialog d)
          link a child dialog
protected  void clearWorkingModels()
           
 void completed()
          dialog successfully completed
 HelpButton getHelpButton()
           
 OkayCancelPanel getOkayCancel()
           
 REXP getWidgetStates()
           
 java.lang.String getWidgetStatesAsString()
           
protected  void init(java.awt.Component owner)
           
 void initGUI()
           
 void remove(java.awt.Component comp)
           
 void remove(int index)
           
 void removeAll()
           
 boolean removeSubDialog(RDialog d)
          unlink a child dialog
 void reset()
          resets widget states to default
 void run()
          run the dialog
 void setHelpVisible(boolean show)
          toggles help button visibility
 void setHelpWikiPage(java.lang.String page)
          sets the help page for the help button
 void setOkayCancel(boolean showReset, boolean isRun, java.awt.event.ActionListener lis)
          adds the okay, cancel and run buttons
 void setOkayCancelVisible(boolean show)
          toggles okay cancel and run button visibility
 void setToLast()
          Sets all of the widgets to their last state
 void track(java.awt.Component comp)
          Sets this RDialog and all ancestors to track component
 void trackWidget(DeducerWidget wid)
          Notifies RDialog that a widget should be tracked. useful when adding widgets to non-widget aware containers (e.g. a JPanel)
 boolean untrack(java.awt.Component comp)
          Stop tracking a component
 boolean untrackWidget(DeducerWidget wid)
          Stop tracking a widget
 
Methods inherited from class javax.swing.JDialog
addImpl, createRootPane, dialogInit, getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getGraphics, getJMenuBar, getLayeredPane, getRootPane, getTransferHandler, isDefaultLookAndFeelDecorated, isRootPaneCheckingEnabled, paramString, processWindowEvent, 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, 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, paint, postEvent, processEvent, 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
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, removeContainerListener, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, transferFocusBackward, 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, remove, 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, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

widgets

protected java.util.Vector widgets

components

protected java.util.Vector components

models

protected java.util.HashMap models

parent

protected RDialog parent

children

protected java.util.Vector children

okayCancelPanel

protected OkayCancelPanel okayCancelPanel

helpButton

protected HelpButton helpButton
Constructor Detail

RDialog

public RDialog()

RDialog

public RDialog(java.awt.Dialog owner)

RDialog

public RDialog(java.awt.Dialog owner,
               boolean modal)

RDialog

public RDialog(java.awt.Dialog owner,
               java.lang.String title)

RDialog

public RDialog(java.awt.Dialog owner,
               java.lang.String title,
               boolean modal)

RDialog

public RDialog(java.awt.Dialog owner,
               java.lang.String title,
               boolean modal,
               java.awt.GraphicsConfiguration gc)

RDialog

public RDialog(java.awt.Frame owner)

RDialog

public RDialog(java.awt.Frame owner,
               boolean modal)

RDialog

public RDialog(java.awt.Frame owner,
               java.lang.String title)

RDialog

public RDialog(java.awt.Frame owner,
               java.lang.String title,
               boolean modal)

RDialog

public RDialog(java.awt.Frame owner,
               java.lang.String title,
               boolean modal,
               java.awt.GraphicsConfiguration gc)
Method Detail

add

public java.awt.Component add(java.awt.Component comp)
Overrides:
add in class java.awt.Container

add

public java.awt.Component add(java.awt.Component comp,
                              int index)
Overrides:
add in class java.awt.Container

add

public void add(java.awt.Component comp,
                java.lang.Object constraints)
Overrides:
add in class java.awt.Container

add

public void add(java.awt.Component comp,
                java.lang.Object constraints,
                int index)
Overrides:
add in class java.awt.Container

add

public java.awt.Component add(java.lang.String name,
                              java.awt.Component comp)
Overrides:
add in class java.awt.Container

remove

public void remove(java.awt.Component comp)
Overrides:
remove in class javax.swing.JDialog

remove

public void remove(int index)
Overrides:
remove in class java.awt.Container

removeAll

public void removeAll()
Overrides:
removeAll in class java.awt.Container

init

protected void init(java.awt.Component owner)

initGUI

public void initGUI()

addHelpButton

public void addHelpButton(java.lang.String pageLocation)
adds a help button

Parameters:
pageLocation -

getHelpButton

public HelpButton getHelpButton()

setOkayCancel

public void setOkayCancel(boolean showReset,
                          boolean isRun,
                          java.awt.event.ActionListener lis)
adds the okay, cancel and run buttons

Parameters:
showReset - show the reset button?
isRun - should the approve button be named "okay" or "run"
lis - the action listener

getOkayCancel

public OkayCancelPanel getOkayCancel()

setToLast

public void setToLast()
Sets all of the widgets to their last state


reset

public void reset()
resets widget states to default


completed

public void completed()
dialog successfully completed


setHelpWikiPage

public void setHelpWikiPage(java.lang.String page)
sets the help page for the help button

Parameters:
page -

setHelpVisible

public void setHelpVisible(boolean show)
toggles help button visibility

Parameters:
show -

setOkayCancelVisible

public void setOkayCancelVisible(boolean show)
toggles okay cancel and run button visibility

Parameters:
show -

getWidgetStatesAsString

public java.lang.String getWidgetStatesAsString()
Returns:
a string which can be evaluated to an R list representation of the widget states

getWidgetStates

public REXP getWidgetStates()
Returns:
an r list of widget states

add

public void add(java.awt.Component comp,
                int top,
                int right,
                int bottom,
                int left,
                java.lang.String topType,
                java.lang.String rightType,
                java.lang.String bottomType,
                java.lang.String leftType)

track

public void track(java.awt.Component comp)
Sets this RDialog and all ancestors to track component

Parameters:
comp -

untrack

public boolean untrack(java.awt.Component comp)
Stop tracking a component

Parameters:
comp -
Returns:
was the component being tracked by this RDialog

trackWidget

public void trackWidget(DeducerWidget wid)
Notifies RDialog that a widget should be tracked. useful when adding widgets to non-widget aware containers (e.g. a JPanel)

Parameters:
wid - the widget to track

untrackWidget

public boolean untrackWidget(DeducerWidget wid)
Stop tracking a widget

Parameters:
wid - the widget to remove
Returns:
a boolean indicating if the widget was being tracked.

addSubDialog

public void addSubDialog(RDialog d)
link a child dialog

Parameters:
d -

clearWorkingModels

protected void clearWorkingModels()

removeSubDialog

public boolean removeSubDialog(RDialog d)
unlink a child dialog

Parameters:
d -
Returns:
was tracked

run

public void run()
run the dialog