Package ptolemy.vergil.basic
Class NodeControllerFactory
- java.lang.Object
-
- ptolemy.kernel.util.NamedObj
-
- ptolemy.kernel.util.Attribute
-
- ptolemy.kernel.util.SingletonAttribute
-
- ptolemy.vergil.basic.NodeControllerFactory
-
- All Implemented Interfaces:
java.lang.Cloneable
,Changeable
,Debuggable
,DebugListener
,Derivable
,ModelErrorHandler
,MoMLExportable
,Moveable
,Nameable
,Singleton
- Direct Known Subclasses:
ChicControllerFactory
,DependencyHighlighter
,HierarchicalModeControllerFactory
,HierarchicalStateControllerFactory
,MoMLModelAttributeControllerFactory
,OntologyDisplayActions
,ResizableAttributeControllerFactory
,StateMatcherController.Factory
,TransformationAttributeController.Factory
,TransformEventController.Factory
public class NodeControllerFactory extends SingletonAttribute
This is an attribute that produces a custom node controller. This base class produces a node controller that offers only a configure command in the context menu, and invokes a dialog to edit parameters in response to that command. It does this by returning an instance of IconController in its create() method. Derived classes can override this base class to put whatever they want in the context menu, invoking whatever dialogs are appropriate. To use this class, just insert it as an attribute inside any Ptolemy II object, and then right clicking on the icon for that object will result in the use of the controller specified here. The instance by convention will be named "_controllerFactory", but the only reason to enforce this is that only the first such controller factory found as an attribute will be used. It is a singleton, so placing it any container will replace any previous controller factory with the same name.- Since:
- Ptolemy II 2.0
- Version:
- $Id$
- Author:
- Edward A. Lee
- Pt.AcceptedRating:
- Red (johnr)
- Pt.ProposedRating:
- Red (eal)
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class ptolemy.kernel.util.NamedObj
NamedObj.ContainedObjectsIterator
-
-
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
-
-
Constructor Summary
Constructors Constructor Description NodeControllerFactory(NamedObj container, java.lang.String name)
Construct a new attribute with the given container and name.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description NamedObjController
create(GraphController controller)
Return a new node controller.-
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, getDisplayName, 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
-
-
-
-
Constructor Detail
-
NodeControllerFactory
public NodeControllerFactory(NamedObj container, java.lang.String name) throws NameDuplicationException, IllegalActionException
Construct a new attribute with the given container and name.- Parameters:
container
- The container.name
- The name.- Throws:
IllegalActionException
- If the attribute cannot be contained by the proposed container.NameDuplicationException
- If the container already has an attribute with this name.
-
-
Method Detail
-
create
public NamedObjController create(GraphController controller)
Return a new node controller. This base class returns an instance of IconController. Derived classes can return some other class to customize the context menu.- Parameters:
controller
- The associated graph controller.- Returns:
- A new node controller.
-
-