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

Package | mx.effects
Class | public class DefaultListEffect
Inheritance | DefaultListEffect Parallel CompositeEffect Effect flash.events.EventDispatcher

Language Version : | ActionScript 3.0

Product Version : | Flex 3

Runtime Versions : | Flash Player 9, AIR 1.1

The DefaultListEffect class defines the default effect applied to the item renderers of a List control when the data in the data provider changes. When an item in the List control is removed, this effect first fades out the item, then collapses the size of the item to 0. When you add an item to the List control, this effect expands the slot for the item, then fades in the new item.

You use the `itemsChangeEffect` style property to apply this effect to a List control. The default value of the `itemsChangeEffect` style property is `undefined`, meaning it does not use any effect.

Because the DefaultListEffect effect grows and shrinks item renderers as it plays, you must set the `List.variableRowHeight` property to `true` to enable the List control to dynalically change its row height.

MXML Syntax Show MXML Syntax
Hide MXML Syntax

The <mx:DefaultListEffect> tag inherits all the members of its parent and adds the following members:

      <DefaultListEffect
        Properties
        color="0xFFFFFF"
        fadeInDuration="300"
        fadeOutDuration="300"
        growDuration="300"
        removedElementOffset="100"
        shrinkDuration="300"
      />

Default MXML Property `children`

View the examples

See also

mx.controls.List

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
|  | color : Number Hex value that represents the color used when fading the added and removed item. | DefaultListEffect
|  | compositeDuration : Number [override] [read-only] Returns the duration of this effect as defined by the duration of all child effects. | Parallel
|  | fadeInDuration : Number The duration, in milliseconds, for fading in renderers for added and removed items. | DefaultListEffect
|  | fadeOutDuration : Number The duration, in milliseconds, used for fading out renderers for added and removed items. | DefaultListEffect
|  | growDuration : Number The duration, in milliseconds, applied to renderers for added and removed items. | DefaultListEffect
|  | 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
|  | 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
|  | removedElementOffset : Number The offset in milliseconds between the effects applied to the renderers representing multiple items deleted at the same time. | DefaultListEffect
|  | shrinkDuration : Number The duration, in milliseconds, applied to renderers for added and removed items. | DefaultListEffect
|  | 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
|  | 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

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
--- | --- | ---
|  | DefaultListEffect() Constructor. | DefaultListEffect
|  | addChild(childEffect:IEffect):void Adds a new child effect to this composite effect. | CompositeEffect
|  | 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 Returns an Array of Strings, where each String is the name of a property changed by this effect. | Effect
|  | 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

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

Property Detail

color | property

`color:Number`

Language Version : | ActionScript 3.0

Product Version : | Flex 3

Runtime Versions : | Flash Player 9, AIR 1.1

Hex value that represents the color used when fading the added and removed item.

The default value is `0xFFFFFF`.

Implementation
`public function get color():Number`
`public function set color(value:Number):void`

fadeInDuration | property |

`fadeInDuration:Number`

Language Version : | ActionScript 3.0

Product Version : | Flex 3

Runtime Versions : | Flash Player 9, AIR 1.1

The duration, in milliseconds, for fading in renderers for added and removed items.

The default value is `300`.

Implementation
`public function get fadeInDuration():Number`
`public function set fadeInDuration(value:Number):void`

fadeOutDuration | property |

`fadeOutDuration:Number`

Language Version : | ActionScript 3.0

Product Version : | Flex 3

Runtime Versions : | Flash Player 9, AIR 1.1

The duration, in milliseconds, used for fading out renderers for added and removed items.

The default value is `300`.

Implementation
`public function get fadeOutDuration():Number`
`public function set fadeOutDuration(value:Number):void`

growDuration | property |

`growDuration:Number`

Language Version : | ActionScript 3.0

Product Version : | Flex 3

Runtime Versions : | Flash Player 9, AIR 1.1

The duration, in milliseconds, applied to renderers for added and removed items.

The default value is `300`.

Implementation
`public function get growDuration():Number`
`public function set growDuration(value:Number):void`

removedElementOffset | property |

`removedElementOffset:Number`

Language Version : | ActionScript 3.0

Product Version : | Flex 3

Runtime Versions : | Flash Player 9, AIR 1.1

The offset in milliseconds between the effects applied to the renderers representing multiple items deleted at the same time. If 0, all renderers will fade and shrink simultaneously.

The default value is `100`.

Implementation
`public function get removedElementOffset():Number`
`public function set removedElementOffset(value:Number):void`

shrinkDuration | property |

`shrinkDuration:Number`

Language Version : | ActionScript 3.0

Product Version : | Flex 3

Runtime Versions : | Flash Player 9, AIR 1.1

The duration, in milliseconds, applied to renderers for added and removed items.

The default value is `300`.

Implementation
`public function get shrinkDuration():Number`
`public function set shrinkDuration(value:Number):void`
Constructor Detail

DefaultListEffect | () | Constructor

`public function DefaultListEffect()`

Constructor.

Examples
DefaultListEffectExample.mxml

    <?xml version="1.0"?>
    <!--

      Licensed to the Apache Software Foundation (ASF) under one or more
      contributor license agreements.  See the NOTICE file distributed with
      this work for additional information regarding copyright ownership.
      The ASF licenses this file to You under the Apache License, Version 2.0
      (the "License"); you may not use this file except in compliance with
      the License.  You may obtain a copy of the License at

          http://www.apache.org/licenses/LICENSE-2.0

      Unless required by applicable law or agreed to in writing, software
      distributed under the License is distributed on an "AS IS" BASIS,
      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
      See the License for the specific language governing permissions and
      limitations under the License.

    -->
    <s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
            xmlns:s="library://ns.adobe.com/flex/spark"
            xmlns:mx="library://ns.adobe.com/flex/mx">

        <fx:Script>
            <![CDATA[
                import mx.effects.DefaultListEffect;
                import mx.collections.ArrayCollection;

                [Bindable]
                private var myDP:ArrayCollection = new ArrayCollection(
                    ['A','B','C','D','E','F','G','H']);

                private function deleteItem():void {
                    // As each item is removed, the index of the other items changes.
                    // So first get the items to delete, then determine their indices
                    // as you remove them.
                    var toRemove:Array = [];
                    for (var i:int = 0; i < list0.selectedItems.length; i++)
                        toRemove.push(list0.selectedItems[i]);
                    for (i = 0; i < toRemove.length; i++)
                        myDP.removeItemAt(myDP.getItemIndex(toRemove[i]));
                }

                private var zcount:int = 0;
                private function addItem():void {
                    // Always add the new item after the third item,
                    // or after the last item if the length is less than 3.
                    myDP.addItemAt("Z"+zcount++,Math.min(3,myDP.length));
                }
            ]]>
        </fx:Script>

        <!-- Define an instance of the DefaultListEffect effect,
             and set its fadeOutDuration and color properties. -->
        <fx:Declarations>
            <mx:DefaultListEffect id="myDLE"
                fadeOutDuration="1000"
                color="0x0000ff"/>
        </fx:Declarations>

        <s:Panel title="Halo DefaultListEffect Example" width="75%" height="75%" >
            <s:VGroup left="20" right="20" top="20" bottom="20">

                <mx:List id="list0"
                    width="150"
                    dataProvider="{myDP}"
                    variableRowHeight="true"
                    fontSize="18"
                    allowMultipleSelection="true"
                    itemsChangeEffect="{myDLE}"/>

                <s:Button
                    label="Delete item"
                    click="deleteItem();"/>
                <s:Button
                    label="Add item"
                    click="addItem();"/>
            </s:VGroup>

        </s:Panel>
    </s:Application>

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