Package ptolemy.actor.gui
Class TokenTableau
- java.lang.Object
-
- All Implemented Interfaces:
java.lang.Cloneable
,Changeable
,Debuggable
,DebugListener
,Derivable
,Instantiable
,ModelErrorHandler
,MoMLExportable
,Moveable
,Nameable
- Direct Known Subclasses:
ImageTableau
,MatrixTokenTableau
public class TokenTableau extends Tableau
A tableau representing one or more tokens in a top-level window with a text editor. Subclasses can be created to represent specific token types in more specialized ways.- Since:
- Ptolemy II 2.1
- Version:
- $Id$
- Author:
- Edward A. Lee
- See Also:
TokenEffigy
- Pt.AcceptedRating:
- Red (cxh)
- Pt.ProposedRating:
- Yellow (eal)
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
TokenTableau.Factory
A factory that creates a token tableau.-
Nested classes/interfaces inherited from class ptolemy.kernel.CompositeEntity
CompositeEntity.ContainedObjectsIterator
-
-
Field Summary
-
Fields inherited from class ptolemy.actor.gui.Tableau
_debugClosing, size
-
Fields inherited from class ptolemy.kernel.CompositeEntity
_levelCrossingLinks
-
Fields inherited from class ptolemy.kernel.util.NamedObj
_changeListeners, _changeLock, _changeRequests, _debugging, _debugListeners, _deferChangeRequests, _elementName, _isPersistent, _verbose, _workspace, ATTRIBUTES, CLASSNAME, COMPLETE, CONTENTS, DEEP, FULLNAME, LINKS
-
-
Constructor Summary
Constructors Constructor Description TokenTableau(Effigy container, java.lang.String name)
Construct a new tableau for the model represented by the given effigy.TokenTableau(Effigy container, java.lang.String name, TableauFrame frame)
Construct a new tableau for the model represented by the given effigy, using the specified frame.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
append(java.util.List list)
Append the specified tokens to the display.void
append(Token token)
Append the specified token to the display.static boolean
canDisplay(Token token)
Return true if this tableau can display the specified token.void
clear()
Clear the display.void
createFrame(TableauFrame frame)
Create a text editor frame to view the data.-
Methods inherited from class ptolemy.actor.gui.Tableau
attributeChanged, clone, close, getFrame, getTitle, isEditable, isMaster, setContainer, setEditable, setFrame, setMaster, setTitle, show
-
Methods inherited from class ptolemy.kernel.CompositeEntity
_addEntity, _addRelation, _adjustDeferrals, _containedDecorators, _deepOpaqueEntityList, _description, _exportMoMLContents, _finishedAddEntity, _removeEntity, _removeRelation, _validateSettables, allAtomicEntityList, allowLevelCrossingConnect, classDefinitionList, connect, connect, containedObjectsIterator, deepCompositeEntityList, deepEntityList, deepGetEntities, deepNamedObjList, deepOpaqueEntityList, deepRelationSet, entityList, entityList, exportLinks, exportMoML, getAttribute, getEntities, getEntity, getPort, getRelation, getRelations, isAtomic, isOpaque, lazyAllAtomicEntityList, lazyAllCompositeEntityList, lazyAllCompositeTransparentAndOpaqueEntityList, lazyClassDefinitionList, lazyDeepEntityList, lazyEntityList, lazyRelationList, newRelation, numberOfEntities, numberOfRelations, numEntities, numRelations, relationList, removeAllEntities, removeAllRelations, setClassDefinition, statistics, uniqueName
-
Methods inherited from class ptolemy.kernel.ComponentEntity
_checkContainer, _getContainedObject, _propagateExistence, getContainer, instantiate, moveDown, moveToFirst, moveToIndex, moveToLast, moveUp, newPort, propagateExistence, setName
-
Methods inherited from class ptolemy.kernel.Entity
_addPort, _removePort, connectedPortList, connectedPorts, connectionsChanged, getPorts, linkedRelationList, linkedRelations, portList, removeAllPorts
-
Methods inherited from class ptolemy.kernel.InstantiableNamedObj
_setParent, getChildren, getElementName, getParent, getPrototypeList, isClassDefinition, isWithinClassDefinition
-
Methods inherited from class ptolemy.kernel.util.NamedObj
_addAttribute, _adjustOverride, _attachText, _cloneFixAttributeFields, _copyChangeRequestList, _debug, _debug, _debug, _debug, _debug, _executeChangeRequests, _getIndentPrefix, _isMoMLSuppressed, _markContentsDerived, _notifyHierarchyListenersAfterChange, _notifyHierarchyListenersBeforeChange, _propagateValue, _removeAttribute, _splitName, _stripNumericSuffix, addChangeListener, addDebugListener, addHierarchyListener, attributeDeleted, attributeList, attributeList, attributeTypeChanged, clone, decorators, deepContains, depthInHierarchy, description, description, event, executeChangeRequests, exportMoML, exportMoML, exportMoML, exportMoML, exportMoMLPlain, getAttribute, getAttributes, getChangeListeners, getClassName, getDecoratorAttribute, getDecoratorAttributes, getDerivedLevel, getDerivedList, getDisplayName, getFullName, getModelErrorHandler, getName, getName, getSource, handleModelError, isDeferringChangeRequests, isOverridden, isPersistent, lazyContainedObjectsIterator, message, notifyOfNameChange, propagateValue, propagateValues, removeAttribute, removeChangeListener, removeDebugListener, removeHierarchyListener, requestChange, setClassName, setDeferringChangeRequests, setDerivedLevel, setDisplayName, setModelErrorHandler, setPersistent, setSource, sortContainedObjects, toplevel, toString, validateSettables, workspace
-
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface ptolemy.kernel.util.Derivable
getDerivedLevel, getDerivedList, propagateValue
-
Methods inherited from interface ptolemy.kernel.util.Nameable
description, getDisplayName, getFullName, getName, getName
-
-
-
-
Constructor Detail
-
TokenTableau
public TokenTableau(Effigy container, java.lang.String name) throws IllegalActionException, NameDuplicationException
Construct a new tableau for the model represented by the given effigy. This constructor creates a default editor frame, which is an instance of TextEditor.- Parameters:
container
- The container.name
- The name.- Throws:
IllegalActionException
- If the container does not accept this entity (this should not occur).NameDuplicationException
- If the name coincides with an attribute already in the container.
-
TokenTableau
public TokenTableau(Effigy container, java.lang.String name, TableauFrame frame) throws IllegalActionException, NameDuplicationException
Construct a new tableau for the model represented by the given effigy, using the specified frame.- Parameters:
container
- The container.name
- The name.frame
- The frame to use.- Throws:
IllegalActionException
- If the container does not accept this entity (this should not occur).NameDuplicationException
- If the name coincides with an attribute already in the container.
-
-
Method Detail
-
append
public void append(Token token) throws IllegalActionException
Append the specified token to the display. If the display is not a TextEditor, do nothing. Subclasses should override this with display-specific actions.- Parameters:
token
- The token to append.- Throws:
IllegalActionException
- If the token is not acceptable (not thrown in this base class).
-
append
public void append(java.util.List list) throws IllegalActionException
Append the specified tokens to the display.- Parameters:
list
- A list of tokens.- Throws:
IllegalActionException
- If the tokens are not acceptable (not thrown in this base class).
-
canDisplay
public static boolean canDisplay(Token token)
Return true if this tableau can display the specified token.- Parameters:
token
- A candidate token to display.- Returns:
- True, since this tableau can display any token.
-
clear
public void clear()
Clear the display.
-
createFrame
public void createFrame(TableauFrame frame) throws IllegalActionException
Create a text editor frame to view the data. This can be overridden in derived classes to create more specialized viewers/editors. If the specified frame is not an instance of TextEditor, then it is replaced with a text editor. This is called in the constructor.- Parameters:
frame
- The frame to use, or null if none is specified.- Throws:
IllegalActionException
- If the frame cannot be created.
-
-