ptolemy.actor.gui.style
Class EditableChoiceStyle

java.lang.Object
  extended by ptolemy.kernel.util.NamedObj
      extended by ptolemy.kernel.util.Attribute
          extended by ptolemy.actor.gui.style.ParameterEditorStyle
              extended by ptolemy.actor.gui.style.ChoiceStyle
                  extended by ptolemy.actor.gui.style.EditableChoiceStyle
All Implemented Interfaces:
java.io.Serializable, java.lang.Cloneable, Changeable, Debuggable, DebugListener, Derivable, ModelErrorHandler, MoMLExportable, Moveable, Nameable

public class EditableChoiceStyle
extends ChoiceStyle

This attribute annotates user settable attributes to specify an editable combobox style for configuring the containing attribute. An editable combobox allows an arbitrary value to be entered in the combobox. For an uneditable combobox, use ChoiceStyle instead. The choices that are presented in the combobox are given by a set of attributes implementing the Settable interface, such as StringAttribute, contained by this style.

This class extends ChoiceStyle only for the purpose of eliminating code duplication.

Since:
Ptolemy II 1.0
Version:
$Id: EditableChoiceStyle.java 38798 2005-07-08 20:00:01Z cxh $
Author:
Steve Neuendorffer
See Also:
ChoiceStyle, EditorPaneFactory, ParameterEditorStyle, StringAttribute, Serialized Form
Accepted Rating:
Yellow (neuendor)
Proposed Rating:
Green (neuendor)

Nested Class Summary
 
Nested classes/interfaces inherited from class ptolemy.kernel.util.NamedObj
NamedObj.ContainedObjectsIterator
 
Field Summary
 
Fields inherited from class ptolemy.actor.gui.style.ChoiceStyle
_isEditable
 
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
EditableChoiceStyle()
          Construct an attribute in the default workspace with an empty string as its name.
EditableChoiceStyle(NamedObj container, java.lang.String name)
          Construct an attribute with the specified container and name.
 
Method Summary
 void addEntry(PtolemyQuery query)
          Create a new editable combo box entry in the given query associated with the attribute containing this style.
 
Methods inherited from class ptolemy.actor.gui.style.ChoiceStyle
acceptable
 
Methods inherited from class ptolemy.actor.gui.style.ParameterEditorStyle
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, _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
 

Constructor Detail

EditableChoiceStyle

public EditableChoiceStyle()
Construct an attribute in the default workspace with an empty string as its name. The object is added to the directory of the workspace. Increment the version number of the workspace.


EditableChoiceStyle

public EditableChoiceStyle(NamedObj container,
                           java.lang.String name)
                    throws IllegalActionException,
                           NameDuplicationException
Construct an attribute with the specified container and name.

Parameters:
container - The container.
name - The name of the attribute.
Throws:
IllegalActionException - If the attribute is not of an acceptable attribute for the container, or if the container is not an instance of Settable.
NameDuplicationException - If the name coincides with an attribute already in the container.
Method Detail

addEntry

public void addEntry(PtolemyQuery query)
              throws IllegalActionException
Create a new editable combo box entry in the given query associated with the attribute containing this style. The name of the entry is the name of the attribute. Attach the attribute to the created entry.

Overrides:
addEntry in class ChoiceStyle
Parameters:
query - The query into which to add the entry.
Throws:
IllegalActionException - If the containing attribute has a value that cannot be edited using this style.