ptolemy.vergil.gt
Class GTIngredientsEditor

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by java.awt.Window
              extended by java.awt.Frame
                  extended by javax.swing.JFrame
                      extended by ptolemy.actor.gui.PtolemyDialog
                          extended by ptolemy.vergil.gt.GTIngredientsEditor
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

public class GTIngredientsEditor
extends PtolemyDialog

Since:
Ptolemy II 6.1
Version:
$Id: GTIngredientsEditor.java 57040 2010-01-27 20:52:32Z cxh $
Author:
Thomas Huining Feng
See Also:
Serialized Form
Accepted Rating:
Red (tfeng)
Proposed Rating:
Red (tfeng)

Nested Class Summary
private static class GTIngredientsEditor.ColorizedComboBox
           
private static class GTIngredientsEditor.ColorizedTextField
           
private static class GTIngredientsEditor.ComboElement
           
static class GTIngredientsEditor.Factory
           
private static class GTIngredientsEditor.HelpLabel
           
private static class GTIngredientsEditor.IngredientContentEditor
           
private  class GTIngredientsEditor.Row
           
 
Nested classes/interfaces inherited from class javax.swing.JFrame
javax.swing.JFrame.AccessibleJFrame
 
Nested classes/interfaces inherited from class java.awt.Frame
java.awt.Frame.AccessibleAWTFrame
 
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.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
private  GTIngredientsAttribute _attribute
           
private static java.util.List<java.lang.Class<? extends GTIngredient>> _criterionClasses
           
private static java.awt.Color _DISABLED_BACKGROUND
           
private  GTIngredientsEditor.IngredientContentEditor _editor
           
private static javax.swing.border.Border _EMPTY_BORDER
           
private  java.util.List<java.lang.Class<? extends GTIngredient>> _ingredientClasses
           
private  GTIngredientList _initialIngredientList
           
private static java.awt.Color _NON_REGULAR_EXPRESSION_BACKGROUND
           
private static java.util.List<java.lang.Class<? extends GTIngredient>> _operationClasses
           
private  java.awt.Frame _owner
           
private static java.awt.Dimension _PREFERRED_SIZE
           
private static java.awt.Color _PTOLEMY_EXPRESSION_BACKGROUND
           
private static java.lang.String _PTOLEMY_EXPRESSION_HELP_FILE
           
private static java.awt.Color _REGULAR_EXPRESSION_BACKGROUND
           
private static java.lang.String _REGULAR_EXPRESSION_HELP_FILE
           
private static int _ROW_HEIGHT
           
private static java.awt.Color _SELECTED_COLOR
           
private  javax.swing.JTable _table
           
private  javax.swing.table.DefaultTableModel _tableModel
           
private  NamedObj _target
           
private  GTIngredientList _temporaryIngredientList
           
private static javax.swing.border.Border _TEXT_FIELD_BORDER
           
private static java.awt.Color _UNSELECTED_COLOR
           
static java.lang.String REGULAR_EXPRESSION_HELP_FILE
           
 
Fields inherited from class ptolemy.actor.gui.PtolemyDialog
_cancelButton, _configuration, _helpButton
 
Fields inherited from class javax.swing.JFrame
accessibleContext, EXIT_ON_CLOSE, rootPane, rootPaneCheckingEnabled
 
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
 
Fields inherited from interface javax.swing.WindowConstants
DISPOSE_ON_CLOSE, DO_NOTHING_ON_CLOSE, HIDE_ON_CLOSE
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
GTIngredientsEditor(DialogTableau tableau, java.awt.Frame owner, NamedObj target, Configuration configuration)
           
 
Method Summary
protected  void _createComponents()
           
protected  void _createExtendedButtons(javax.swing.JPanel _buttons)
          Created extended buttons.
protected  GTIngredient _createIngredientFromRow(GTIngredientsEditor.Row row)
           
private  GTIngredient _createTemporaryIngredient(java.lang.Class<? extends GTIngredient> ingredientClass)
           
protected  java.net.URL _getHelpURL()
          Get the URL that is the help for this dialog.
 void actionPerformed(java.awt.event.ActionEvent e)
          If the action event is a JButton, process the button press.
 void addNewRow()
           
 boolean apply()
           
 void cancel()
           
 void centerOnScreen()
           
 void commit()
           
 java.awt.Dimension getPreferredSize()
           
 void removeSelectedRows()
           
 void resetTable(GTIngredientList ingredientList)
           
static java.util.List<java.lang.Class<? extends GTIngredient>> searchIngredientClasses(java.lang.String[] packages, java.lang.ClassLoader loader)
           
 void setVisible(boolean visible)
           
 
Methods inherited from class ptolemy.actor.gui.PtolemyDialog
_cancel, _isDirty, _processButtonPress, _setDirty, _showHelp, getTarget, saveIfRequired, setContents, setScrollableContents, setTarget
 
Methods inherited from class javax.swing.JFrame
addImpl, createRootPane, frameInit, getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getJMenuBar, getLayeredPane, getRootPane, isDefaultLookAndFeelDecorated, isRootPaneCheckingEnabled, paramString, processWindowEvent, remove, setContentPane, setDefaultCloseOperation, setDefaultLookAndFeelDecorated, setGlassPane, setIconImage, setJMenuBar, setLayeredPane, setLayout, setRootPane, setRootPaneCheckingEnabled, update
 
Methods inherited from class java.awt.Frame
addNotify, finalize, getCursorType, getExtendedState, getFrames, getIconImage, getMaximizedBounds, getMenuBar, getState, getTitle, isResizable, isUndecorated, remove, removeNotify, setCursor, setExtendedState, setMaximizedBounds, setMenuBar, setResizable, setState, setTitle, setUndecorated
 
Methods inherited from class java.awt.Window
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, dispose, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getGraphicsConfiguration, getInputContext, getListeners, getLocale, getMostRecentFocusOwner, getOwnedWindows, getOwner, getToolkit, getWarningString, getWindowFocusListeners, getWindowListeners, getWindowStateListeners, hide, isActive, isAlwaysOnTop, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isShowing, pack, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, setAlwaysOnTop, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setLocationByPlatform, setLocationRelativeTo, 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, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paint, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, removeAll, 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, 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, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, reshape, resize, resize, setBackground, setBounds, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setMinimumSize, setName, setPreferredSize, setSize, setSize, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface java.awt.MenuContainer
getFont, postEvent
 

Field Detail

REGULAR_EXPRESSION_HELP_FILE

public static final java.lang.String REGULAR_EXPRESSION_HELP_FILE
See Also:
Constant Field Values

_DISABLED_BACKGROUND

private static final java.awt.Color _DISABLED_BACKGROUND

_EMPTY_BORDER

private static final javax.swing.border.Border _EMPTY_BORDER

_NON_REGULAR_EXPRESSION_BACKGROUND

private static final java.awt.Color _NON_REGULAR_EXPRESSION_BACKGROUND

_PREFERRED_SIZE

private static final java.awt.Dimension _PREFERRED_SIZE

_PTOLEMY_EXPRESSION_BACKGROUND

private static final java.awt.Color _PTOLEMY_EXPRESSION_BACKGROUND

_PTOLEMY_EXPRESSION_HELP_FILE

private static final java.lang.String _PTOLEMY_EXPRESSION_HELP_FILE
See Also:
Constant Field Values

_REGULAR_EXPRESSION_BACKGROUND

private static final java.awt.Color _REGULAR_EXPRESSION_BACKGROUND

_REGULAR_EXPRESSION_HELP_FILE

private static final java.lang.String _REGULAR_EXPRESSION_HELP_FILE
See Also:
Constant Field Values

_ROW_HEIGHT

private static final int _ROW_HEIGHT
See Also:
Constant Field Values

_SELECTED_COLOR

private static final java.awt.Color _SELECTED_COLOR

_TEXT_FIELD_BORDER

private static final javax.swing.border.Border _TEXT_FIELD_BORDER

_UNSELECTED_COLOR

private static final java.awt.Color _UNSELECTED_COLOR

_attribute

private GTIngredientsAttribute _attribute

_criterionClasses

private static java.util.List<java.lang.Class<? extends GTIngredient>> _criterionClasses

_editor

private GTIngredientsEditor.IngredientContentEditor _editor

_ingredientClasses

private java.util.List<java.lang.Class<? extends GTIngredient>> _ingredientClasses

_initialIngredientList

private GTIngredientList _initialIngredientList

_operationClasses

private static java.util.List<java.lang.Class<? extends GTIngredient>> _operationClasses

_owner

private java.awt.Frame _owner

_table

private javax.swing.JTable _table

_tableModel

private javax.swing.table.DefaultTableModel _tableModel

_target

private NamedObj _target

_temporaryIngredientList

private GTIngredientList _temporaryIngredientList
Constructor Detail

GTIngredientsEditor

public GTIngredientsEditor(DialogTableau tableau,
                           java.awt.Frame owner,
                           NamedObj target,
                           Configuration configuration)
Method Detail

actionPerformed

public void actionPerformed(java.awt.event.ActionEvent e)
Description copied from class: PtolemyDialog
If the action event is a JButton, process the button press.

Specified by:
actionPerformed in interface java.awt.event.ActionListener
Overrides:
actionPerformed in class PtolemyDialog
Parameters:
e - The event.

addNewRow

public void addNewRow()

apply

public boolean apply()

cancel

public void cancel()

centerOnScreen

public void centerOnScreen()

commit

public void commit()

getPreferredSize

public java.awt.Dimension getPreferredSize()
Overrides:
getPreferredSize in class java.awt.Container

removeSelectedRows

public void removeSelectedRows()

resetTable

public void resetTable(GTIngredientList ingredientList)

searchIngredientClasses

public static java.util.List<java.lang.Class<? extends GTIngredient>> searchIngredientClasses(java.lang.String[] packages,
                                                                                              java.lang.ClassLoader loader)

setVisible

public void setVisible(boolean visible)
Overrides:
setVisible in class java.awt.Component

_createComponents

protected void _createComponents()

_createExtendedButtons

protected void _createExtendedButtons(javax.swing.JPanel _buttons)
Description copied from class: PtolemyDialog
Created extended buttons.

Specified by:
_createExtendedButtons in class PtolemyDialog
Parameters:
_buttons - The buttons to be created.

_createIngredientFromRow

protected GTIngredient _createIngredientFromRow(GTIngredientsEditor.Row row)

_getHelpURL

protected java.net.URL _getHelpURL()
Description copied from class: PtolemyDialog
Get the URL that is the help for this dialog.

Specified by:
_getHelpURL in class PtolemyDialog
Returns:
URL that is the help for this dialog.

_createTemporaryIngredient

private GTIngredient _createTemporaryIngredient(java.lang.Class<? extends GTIngredient> ingredientClass)
                                         throws java.lang.SecurityException,
                                                java.lang.NoSuchMethodException,
                                                java.lang.IllegalArgumentException,
                                                java.lang.InstantiationException,
                                                java.lang.IllegalAccessException,
                                                java.lang.reflect.InvocationTargetException
Throws:
java.lang.SecurityException
java.lang.NoSuchMethodException
java.lang.IllegalArgumentException
java.lang.InstantiationException
java.lang.IllegalAccessException
java.lang.reflect.InvocationTargetException