ActionScript 3.0 Language and Components Reference | All Packages | All Classes | Language Elements | Index | Appendixes | Conventions | Frames No Frames |
InteractiveObject

Package | flash.display
Class | public class InteractiveObject
Inheritance | InteractiveObject DisplayObject EventDispatcher Object
Subclasses | DisplayObjectContainer, SimpleButton, TextField

Language Version : | ActionScript 3.0

Player Version : | Flash Player 9

The InteractiveObject class is the abstract base class for all display objects with which the user can interact, using the mouse and keyboard.

You cannot instantiate the InteractiveObject class directly. A call to the `new InteractiveObject()` constructor throws an `ArgumentError` exception.

The InteractiveObject class itself does not include any APIs for rendering content onscreen. For that reason, if you want create a custom subclass of the InteractiveObject class, you will want to extend one of its subclasses that do have APIs for rendering content onscreen, such as the Sprite, SimpleButton, TextField, or MovieClip class.

View the examples

See also

Core display classes

Public Properties
Hide Inherited Public Properties
Show Inherited Public Properties

| Property | Defined By
--- | --- | ---
|  | accessibilityProperties : AccessibilityProperties The current accessibility options for this display object. | DisplayObject
|  | alpha : Number Indicates the alpha transparency value of the object specified. | DisplayObject
|  | blendMode : String A value from the BlendMode class that specifies which blend mode to use. | DisplayObject
|  | cacheAsBitmap : Boolean If set to true, Flash Player caches an internal bitmap representation of the display object. | DisplayObject
|  | constructor : Object A reference to the class object or constructor function for a given object instance. | Object
|  | contextMenu : ContextMenu Specifies the context menu associated with this object. | InteractiveObject
|  | doubleClickEnabled : Boolean Specifies whether the object receives doubleClick events. | InteractiveObject
|  | filters : Array An indexed array that contains each filter object currently associated with the display object. | DisplayObject
|  | focusRect : Object Specifies whether this object displays a focus rectangle. | InteractiveObject
|  | height : Number Indicates the height of the display object, in pixels. | DisplayObject
|  | loaderInfo : LoaderInfo [read-only] Returns a LoaderInfo object containing information about loading the file to which this display object belongs. | DisplayObject
|  | mask : DisplayObject The calling display object is masked by the specified mask object. | DisplayObject
|  | mouseEnabled : Boolean Specifies whether this object receives mouse messages. | InteractiveObject
|  | mouseX : Number [read-only] Indicates the x coordinate of the mouse position, in pixels. | DisplayObject
|  | mouseY : Number [read-only] Indicates the y coordinate of the mouse position, in pixels. | DisplayObject
|  | name : String Indicates the instance name of the DisplayObject. | DisplayObject
|  | opaqueBackground : Object Specifies whether the display object is opaque with a certain background color. | DisplayObject
|  | parent : DisplayObjectContainer [read-only] Indicates the DisplayObjectContainer object that contains this display object. | DisplayObject
|  | prototype : Object [static] A reference to the prototype object of a class or function object. | Object
|  | root : DisplayObject [read-only] For a display object in a loaded SWF file, the root property is the top-most display object in the portion of the display list's tree structure represented by that SWF file. | DisplayObject
|  | rotation : Number Indicates the rotation of the DisplayObject instance, in degrees, from its original orientation. | DisplayObject
|  | scale9Grid : Rectangle The current scaling grid that is in effect. | DisplayObject
|  | scaleX : Number Indicates the horizontal scale (percentage) of the object as applied from the registration point. | DisplayObject
|  | scaleY : Number Indicates the vertical scale (percentage) of an object as applied from the registration point of the object. | DisplayObject
|  | scrollRect : Rectangle The scroll rectangle bounds of the display object. | DisplayObject
|  | stage : Stage [read-only] The Stage of the display object. | DisplayObject
|  | tabEnabled : Boolean Specifies whether this object is in the tab order. | InteractiveObject
|  | tabIndex : int Specifies the tab ordering of objects in a SWF file. | InteractiveObject
|  | transform : Transform An object with properties pertaining to a display object's matrix, color transform, and pixel bounds. | DisplayObject
|  | visible : Boolean Whether or not the display object is visible. | DisplayObject
|  | width : Number Indicates the width of the display object, in pixels. | DisplayObject
|  | x : Number Indicates the x coordinate of the DisplayObject instance relative to the local coordinates of the parent DisplayObjectContainer. | DisplayObject
|  | y : Number Indicates the y coordinate of the DisplayObject instance relative to the local coordinates of the parent DisplayObjectContainer. | DisplayObject

Public Methods
Hide Inherited Public Methods
Show Inherited Public Methods

| Method | Defined By
--- | --- | ---
|  | InteractiveObject() Calling the new InteractiveObject() constructor throws an ArgumentError exception. | InteractiveObject
|  | addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void Registers an event listener object with an EventDispatcher object so that the listener receives notification of an event. | EventDispatcher
|  | dispatchEvent(event:Event):Boolean Dispatches an event into the event flow. | EventDispatcher
|  | getBounds(targetCoordinateSpace:DisplayObject):Rectangle Returns a rectangle that defines the area of the display object relative to the coordinate system of the targetCoordinateSpace object. | DisplayObject
|  | getRect(targetCoordinateSpace:DisplayObject):Rectangle Returns a rectangle that defines the boundary of the display object, based on the coordinate system defined by the targetCoordinateSpace parameter, excluding any strokes on shapes. | DisplayObject
|  | globalToLocal(point:Point):Point Converts the point object from the Stage (global) coordinates to the display object's (local) coordinates. | DisplayObject
|  | hasEventListener(type:String):Boolean Checks whether the EventDispatcher object has any listeners registered for a specific type of event. | EventDispatcher
|  | hasOwnProperty(name:String):Boolean Indicates whether an object has a specified property defined. | Object
|  | hitTestObject(obj:DisplayObject):Boolean Evaluates the display object to see if it overlaps or intersects with the obj display object. | DisplayObject
|  | hitTestPoint(x:Number, y:Number, shapeFlag:Boolean = false):Boolean Evaluates the display object to see if it overlaps or intersects with the point specified by the x and y parameters. | DisplayObject
|  | isPrototypeOf(theClass:Object):Boolean Indicates whether an instance of the Object class is in the prototype chain of the object specified as the parameter. | Object
|  | localToGlobal(point:Point):Point Converts the point object from the display object's (local) coordinates to the Stage (global) coordinates. | DisplayObject
|  | propertyIsEnumerable(name:String):Boolean Indicates whether the specified property exists and is enumerable. | Object
|  | removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void Removes a listener from the EventDispatcher object. | EventDispatcher
|  | setPropertyIsEnumerable(name:String, isEnum:Boolean = true):void Sets the availability of a dynamic property for loop operations. | Object
|  | toString():String Returns the string representation of the specified object. | Object
|  | valueOf():Object Returns the primitive value of the specified object. | Object
|  | willTrigger(type:String):Boolean Checks whether an event listener is registered with this EventDispatcher object or any of its ancestors for the specified event type. | EventDispatcher

Events
Hide Inherited Events
Show Inherited Events

| Event | Summary | Defined By
--- | --- | --- | ---
|  | activate | Dispatched when Flash Player gains operating system focus and becomes active. | EventDispatcher
|  | added | Dispatched when a display object is added to the display list. | DisplayObject
|  | addedToStage | Dispatched when a display object is added to the on stage display list, either directly or through the addition of a sub tree in which the display object is contained. | DisplayObject
|  | clear | Dispatched when the user selects 'Clear' (or 'Delete') from the text context menu. | InteractiveObject
|  | click | Dispatched when a user presses and releases the main button of the user's pointing device over the same InteractiveObject. | InteractiveObject
|  | copy | Dispatched when the user activates the platform specific accelerator key combination for a copy operation or selects 'Copy' from the text context menu. | InteractiveObject
|  | cut | Dispatched when the user activates the platform specific accelerator key combination for a cut operation or selects 'Cut' from the text context menu. | InteractiveObject
|  | deactivate | Dispatched when Flash Player loses operating system focus and is becoming inactive. | EventDispatcher
|  | doubleClick | Dispatched when a user presses and releases the main button of a pointing device twice in rapid succession over the same InteractiveObject when that object's doubleClickEnabled flag is set to true. | InteractiveObject
|  | enterFrame | Dispatched when the playhead is entering a new frame. | DisplayObject
|  | exitFrame | Dispatched when the playhead is exiting the current frame. | DisplayObject
|  | focusIn | Dispatched after a display object gains focus. | InteractiveObject
|  | focusOut | Dispatched after a display object loses focus. | InteractiveObject
|  | frameConstructed | Dispatched after the constructors of frame display objects have run but before frame scripts have run. | DisplayObject
|  | keyDown | Dispatched when the user presses a key. | InteractiveObject
|  | keyFocusChange | Dispatched when the user attempts to change focus by using keyboard navigation. | InteractiveObject
|  | keyUp | Dispatched when the user releases a key. | InteractiveObject
|  | mouseDown | Dispatched when a user presses the pointing device button over an InteractiveObject instance in the Flash Player window. | InteractiveObject
|  | mouseFocusChange | Dispatched when the user attempts to change focus by using a pointer device. | InteractiveObject
|  | mouseMove | Dispatched when a user moves the pointing device while it is over an InteractiveObject. | InteractiveObject
|  | mouseOut | Dispatched when the user moves a pointing device away from an InteractiveObject instance. | InteractiveObject
|  | mouseOver | Dispatched when the user moves a pointing device over an InteractiveObject instance in the Flash Player window. | InteractiveObject
|  | mouseUp | Dispatched when a user releases the pointing device button over an InteractiveObject instance in the Flash Player window. | InteractiveObject
|  | mouseWheel | Dispatched when a mouse wheel is spun over an InteractiveObject instance in the Flash Player window. | InteractiveObject
|  | paste | Dispatched when the user activates the platform specific accelerator key combination for a paste operation or selects 'Paste' from the text context menu. | InteractiveObject
|  | removed | Dispatched when a display object is about to be removed from the display list. | DisplayObject
|  | removedFromStage | Dispatched when a display object is about to be removed from the display list, either directly or through the removal of a sub tree in which the display object is contained. | DisplayObject
|  | render | Dispatched when the display list is about to be updated and rendered. | DisplayObject
|  | rollOut | Dispatched when the user moves a pointing device away from an InteractiveObject instance. | InteractiveObject
|  | rollOver | Dispatched when the user moves a pointing device over an InteractiveObject instance. | InteractiveObject
|  | selectAll | Dispatched when the user activates the platform specific accelerator key combination for a select all operation or selects 'Select All' from the text context menu. | InteractiveObject
|  | tabChildrenChange | Dispatched when the value of the object's tabChildren flag changes. | InteractiveObject
|  | tabEnabledChange | Dispatched when the object's tabEnabled flag changes. | InteractiveObject
|  | tabIndexChange | Dispatched when the value of the object's tabIndex property changes. | InteractiveObject

Property Detail

contextMenu | property

`contextMenu:ContextMenu` [read-write]

Language Version : | ActionScript 3.0

Player Version : | Flash Player 9

Specifies the context menu associated with this object.

Implementation
`public function get contextMenu():ContextMenu`
`public function set contextMenu(value:ContextMenu):void`

doubleClickEnabled | property |

`doubleClickEnabled:Boolean` [read-write]

Language Version : | ActionScript 3.0

Player Version : | Flash Player 9

Specifies whether the object receives `doubleClick` events. The default value is `false`, which means that by default an InteractiveObject instance does not receive `doubleClick` events. If the `doubleClickEnabled` property is set to `true`, the instance receives `doubleClick` events within its bounds. The `mouseEnabled` property of the InteractiveObject instance must also be set to `true` for the object to receive `doubleClick` events.

No event is dispatched by setting this property. You must use the `addEventListener()` method to add an event listener for the `doubleClick` event.

Implementation
`public function get doubleClickEnabled():Boolean`
`public function set doubleClickEnabled(value:Boolean):void`

See also

doubleClick
mouseEnabled
flash.display.DisplayObjectContainer.mouseChildren

focusRect | property |

`focusRect:Object` [read-write]

Language Version : | ActionScript 3.0

Player Version : | Flash Player 9

Specifies whether this object displays a focus rectangle. It can take one of three values: `true`, `false`, or `null`. Values of `true` and `false` work as expected, specifying whether or not the focus rectangle appears. A value of `null` indicates that this object obeys the `stageFocusRect` property of the Stage.

Implementation
`public function get focusRect():Object`
`public function set focusRect(value:Object):void`

mouseEnabled | property |

`mouseEnabled:Boolean` [read-write]

Language Version : | ActionScript 3.0

Player Version : | Flash Player 9

Specifies whether this object receives mouse messages. The default value is `true`, which means that by default any InteractiveObject instance that is on the display list receives mouse events. If `mouseEnabled` is set to `false`, the instance does not receive any mouse events. Any children of this instance on the display list are not affected. To change the `mouseEnabled` behavior for all children of an object on the display list, use `flash.display.DisplayObjectContainer.mouseChildren`.

No event is dispatched by setting this property. You must use the `addEventListener()` method to create interactive functionality.

Implementation
`public function get mouseEnabled():Boolean`
`public function set mouseEnabled(value:Boolean):void`

See also

flash.display.DisplayObjectContainer.mouseChildren

tabEnabled | property |

`tabEnabled:Boolean` [read-write]

Language Version : | ActionScript 3.0

Player Version : | Flash Player 9

Specifies whether this object is in the tab order. If this object is in the tab order, the value is `true`; otherwise, the value is `false`. By default, the value is `false`, except for the following:

- For a SimpleButton object, the value is `true`.
- For a TextField object with `type = "input"`, the value is `true`.
- For a Sprite object or MovieClip object with `buttonMode = true`, the value is `true`.

Implementation
`public function get tabEnabled():Boolean`
`public function set tabEnabled(value:Boolean):void`

tabIndex | property |

`tabIndex:int` [read-write]

Language Version : | ActionScript 3.0

Player Version : | Flash Player 9

Specifies the tab ordering of objects in a SWF file. The `tabIndex` property is -1 by default, meaning no tab index is set for the object.

If any currently displayed object in the SWF file contains a `tabIndex` property, automatic tab ordering is disabled, and the tab ordering is calculated from the `tabIndex` properties of objects in the SWF file. The custom tab ordering includes only objects that have `tabIndex` properties.

The `tabIndex` property can be a non-negative integer. The objects are ordered according to their `tabIndex` properties, in ascending order. An object with a `tabIndex` value of 1 precedes an object with a `tabIndex` value of 2. Do not use the same tabIndex value for multiple objects.

The custom tab ordering that the `tabIndex` property defines is flat. This means that no attention is paid to the hierarchical relationships of objects in the SWF file. All objects in the SWF file with `tabIndex` properties are placed in the tab order, and the tab order is determined by the order of the `tabIndex` values.

Implementation
`public function get tabIndex():int`
`public function set tabIndex(value:int):void`
Constructor Detail

InteractiveObject | () | Constructor

`public function InteractiveObject()`

Language Version : | ActionScript 3.0

Player Version : | Flash Player 9

Calling the `new InteractiveObject()` constructor throws an `ArgumentError` exception. You can, however, call constructors for the following subclasses of InteractiveObject:

- `new SimpleButton()`
- `new TextField()`
- `new Loader()`
- `new Sprite()`
- `new MovieClip()`

Event Detail

clear | Event

Event Object Type: `flash.events.Event`
Event.type property = `flash.events.Event.CLEAR`

Language Version : | ActionScript 3.0

Player Version : | Flash Player 10

Dispatched when the user selects 'Clear' (or 'Delete') from the text context menu. This event is dispatched to the object that currently has focus. If the object that currently has focus is a TextField, the default behavior of this event is to cause any currently selected text in the text field to be deleted.

Defines the value of the `type` property of a `clear` event object.

This event has the following properties:

Property | Value
--- | ---
`bubbles` | `false`
`cancelable` | `false`; there is no default behavior to cancel.
`currentTarget` | The object that is actively processing the Event object with an event listener.
`target` | Any InteractiveObject instance with a listener registered for the `clear` event.

click | Event |

Event Object Type: `flash.events.MouseEvent`
MouseEvent.type property = `flash.events.MouseEvent.CLICK`

Language Version : | ActionScript 3.0

Player Version : | Flash Player 9

Dispatched when a user presses and releases the main button of the user's pointing device over the same InteractiveObject. For a click event to occur, it must always follow this series of events in the order of occurrence: mouseDown event, then mouseUp. The target object must be identical for both of these events; otherwise the `click` event does not occur. Any number of other mouse events can occur at any time between the `mouseDown` or `mouseUp` events; the `click` event still occurs.

Defines the value of the `type` property of a `click` event object.

This event has the following properties:

Property | Value
--- | ---
`bubbles` | `true`
`buttonDown` | `true` if the primary mouse button is pressed; `false` otherwise.
`cancelable` | `false`; there is no default behavior to cancel.
`ctrlKey` | `true` if the Control key is active; `false` if it is inactive.
`currentTarget` | The object that is actively processing the Event object with an event listener.
`localX` | The horizontal coordinate at which the event occurred relative to the containing sprite.
`localY` | The vertical coordinate at which the event occurred relative to the containing sprite.
`shiftKey` | `true` if the Shift key is active; `false` if it is inactive.
`stageX` | The horizontal coordinate at which the event occurred in global stage coordinates.
`stageY` | The vertical coordinate at which the event occurred in global stage coordinates.
`target` | The InteractiveObject instance under the pointing device. The `target` is not always the object in the display list that registered the event listener. Use the `currentTarget` property to access the object in the display list that is currently processing the event.

copy | Event |

Event Object Type: `flash.events.Event`
Event.type property = `flash.events.Event.COPY`

Language Version : | ActionScript 3.0

Player Version : | Flash Player 10

Dispatched when the user activates the platform specific accelerator key combination for a copy operation or selects 'Copy' from the text context menu. This event is dispatched to the object that currently has focus. If the object that currently has focus is a TextField, the default behavior of this event is to cause any currently selected text in the text field to be copied to the clipboard.

Defines the value of the `type` property of a `copy` event object.

This event has the following properties:

Property | Value
--- | ---
`bubbles` | `false`
`cancelable` | `false`; there is no default behavior to cancel.
`currentTarget` | The object that is actively processing the Event object with an event listener.
`target` | Any InteractiveObject instance with a listener registered for the `copy` event.

cut | Event |

Event Object Type: `flash.events.Event`
Event.type property = `flash.events.Event.CUT`

Language Version : | ActionScript 3.0

Player Version : | Flash Player 10

Dispatched when the user activates the platform specific accelerator key combination for a cut operation or selects 'Cut' from the text context menu. This event is dispatched to the object that currently has focus. If the object that currently has focus is a TextField, the default behavior of this event is to cause any currently selected text in the text field to be cut to the clipboard.

Defines the value of the `type` property of a `cut` event object.

This event has the following properties:

Property | Value
--- | ---
`bubbles` | `false`
`cancelable` | `false`; there is no default behavior to cancel.
`currentTarget` | The object that is actively processing the Event object with an event listener.
`target` | Any InteractiveObject instance with a listener registered for the `cut` event.

doubleClick | Event |

Event Object Type: `flash.events.MouseEvent`
MouseEvent.type property = `flash.events.MouseEvent.DOUBLE_CLICK`

Language Version : | ActionScript 3.0

Player Version : | Flash Player 9

Dispatched when a user presses and releases the main button of a pointing device twice in rapid succession over the same InteractiveObject when that object's `doubleClickEnabled` flag is set to `true`. For a `doubleClick` event to occur, it must immediately follow the following series of events: `mouseDown`, `mouseUp`, `click`, `mouseDown`, `mouseUp`. All of these events must share the same target as the `doubleClick` event. The second click, represented by the second `mouseDown` and `mouseUp` events, must occur within a specific period of time after the `click` event. The allowable length of this period varies by operating system and can often be configured by the user. If the target is a selectable text field, the word under the pointer is selected as the default behavior. If the target InteractiveObject does not have its `doubleClickEnabled` flag set to `true` it receives two `click` events.

The `doubleClickEnabled` property defaults to `false`.

The double-click text selection behavior of a TextField object is not related to the `doubleClick` event. Use `TextField.doubleClickEnabled` to control TextField selections.

Defines the value of the `type` property of a `doubleClick` event object. The `doubleClickEnabled` property must be `true` for an object to generate the `doubleClick` event.

This event has the following properties:

Property | Value
--- | ---
`bubbles` | `true`
`buttonDown` | `true` if the primary mouse button is pressed; `false` otherwise.
`cancelable` | `false`; there is no default behavior to cancel.
`ctrlKey` | `true` if the Control key is active; `false` if it is inactive.
`currentTarget` | The object that is actively processing the Event object with an event listener.
`localX` | The horizontal coordinate at which the event occurred relative to the containing sprite.
`localY` | The vertical coordinate at which the event occurred relative to the containing sprite.
`shiftKey` | `true` if the Shift key is active; `false` if it is inactive.
`stageX` | The horizontal coordinate at which the event occurred in global stage coordinates.
`stageY` | The vertical coordinate at which the event occurred in global stage coordinates.
`target` | The InteractiveObject instance under the pointing device. The `target` is not always the object in the display list that registered the event listener. Use the `currentTarget` property to access the object in the display list that is currently processing the event.

See also

doubleClickEnabled

focusIn | Event |

Event Object Type: `flash.events.FocusEvent`
FocusEvent.type property = `flash.events.FocusEvent.FOCUS_IN`

Language Version : | ActionScript 3.0

Player Version : | Flash Player 9

Dispatched after a display object gains focus. This situation happens when a user highlights the object with a pointing device or keyboard navigation. The recipient of such focus is called the target object of this event, while the corresponding InteractiveObject instance that lost focus because of this change is called the related object. A reference to the related object is stored in the receiving object's `relatedObject` property. The `shiftKey` property is not used. This event follows the dispatch of the previous object's `focusOut` event.

Defines the value of the `type` property of a `focusIn` event object.

This event has the following properties:

Property | Value
--- | ---
`bubbles` | `true`
`cancelable` | `false`; there is no default behavior to cancel.
`currentTarget` | The object that is actively processing the Event object with an event listener.
`keyCode` | 0; applies only to `keyFocusChange` events.
`relatedObject` | The complementary InteractiveObject instance that is affected by the change in focus.
`shiftKey` | `false`; applies only to `keyFocusChange` events.
`target` | The InteractiveObject instance that has just received focus. The `target` is not always the object in the display list that registered the event listener. Use the `currentTarget` property to access the object in the display list that is currently processing the event.

focusOut | Event |

Event Object Type: `flash.events.FocusEvent`
FocusEvent.type property = `flash.events.FocusEvent.FOCUS_OUT`

Language Version : | ActionScript 3.0

Player Version : | Flash Player 9

Dispatched after a display object loses focus. This happens when a user highlights a different object with a pointing device or keyboard navigation. The object that loses focus is called the target object of this event, while the corresponding InteractiveObject instance that receives focus is called the related object. A reference to the related object is stored in the target object's `relatedObject` property. The `shiftKey` property is not used. This event precedes the dispatch of the `focusIn` event by the related object.

Defines the value of the `type` property of a `focusOut` event object.

This event has the following properties:

Property | Value
--- | ---
`bubbles` | `true`
`cancelable` | `false`; there is no default behavior to cancel.
`currentTarget` | The object that is actively processing the Event object with an event listener.
`keyCode` | 0; applies only to `keyFocusChange` events.
`relatedObject` | The complementary InteractiveObject instance that is affected by the change in focus.
`shiftKey` | `false`; applies only to `keyFocusChange` events.
`target` | The InteractiveObject instance that has just lost focus. The `target` is not always the object in the display list that registered the event listener. Use the `currentTarget` property to access the object in the display list that is currently processing the event.

keyDown | Event |

Event Object Type: `flash.events.KeyboardEvent`
KeyboardEvent.type property = `flash.events.KeyboardEvent.KEY_DOWN`

Language Version : | ActionScript 3.0

Player Version : | Flash Player 9

Dispatched when the user presses a key. Mappings between keys and specific characters vary by device and operating system. This event type is generated after such a mapping occurs but before the processing of an input method editor (IME). IMEs are used to enter characters, such as Chinese ideographs, that the standard QWERTY keyboard is ill-equipped to produce. This event occurs before the `keyUp` event.

Defines the value of the `type` property of a `keyDown` event object.

This event has the following properties:

Property | Value
--- | ---
`bubbles` | `true`
`cancelable` | `false`; there is no default behavior to cancel.
`charCode` | The character code value of the key pressed or released.
`ctrlKey` | `true` if the Control key is active; `false` if it is inactive.
`currentTarget` | The object that is actively processing the Event object with an event listener.
`keyCode` | The key code value of the key pressed or released.
`keyLocation` | The location of the key on the keyboard.
`shiftKey` | `true` if the Shift key is active; `false` if it is inactive.
`target` | The InteractiveObject instance with focus. The `target` is not always the object in the display list that registered the event listener. Use the `currentTarget` property to access the object in the display list that is currently processing the event.

keyFocusChange | Event |

Event Object Type: `flash.events.FocusEvent`
FocusEvent.type property = `flash.events.FocusEvent.KEY_FOCUS_CHANGE`

Language Version : | ActionScript 3.0

Player Version : | Flash Player 9

Dispatched when the user attempts to change focus by using keyboard navigation. The default behavior of this event is to change the focus and dispatch the corresponding `focusIn` and `focusOut` events.

This event is dispatched to the object that currently has focus. The related object for this event is the InteractiveObject instance that receives focus if you do not prevent the default behavior. You can prevent the change in focus by calling the `preventDefault()` method in an event listener that is properly registered with the target object. Flash Player changes the focus and dispatches `focusIn` and `focusOut` events as the default behavior.

Defines the value of the `type` property of a `keyFocusChange` event object.

This event has the following properties:

Property | Value
--- | ---
`bubbles` | `true`
`cancelable` | `true`; call the `preventDefault()` method to cancel default behavior.
`currentTarget` | The object that is actively processing the Event object with an event listener.
`keyCode` | The key code value of the key pressed to trigger a `keyFocusChange` event.
`relatedObject` | The complementary InteractiveObject instance that is affected by the change in focus.
`shiftKey` | `true` if the Shift key modifier is activated; `false` otherwise.
`target` | The InteractiveObject instance that currently has focus. The `target` is not always the object in the display list that registered the event listener. Use the `currentTarget` property to access the object in the display list that is currently processing the event.

keyUp | Event |

Event Object Type: `flash.events.KeyboardEvent`
KeyboardEvent.type property = `flash.events.KeyboardEvent.KEY_UP`

Language Version : | ActionScript 3.0

Player Version : | Flash Player 9

Dispatched when the user releases a key. Mappings between keys and specific characters vary by device and operating system. This event type is generated after such a mapping occurs but before the processing of an input method editor (IME). IMEs are used to enter characters, such as Chinese ideographs, that the standard QWERTY keyboard is ill-equipped to produce. This event occurs after a `keyDown` event and has the following characteristics:

Defines the value of the `type` property of a `keyUp` event object.

This event has the following properties:

Property | Value
--- | ---
`bubbles` | `true`
`cancelable` | `false`; there is no default behavior to cancel.
`charCode` | Contains the character code value of the key pressed or released.
`ctrlKey` | `true` if the Control key is active; `false` if it is inactive.
`currentTarget` | The object that is actively processing the Event object with an event listener.
`keyCode` | The key code value of the key pressed or released.
`keyLocation` | The location of the key on the keyboard.
`shiftKey` | `true` if the Shift key is active; `false` if it is inactive.
`target` | The InteractiveObject instance with focus. The `target` is not always the object in the display list that registered the event listener. Use the `currentTarget` property to access the object in the display list that is currently processing the event.

mouseDown | Event |

Event Object Type: `flash.events.MouseEvent`
MouseEvent.type property = `flash.events.MouseEvent.MOUSE_DOWN`

Language Version : | ActionScript 3.0

Player Version : | Flash Player 9

Dispatched when a user presses the pointing device button over an InteractiveObject instance in the Flash Player window. If the target is a SimpleButton instance, the SimpleButton instance displays the `downState` display object as the default behavior. If the target is a selectable text field, the text field begins selection as the default behavior.

Defines the value of the `type` property of a `mouseDown` event object.

This event has the following properties:

Property | Value
--- | ---
`bubbles` | `true`
`buttonDown` | `true` if the primary mouse button is pressed; `false` otherwise.
`cancelable` | `false`; the default behavior cannot be canceled.
`ctrlKey` | `true` if the Control key is active; `false` if it is inactive.
`currentTarget` | The object that is actively processing the Event object with an event listener.
`localX` | The horizontal coordinate at which the event occurred relative to the containing sprite.
`localY` | The vertical coordinate at which the event occurred relative to the containing sprite.
`shiftKey` | `true` if the Shift key is active; `false` if it is inactive.
`stageX` | The horizontal coordinate at which the event occurred in global stage coordinates.
`stageY` | The vertical coordinate at which the event occurred in global stage coordinates.
`target` | The InteractiveObject instance under the pointing device. The `target` is not always the object in the display list that registered the event listener. Use the `currentTarget` property to access the object in the display list that is currently processing the event.

mouseFocusChange | Event |

Event Object Type: `flash.events.FocusEvent`
FocusEvent.type property = `flash.events.FocusEvent.MOUSE_FOCUS_CHANGE`

Language Version : | ActionScript 3.0

Player Version : | Flash Player 9

Dispatched when the user attempts to change focus by using a pointer device. The default behavior of this event is to change the focus and dispatch the corresponding `focusIn` and `focusOut` events.

This event is dispatched to the object that currently has focus. The related object for this event is the InteractiveObject instance that receives focus if you do not prevent the default behavior. You can prevent the change in focus by calling `preventDefault()` in an event listener that is properly registered with the target object. The `shiftKey` property is not used. Flash Player changes the focus and dispatches `focusIn` and `focusOut` events as the default behavior.

Defines the value of the `type` property of a `mouseFocusChange` event object.

This event has the following properties:

Property | Value
--- | ---
`bubbles` | `true`
`cancelable` | `true`; call the `preventDefault()` method to cancel default behavior.
`currentTarget` | The object that is actively processing the Event object with an event listener.
`keyCode` | 0; applies only to `keyFocusChange` events.
`relatedObject` | The complementary InteractiveObject instance that is affected by the change in focus.
`shiftKey` | `false`; applies only to `keyFocusChange` events.
`target` | The InteractiveObject instance that currently has focus. The `target` is not always the object in the display list that registered the event listener. Use the `currentTarget` property to access the object in the display list that is currently processing the event.

mouseMove | Event |

Event Object Type: `flash.events.MouseEvent`
MouseEvent.type property = `flash.events.MouseEvent.MOUSE_MOVE`

Language Version : | ActionScript 3.0

Player Version : | Flash Player 9

Dispatched when a user moves the pointing device while it is over an InteractiveObject. If the target is a text field that the user is selecting, the selection is updated as the default behavior.

Defines the value of the `type` property of a `mouseMove` event object.

This event has the following properties:

Property | Value
--- | ---
`bubbles` | `true`
`buttonDown` | `true` if the primary mouse button is pressed; `false` otherwise.
`cancelable` | `false`; the default behavior cannot be canceled.
`ctrlKey` | `true` if the Control key is active; `false` if it is inactive.
`currentTarget` | The object that is actively processing the Event object with an event listener.
`localX` | The horizontal coordinate at which the event occurred relative to the containing sprite.
`localY` | The vertical coordinate at which the event occurred relative to the containing sprite.
`shiftKey` | `true` if the Shift key is active; `false` if it is inactive.
`stageX` | The horizontal coordinate at which the event occurred in global stage coordinates.
`stageY` | The vertical coordinate at which the event occurred in global stage coordinates.
`target` | The InteractiveObject instance under the pointing device. The `target` is not always the object in the display list that registered the event listener. Use the `currentTarget` property to access the object in the display list that is currently processing the event.

mouseOut | Event |

Event Object Type: `flash.events.MouseEvent`
MouseEvent.type property = `flash.events.MouseEvent.MOUSE_OUT`

Language Version : | ActionScript 3.0

Player Version : | Flash Player 9

Dispatched when the user moves a pointing device away from an InteractiveObject instance. The event target is the object previously under the pointing device. The `relatedObject` is the object the pointing device has moved to. If the target is a SimpleButton instance, the button displays the `upState` display object as the default behavior.

The `mouseOut` event is dispatched each time the mouse leaves the area of any child object of the display object container, even if the mouse remains over another child object of the display object container. This is different behavior than the purpose of the `rollOut` event, which is to simplify the coding of rollover behaviors for display object containers with children. When the mouse leaves the area of a display object or the area of any of its children to go to an object that is not one of its children, the display object dispatches the `rollOut` event.The `rollOut` events are dispatched consecutively up the parent chain of the object, starting with the object and ending with the highest parent that is neither the root nor an ancestor of the `relatedObject`.

Defines the value of the `type` property of a `mouseOut` event object.

This event has the following properties:

Property | Value
--- | ---
`bubbles` | `true`
`buttonDown` | `true` if the primary mouse button is pressed; `false` otherwise.
`cancelable` | `false`; the default behavior cannot be canceled.
`ctrlKey` | `true` if the Control key is active; `false` if it is inactive.
`currentTarget` | The object that is actively processing the Event object with an event listener.
`relatedObject` | The display list object to which the pointing device now points.
`localX` | The horizontal coordinate at which the event occurred relative to the containing sprite.
`localY` | The vertical coordinate at which the event occurred relative to the containing sprite.
`shiftKey` | `true` if the Shift key is active; `false` if it is inactive.
`stageX` | The horizontal coordinate at which the event occurred in global stage coordinates.
`stageY` | The vertical coordinate at which the event occurred in global stage coordinates.
`target` | The InteractiveObject instance under the pointing device. The `target` is not always the object in the display list that registered the event listener. Use the `currentTarget` property to access the object in the display list that is currently processing the event.

mouseOver | Event |

Event Object Type: `flash.events.MouseEvent`
MouseEvent.type property = `flash.events.MouseEvent.MOUSE_OVER`

Language Version : | ActionScript 3.0

Player Version : | Flash Player 9

Dispatched when the user moves a pointing device over an InteractiveObject instance in the Flash Player window. The `relatedObject` is the object that was previously under the pointing device. If the target is a SimpleButton instance, the object displays the `overState` or `upState` display object, depending on whether the mouse button is down, as the default behavior.

The `mouseOver` event is dispatched each time the mouse enters the area of any child object of the display object container, even if the mouse was already over another child object of the display object container. This is different behavior than the purpose of the `rollOver` event, which is to simplify the coding of rollout behaviors for display object containers with children. When the mouse enters the area of a display object or the area of any of its children from an object that is not one of its children, the display object dispatches the `rollOver` event. The `rollOver` events are dispatched consecutively down the parent chain of the object, starting with the highest parent that is neither the root nor an ancestor of the `relatedObject` and ending with the object.

Defines the value of the `type` property of a `mouseOver` event object.

This event has the following properties:

Property | Value
--- | ---
`bubbles` | `true`
`buttonDown` | `true` if the primary mouse button is pressed; `false` otherwise.
`cancelable` | `false`; the default behavior cannot be canceled.
`ctrlKey` | `true` if the Control key is active; `false` if it is inactive.
`currentTarget` | The object that is actively processing the Event object with an event listener.
`relatedObject` | The display list object to which the pointing device was pointing.
`localX` | The horizontal coordinate at which the event occurred relative to the containing sprite.
`localY` | The vertical coordinate at which the event occurred relative to the containing sprite.
`shiftKey` | `true` if the Shift key is active; `false` if it is inactive.
`stageX` | The horizontal coordinate at which the event occurred in global stage coordinates.
`stageY` | The vertical coordinate at which the event occurred in global stage coordinates.
`target` | The InteractiveObject instance under the pointing device. The `target` is not always the object in the display list that registered the event listener. Use the `currentTarget` property to access the object in the display list that is currently processing the event.

mouseUp | Event |

Event Object Type: `flash.events.MouseEvent`
MouseEvent.type property = `flash.events.MouseEvent.MOUSE_UP`

Language Version : | ActionScript 3.0

Player Version : | Flash Player 9

Dispatched when a user releases the pointing device button over an InteractiveObject instance in the Flash Player window. If the target is a SimpleButton instance, the object displays the `upState` display object. If the target is a selectable text field, the text field ends selection as the default behavior.

Defines the value of the `type` property of a `mouseUp` event object.

This event has the following properties:

Property | Value
--- | ---
`bubbles` | `true`
`buttonDown` | `true` if the primary mouse button is pressed; `false` otherwise.
`cancelable` | `false`; the default behavior cannot be canceled.
`ctrlKey` | `true` if the Control key is active; `false` if it is inactive.
`currentTarget` | The object that is actively processing the Event object with an event listener.
`localX` | The horizontal coordinate at which the event occurred relative to the containing sprite.
`localY` | The vertical coordinate at which the event occurred relative to the containing sprite.
`shiftKey` | `true` if the Shift key is active; `false` if it is inactive.
`stageX` | The horizontal coordinate at which the event occurred in global stage coordinates.
`stageY` | The vertical coordinate at which the event occurred in global stage coordinates.
`target` | The InteractiveObject instance under the pointing device. The `target` is not always the object in the display list that registered the event listener. Use the `currentTarget` property to access the object in the display list that is currently processing the event.

mouseWheel | Event |

Event Object Type: `flash.events.MouseEvent`
MouseEvent.type property = `flash.events.MouseEvent.MOUSE_WHEEL`

Language Version : | ActionScript 3.0

Player Version : | Flash Player 9

Dispatched when a mouse wheel is spun over an InteractiveObject instance in the Flash Player window. If the target is a text field, the text scrolls as the default behavior.

Defines the value of the `type` property of a `mouseWheel` event object.

This event has the following properties:

Property | Value
--- | ---
`bubbles` | `true`
`buttonDown` | `true` if the primary mouse button is pressed; `false` otherwise.
`cancelable` | `false`; the default behavior cannot be canceled.
`ctrlKey` | `true` if the Control key is active; `false` if it is inactive.
`currentTarget` | The object that is actively processing the Event object with an event listener.
`delta` | The number of lines that that each notch on the mouse wheel represents.
`localX` | The horizontal coordinate at which the event occurred relative to the containing sprite.
`localY` | The vertical coordinate at which the event occurred relative to the containing sprite.
`shiftKey` | `true` if the Shift key is active; `false` if it is inactive.
`stageX` | The horizontal coordinate at which the event occurred in global stage coordinates.
`stageY` | The vertical coordinate at which the event occurred in global stage coordinates.
`target` | The InteractiveObject instance under the pointing device. The `target` is not always the object in the display list that registered the event listener. Use the `currentTarget` property to access the object in the display list that is currently processing the event.

paste | Event |

Event Object Type: `flash.events.Event`
Event.type property = `flash.events.Event.PASTE`

Language Version : | ActionScript 3.0

Player Version : | Flash Player 10

Dispatched when the user activates the platform specific accelerator key combination for a paste operation or selects 'Paste' from the text context menu. This event is dispatched to the object that currently has focus. If the object that currently has focus is a TextField, the default behavior of this event is to cause the contents of the clipboard to be pasted into the text field at the current insertion point replacing any currently selected text in the text field.

Defines the value of the `type` property of a `paste` event object.

This event has the following properties:

Property | Value
--- | ---
`bubbles` | `false`
`cancelable` | `false`; there is no default behavior to cancel.
`currentTarget` | The object that is actively processing the Event object with an event listener.
`target` | Any InteractiveObject instance with a listener registered for the `paste` event.

rollOut | Event |

Event Object Type: `flash.events.MouseEvent`
MouseEvent.type property = `flash.events.MouseEvent.ROLL_OUT`

Language Version : | ActionScript 3.0

Player Version : | Flash Player 9

Dispatched when the user moves a pointing device away from an InteractiveObject instance. The event target is the object previously under the pointing device or a parent of that object. The `relatedObject` is the object that the pointing device has moved to. The `rollOut` events are dispatched consecutively up the parent chain of the object, starting with the object and ending with the highest parent that is neither the root nor an ancestor of the `relatedObject`.

The purpose of the `rollOut` event is to simplify the coding of rollover behaviors for display object containers with children. When the mouse leaves the area of a display object or the area of any of its children to go to an object that is not one of its children, the display object dispatches the `rollOut` event. This is different behavior than that of the `mouseOut` event, which is dispatched each time the mouse leaves the area of any child object of the display object container, even if the mouse remains over another child object of the display object container.

Defines the value of the `type` property of a `rollOut` event object.

This event has the following properties:

Property | Value
--- | ---
`bubbles` | `false`
`buttonDown` | `true` if the primary mouse button is pressed; `false` otherwise.
`cancelable` | `false`; there is no default behavior to cancel.
`ctrlKey` | `true` if the Control key is active; `false` if it is inactive.
`currentTarget` | The object that is actively processing the Event object with an event listener.
`relatedObject` | The display list object to which the pointing device now points.
`localX` | The horizontal coordinate at which the event occurred relative to the containing sprite.
`localY` | The vertical coordinate at which the event occurred relative to the containing sprite.
`shiftKey` | `true` if the Shift key is active; `false` if it is inactive.
`stageX` | The horizontal coordinate at which the event occurred in global stage coordinates.
`stageY` | The vertical coordinate at which the event occurred in global stage coordinates.
`target` | The InteractiveObject instance under the pointing device. The `target` is not always the object in the display list that registered the event listener. Use the `currentTarget` property to access the object in the display list that is currently processing the event.

rollOver | Event |

Event Object Type: `flash.events.MouseEvent`
MouseEvent.type property = `flash.events.MouseEvent.ROLL_OVER`

Language Version : | ActionScript 3.0

Player Version : | Flash Player 9

Dispatched when the user moves a pointing device over an InteractiveObject instance. The event target is the object under the pointing device or a parent of that object. The `relatedObject` is the object that was previously under the pointing device. The `rollOver` events are dispatched consecutively down the parent chain of the object, starting with the highest parent that is neither the root nor an ancestor of the `relatedObject` and ending with the object.

The purpose of the `rollOver` event is to simplify the coding of rollout behaviors for display object containers with children. When the mouse enters the area of a display object or the area of any of its children from an object that is not one of its children, the display object dispatches the `rollOver` event. This is different behavior than that of the `mouseOver` event, which is dispatched each time the mouse enters the area of any child object of the display object container, even if the mouse was already over another child object of the display object container.

Defines the value of the `type` property of a `rollOver` event object.

This event has the following properties:

Property | Value
--- | ---
`bubbles` | `false`
`buttonDown` | `true` if the primary mouse button is pressed; `false` otherwise.
`cancelable` | `false`; there is no default behavior to cancel.
`ctrlKey` | `true` if the Control key is active; `false` if it is inactive.
`currentTarget` | The object that is actively processing the Event object with an event listener.
`relatedObject` | The display list object to which the pointing device was pointing.
`localX` | The horizontal coordinate at which the event occurred relative to the containing sprite.
`localY` | The vertical coordinate at which the event occurred relative to the containing sprite.
`shiftKey` | `true` if the Shift key is active; `false` if it is inactive.
`stageX` | The horizontal coordinate at which the event occurred in global stage coordinates.
`stageY` | The vertical coordinate at which the event occurred in global stage coordinates.
`target` | The InteractiveObject instance under the pointing device. The `target` is not always the object in the display list that registered the event listener. Use the `currentTarget` property to access the object in the display list that is currently processing the event.

selectAll | Event |

Event Object Type: `flash.events.Event`
Event.type property = `flash.events.Event.SELECT_ALL`

Language Version : | ActionScript 3.0

Player Version : | Flash Player 10

Dispatched when the user activates the platform specific accelerator key combination for a select all operation or selects 'Select All' from the text context menu. This event is dispatched to the object that currently has focus. If the object that currently has focus is a TextField, the default behavior of this event is to cause all the contents of the text field to be selected.

Defines the value of the `type` property of a `selectAll` event object.

This event has the following properties:

Property | Value
--- | ---
`bubbles` | `false`
`cancelable` | `false`; there is no default behavior to cancel.
`currentTarget` | The object that is actively processing the Event object with an event listener.
`target` | Any InteractiveObject instance with a listener registered for the `selectAll` event.

tabChildrenChange | Event |

Event Object Type: `flash.events.Event`
Event.type property = `flash.events.Event.TAB_CHILDREN_CHANGE`

Language Version : | ActionScript 3.0

Player Version : | Flash Player 9

Dispatched when the value of the object's `tabChildren` flag changes.

Defines the value of the `type` property of a `tabChildrenChange` event object.

This event has the following properties:

Property | Value
--- | ---
`bubbles` | `true`
`cancelable` | `false`; there is no default behavior to cancel.
`currentTarget` | The object that is actively processing the Event object with an event listener.
`target` | The object whose tabChildren flag has changed. The `target` is not always the object in the display list that registered the event listener. Use the `currentTarget` property to access the object in the display list that is currently processing the event.

tabEnabledChange | Event |

Event Object Type: `flash.events.Event`
Event.type property = `flash.events.Event.TAB_ENABLED_CHANGE`

Language Version : | ActionScript 3.0

Player Version : | Flash Player 9

Dispatched when the object's `tabEnabled` flag changes.

Defines the value of the `type` property of a `tabEnabledChange` event object.

This event has the following properties:

Property | Value
--- | ---
`bubbles` | `true`
`cancelable` | `false`; there is no default behavior to cancel.
`currentTarget` | The object that is actively processing the Event object with an event listener.
`target` | The InteractiveObject whose tabEnabled flag has changed. The `target` is not always the object in the display list that registered the event listener. Use the `currentTarget` property to access the object in the display list that is currently processing the event.

tabIndexChange | Event |

Event Object Type: `flash.events.Event`
Event.type property = `flash.events.Event.TAB_INDEX_CHANGE`

Language Version : | ActionScript 3.0

Player Version : | Flash Player 9

Dispatched when the value of the object's `tabIndex` property changes.

Defines the value of the `type` property of a `tabIndexChange` event object.

This event has the following properties:

Property | Value
--- | ---
`bubbles` | `true`
`cancelable` | `false`; there is no default behavior to cancel.
`currentTarget` | The object that is actively processing the Event object with an event listener.
`target` | The object whose tabIndex has changed. The `target` is not always the object in the display list that registered the event listener. Use the `currentTarget` property to access the object in the display list that is currently processing the event.

Examples How to use examples
InteractiveObjectExample.as
The following example uses the `InteractiveObjectExample` class, which in turn uses the `ChildSprite` class to draw a rectangle and then manipulate that rectangle based on various mouse events. This task is accomplished by performing the following steps:

1. In the `InteractiveObjectExample` constructor, a new ChildSprite object of type Sprite called `child` is created, which calls the ChildSprite constructor method to draw the shape and add mouse events for the shape (as explained in the following steps). The `child` object is added to the top of the display list at coordinates x = 0, y = 0.
2. In the `ChildSprite` class, declare the `size` and `overSize` properties that are used later in the `draw()` method and MouseEvent methods.
3. Declare properties that set the background color to orange, the mouse-over color to dark yellow, and the mouse-down color to light blue.
4. In the `ChildSprite` constructor, an orange square is drawn by using methods from the Graphics class and the `draw()` method.
5. The constructor adds four MouseEvent event listener methods:
   - `mouseOverHandler`: redraws a larger 60 x 60 pixel square with a dark-yellow color at the original coordinates.
   - `mouseOutHandler`: returns the square to its original size and color.
   - `mouseDownHandler`: redraws a larger 60 x 60 pixel square with a light-blue color at the original coordinates.
   - `mouseUpHandler`: same as `mouseOverHandler`.

    package {
        import flash.display.Sprite;

        public class InteractiveObjectExample extends Sprite {

            public function InteractiveObjectExample() {
                var child:Sprite = new ChildSprite();
                addChild(child);
            }
        }
    }

    import flash.display.Sprite;
    import flash.events.MouseEvent;

    class ChildSprite extends Sprite {
        private var size:uint = 50;
        private var overSize:uint = 60;
        private var backgroundColor:uint = 0xFFCC00;
        private var overColor:uint = 0xCCFF00;
        private var downColor:uint = 0x00CCFF;

        public function ChildSprite() {
            buttonMode = true;
            draw(size, size, backgroundColor);
            addEventListener(MouseEvent.MOUSE_OVER, mouseOverHandler);
            addEventListener(MouseEvent.MOUSE_OUT, mouseOutHandler);
            addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler);
            addEventListener(MouseEvent.MOUSE_UP, mouseUpHandler);
        }

        private function draw(w:uint, h:uint, bgColor:uint):void {
            graphics.clear();
            graphics.beginFill(bgColor);
            graphics.drawRect(0, 0, w, h);
            graphics.endFill();
        }

        public function mouseOverHandler(event:MouseEvent):void {
            trace("mouseOverHandler");
            draw(overSize, overSize, overColor);
        }

        public function mouseOutHandler(event:MouseEvent):void {
            trace("mouseOutHandler");
            draw(size, size, backgroundColor);
        }

        public function mouseDownHandler(event:MouseEvent):void {
            trace("mouseDownHandler");
            draw(overSize, overSize, downColor);
        }

        public function mouseUpHandler(event:MouseEvent):void {
            trace("mouseUpHandler");
            draw(overSize, overSize, overColor);
        }
    }

Submit Feedback on LiveDocs
© 2004-2008 Adobe Systems Incorporated. All rights reserved.
Tue May 20 2008, 04:02 AM -07:00