Apache Flex 4.16.1 API Reference | All Packages | All Classes | Index | Frames No Frames |
MaskEffect

Package | mx.effects
Class | public class MaskEffect
Inheritance | MaskEffect Effect flash.events.EventDispatcher
Subclasses | Iris, WipeDown, WipeLeft, WipeRight, WipeUp

Language Version : | ActionScript 3.0

Product Version : | Flex 3

Runtime Versions : | Flash Player 9, AIR 1.1

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 Syntax Show MXML Syntax
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
Hide Inherited Public Properties
Show Inherited Public Properties

| Property | Defined By
--- | --- | ---
|  | className : String [read-only] The name of the effect class, such as "Fade". | Effect
|  | createMaskFunction : Function Function called when the effect creates the mask. | MaskEffect
|  | customFilter : EffectTargetFilter Specifies a custom filter object, of type EffectTargetFilter, used by the effect to determine the targets on which to play the effect. | Effect
|  | duration : Number Duration of the effect in milliseconds. | Effect
|  | effectTargetHost : IEffectTargetHost A property that lets you access the target list-based control of a data effect. | Effect
|  | filter : String Specifies an algorithm for filtering targets for an effect. | Effect
|  | hideFocusRing : Boolean Determines whether the effect should hide the focus ring when starting the effect. | Effect
|  | instanceClass : Class An object of type Class that specifies the effect instance class class for this effect class. | Effect
|  | isPlaying : Boolean [read-only] 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
|  | perElementOffset : Number Additional delay, in milliseconds, for effect targets after the first target of the effect. | Effect
|  | playheadTime : Number Current time position of the effect. | Effect
|  | relevantProperties : Array An Array of property names to use when performing filtering. | Effect
|  | relevantStyles : Array An Array of style names to use when performing filtering. | Effect
|  | repeatCount : int = 1 Number of times to repeat the effect. | Effect
|  | repeatDelay : 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
|  | startDelay : int = 0 Amount of time, in milliseconds, to wait before starting the effect. | Effect
|  | suspendBackgroundProcessing : Boolean = false If true, blocks all background processing while the effect is playing. | Effect
|  | target : Object The object to which this effect is applied. | Effect
|  | targets : Array An Array of objects that are targets for the effect. | Effect
|  | triggerEvent : 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
Hide Inherited Protected Properties
Show Inherited Protected Properties

| Property | Defined By
--- | --- | ---
|  | applyTransitionEndProperties : Boolean This flag controls whether the effect, when run in a transition, automatically applies the property values according to the end state, as opposed to leaving values as set by the effect itself. | Effect
|  | endValuesCaptured : 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
Hide Inherited Public Methods
Show Inherited Public Methods

| Method | Defined By
--- | --- | ---
|  | MaskEffect(target:Object = null) Constructor. | MaskEffect
|  | captureEndValues():void Captures the current values of the relevant properties on the effect's targets and saves them as end values. | Effect
|  | captureMoreStartValues(targets:Array):void Captures the current values of the relevant properties of an additional set of targets Flex uses this function when a data change effect is run. | Effect
|  | captureStartValues():void Captures the current values of the relevant properties on the effect's targets. | Effect
|  | createInstance(target:Object = null):IEffectInstance Creates a single effect instance and initializes it. | Effect
|  | createInstances(targets:Array = null):Array Takes an Array of target objects and invokes the createInstance() method on each target. | Effect
|  | deleteInstance(instance:IEffectInstance):void Removes event listeners from an instance and removes it from the list of instances. | Effect
|  | end(effectInstance:IEffectInstance = null):void Interrupts an effect that is currently playing, and jumps immediately to the end of the effect. | Effect
|  | getAffectedProperties():Array [override] Returns the component properties modified by this effect. | MaskEffect
|  | pause():void Pauses the effect until you call the resume() method. | Effect
|  | play(targets:Array = null, playReversedFromEnd:Boolean = false):Array Begins playing the effect. | Effect
|  | resume():void Resumes the effect after it has been paused by a call to the pause() method. | Effect
|  | reverse():void Plays the effect in reverse, if the effect is currently playing, starting from the current position of the effect. | Effect
|  | stop():void Stops the effect, leaving the effect targets in their current state. | Effect

Protected Methods
Show Inherited Protected Methods
Show Inherited Protected Methods

| Method | Defined By
--- | --- | ---
|  | applyValueToTarget(target:Object, property:String, value:*, props:Object):void Used internally by the Effect infrastructure. | Effect
|  | effectEndHandler(event:EffectEvent):void Called when an effect instance has finished playing. | Effect
|  | effectStartHandler(event:EffectEvent):void This method is called when the effect instance starts playing. | Effect
|  | effectStopHandler(event:EffectEvent):void Called when an effect instance has stopped by a call to the stop() method. | Effect
|  | filterInstance(propChanges:Array, target:Object):Boolean Determines the logic for filtering out an effect instance. | Effect
|  | getValueFromTarget(target:Object, property:String):* Called by the captureStartValues() method to get the value of a property from the target. | Effect
|  | initInstance(instance:IEffectInstance):void Copies properties of the effect to the effect instance. | Effect
|  | tweenEventHandler(event:TweenEvent):void Called when the TweenEffect dispatches a TweenEvent. | MaskEffect

Events
Hide Inherited Events
Show Inherited Events

| Event | Summary | Defined By
--- | --- | --- | ---
|  | effectEnd | Dispatched when one of the effect's instances finishes playing, either when the instance finishes playing or when the effect is interrupted by a call to the end() method. | Effect
|  | effectStart | Dispatched when the effect starts playing. | Effect
|  | effectStop | Dispatched when the effect has been stopped, which only occurs when the effect is interrupted by a call to the stop() method. | Effect
|  | tweenEnd | Dispatched when the effect ends. | MaskEffect
|  | tweenStart | Dispatched when the effect starts, which corresponds to the first call to the onMoveTweenUpdate() and onScaleTweenUpdate() methods. | MaskEffect
|  | tweenUpdate | Dispatched every time the effect updates the target. | MaskEffect

Property Detail

createMaskFunction | property

`public var createMaskFunction:Function`

Language Version : | ActionScript 3.0

Product Version : | Flex 3

Runtime Versions : | Flash Player 9, AIR 1.1

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.

moveEasingFunction | property |

`public var moveEasingFunction:Function`

Language Version : | ActionScript 3.0

Product Version : | Flex 3

Runtime Versions : | Flash Player 9, AIR 1.1

Easing function to use for moving the mask.

The default value is `null`.

scaleEasingFunction | property |

`public var scaleEasingFunction:Function`

Language Version : | ActionScript 3.0

Product Version : | Flex 3

Runtime Versions : | Flash Player 9, AIR 1.1

Easing function to use for scaling the mask.

The default value is `null`.

scaleXFrom | property |

`public var scaleXFrom:Number`

Language Version : | ActionScript 3.0

Product Version : | Flex 3

Runtime Versions : | Flash Player 9, AIR 1.1

Initial scaleX for mask.

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

scaleXTo | property |

`public var scaleXTo:Number`

Language Version : | ActionScript 3.0

Product Version : | Flex 3

Runtime Versions : | Flash Player 9, AIR 1.1

Ending scaleX for mask.

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

scaleYFrom | property |

`public var scaleYFrom:Number`

Language Version : | ActionScript 3.0

Product Version : | Flex 3

Runtime Versions : | Flash Player 9, AIR 1.1

Initial scaleY for mask.

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

scaleYTo | property |

`public var scaleYTo:Number`

Language Version : | ActionScript 3.0

Product Version : | Flex 3

Runtime Versions : | Flash Player 9, AIR 1.1

Ending scaleY for mask.

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

showTarget | property |

`showTarget:Boolean`

Language Version : | ActionScript 3.0

Product Version : | Flex 3

Runtime Versions : | Flash Player 9, AIR 1.1

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`

xFrom | property |

`public var xFrom:Number`

Language Version : | ActionScript 3.0

Product Version : | Flex 3

Runtime Versions : | Flash Player 9, AIR 1.1

Initial position's x coordinate for mask.

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

xTo | property |

`public var xTo:Number`

Language Version : | ActionScript 3.0

Product Version : | Flex 3

Runtime Versions : | Flash Player 9, AIR 1.1

Destination position's x coordinate for mask.

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

yFrom | property |

`public var yFrom:Number`

Language Version : | ActionScript 3.0

Product Version : | Flex 3

Runtime Versions : | Flash Player 9, AIR 1.1

Initial position's y coordinate for mask.

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

yTo | property |

`public var yTo:Number`

Language Version : | ActionScript 3.0

Product Version : | Flex 3

Runtime Versions : | Flash Player 9, AIR 1.1

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)`

Language Version : | ActionScript 3.0

Product Version : | Flex 3

Runtime Versions : | Flash Player 9, AIR 1.1

Constructor.

Parameters

| `target:Object` (default = `null`)`` — The Object to animate with this effect.

Method Detail

getAffectedProperties | () | method

`override public function getAffectedProperties():Array`

Language Version : | ActionScript 3.0

Product Version : | Flex 3

Runtime Versions : | Flash Player 9, AIR 1.1

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

mx.effects.Effect.getAffectedProperties()

tweenEventHandler | () | method |

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

Language Version : | ActionScript 3.0

Product Version : | Flex 3

Runtime Versions : | Flash Player 9, AIR 1.1

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

tweenEnd | Event

Event Object Type: `mx.events.TweenEvent`
TweenEvent.type property = `mx.events.TweenEvent.TWEEN_END`

Language Version : | ActionScript 3.0

Product Version : | Flex 3

Runtime Versions : | Flash Player 9, AIR 1.1

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:

Property | Value
--- | ---
`bubbles` | false
`cancelable` | false
`currentTarget` | The 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`.
`target` | The 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.
`value` | The value passed to the `onTweenEnd()` method.

tweenStart | Event |

Event Object Type: `mx.events.TweenEvent`
TweenEvent.type property = `mx.events.TweenEvent.TWEEN_START`

Language Version : | ActionScript 3.0

Product Version : | Flex 3

Runtime Versions : | Flash Player 9, AIR 1.1

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:

Property | Value
--- | ---
`bubbles` | false
`cancelable` | false
`currentTarget` | The 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`.
`target` | The 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.
`value` | The value passed to the `onTweenUpdate()` method.

tweenUpdate | Event |

Event Object Type: `mx.events.TweenEvent`
TweenEvent.type property = `mx.events.TweenEvent.TWEEN_UPDATE`

Language Version : | ActionScript 3.0

Product Version : | Flex 3

Runtime Versions : | Flash Player 9, AIR 1.1

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:

Property | Value
--- | ---
`bubbles` | false
`cancelable` | false
`currentTarget` | The 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`.
`target` | The 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.
`value` | The value passed to the `onTweenUpdate()` method.

Wed Nov 15 2017, 09:50 AM +01:00