ptolemy.vergil.toolbox
Class TextEditorTableauFactory

java.lang.Object
  extended by ptolemy.kernel.util.NamedObj
      extended by ptolemy.kernel.util.Attribute
          extended by ptolemy.actor.gui.TableauFactory
              extended by ptolemy.vergil.toolbox.TextEditorTableauFactory
All Implemented Interfaces:
java.io.Serializable, java.lang.Cloneable, Changeable, Configurable, Debuggable, DebugListener, Derivable, ModelErrorHandler, MoMLExportable, Moveable, Nameable, TextEditorFactory

public class TextEditorTableauFactory
extends TableauFactory
implements TextEditorFactory

This class is an attribute that creates a text editor to edit a specified string attribute in the container of this attribute. It is similar to TextEditorConfigureFactory, but instead of opening when the actor is configured, it is opened when the user looks inside the actor.

Since:
Ptolemy II 4.0
Version:
$Id: TextEditorTableauFactory.java 57040 2010-01-27 20:52:32Z cxh $
Author:
Edward A. Lee
See Also:
TextEditorConfigureFactory, Serialized Form
Accepted Rating:
Red (ptolemy)
Proposed Rating:
Yellow (eal)

Nested Class Summary
 
Nested classes/interfaces inherited from class ptolemy.kernel.util.NamedObj
NamedObj.ContainedObjectsIterator
 
Field Summary
private  TextEditorForStringAttributes _editor
           
 StringAttribute attributeName
          The name of the string attribute that is to be edited.
 Parameter columnsDisplayed
          The horizontal size of the display, in columns.
 Parameter rowsDisplayed
          The vertical size of the display, in rows.
 
Fields inherited from class ptolemy.kernel.util.NamedObj
_changeListeners, _changeLock, _changeRequests, _debugging, _debugListeners, _elementName, _isPersistent, _verbose, _workspace, ATTRIBUTES, CLASSNAME, COMPLETE, CONTENTS, DEEP, FULLNAME, LINKS
 
Constructor Summary
TextEditorTableauFactory(NamedObj container, java.lang.String name)
          Create a factory with the given name and container.
 
Method Summary
 void clear()
          Remove any editor that may have been associated with this object by a previous call to createEditor().
 Tableau createTableau(Effigy effigy)
          Create a tableau for the specified effigy.
 java.lang.String getText()
          Return the current text of the text editor.
 
Methods inherited from class ptolemy.actor.gui.TableauFactory
_configureTableau, configure, getConfigureSource, getConfigureText
 
Methods inherited from class ptolemy.kernel.util.Attribute
_checkContainer, _getContainedObject, _propagateExistence, clone, getContainer, moveDown, moveToFirst, moveToIndex, moveToLast, moveUp, setContainer, setName, updateContent
 
Methods inherited from class ptolemy.kernel.util.NamedObj
_addAttribute, _adjustOverride, _attachText, _cloneFixAttributeFields, _debug, _debug, _debug, _debug, _debug, _description, _exportMoMLContents, _getIndentPrefix, _isMoMLSuppressed, _markContentsDerived, _propagateValue, _recordDecoratedAttributes, _removeAttribute, _splitName, _stripNumericSuffix, _validateSettables, addChangeListener, addDebugListener, attributeChanged, attributeList, attributeList, attributeTypeChanged, clone, containedObjectsIterator, deepContains, depthInHierarchy, description, description, event, executeChangeRequests, exportMoML, exportMoML, exportMoML, exportMoML, exportMoML, exportMoMLPlain, getAttribute, getAttribute, getAttributes, getChangeListeners, getClassName, getDecoratorAttribute, getDecoratorAttributes, getDerivedLevel, getDerivedList, getDisplayName, getElementName, getFullName, getModelErrorHandler, getName, getName, getPrototypeList, getSource, handleModelError, isDeferringChangeRequests, isOverridden, isPersistent, lazyContainedObjectsIterator, message, propagateExistence, propagateValue, propagateValues, removeChangeListener, removeDebugListener, 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
 

Field Detail

attributeName

public StringAttribute attributeName
The name of the string attribute that is to be edited.


columnsDisplayed

public Parameter columnsDisplayed
The horizontal size of the display, in columns. This contains an integer, and defaults to 40.


rowsDisplayed

public Parameter rowsDisplayed
The vertical size of the display, in rows. This contains an integer, and defaults to 10.


_editor

private TextEditorForStringAttributes _editor
Constructor Detail

TextEditorTableauFactory

public TextEditorTableauFactory(NamedObj container,
                                java.lang.String name)
                         throws IllegalActionException,
                                NameDuplicationException
Create a factory with the given name and container.

Parameters:
container - The container.
name - The name.
Throws:
IllegalActionException - If the container is incompatible with this attribute.
NameDuplicationException - If the name coincides with an attribute already in the container.
Method Detail

clear

public void clear()
Remove any editor that may have been associated with this object by a previous call to createEditor().

Specified by:
clear in interface TextEditorFactory

createTableau

public Tableau createTableau(Effigy effigy)
                      throws java.lang.Exception
Create a tableau for the specified effigy. The tableau will be created with a new unique name with the specified effigy as its container. If this factory cannot create a tableau for the given effigy (it is not an instance of PtolemyEffigy), then return null.

Overrides:
createTableau in class TableauFactory
Parameters:
effigy - The component effigy.
Returns:
A tableau for the effigy, or null if one cannot be created.
Throws:
java.lang.Exception - If the factory should be able to create a Tableau for the effigy, but something goes wrong.

getText

public java.lang.String getText()
Return the current text of the text editor.

Specified by:
getText in interface TextEditorFactory
Returns:
The current text of the text editor, or null if there is none.