ptolemy.vergil.gt
Class MatchResultViewer

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.gui.Top
                          extended by ptolemy.actor.gui.TableauFrame
                              extended by ptolemy.actor.gui.PtolemyFrame
                                  extended by ptolemy.vergil.basic.BasicGraphFrame
                                      extended by ptolemy.vergil.basic.ExtendedGraphFrame
                                          extended by ptolemy.vergil.gt.GTFrame
                                              extended by ptolemy.vergil.gt.MatchResultViewer
All Implemented Interfaces:
java.awt.datatransfer.ClipboardOwner, java.awt.event.MouseListener, java.awt.event.MouseMotionListener, java.awt.event.MouseWheelListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.awt.print.Printable, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible, javax.swing.RootPaneContainer, javax.swing.WindowConstants, ChangeListener

public class MatchResultViewer
extends GTFrame

See Also:
Serialized Form

Nested Class Summary
private  class MatchResultViewer.CloseAction
           
static class MatchResultViewer.FileSelectionStatus
           
protected  class MatchResultViewer.MatchResultActorController
           
protected  class MatchResultViewer.MatchResultActorGraphController
           
protected  class MatchResultViewer.MatchResultExternalPortController
           
protected  class MatchResultViewer.MatchResultFSMGraphController
           
protected  class MatchResultViewer.MatchResultLinkController
           
protected  class MatchResultViewer.MatchResultPortController
           
protected  class MatchResultViewer.MatchResultRelationController
           
protected  class MatchResultViewer.MatchResultStateController
           
protected  class MatchResultViewer.MatchResultTransitionController
           
private  class MatchResultViewer.NextAction
           
private  class MatchResultViewer.NextFileAction
           
private  class MatchResultViewer.PreviousAction
           
private  class MatchResultViewer.PreviousFileAction
           
private  class MatchResultViewer.TransformAction
           
private  class MatchResultViewer.TransformUntilFixpointAction
           
private  class MatchResultViewer.UndoChangeModelAction
           
 
Nested classes/interfaces inherited from class ptolemy.vergil.gt.GTFrame
GTFrame.ConfigureCriteriaAction, GTFrame.ConfigureIngredientsAction, GTFrame.ConfigureOperationsAction
 
Nested classes/interfaces inherited from class ptolemy.vergil.basic.ExtendedGraphFrame
ExtendedGraphFrame.FullScreenAction
 
Nested classes/interfaces inherited from class ptolemy.vergil.basic.BasicGraphFrame
BasicGraphFrame.CopyAction, BasicGraphFrame.CutAction, BasicGraphFrame.EditPreferencesAction, BasicGraphFrame.MoveToBackAction, BasicGraphFrame.MoveToFrontAction, BasicGraphFrame.PasteAction
 
Nested classes/interfaces inherited from class ptolemy.actor.gui.TableauFrame
TableauFrame.ExtensionFileFilter
 
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  int _currentPosition
           
private  MatchResultViewer.FileSelectionStatus _fileSelectionStatus
           
private static java.awt.Color _HIGHLIGHT_COLOR
           
private static float _HIGHLIGHT_PADDING
           
private static float _HIGHLIGHT_THICKNESS
           
private  boolean _isBatchMode
           
private  boolean _isNextFileEnabled
           
private  boolean _isPreviousFileEnabled
           
private  javax.swing.JButton _nextButton
           
private  javax.swing.JButton _nextFileButton
           
private  javax.swing.JMenuItem _nextFileItem
           
private  javax.swing.JMenuItem _nextItem
           
private  javax.swing.JButton _previousButton
           
private  javax.swing.JButton _previousFileButton
           
private  javax.swing.JMenuItem _previousFileItem
           
private  javax.swing.JMenuItem _previousItem
           
private static int _PROMPT_TO_CONTINUE_COUNT
           
private  java.util.List<MatchResult> _results
           
private  TransformationRule _rule
           
private  java.lang.String _sourceFileName
           
private  java.util.Set<MatchResultViewer> _subviewers
           
private  MatchResultViewer _topFrame
          The top frame that shows the toplevel model, or null if the top frame is this frame itself.
private  javax.swing.JButton _transformButton
           
private  javax.swing.JMenuItem _transformItem
           
protected  javax.swing.JMenu _transformMenu
           
private  javax.swing.JButton _transformUntilFixpointButton
           
private  javax.swing.JMenuItem _transformUntilFixpointItem
           
 
Fields inherited from class ptolemy.vergil.basic.BasicGraphFrame
_copyAction, _cutAction, _defaultLibrary, _dropTarget, _editMenu, _editPreferencesAction, _exportPDFAction, _graphPanner, _jgraph, _library, _libraryContextMenuCreator, _libraryModel, _libraryScrollPane, _moveToBackAction, _moveToFrontAction, _openGraphFrames, _palettePane, _pasteAction, _rightComponent, _splitPane, _toolbar, _topLibrary, _zoomFitAction, _zoomInAction, _zoomOutAction, _zoomResetAction, BACKGROUND_COLOR, VERGIL_USER_LIBRARY_NAME
 
Fields inherited from class ptolemy.actor.gui.PtolemyFrame
_query
 
Fields inherited from class ptolemy.actor.gui.TableauFrame
_initialSaveAsFileName, _viewMenu, aboutFile, helpFile
 
Fields inherited from class ptolemy.gui.Top
_CANCELED, _directory, _DISCARDED, _FAILED, _fileFilter, _fileMenu, _fileMenuItems, _helpMenu, _helpMenuItems, _menubar, _SAVED, _statusBar
 
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 java.awt.print.Printable
NO_SUCH_PAGE, PAGE_EXISTS
 
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
MatchResultViewer(CompositeEntity entity, Tableau tableau)
          Construct a frame associated with the specified Ptolemy II model.
MatchResultViewer(CompositeEntity entity, Tableau tableau, LibraryAttribute defaultLibrary)
          Construct a frame associated with the specified Ptolemy II model.
 
Method Summary
protected  void _addMenus()
          Create the menus that are used by this frame.
private  void _beginTransform()
           
private  void _checkContainingViewer()
           
private  void _closeSubviewers()
           
protected  RunnableGraphController _createActorGraphController()
           
protected  RunnableGraphController _createFSMGraphController()
           
private  void _delegateUndoStack(NamedObj from, NamedObj to)
           
private  void _enableOrDisableActions()
           
private  void _finishTransform(CompositeEntity oldModel)
           
private  java.awt.Color _getHighlightColor(NamedObj object)
           
private  void _next()
           
private  void _nextFile()
           
private  void _previous()
           
private  void _previousFile()
           
private  void _refreshStatusBars()
           
private  void _renderLink(Connector connector, java.lang.Object semanticObject)
           
private  void _renderNamedObj(CompositeFigure figure, java.lang.Object semanticObject)
           
private  void _renderState(CompositeFigure figure, java.lang.Object semanticObject)
           
private  void _rerender()
           
protected static void _setTableauFactory(java.lang.Object originator, CompositeEntity entity)
           
private  void _showInDefaultEditor()
           
private  void _transform()
           
private  void _transformUntilFixpoint()
           
protected static void _unsetTableauFactory(java.lang.Object originator, CompositeEntity entity)
           
protected  void _windowClosed()
           
 void clearFileSelectionStatus()
           
 MatchResultViewer.FileSelectionStatus getFileSelectionStatus()
           
 void setBatchMode(boolean batchMode)
           
 void setMatchResult(TransformationRule rule, java.lang.String sourceFileName, java.util.List<MatchResult> results)
           
 void setMatchResult(TransformationRule rule, java.lang.String sourceFileName, java.util.List<MatchResult> results, int position)
           
 void setNextFileEnabled(boolean nextFileEnabled)
           
 void setPreviousFileEnabled(boolean previousFileEnabled)
           
 
Methods inherited from class ptolemy.vergil.gt.GTFrame
_close, _createGraphPane, _createRightComponent, _createSizeAttribute, _getGraphPanner, cancelFullScreen, fullScreen, getFrameController, getJGraph, isFullscreen
 
Methods inherited from class ptolemy.vergil.basic.ExtendedGraphFrame
_initExtendedGraphFrame
 
Methods inherited from class ptolemy.vergil.basic.BasicGraphFrame
_checkForImplied, _createDefaultLibrary, _createFileMenuItems, _deleteMoML, _exportDesignPattern, _finishExportDesignPattern, _getDirectory, _getGraphController, _getGraphModel, _getRightComponent, _getSelectionSet, _initBasicGraphFrame, _isDesignPattern, _prepareExportDesignPattern, _saveAsFileDialog, _setDirectory, _setDropIntoEnabled, _writeFile, changeExecuted, changeFailed, clearSelection, copy, createHierarchy, cut, delete, dispose, disposeSuper, expandAllLibraryRows, exportDesignPattern, getCenter, getGraphPanner, getSelectionSet, getVisibleCanvasRectangle, getVisibleRectangle, importDesignPattern, layoutGraph, layoutGraphWithPtolemyLayout, lostOwnership, mouseClicked, mouseDragged, mouseEntered, mouseExited, mouseMoved, mousePressed, mouseReleased, mouseWheelMoved, openContainer, paste, print, redo, saveComponentInFile, saveComponentInLibrary, setCenter, setJGraph, undo, zoom, zoomFit, zoomReset
 
Methods inherited from class ptolemy.actor.gui.PtolemyFrame
_clear, _help, _print, _saveAs, getEffigy, getModel, setModel
 
Methods inherited from class ptolemy.actor.gui.TableauFrame
_about, _confirmFile, _exit, _getDefaultIconImage, _getName, _read, _save, _saveAs, _saveAsHelper, getAlternateTopPack, getConfiguration, getDirectory, getEffigy, getTableau, isModified, pack, printPDF, setModified, setTableau
 
Methods inherited from class ptolemy.gui.Top
_getCurrentDirectory, _open, _openURL, _printCrossPlatform, _printNative, _printPDF, _queryForSave, centerOnScreen, close, deferIfNecessary, getCentering, hideMenuBar, isMenuPopulated, report, report, report, setBackground, setCentering, setDirectory, show
 
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, 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, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, setAlwaysOnTop, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setLocationByPlatform, setLocationRelativeTo, 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, 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, setBounds, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setMinimumSize, setName, setPreferredSize, setSize, setSize, setVisible, 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

_transformMenu

protected javax.swing.JMenu _transformMenu

_HIGHLIGHT_COLOR

private static final java.awt.Color _HIGHLIGHT_COLOR

_HIGHLIGHT_PADDING

private static final float _HIGHLIGHT_PADDING
See Also:
Constant Field Values

_HIGHLIGHT_THICKNESS

private static final float _HIGHLIGHT_THICKNESS
See Also:
Constant Field Values

_PROMPT_TO_CONTINUE_COUNT

private static final int _PROMPT_TO_CONTINUE_COUNT
See Also:
Constant Field Values

_currentPosition

private int _currentPosition

_fileSelectionStatus

private MatchResultViewer.FileSelectionStatus _fileSelectionStatus

_isBatchMode

private boolean _isBatchMode

_isNextFileEnabled

private boolean _isNextFileEnabled

_isPreviousFileEnabled

private boolean _isPreviousFileEnabled

_nextButton

private javax.swing.JButton _nextButton

_nextFileButton

private javax.swing.JButton _nextFileButton

_nextFileItem

private javax.swing.JMenuItem _nextFileItem

_nextItem

private javax.swing.JMenuItem _nextItem

_previousButton

private javax.swing.JButton _previousButton

_previousFileButton

private javax.swing.JButton _previousFileButton

_previousFileItem

private javax.swing.JMenuItem _previousFileItem

_previousItem

private javax.swing.JMenuItem _previousItem

_results

private java.util.List<MatchResult> _results

_rule

private TransformationRule _rule

_sourceFileName

private java.lang.String _sourceFileName

_subviewers

private java.util.Set<MatchResultViewer> _subviewers

_topFrame

private MatchResultViewer _topFrame
The top frame that shows the toplevel model, or null if the top frame is this frame itself.


_transformButton

private javax.swing.JButton _transformButton

_transformItem

private javax.swing.JMenuItem _transformItem

_transformUntilFixpointButton

private javax.swing.JButton _transformUntilFixpointButton

_transformUntilFixpointItem

private javax.swing.JMenuItem _transformUntilFixpointItem
Constructor Detail

MatchResultViewer

public MatchResultViewer(CompositeEntity entity,
                         Tableau tableau)
Construct a frame associated with the specified Ptolemy II model. After constructing this, it is necessary to call setVisible(true) to make the frame appear. This is typically done by calling show() on the controlling tableau. This constructor results in a graph frame that obtains its library either from the model (if it has one) or the default library defined in the configuration.

Parameters:
entity - The model to put in this frame.
tableau - The tableau responsible for this frame.
See Also:
Tableau.show()

MatchResultViewer

public MatchResultViewer(CompositeEntity entity,
                         Tableau tableau,
                         LibraryAttribute defaultLibrary)
Construct a frame associated with the specified Ptolemy II model. After constructing this, it is necessary to call setVisible(true) to make the frame appear. This is typically done by calling show() on the controlling tableau. This constructor results in a graph frame that obtains its library either from the model (if it has one), or the defaultLibrary argument (if it is non-null), or the default library defined in the configuration.

Parameters:
entity - The model to put in this frame.
tableau - The tableau responsible for this frame.
defaultLibrary - An attribute specifying the default library to use if the model does not have a library.
See Also:
Tableau.show()
Method Detail

clearFileSelectionStatus

public void clearFileSelectionStatus()

getFileSelectionStatus

public MatchResultViewer.FileSelectionStatus getFileSelectionStatus()

setBatchMode

public void setBatchMode(boolean batchMode)

setMatchResult

public void setMatchResult(TransformationRule rule,
                           java.lang.String sourceFileName,
                           java.util.List<MatchResult> results)

setMatchResult

public void setMatchResult(TransformationRule rule,
                           java.lang.String sourceFileName,
                           java.util.List<MatchResult> results,
                           int position)

setNextFileEnabled

public void setNextFileEnabled(boolean nextFileEnabled)

setPreviousFileEnabled

public void setPreviousFileEnabled(boolean previousFileEnabled)

_addMenus

protected void _addMenus()
Create the menus that are used by this frame. It is essential that _createGraphPane() be called before this.

Overrides:
_addMenus in class ExtendedGraphFrame

_createActorGraphController

protected RunnableGraphController _createActorGraphController()
Overrides:
_createActorGraphController in class GTFrame

_createFSMGraphController

protected RunnableGraphController _createFSMGraphController()
Overrides:
_createFSMGraphController in class GTFrame

_setTableauFactory

protected static void _setTableauFactory(java.lang.Object originator,
                                         CompositeEntity entity)

_unsetTableauFactory

protected static void _unsetTableauFactory(java.lang.Object originator,
                                           CompositeEntity entity)

_windowClosed

protected void _windowClosed()

_beginTransform

private void _beginTransform()

_checkContainingViewer

private void _checkContainingViewer()

_closeSubviewers

private void _closeSubviewers()

_delegateUndoStack

private void _delegateUndoStack(NamedObj from,
                                NamedObj to)
                         throws java.lang.CloneNotSupportedException,
                                IllegalActionException,
                                NameDuplicationException
Throws:
java.lang.CloneNotSupportedException
IllegalActionException
NameDuplicationException

_enableOrDisableActions

private void _enableOrDisableActions()

_finishTransform

private void _finishTransform(CompositeEntity oldModel)

_getHighlightColor

private java.awt.Color _getHighlightColor(NamedObj object)

_next

private void _next()

_nextFile

private void _nextFile()

_previous

private void _previous()

_previousFile

private void _previousFile()

_refreshStatusBars

private void _refreshStatusBars()

_renderLink

private void _renderLink(Connector connector,
                         java.lang.Object semanticObject)

_renderNamedObj

private void _renderNamedObj(CompositeFigure figure,
                             java.lang.Object semanticObject)

_renderState

private void _renderState(CompositeFigure figure,
                          java.lang.Object semanticObject)

_rerender

private void _rerender()

_showInDefaultEditor

private void _showInDefaultEditor()

_transform

private void _transform()

_transformUntilFixpoint

private void _transformUntilFixpoint()