Package ptolemy.actor.gui
Class PortConfigurerDialog
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- java.awt.Window
-
- java.awt.Frame
-
- javax.swing.JFrame
-
- ptolemy.actor.gui.PtolemyDialog
-
- ptolemy.actor.gui.PortConfigurerDialog
-
- All Implemented Interfaces:
java.awt.event.ActionListener
,java.awt.image.ImageObserver
,java.awt.MenuContainer
,java.io.Serializable
,java.util.EventListener
,javax.accessibility.Accessible
,javax.swing.RootPaneContainer
,javax.swing.WindowConstants
,ChangeListener
public class PortConfigurerDialog extends PtolemyDialog implements ChangeListener
This class is a non-modal dialog for configuring the ports of an entity. The columns of the dialog displayed depend on the type of the Entity (target) for which we are configuring the ports. By default, "Name", "Direction, "Show Name", and "Hide" are displayed for all target types. We assume that the ports are of type Port or ComponentPort. If the target is an Actor, then the ports are of type IOPort and we add the "Input", "Output", and "Multiport" columns. If the target is a TypedActor, then the ports are of type TypedIOPort, and we add the "Type" and "Units" columns. NOTE: This code checks for the existence of each column that may be used, but it sometimes assumes the existence of the "Name" column.- Since:
- Ptolemy II 1.0
- Version:
- $Id$
- Author:
- Rowland R Johnson, Elaine Cheong
- See Also:
- Serialized Form
- Pt.AcceptedRating:
- Red (eal)
- Pt.ProposedRating:
- Yellow (eal)
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
PortConfigurerDialog.ValidatingComboBoxCellEditor
A validating ComboBox table cell editor for use with JTable.class
PortConfigurerDialog.ValidatingJTextFieldCellEditor
A validating JTextField table cell editor for use with JTable.-
Nested classes/interfaces inherited from class javax.swing.JFrame
javax.swing.JFrame.AccessibleJFrame
-
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 static java.awt.Color
UNEDITABLE_CELL_COLOR
The background color of an uneditable cell.-
Fields inherited from class ptolemy.actor.gui.PtolemyDialog
_cancelButton, _configuration, _helpButton
-
Fields inherited from class java.awt.Frame
CROSSHAIR_CURSOR, DEFAULT_CURSOR, E_RESIZE_CURSOR, HAND_CURSOR, ICONIFIED, MAXIMIZED_BOTH, MAXIMIZED_HORIZ, MAXIMIZED_VERT, MOVE_CURSOR, N_RESIZE_CURSOR, NE_RESIZE_CURSOR, NORMAL, NW_RESIZE_CURSOR, S_RESIZE_CURSOR, SE_RESIZE_CURSOR, SW_RESIZE_CURSOR, TEXT_CURSOR, W_RESIZE_CURSOR, WAIT_CURSOR
-
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
-
-
Constructor Summary
Constructors Constructor Description PortConfigurerDialog(DialogTableau tableau, java.awt.Frame owner, Entity target, Configuration configuration)
Construct a dialog that presents the ports as a table.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected boolean
_apply()
Apply any changes that may have been made in the table.protected void
_cancel()
Cancel this dialog, saving if necessary.protected void
_createExtendedButtons(javax.swing.JPanel _buttons)
Created extended buttons.protected java.net.URL
_getHelpURL()
Return a URL that points to the help page.protected void
_processButtonPress(java.lang.String button)
Process a button press.void
changeExecuted(ChangeRequest change)
Notify the listener that a change has been successfully executed.void
changeFailed(ChangeRequest change, java.lang.Exception exception)
Notify the listener that a change has resulted in an exception.boolean
close()
Close this dialog.void
saveIfRequired()
If necessary save any state.-
Methods inherited from class ptolemy.actor.gui.PtolemyDialog
_isDirty, _setDirty, _showHelp, actionPerformed, getTarget, setContents, setScrollableContents, setTarget
-
Methods inherited from class javax.swing.JFrame
addImpl, createRootPane, frameInit, getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getGraphics, getJMenuBar, getLayeredPane, getRootPane, getTransferHandler, isDefaultLookAndFeelDecorated, isRootPaneCheckingEnabled, paramString, processWindowEvent, remove, repaint, setContentPane, setDefaultCloseOperation, setDefaultLookAndFeelDecorated, setGlassPane, setIconImage, setJMenuBar, setLayeredPane, setLayout, setRootPane, setRootPaneCheckingEnabled, setTransferHandler, update
-
Methods inherited from class java.awt.Frame
addNotify, getCursorType, getExtendedState, getFrames, getIconImage, getMaximizedBounds, getMenuBar, getState, getTitle, isResizable, isUndecorated, remove, removeNotify, setBackground, setCursor, setExtendedState, setMaximizedBounds, setMenuBar, setOpacity, setResizable, setShape, setState, setTitle, setUndecorated
-
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, hide, isActive, isAlwaysOnTop, isAlwaysOnTopSupported, isAutoRequestFocus, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isOpaque, isShowing, isValidateRoot, pack, paint, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, reshape, setAlwaysOnTop, setAutoRequestFocus, setBounds, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setIconImages, setLocation, setLocation, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setSize, setSize, setType, setVisible, show, toBack, 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, 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
-
-
-
-
Constructor Detail
-
PortConfigurerDialog
public PortConfigurerDialog(DialogTableau tableau, java.awt.Frame owner, Entity target, Configuration configuration)
Construct a dialog that presents the ports as a table. Each row of the table corresponds to one port. The user modifies the table to specify changes in the ports. When the apply button is pressed the contents of the table is used to update the ports. When Commit is pressed an apply is done before exiting.This dialog is is not modal. In particular, changes can be undone by clicking Edit->Undo, and the help screen can be manipulated while this dialog exists. The dialog is placed relative to the owner.
- Parameters:
tableau
- The DialogTableau.owner
- The object that, per the user, appears to be generating the dialog.target
- The object whose ports are being configured.configuration
- The configuration to use to open the help screen (or null if help is not supported).
-
-
Method Detail
-
changeExecuted
public void changeExecuted(ChangeRequest change)
Notify the listener that a change has been successfully executed.- Specified by:
changeExecuted
in interfaceChangeListener
- Parameters:
change
- The change that has been executed.
-
changeFailed
public void changeFailed(ChangeRequest change, java.lang.Exception exception)
Notify the listener that a change has resulted in an exception.- Specified by:
changeFailed
in interfaceChangeListener
- Parameters:
change
- The change that was attempted.exception
- The exception that resulted.
-
close
public boolean close()
Close this dialog. If the state has not be saved, prompt the user to save the modifications.- Returns:
- false if the user selects cancel, otherwise return true.
-
saveIfRequired
public void saveIfRequired()
Description copied from class:PtolemyDialog
If necessary save any state. In this base class, do nothing. Derived classes should extend this method so that thePtolemyDialog._cancel()
method save state if necessary.- Overrides:
saveIfRequired
in classPtolemyDialog
-
_apply
protected boolean _apply()
Apply any changes that may have been made in the table.- Returns:
- true if the change was successfully applied
-
_cancel
protected void _cancel()
Description copied from class:PtolemyDialog
Cancel this dialog, saving if necessary.- Overrides:
_cancel
in classPtolemyDialog
-
_createExtendedButtons
protected void _createExtendedButtons(javax.swing.JPanel _buttons)
Description copied from class:PtolemyDialog
Created extended buttons.- Specified by:
_createExtendedButtons
in classPtolemyDialog
- Parameters:
_buttons
- The buttons to be created.
-
_getHelpURL
protected java.net.URL _getHelpURL()
Return a URL that points to the help page.- Specified by:
_getHelpURL
in classPtolemyDialog
- Returns:
- A URL that points to the help page
-
_processButtonPress
protected void _processButtonPress(java.lang.String button)
Process a button press.- Overrides:
_processButtonPress
in classPtolemyDialog
- Parameters:
button
- The button.
-
-