Package ptolemy.vergil.actor.lib
Class MonitorReceiverAttribute
- java.lang.Object
-
- ptolemy.kernel.util.NamedObj
-
- ptolemy.kernel.util.Attribute
-
- ptolemy.kernel.util.SingletonAttribute
-
- ptolemy.vergil.actor.lib.MonitorReceiverAttribute
-
- All Implemented Interfaces:
java.lang.Cloneable
,Changeable
,Debuggable
,DebugListener
,Derivable
,ModelErrorHandler
,MoMLExportable
,Moveable
,Nameable
,Settable
,Singleton
public class MonitorReceiverAttribute extends SingletonAttribute implements Settable
This parameter, when inserted into a port, causes the port to display data available for the actor to read. It assumes that the port is an input port. Otherwise, it returns an empty string. It is a singleton, and it's name is always _showInfo, regardless of what name argument is specified to the constructor. Note that the display is not automatically updated. Use an instance of RepaintController in your model to cause the display to be updated, or use MonitorReceiverContents.- Since:
- Ptolemy II 8.0
- Version:
- $Id$
- Author:
- Edward A. Lee
- See Also:
MonitorReceiverContents
- Pt.AcceptedRating:
- Red (cxh)
- Pt.ProposedRating:
- Yellow (eal)
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class ptolemy.kernel.util.NamedObj
NamedObj.ContainedObjectsIterator
-
Nested classes/interfaces inherited from interface ptolemy.kernel.util.Settable
Settable.Visibility
-
-
Field Summary
-
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
-
Fields inherited from interface ptolemy.kernel.util.Settable
EXPERT, FULL, NONE, NOT_EDITABLE
-
-
Constructor Summary
Constructors Constructor Description MonitorReceiverAttribute(NamedObj container, java.lang.String name)
Construct an actor with the specified container and name.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addValueListener(ValueListener listener)
Add a listener to be notified when the value of this settable object changes.java.lang.String
getDefaultExpression()
Return the default value of this attribute, if there is one, or null if there is none.java.lang.String
getDisplayName()
Return a name to present to the user.java.lang.String
getExpression()
Get the expression currently used by this variable.java.lang.String
getValueAsString()
Get the value of the attribute, which is the evaluated expression.Settable.Visibility
getVisibility()
Get the visibility of this Settable, as set by setVisibility().void
removeValueListener(ValueListener listener)
Remove a listener from the list of listeners that are notified when the value of this variable changes.void
setExpression(java.lang.String expression)
Set the value of the attribute by giving some expression.void
setVisibility(Settable.Visibility visibility)
Set the visibility of this Settable.java.util.Collection
validate()
Check the validity of the expression set in setExpression().-
Methods inherited from class ptolemy.kernel.util.SingletonAttribute
setContainer
-
Methods inherited from class ptolemy.kernel.util.Attribute
_checkContainer, _getContainedObject, _propagateExistence, clone, getContainer, moveDown, moveToFirst, moveToIndex, moveToLast, moveUp, setName, updateContent
-
Methods inherited from class ptolemy.kernel.util.NamedObj
_addAttribute, _adjustOverride, _attachText, _cloneFixAttributeFields, _containedDecorators, _copyChangeRequestList, _debug, _debug, _debug, _debug, _debug, _description, _executeChangeRequests, _exportMoMLContents, _getIndentPrefix, _isMoMLSuppressed, _markContentsDerived, _notifyHierarchyListenersAfterChange, _notifyHierarchyListenersBeforeChange, _propagateValue, _removeAttribute, _splitName, _stripNumericSuffix, _validateSettables, addChangeListener, addDebugListener, addHierarchyListener, attributeChanged, attributeDeleted, attributeList, attributeList, attributeTypeChanged, clone, containedObjectsIterator, decorators, deepContains, depthInHierarchy, description, description, event, executeChangeRequests, exportMoML, exportMoML, exportMoML, exportMoML, exportMoML, exportMoMLPlain, getAttribute, getAttribute, getAttributes, getChangeListeners, getClassName, getDecoratorAttribute, getDecoratorAttributes, getDerivedLevel, getDerivedList, getElementName, getFullName, getModelErrorHandler, getName, getName, getPrototypeList, getSource, handleModelError, isDeferringChangeRequests, isOverridden, isPersistent, lazyContainedObjectsIterator, message, notifyOfNameChange, propagateExistence, propagateValue, propagateValues, removeAttribute, removeChangeListener, removeDebugListener, removeHierarchyListener, requestChange, setClassName, setDeferringChangeRequests, setDerivedLevel, setDisplayName, setModelErrorHandler, setPersistent, setSource, sortContainedObjects, toplevel, toString, uniqueName, 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.Nameable
description, getContainer, getFullName, getName, getName, setName
-
-
-
-
Constructor Detail
-
MonitorReceiverAttribute
public MonitorReceiverAttribute(NamedObj container, java.lang.String name) throws IllegalActionException, NameDuplicationException
Construct an actor with the specified container and name.- Parameters:
container
- The container.name
- The name of this actor.- Throws:
IllegalActionException
- If the entity cannot be contained by the proposed container.NameDuplicationException
- If the container already has an actor with this name.
-
-
Method Detail
-
addValueListener
public void addValueListener(ValueListener listener)
Add a listener to be notified when the value of this settable object changes. An implementation of this method should ignore the call if the specified listener is already on the list of listeners. In other words, it should not be possible for the same listener to be notified twice of a value update.- Specified by:
addValueListener
in interfaceSettable
- Parameters:
listener
- The listener to add.- See Also:
removeValueListener(ValueListener)
-
getDefaultExpression
public java.lang.String getDefaultExpression()
Return the default value of this attribute, if there is one, or null if there is none.- Specified by:
getDefaultExpression
in interfaceSettable
- Returns:
- The default value of this attribute, or null if there is none.
-
getDisplayName
public java.lang.String getDisplayName()
Return a name to present to the user.- Specified by:
getDisplayName
in interfaceNameable
- Specified by:
getDisplayName
in interfaceSettable
- Overrides:
getDisplayName
in classNamedObj
- Returns:
- A name to present to the user.
- See Also:
NamedObj.setDisplayName(String)
-
getExpression
public java.lang.String getExpression()
Get the expression currently used by this variable. The expression is either the value set by setExpression(), or a string representation of the value set by setToken(), or an empty string if no value has been set.- Specified by:
getExpression
in interfaceSettable
- Returns:
- The expression used by this variable.
- See Also:
setExpression(String)
-
getValueAsString
public java.lang.String getValueAsString()
Get the value of the attribute, which is the evaluated expression.- Specified by:
getValueAsString
in interfaceSettable
- Returns:
- The value.
- See Also:
getExpression()
-
getVisibility
public Settable.Visibility getVisibility()
Get the visibility of this Settable, as set by setVisibility(). If setVisibility() has not been called, then implementations of this interface should return some default, not null, indicating user-level visibility. The returned value is one of the static instances of the Visibility inner class.- Specified by:
getVisibility
in interfaceSettable
- Returns:
- The visibility of this Settable.
- See Also:
setVisibility(Settable.Visibility)
-
removeValueListener
public void removeValueListener(ValueListener listener)
Remove a listener from the list of listeners that are notified when the value of this variable changes. If no such listener exists, do nothing.- Specified by:
removeValueListener
in interfaceSettable
- Parameters:
listener
- The listener to remove.- See Also:
addValueListener(ValueListener)
-
setExpression
public void setExpression(java.lang.String expression) throws IllegalActionException
Set the value of the attribute by giving some expression. In some implementations, the listeners and the container will be notified immediately. However, some implementations may defer notification until validate() is called.- Specified by:
setExpression
in interfaceSettable
- Parameters:
expression
- The value of the attribute.- Throws:
IllegalActionException
- If the expression is invalid.- See Also:
getExpression()
-
setVisibility
public void setVisibility(Settable.Visibility visibility)
Set the visibility of this Settable. The argument should be one of the static public instances of the inner class Visibility. This is enforced by making it impossible to construct instances of this inner class outside this interface definition. If this method is not called, then implementations of this interface should return some default, not null.- Specified by:
setVisibility
in interfaceSettable
- Parameters:
visibility
- The visibility of this Settable.- See Also:
getVisibility()
-
validate
public java.util.Collection validate() throws IllegalActionException
Check the validity of the expression set in setExpression(). Implementations of this method should notify the container by calling attributeChanged(), unless the container has already been notified in setExpression(). They should also notify any registered value listeners if they have not already been notified. If any other instances of Settable are validated as a side effect, then an implementation should return a Collection containing those instances. This can be used by the caller to avoid validating those again. The list may contain this instance of Settable.- Specified by:
validate
in interfaceSettable
- Returns:
- A collection of settables that are also validated as a side effect, or null if there are none.
- Throws:
IllegalActionException
- If the expression is not valid, or its value is not acceptable to the container or the listeners.
-
-