ptolemy.actor.gui
Class WindowPropertiesAttribute
java.lang.Object
ptolemy.kernel.util.NamedObj
ptolemy.kernel.util.Attribute
ptolemy.kernel.util.AbstractSettableAttribute
ptolemy.data.expr.Variable
ptolemy.data.expr.Parameter
ptolemy.actor.gui.WindowPropertiesAttribute
- All Implemented Interfaces:
- java.awt.event.ComponentListener, java.io.Serializable, java.lang.Cloneable, java.util.EventListener, HasTypeConstraints, Typeable, Changeable, Debuggable, DebugListener, Derivable, ModelErrorHandler, MoMLExportable, Moveable, Nameable, Settable, ValueListener
public class WindowPropertiesAttribute
- extends Parameter
- implements java.awt.event.ComponentListener
This attribute stores properties of a window, including the width,
height, and location. The token in this attribute is a RecordToken
containing a field "bounds" with a 4-element integer array.
When we fully commit to Java 1.4, there will also be a field
to indicate whether the window is maximized.
By default, this attribute has visibility NONE, so the user will not
see it in parameter editing dialogs.
- Since:
- Ptolemy II 2.1
- Version:
- $Id: WindowPropertiesAttribute.java 57040 2010-01-27 20:52:32Z cxh $
- Author:
- Edward A. Lee, Contributors: Jason E. Smith, Christopher Brooks
- See Also:
- Serialized Form
- Accepted Rating:
- Proposed Rating:
Field Summary |
private java.awt.Frame |
_listeningTo
The frame we are listening to. |
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 |
WindowPropertiesAttribute(NamedObj container,
java.lang.String name)
Construct an attribute with the given name contained by the specified
entity. |
Method Summary |
void |
componentHidden(java.awt.event.ComponentEvent event)
Do nothing. |
void |
componentMoved(java.awt.event.ComponentEvent event)
Record the new position. |
void |
componentResized(java.awt.event.ComponentEvent event)
Record the new size. |
void |
componentShown(java.awt.event.ComponentEvent event)
Do nothing. |
void |
recordProperties(java.awt.Frame frame)
Set the value of the attribute to match those of the specified
frame. |
boolean |
setProperties(java.awt.Frame frame)
Set the properties of the specified frame to match the
current value of the attribute. |
Methods inherited from class ptolemy.data.expr.Variable |
_description, _evaluate, _notifyValueListeners, _parseIfNecessary, _propagate, _propagateToValueListeners, _propagateValue, _setToken, _setTokenAndNotify, addValueListener, clone, getDeclaredType, getExpression, getFreeIdentifiers, getParserScope, getScope, getScope, getToken, getType, getTypeTerm, getValueAsString, getVariable, getVisibility, invalidate, isKnown, isLazy, isStringMode, isTypeAcceptable, removeValueListener, reset, setContainer, setExpression, setLazy, setName, setParseTreeEvaluator, setStringMode, setToken, setToken, setTypeAtLeast, setTypeAtLeast, setTypeAtMost, setTypeEquals, setTypeSameAs, setUnknown, setVisibility, stringRepresentation, toString, typeConstraintList, typeConstraints, validate, valueChanged |
Methods inherited from class ptolemy.kernel.util.NamedObj |
_addAttribute, _adjustOverride, _attachText, _cloneFixAttributeFields, _debug, _debug, _debug, _debug, _debug, _exportMoMLContents, _getIndentPrefix, _isMoMLSuppressed, _markContentsDerived, _recordDecoratedAttributes, _removeAttribute, _splitName, _stripNumericSuffix, _validateSettables, addChangeListener, addDebugListener, attributeChanged, attributeList, attributeList, attributeTypeChanged, clone, containedObjectsIterator, deepContains, depthInHierarchy, description, description, event, executeChangeRequests, 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, uniqueName, validateSettables, workspace |
Methods inherited from class java.lang.Object |
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
_listeningTo
private java.awt.Frame _listeningTo
- The frame we are listening to.
WindowPropertiesAttribute
public WindowPropertiesAttribute(NamedObj container,
java.lang.String name)
throws IllegalActionException,
NameDuplicationException
- Construct an attribute with the given name contained by the specified
entity. The container argument must not be null, or a
NullPointerException will be thrown. This attribute will use the
workspace of the container for synchronization and version counts.
If the name argument is null, then the name is set to the empty string.
Increment the version of the workspace.
- Parameters:
container
- The container.name
- The name of this attribute.
- Throws:
IllegalActionException
- If the attribute is not of an
acceptable class for the container, or if the name contains a period.
NameDuplicationException
- If the name coincides with
an attribute already in the container.
componentHidden
public void componentHidden(java.awt.event.ComponentEvent event)
- Do nothing. This method is
invoked when the component has been made invisible.
- Specified by:
componentHidden
in interface java.awt.event.ComponentListener
- Parameters:
event
- The component event.
componentMoved
public void componentMoved(java.awt.event.ComponentEvent event)
- Record the new position. This method is
invoked when the component's position changes.
- Specified by:
componentMoved
in interface java.awt.event.ComponentListener
- Parameters:
event
- The component event.
componentResized
public void componentResized(java.awt.event.ComponentEvent event)
- Record the new size. This method is
invoked when the component's size changes.
- Specified by:
componentResized
in interface java.awt.event.ComponentListener
- Parameters:
event
- The component event.
componentShown
public void componentShown(java.awt.event.ComponentEvent event)
- Do nothing. This method is
invoked when the component has been made visible.
- Specified by:
componentShown
in interface java.awt.event.ComponentListener
- Parameters:
event
- The component event.
recordProperties
public void recordProperties(java.awt.Frame frame)
- Set the value of the attribute to match those of the specified
frame.
- Parameters:
frame
- The frame whose properties are to be recorded.
setProperties
public boolean setProperties(java.awt.Frame frame)
- Set the properties of the specified frame to match the
current value of the attribute. If the value of the attribute
has not been set, then do nothing and return true. If the
value of this attribute is malformed in any way, then just
return false.
If the x or y position is less than 0 pixels or greater
than (width - 10 pixels) or (height - 10) pixels of the
screen, then offset the position by 30 pixels so the user can
drag the window.
- Parameters:
frame
- The frame whose properties are to be set.
- Returns:
- True if successful.