Package ptolemy.actor.gui
Class ModelPane
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- javax.swing.JComponent
-
- javax.swing.JPanel
-
- ptolemy.actor.gui.ModelPane
-
- All Implemented Interfaces:
java.awt.image.ImageObserver
,java.awt.MenuContainer
,java.io.Serializable
,javax.accessibility.Accessible
,CloseListener
public class ModelPane extends javax.swing.JPanel implements CloseListener
ModelPane is a panel for interacting with an executing Ptolemy II model. It has optional controls for setting top-level and director parameters, a set of buttons for controlling the execution, and a panel for displaying results of the execution. Any entity in the model that implements the Placeable interface is placed in the display region.- Since:
- Ptolemy II 0.4
- Version:
- $Id$
- Author:
- Edward A. Lee, Elaine Cheong
- See Also:
Placeable
, Serialized Form- Pt.AcceptedRating:
- Yellow (janneck)
- Pt.ProposedRating:
- Green (eal)
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class javax.swing.JPanel
javax.swing.JPanel.AccessibleJPanel
-
Nested classes/interfaces inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
-
-
Field Summary
Fields Modifier and Type Field Description protected java.awt.Container
_displays
A panel into which to place model displays.static int
BUTTONS
Indicator to include control buttons.static int
CONTROLS_ONLY
Indicator to create only buttons.static int
DIRECTOR_PARAMETERS
Indicator to include director parameters in the controls.static int
HORIZONTAL
Indicator to use a horizontal layout.static int
TOP_PARAMETERS
Indicator to include top-level parameters in the controls.static int
VERTICAL
Indicator to use a vertical layout.-
Fields inherited from class javax.swing.JComponent
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
-
-
Constructor Summary
Constructors Constructor Description ModelPane(CompositeActor model)
Construct a panel for interacting with the specified Ptolemy II model.ModelPane(CompositeActor model, int layout, int show)
Construct a panel for interacting with the specified Ptolemy II model.
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description protected void
_createPlaceable(CompositeActor model)
Place the placeable objects in the model in the display pane.java.awt.Container
getDisplayPane()
Return the container for model displays.CompositeActor
getModel()
Get the associated model.void
pauseRun()
If the model has a manager and is executing, then pause execution by calling the pause() method of the manager.void
resumeRun()
If the model has a manager and is executing, then resume execution by calling the resume() method of the manager.void
setDefaultButton()
Make the Go button the default button for the root pane.void
setDisplayPane(java.awt.Container pane)
Deprecated.It is no longer necessary to specify a display pane.void
setModel(CompositeActor model)
Set the associated model and add a query box with its top-level parameters, and those of its director, if it has one.void
startRun()
If the model has a manager and is not already running, then execute the model in a new thread.void
stopRun()
If the model has a manager and is executing, then stop execution by calling the stop() method of the manager.void
windowClosed(java.awt.Window window, java.lang.String button)
Notify the contained instances of PtolemyQuery that the window has been closed, and remove all Placeable displays by calling place(null).-
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
-
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
-
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, 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, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
-
-
-
-
Field Detail
-
HORIZONTAL
public static final int HORIZONTAL
Indicator to use a horizontal layout.- See Also:
- Constant Field Values
-
VERTICAL
public static final int VERTICAL
Indicator to use a vertical layout.- See Also:
- Constant Field Values
-
CONTROLS_ONLY
public static final int CONTROLS_ONLY
Indicator to create only buttons.- See Also:
- Constant Field Values
-
BUTTONS
public static final int BUTTONS
Indicator to include control buttons.- See Also:
- Constant Field Values
-
TOP_PARAMETERS
public static final int TOP_PARAMETERS
Indicator to include top-level parameters in the controls.- See Also:
- Constant Field Values
-
DIRECTOR_PARAMETERS
public static final int DIRECTOR_PARAMETERS
Indicator to include director parameters in the controls.- See Also:
- Constant Field Values
-
_displays
protected java.awt.Container _displays
A panel into which to place model displays.
-
-
Constructor Detail
-
ModelPane
public ModelPane(CompositeActor model)
Construct a panel for interacting with the specified Ptolemy II model. This uses the default layout, which is horizontal, and shows control buttons, top-level parameters, and director parameters.- Parameters:
model
- The model to control.
-
ModelPane
public ModelPane(CompositeActor model, int layout, int show)
Construct a panel for interacting with the specified Ptolemy II model. The layout argument should be one of HORIZONTAL, VERTICAL, or CONTROLS_ONLY; it determines whether the controls are put to the left of, or above the placeable displays. If CONTROLS_ONLY is given, then no displays are created for placeable objects.The show argument is a bitwise or of any of BUTTONS, TOP_PARAMETERS, or DIRECTOR_PARAMETERS. Or it can be 0, in which case, no controls are shown. If BUTTONS is included, then a panel of buttons, go, pause, resume, and stop, are shown. If TOP_PARAMETERS is included, then the top-level parameters of the model are included. If DIRECTOR_PARAMETERS is included, then the parameters of the director are included.
- Parameters:
model
- The model to control.layout
- HORIZONTAL or VERTICAL layout.show
- Indicator of which controls to show.
-
-
Method Detail
-
getDisplayPane
public java.awt.Container getDisplayPane()
Return the container for model displays.- Returns:
- A container for graphical displays.
- See Also:
setDisplayPane(Container)
-
getModel
public CompositeActor getModel()
Get the associated model.- Returns:
- The associated model.
- See Also:
setModel(CompositeActor)
-
pauseRun
public void pauseRun()
If the model has a manager and is executing, then pause execution by calling the pause() method of the manager. If there is no manager, do nothing.
-
resumeRun
public void resumeRun()
If the model has a manager and is executing, then resume execution by calling the resume() method of the manager. If there is no manager, do nothing.
-
setDefaultButton
public void setDefaultButton()
Make the Go button the default button for the root pane. You should call this after placing this pane in a container with a root pane.
-
setDisplayPane
@Deprecated public void setDisplayPane(java.awt.Container pane)
Deprecated.It is no longer necessary to specify a display pane. The displays are handled by setModel().Set the container for model displays. This method sets the background of the specified pane to match that of this panel.- Parameters:
pane
- The pane that is to be the container.- See Also:
getDisplayPane()
-
setModel
public void setModel(CompositeActor model)
Set the associated model and add a query box with its top-level parameters, and those of its director, if it has one. All placeable objects in the hierarchy will get placed.- Parameters:
model
- The associated model.- See Also:
getModel()
-
startRun
public void startRun()
If the model has a manager and is not already running, then execute the model in a new thread. Otherwise, do nothing.
-
stopRun
public void stopRun()
If the model has a manager and is executing, then stop execution by calling the stop() method of the manager. If there is no manager, do nothing.
-
windowClosed
public void windowClosed(java.awt.Window window, java.lang.String button)
Notify the contained instances of PtolemyQuery that the window has been closed, and remove all Placeable displays by calling place(null). This method is called if this pane is contained within a container that supports such notification.- Specified by:
windowClosed
in interfaceCloseListener
- Parameters:
window
- The window that closed.button
- The name of the button that was used to close the window.
-
_createPlaceable
protected void _createPlaceable(CompositeActor model)
Place the placeable objects in the model in the display pane. This method places all placeables vertically. Derived classes may override this method if the placeable objects are to be placed differently.- Parameters:
model
- The model that contains the placeable objects.
-
-