Package ptolemy.vergil.icon
Class ResizableAttributeControllerFactory
- java.lang.Object
-
- ptolemy.kernel.util.NamedObj
-
- ptolemy.kernel.util.Attribute
-
- ptolemy.kernel.util.SingletonAttribute
-
- ptolemy.vergil.basic.NodeControllerFactory
-
- ptolemy.vergil.icon.ResizableAttributeControllerFactory
-
- All Implemented Interfaces:
java.lang.Cloneable
,Changeable
,Debuggable
,DebugListener
,Derivable
,ModelErrorHandler
,MoMLExportable
,Moveable
,Nameable
,Singleton
public class ResizableAttributeControllerFactory extends NodeControllerFactory
This is attribute that produces a custom node controller for icons that can be interactively resized. It provides a context menu suitable for an attribute as well as an interactor that provides for resizing. To use this class, just insert it as an attribute inside a Ptolemy II attribute, 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 4.0
- Version:
- $Id$
- Author:
- Edward A. Lee and Steve Neuendorffer
- Pt.AcceptedRating:
- Red (johnr)
- Pt.ProposedRating:
- Red (eal)
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description class
ResizableAttributeControllerFactory.ResizeAttributeController
Custom controller that uses a bounds manipulator to allow the user to resize the image.-
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 ResizableAttributeControllerFactory(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
-
ResizableAttributeControllerFactory
public ResizableAttributeControllerFactory(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.- Overrides:
create
in classNodeControllerFactory
- Parameters:
controller
- The associated graph controller.- Returns:
- A new node controller.
-
-