Adobe® Flex® 4 Language Reference
Show Packages and Classes List |  Packages  |  Classes  |  Index  |  Appendixes
mx.effects 
EffectTargetFilter 
Packagemx.effects
Classpublic class EffectTargetFilter
InheritanceEffectTargetFilter Inheritance Object
Subclasses AddRemoveEffectTargetFilter, HideShowEffectTargetFilter

Language Version: ActionScript 3.0
Product Version: Flex 3
Runtime Versions: Flash Player 9, AIR 1.1

The EffectTargetFilter class defines a custom filter that is executed by each transition effect on each target of the effect.

The EffectTargetFilter class defines a defaultFilterFunction() method that uses the filterProperties and filterStyles properties to determine whether to play the effect on each effect target.

You can also define a custom filter function to implement your own filtering logic. To do so, define your filter function, and then specify that function to an EffectTargetFilter object using the filterFunction property.

To configure an effect to use a custom filter, you pass an EffectTargetFilter object to the Effect.customFilter property of the effect.

See also



Public Properties
 PropertyDefined By
 Inheritedconstructor : Object
A reference to the class object or constructor function for a given object instance.
Object
  filterFunction : Function
A function that defines custom filter logic.
EffectTargetFilter
  filterProperties : Array
An Array of Strings specifying component properties.
EffectTargetFilter
  filterStyles : Array
An Array of Strings specifying style properties.
EffectTargetFilter
 Inheritedprototype : Object
[static] A reference to the prototype object of a class or function object.
Object
  requiredSemantics : Object = null
A collection of properties and associated values which must be associated with a target for the effect to be played.
EffectTargetFilter
Public Methods
 MethodDefined By
  
Constructor.
EffectTargetFilter
  
filterInstance(propChanges:Array, semanticsProvider:mx.effects:IEffectTargetHost, target:Object):Boolean
Determines whether a target should be filtered, returning true if it should be included in an effect.
EffectTargetFilter
 Inherited
Indicates whether an object has a specified property defined.
Object
 Inherited
Indicates whether an instance of the Object class is in the prototype chain of the object specified as the parameter.
Object
 Inherited
Indicates whether the specified property exists and is enumerable.
Object
 Inherited
Sets the availability of a dynamic property for loop operations.
Object
 Inherited
Returns the string representation of this object, formatted according to locale-specific conventions.
Object
 Inherited
Returns the string representation of the specified object.
Object
 Inherited
Returns the primitive value of the specified object.
Object
Protected Methods
 MethodDefined By
  
defaultFilterFunction(propChanges:Array, instanceTarget:Object):Boolean
The default filter function for the EffectTargetFilter class.
EffectTargetFilter
Property Detail

filterFunction

property
public var filterFunction:Function

Language Version: ActionScript 3.0
Product Version: Flex 3
Runtime Versions: Flash Player 9, AIR 1.1

A function that defines custom filter logic. Flex calls this method on every target of the effect. If the function returns true, the effect plays on the target; if it returns false, the target is skipped by the effect. A custom filter function gives you greater control over filtering than the Effect.filter property.

The filter function has the following signature:

      filterFunc(propChanges:Array, instanceTarget:Object):Boolean
      {
          // Return true to play the effect on instanceTarget, 
          // or false to not play the effect.
      } 
      

where:

propChanges - An Array of PropertyChanges objects, one object per target component of the effect. If a property of a target is not modified by the transition, it is not included in this Array.

instanceTarget - The specific target component of the effect that you want to filter. Within the custom filter function, you first search the propChanges Array for the PropertyChanges object that matches the instanceTarget argument by comparing the instanceTarget argument to the propChanges.target property.

See also

filterProperties

property 
public var filterProperties:Array

Language Version: ActionScript 3.0
Product Version: Flex 3
Runtime Versions: Flash Player 9, AIR 1.1

An Array of Strings specifying component properties. If any of the properties in the Array changed on the target component, play the effect on the target.

If you define a custom filter function, you can examine the filterProperties property from within your function.

filterStyles

property 
public var filterStyles:Array

Language Version: ActionScript 3.0
Product Version: Flex 3
Runtime Versions: Flash Player 9, AIR 1.1

An Array of Strings specifying style properties. If any of the style properties in the Array changed on the target component, play the effect on the target.

If you define a custom filter function, you can examine the filterStyles property from within your function.

requiredSemantics

property 
public var requiredSemantics:Object = null

Language Version: ActionScript 3.0
Product Version: Flex 3
Runtime Versions: Flash Player 9, AIR 1.1

A collection of properties and associated values which must be associated with a target for the effect to be played.

When working with data effects, you can use this property to filter effects. If you want to play a data effect on all targets of a list control that are not added by the effect, meaning targets that is removed, replaced, moved, or affected in any other way, you can write the effect definition as shown below:

      <mx:Blur>
          <mx:customFilter>
              <mx:EffectTargetFilter requiredSemantics="{{'added':false}}"/>
          </mx:customFilter>
      </mx:Blur> 

To play a data effect on all targets that are not added or not removed by the effect, you can write the effect definition as shown below:

      <mx:Blur>
          <mx:customFilter>
              <mx:EffectTargetFilter requiredSemantics="{{'added':false}, {'removed':false}}"/>
          </mx:customFilter>
      </mx:Blur>

The allowed list of properties that you can specify includes added, removed, replaced, and replacement. The allowed values for the properties are true and false.

Constructor Detail

EffectTargetFilter

()Constructor
public function EffectTargetFilter()

Language Version: ActionScript 3.0
Product Version: Flex 3
Runtime Versions: Flash Player 9, AIR 1.1

Constructor.

Method Detail

defaultFilterFunction

()method
protected function defaultFilterFunction(propChanges:Array, instanceTarget:Object):Boolean

Language Version: ActionScript 3.0
Product Version: Flex 3
Runtime Versions: Flash Player 9, AIR 1.1

The default filter function for the EffectTargetFilter class. If the instanceTarget has different start and end values for any of the values specified by the filterProperties or filterStyles properties, play the effect on the target.

Parameters

propChanges:Array — An Array of PropertyChanges objects. The target property of each PropertyChanges object is equal to the effect's target. If a property of a target is not modified by a transition, the corresponding PropertyChanges object is not included in this array.
 
instanceTarget:Object — The target of the EffectInstance that calls this function. If an effect has multiple targets, this function is called once per target.

Returns
Boolean — Returns true to allow the effect instance to play.

See also

filterInstance

()method 
public function filterInstance(propChanges:Array, semanticsProvider:mx.effects:IEffectTargetHost, target:Object):Boolean

Language Version: ActionScript 3.0
Product Version: Flex 3
Runtime Versions: Flash Player 9, AIR 1.1

Determines whether a target should be filtered, returning true if it should be included in an effect. The determination is made by calling filterFunction and semanticFilterFunction, returning true if and only if both functions return true. The default functions with the default values will always return true. Typically, an EffectTargetFilter will use one type of filter or the other, but not both.

Parameters

propChanges:Array — An Array of PropertyChanges objects. The target property of each PropertyChanges object is equal to the effect's target. If a property of a target is not modified by a transition, the corresponding PropertyChanges object is not included in this array.
 
semanticsProvider:mx.effects:IEffectTargetHost — The IEffectTargetHost used to evaluate the properties specified in requiredSemantics for the target, normally the effectTargetHost of the effect. For item change effects, when the targets of the effect are item renderers, this will be the List or TileList containing the item renderers.
 
target:Object — The target of the EffectInstance that calls this function. If an effect has multiple targets, this function is called once per target.

Returns
Boolean — Returna true, if the target should be included in the effect; otherwise returns false.