Packagemx.effects
Classpublic class MaskEffect
InheritanceMaskEffect Inheritance Effect Inheritance flash.events.EventDispatcher
SubclassesIris, WipeDown, WipeLeft, WipeRight, WipeUp

The MaskEffect class is an abstract base class for all effects that animate a mask, such as the wipe effects and the Iris effect. This class encapsulates methods and properties that are common among all mask-based effects.

A mask effect uses an overlay, called a mask, to perform the effect. By default, the mask is a rectangle with the same size as the target component.

The before or after state of the target component of a mask effect must be invisible. That means a mask effect always makes a target component appear on the screen, or disappear from the screen.

You use the scaleXFrom, scaleYFrom, scaleXTo, and scaleX properties to specify the initial and final scale of the mask, where a value of 1.0 corresponds to scaling the mask to the size of the target component, 2.0 scales the mask to twice the size of the component, 0.5 scales the mask to half the size of the component, and so on. To use any one of these properties, you must specify all four.

You use the xFrom, yFrom, xTo, and yTo properties to specify the coordinates of the initial position and final position of the mask relative to the target component, where (0, 0) corresponds to the upper left corner of the target. To use any one of these properties, you must specify all four.

The coordinates of the initial and final position of the mask depend on the type of effect and whether the show property is true or false. For example, for the WipeLeft effect with a show value of false, the coordinates of the initial mask position are (0, 0),corresponding to the upper-left corner of the target, and the coordinates of the final position are the upper-right corner of the target (width, 0), where width is the width of the target.

For a show value of true for the WipeLeft effect, the coordinates of the initial mask position are (width, 0), and the coordinates of the final position are (0, 0).

MXML Syntaxexpanded Hide MXML Syntax

The MaskEffect class defines the following properties, which all of its subclasses inherit:

  <mx:tagname
    createMaskFunction=""
    moveEasingFunction=""
    scaleEasingFunction=""
    scaleXFrom=""
    scaleXTo=""
    scaleYFrom=""
    scaleYTo=""
    show="true|false"
    xFrom=""
    xTo=""
    yFrom=""
    yTo=""
  />
  

See also

mx.effects.effectClasses.MaskEffectInstance
mx.effects.TweenEffect


Public Properties
 PropertyDefined by
 InheritedclassName : String
The name of the effect class, such as "Fade".
Effect
  createMaskFunction : Function
Function called when the effect creates the mask.
MaskEffect
 InheritedcustomFilter : EffectTargetFilter
Specifies a custom filter object, of type EffectTargetFilter, used by the effect to determine the targets on which to play the effect.
Effect
 Inheritedduration : Number
Duration of the effect in milliseconds.
Effect
 InheritedeffectTargetHost : IEffectTargetHost
A property that lets you access the target list-based control of a data effect.
Effect
 Inheritedfilter : String
Specifies an algorithm for filtering targets for an effect.
Effect
 InheritedhideFocusRing : Boolean
Determines whether the effect should hide the focus ring when starting the effect.
Effect
 InheritedinstanceClass : Class
An object of type Class that specifies the effect instance class class for this effect class.
Effect
 InheritedisPlaying : Boolean
A read-only flag which is true if any instances of the effect are currently playing, and false if none are.
Effect
  moveEasingFunction : Function
Easing function to use for moving the mask.
MaskEffect
 InheritedperElementOffset : Number
Additional delay, in milliseconds, for effect targets after the first target of the effect.
Effect
 InheritedrelevantProperties : Array
An Array of property names to use when performing filtering.
Effect
 InheritedrelevantStyles : Array
An Array of style names to use when performing filtering.
Effect
 InheritedrepeatCount : int = 1
Number of times to repeat the effect.
Effect
 InheritedrepeatDelay : int = 0
Amount of time, in milliseconds, to wait before repeating the effect.
Effect
  scaleEasingFunction : Function
Easing function to use for scaling the mask.
MaskEffect
  scaleXFrom : Number
Initial scaleX for mask.
MaskEffect
  scaleXTo : Number
Ending scaleX for mask.
MaskEffect
  scaleYFrom : Number
Initial scaleY for mask.
MaskEffect
  scaleYTo : Number
Ending scaleY for mask.
MaskEffect
  showTarget : Boolean
Specifies that the target component is becoming visible, true, or invisible, false.
MaskEffect
 InheritedstartDelay : int = 0
Amount of time, in milliseconds, to wait before starting the effect.
Effect
 InheritedsuspendBackgroundProcessing : Boolean = false
If true, blocks all background processing while the effect is playing.
Effect
 Inheritedtarget : Object
The UIComponent object to which this effect is applied.
Effect
 Inheritedtargets : Array
An Array of UIComponent objects that are targets for the effect.
Effect
 InheritedtriggerEvent : Event
The Event object passed to this Effect by the EffectManager when an effect is triggered, or null if the effect is not being played by the EffectManager.
Effect
  xFrom : Number
Initial position's x coordinate for mask.
MaskEffect
  xTo : Number
Destination position's x coordinate for mask.
MaskEffect
  yFrom : Number
Initial position's y coordinate for mask.
MaskEffect
  yTo : Number
Destination position's y coordinate for mask.
MaskEffect
Protected Properties
 PropertyDefined by
 InheritedendValuesCaptured : Boolean = false
A flag containing true if the end values of an effect have already been determined, or false if they should be acquired from the current properties of the effect targets when the effect runs.
Effect
Public Methods
 MethodDefined by
  
MaskEffect(target:Object = null)
Constructor.
MaskEffect
 Inherited
Captures the current values of the relevant properties on the effect's targets and saves them as end values.
Effect
 Inherited
captureMoreStartValues(targets:Array):void
Captures the current values of the relevant properties of an additional set of targets

This function is used by Flex when a data change effect is run.

Effect
 Inherited
Captures the current values of the relevant properties on the effect's targets.
Effect
 Inherited
createInstance(target:Object = null):IEffectInstance
Creates a single effect instance and initializes it.
Effect
 Inherited
createInstances(targets:Array = null):Array
Takes an Array of target objects and invokes the createInstance() method on each target.
Effect
 Inherited
Removes event listeners from an instance and removes it from the list of instances.
Effect
 Inherited
end(effectInstance:IEffectInstance = null):void
Interrupts an effect that is currently playing, and jumps immediately to the end of the effect.
Effect
  
Returns the component properties modified by this effect.
MaskEffect
 Inherited
pause():void
Pauses the effect until you call the resume() method.
Effect
 Inherited
play(targets:Array = null, playReversedFromEnd:Boolean = false):Array
Begins playing the effect.
Effect
 Inherited
resume():void
Resumes the effect after it has been paused by a call to the pause() method.
Effect
 Inherited
reverse():void
Plays the effect in reverse, if the effect is currently playing, starting from the current position of the effect.
Effect
 Inherited
stop():void
Stops the effect, leaving the effect targets in their current state.
Effect
Protected Methods
 MethodDefined by
 Inherited
applyValueToTarget(target:Object, property:String, value:Object, props:*):void
Used internally by the Effect infrastructure.
Effect
 Inherited
Called when an effect instance has finished playing.
Effect
 Inherited
This method is called when the effect instance starts playing.
Effect
 Inherited
filterInstance(propChanges:Array, target:Object):Boolean
Determines the logic for filtering out an effect instance.
Effect
 Inherited
getValueFromTarget(target:Object, property:String):*
Called by the captureStartValues() method to get the value of a property from the target.
Effect
 Inherited
Copies properties of the effect to the effect instance.
Effect
  
Called when the TweenEffect dispatches a TweenEvent.
MaskEffect
Events
 EventSummaryDefined by
 Inherited Dispatched when the effect finishes playing, either when the effect finishes playing or when the effect has been interrupted by a call to the end() method.Effect
 Inherited Dispatched when the effect starts playing.Effect
   Dispatched when the effect ends.MaskEffect
   Dispatched when the effect starts, which corresponds to the first call to the onMoveTweenUpdate() and onScaleTweenUpdate() methods.MaskEffect
   Dispatched every time the effect updates the target.MaskEffect
Property detail
createMaskFunctionproperty
public var createMaskFunction:Function

Function called when the effect creates the mask. The default value is a function that returns a Rectangle with the same dimensions as the target.

The custom mask function has the following signature:

      public function createLargeMask(targ:Object, bounds:Rectangle):Shape
      {
          var myMask:Shape = new FlexShape();
               // Create mask.
               return myMask;
      }
      

Your custom mask function takes an argument corresponding to the target component of the effect, and a second argument that defines the dimensions of the target so that you can correctly size the mask. You use that argument to access properties of the target component, such as width and height, so that you can create a mask with the correct size.

The function returns a single Shape object that defines the mask.

moveEasingFunctionproperty 
public var moveEasingFunction:Function

Easing function to use for moving the mask.

The default value is null.

scaleEasingFunctionproperty 
public var scaleEasingFunction:Function

Easing function to use for scaling the mask.

The default value is null.

scaleXFromproperty 
public var scaleXFrom:Number

Initial scaleX for mask.

To specify this property, you must specify all four of these properties: scaleXFrom, scaleYFrom, scaleXTo, and scaleX.

scaleXToproperty 
public var scaleXTo:Number

Ending scaleX for mask.

To specify this property, you must specify all four of these properties: scaleXFrom, scaleYFrom, scaleXTo, and scaleX.

scaleYFromproperty 
public var scaleYFrom:Number

Initial scaleY for mask.

To specify this property, you must specify all four of these properties: scaleXFrom, scaleYFrom, scaleXTo, and scaleX.

scaleYToproperty 
public var scaleYTo:Number

Ending scaleY for mask.

To specify this property, you must specify all four of these properties: scaleXFrom, scaleYFrom, scaleXTo, and scaleX.

showTargetproperty 
showTarget:Boolean  [read-write]

Specifies that the target component is becoming visible, true, or invisible, false. If you specify this effect for a showEffect or hideEffect trigger, Flex sets the showTarget property for you, either to true if the component becomes visible, or false if the component becomes invisible. If you use this effect with a different effect trigger, you should set it yourself, often within the event listener for the startEffect event.

The default value is true.

Implementation
    public function get showTarget():Boolean
    public function set showTarget(value:Boolean):void
xFromproperty 
public var xFrom:Number

Initial position's x coordinate for mask.

To specify this property, you must specify all four of these properties: xFrom, yFrom, xTo, and yTo.

xToproperty 
public var xTo:Number

Destination position's x coordinate for mask.

To specify this property, you must specify all four of these properties: xFrom, yFrom, xTo, and yTo.

yFromproperty 
public var yFrom:Number

Initial position's y coordinate for mask.

To specify this property, you must specify all four of these properties: xFrom, yFrom, xTo, and yTo.

yToproperty 
public var yTo:Number

Destination position's y coordinate for mask.

To specify this property, you must specify all four of these properties: xFrom, yFrom, xTo, and yTo.

Constructor detail
MaskEffect()constructor
public function MaskEffect(target:Object = null)

Constructor.

Parameters
target:Object (default = null) — The Object to animate with this effect.
Method detail
getAffectedProperties()method
public override function getAffectedProperties():Array

Returns the component properties modified by this effect. This method returns an Array containing: [ "visible", "width", "height" ]. Since the WipeDown, WipeLeft, WipeRight, and WipeDown effect subclasses all modify these same properties, those classes do not implement this method.

If you subclass the MaskEffect class to create a custom effect, and it modifies a different set of properties on the target, you must override this method and return an Array containing a list of the properties modified by your subclass.

Returns
Array — An Array of Strings specifying the names of the properties modified by this effect.

See also

tweenEventHandler()method 
protected function tweenEventHandler(event:TweenEvent):void

Called when the TweenEffect dispatches a TweenEvent. If you override this method, ensure that you call the super method.

Parameters
event:TweenEvent — An event object of type TweenEvent.
Event detail
tweenEndevent 
Event object type: mx.events.TweenEvent
TweenEvent.type property = mx.events.TweenEvent.TWEEN_END

Dispatched when the effect ends.

When an effect plays a single time, this event occurs at the same time as an effectEnd event. If you configure the effect to repeat, it occurs at the end of every repetition of the effect, and the endEffect event occurs after the effect plays for the final time.

The TweenEvent.TWEEN_END constant defines the value of the event object's type property for a tweenEnd event.

The properties of the event object have the following values:

PropertyValue
bubblesfalse
cancelablefalse
currentTargetThe Object that defines the event listener that handles the event. For example, if you use myButton.addEventListener() to register an event listener, myButton is the value of the currentTarget.
targetThe Object that dispatched the event; it is not always the Object listening for the event. Use the currentTarget property to always access the Object listening for the event.
valueThe value passed to the onTweenEnd() method.
tweenStartevent  
Event object type: mx.events.TweenEvent
TweenEvent.type property = mx.events.TweenEvent.TWEEN_START

Dispatched when the effect starts, which corresponds to the first call to the onMoveTweenUpdate() and onScaleTweenUpdate() methods. Flex also dispatches the first tweenUpdate event for the effect at the same time.

The Effect.effectStart event is dispatched before the tweenStart event.

The TweenEvent.TWEEN_START constant defines the value of the event object's type property for a tweenStart event.

The properties of the event object have the following values:

PropertyValue
bubblesfalse
cancelablefalse
currentTargetThe Object that defines the event listener that handles the event. For example, if you use myButton.addEventListener() to register an event listener, myButton is the value of the currentTarget.
targetThe Object that dispatched the event; it is not always the Object listening for the event. Use the currentTarget property to always access the Object listening for the event.
valueThe value passed to the onTweenUpdate() method.
tweenUpdateevent  
Event object type: mx.events.TweenEvent
TweenEvent.type property = mx.events.TweenEvent.TWEEN_UPDATE

Dispatched every time the effect updates the target. The dispatching of this event corresponds to the calls to the onMoveTweenUpdate() and onScaleTweenUpdate() methods.

The TweenEvent.TWEEN_UPDATE constant defines the value of the event object's type property for a tweenUpdate event.

The properties of the event object have the following values:

PropertyValue
bubblesfalse
cancelablefalse
currentTargetThe Object that defines the event listener that handles the event. For example, if you use myButton.addEventListener() to register an event listener, myButton is the value of the currentTarget.
targetThe Object that dispatched the event; it is not always the Object listening for the event. Use the currentTarget property to always access the Object listening for the event.
valueThe value passed to the onTweenUpdate() method.