You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@royale.apache.org by GitBox <gi...@apache.org> on 2018/04/17 16:03:08 UTC

[GitHub] aharui closed pull request #153: EffectEvent and IEffectInstance Added

aharui closed pull request #153: EffectEvent and IEffectInstance Added
URL: https://github.com/apache/royale-asjs/pull/153
 
 
   

This is a PR merged from a forked repository.
As GitHub hides the original diff on merge, it is displayed below for
the sake of provenance:

As this is a foreign pull request (from a fork), the diff is supplied
below (as it won't show otherwise due to GitHub magic):

diff --git a/frameworks/projects/MXRoyale/src/main/royale/MXRoyaleClasses.as b/frameworks/projects/MXRoyale/src/main/royale/MXRoyaleClasses.as
index 0d5aaa2f3..3d628d0ce 100644
--- a/frameworks/projects/MXRoyale/src/main/royale/MXRoyaleClasses.as
+++ b/frameworks/projects/MXRoyale/src/main/royale/MXRoyaleClasses.as
@@ -38,6 +38,8 @@ internal class MXRoyaleClasses
     import mx.containers.Panel; Panel;
 	import mx.controls.ToolTip; ToolTip;
 	import mx.controls.beads.ToolTipBead; ToolTipBead;
+	import mx.effects.IEffectInstance; IEffectInstance;
+	import mx.events.EffectEvent; EffectEvent;
 	import mx.graphics.Stroke; Stroke;
 	import mx.graphics.SolidColor; SolidColor;
 	import mx.graphics.SolidColorStroke; SolidColorStroke;
@@ -86,7 +88,6 @@ internal class MXRoyaleClasses
 	import mx.system.ApplicationDomain; ApplicationDomain;
 	import mx.collections.GroupingField; GroupingField;
 	import mx.collections.Grouping; Grouping;
-
     COMPILE::SWF
     {
         import mx.controls.beads.CSSImageAndTextButtonView; CSSImageAndTextButtonView;
diff --git a/frameworks/projects/MXRoyale/src/main/royale/mx/effects/IEffectInstance.as b/frameworks/projects/MXRoyale/src/main/royale/mx/effects/IEffectInstance.as
new file mode 100644
index 000000000..4611b6461
--- /dev/null
+++ b/frameworks/projects/MXRoyale/src/main/royale/mx/effects/IEffectInstance.as
@@ -0,0 +1,538 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  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.
+//
+////////////////////////////////////////////////////////////////////////////////
+
+package mx.effects
+{
+
+/* import flash.events.Event;
+ */
+ import org.apache.royale.events.Event;
+
+//import mx.effects.effectClasses.PropertyChanges;
+
+/**
+ *  The IEffectInstance interface represents an instance of an effect
+ *  playing on a target.
+ *  Each target has a separate effect instance associated with it.
+ *  An effect instance's lifetime is transitory.
+ *  An instance is created when the effect is played on a target
+ *  and is destroyed when the effect has finished playing. 
+ *  If there are multiple effects playing on a target at the same time 
+ *  (for example, a Parallel effect), there is a separate effect instance
+ *  for each effect.
+ * 
+ *  <p>Effect developers must create an instance class
+ *  for their custom effects.</p>
+ *
+ *  @see mx.effects.Effect
+ *  
+ *  @langversion 3.0
+ *  @playerversion Flash 9
+ *  @playerversion AIR 1.1
+ *  @productversion Royale 0.9.3
+ *  @royalesuppresspublicvarwarning
+ */
+public interface IEffectInstance
+{
+    
+    //--------------------------------------------------------------------------
+    //
+    //  Properties
+    //
+    //--------------------------------------------------------------------------
+    
+    //----------------------------------
+    //  className
+    //----------------------------------
+
+    /**
+     *  The name of the effect class, such as <code>"FadeInstance"</code>.
+     *
+     *  <p>This is a short or "unqualified" class name
+     *  that does not include the package name.
+     *  If you need the qualified name, use the 
+     *  <code>getQualifiedClassName()</code> method
+     *  in the flash.utils package.</p>
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Royale 0.9.3
+     */
+/*     function get className():String;
+ */    
+    //----------------------------------
+    //  duration
+    //----------------------------------
+
+    /** 
+     *  The duration of the effect, in milliseconds.
+     *
+     *  @default 500
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Royale 0.9.3
+     */
+    function get duration():Number;
+    
+    /**
+     *  @private
+     */
+    function set duration(value:Number):void;
+    
+    //----------------------------------
+    //  effect
+    //----------------------------------
+
+    /**
+     *  The IEffect object that created this IEffectInstance object.
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Royale 0.9.3
+     */
+    /* function get effect():IEffect; */
+    
+    /**
+     *  @private
+     */
+/*     function set effect(value:IEffect):void;
+ */
+    //----------------------------------
+    //  effectTargetHost
+    //----------------------------------
+
+    /**
+     *  A property that lets you access the target
+     *  list-based control of a data effect. 
+     *  This property enables an instance of an effect class
+     *  to communicate with the  list-based control
+     *  on which the effect is playing. 
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Royale 0.9.3
+     */
+/*     function get effectTargetHost():IEffectTargetHost;
+ */    
+    /**
+     *  @private
+     */
+/*     function set effectTargetHost(value:IEffectTargetHost):void;
+ */    
+    //----------------------------------
+    //  hideFocusRing
+    //----------------------------------
+
+    /**
+     *  Determines whether the effect should hide
+     *  the focus ring when starting the effect.
+     *  The effect target is responsible for the hiding the focus ring. 
+     *  Subclasses of the UIComponent class hide the focus ring automatically. 
+     *  If the effect target is not a subclass of the UIComponent class,
+     *  you must add functionality to it to hide the focus ring.
+     *
+     *  <p>Set this property to <code>true</code>
+     *  to hide the focus ring during the effect.</p>
+     *  
+     *  <p>For subclasses of Effect, the default value is <code>false</code>. 
+     *  For subclasses of MaskEffect, the default value is <code>true</code>.
+     *  </p>
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Royale 0.9.3
+     */
+    /* function get hideFocusRing():Boolean;
+    */
+    /**
+     *  @private
+     */
+    /* function set hideFocusRing(value:Boolean):void; */
+    
+    //----------------------------------
+    //  playheadTime
+    //----------------------------------
+
+    /**
+     *  Current time position of the effect.
+     *  This property has a value between 0 and the total duration, 
+     *  which includes the Effect's <code>startDelay</code>, 
+     *  <code>repeatCount</code>, and <code>repeatDelay</code>.
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Royale 0.9.3
+     */
+   /*  function get playheadTime():Number;
+     */
+    /**
+     * @private
+     */
+    /* function set playheadTime(value:Number):void;
+     */
+    //----------------------------------
+    //  propertyChanges
+    //----------------------------------
+
+    /**
+     *  Specifies the PropertyChanges object containing
+     *  the start and end values for the set of properties
+     *  relevant to the effect's targets. 
+     *  This property is only set if the
+     *  <code>captureStartValues()</code> method was called
+     *  on the effect that created this effect instance. 
+     *  
+     *  <p>You often use the <code>propertyChanges</code> property  
+     *  to create an effect that is used as part of a transition. 
+     *  Flex automatically calls the <code>captureStartValues()</code>
+     *  method when it starts a transition.
+     *  Within your override of  the <code>Effectinstance.play()</code>
+     *  method, you can examine the information within the 
+     *  <code>propertyChanges()</code> method to initialize
+     *  the start and end values of the effect.</p>
+     *
+     *  @see mx.effects.effectClasses.PropertyChanges
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Royale 0.9.3
+     */
+    /* function get propertyChanges():PropertyChanges;
+     */
+    /**
+     *  @private
+     */
+   /*  function set propertyChanges(value:PropertyChanges):void;
+     */
+    //----------------------------------
+    //  repeatCount
+    //----------------------------------
+
+    /**
+     *  Number of times to repeat the effect.
+     *  Possible values are any integer greater than or equal to 0.
+     *  
+     *  @default 1
+     *  @see mx.effects.Effect#repeatCount
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Royale 0.9.3
+     */
+   /*  function get repeatCount():int;
+     */
+    /**
+     *  @private
+     */
+   /*  function set repeatCount(value:int):void;
+     */
+    //----------------------------------
+    //  repeatDelay
+    //----------------------------------
+
+    /**
+     *  Amount of time, in milliseconds,
+     *  to wait before repeating the effect.
+     *  
+     *  @default 0
+     *  @see mx.effects.Effect#repeatDelay
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Royale 0.9.3
+     */
+   /*  function get repeatDelay():int;
+     */
+    /**
+     *  @private
+     */
+    /* function set repeatDelay(value:int):void;
+     */
+    //----------------------------------
+    //  startDelay
+    //----------------------------------
+
+    /**
+     *  Amount of time, in milliseconds,
+     *  to wait before starting the effect.
+     *  Possible values are any int greater than or equal to 0.
+     *  If the effect is repeated by using the <code>repeatCount</code>
+     *  property, the <code>startDelay</code> property is applied 
+     *  only the first time the effect is played.
+     *
+     *  @default 0
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Royale 0.9.3
+     */
+    /* function get startDelay():int;
+     */
+    /**
+     *  @private
+     */
+    /* function set startDelay(value:int):void;
+     */
+    //----------------------------------
+    //  suspendBackgroundProcessing
+    //----------------------------------
+
+    /**
+     *  If <code>true</code>, blocks all background processing
+     *  while the effect is playing.
+     *  Background processing includes measurement, layout,
+     *  and processing responses that have arrived from the server.
+     *  
+     *  @default false
+     *  @see mx.effects.Effect#suspendBackgroundProcessing
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Royale 0.9.3
+     */
+   /*  function get suspendBackgroundProcessing():Boolean;
+     */
+    /**
+     *  @private
+     */
+    /* function set suspendBackgroundProcessing(value:Boolean):void;
+     */
+    //----------------------------------
+    //  target
+    //----------------------------------
+
+    /**
+     *  The UIComponent object to which this effect is applied.
+     *
+     *  @see mx.effects.Effect#target
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Royale 0.9.3
+     */
+    function get target():Object;
+    
+    /**
+     *  @private
+     */
+    function set target(value:Object):void;
+    
+    //----------------------------------
+    //  triggerEvent
+    //----------------------------------
+
+    /**
+     *  The event, if any, which triggered the playing of the effect.
+     *  This property is useful when an effect is assigned to 
+     *  multiple triggering events.
+     * 
+     *  <p>If the effect was played programmatically by a call to the 
+     *  <code>play()</code> method, rather than being triggered by an event,
+     *  this property is <code>null</code>.</p>
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Royale 0.9.3
+     */
+   /*  function get triggerEvent():Event;
+     */
+    /**
+     *  @private
+     */
+    /* function set triggerEvent(value:Event):void;
+ */
+    //--------------------------------------------------------------------------
+    //
+    //  Methods
+    //
+    //--------------------------------------------------------------------------
+    
+    /**
+     *  This method is called if the effect was triggered by the EffectManager. 
+     *  This base class version saves the event that triggered the effect
+     *  in the <code>triggerEvent</code> property.
+     *  Each subclass should override this method.
+     * 
+     *  @param event The Event object that was dispatched
+     *  to trigger the effect.
+     *  For example, if the trigger was a mouseDownEffect, the event
+     *  would be a MouseEvent with type equal to MouseEvent.MOUSEDOWN. 
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Royale 0.9.3
+     */
+    /* function initEffect(event:Event):void;
+ */
+    /**
+     *  Plays the effect instance on the target after the
+     *  <code>startDelay</code> period has elapsed.
+     *  Called by the Effect class.
+     *  Use this function instead of the <code>play()</code> method
+     *  when starting an EffectInstance.
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Royale 0.9.3
+     */
+   /*  function startEffect():void;
+     */
+    /**
+     *  Plays the effect instance on the target.
+     *  Call the <code>startEffect()</code> method instead
+     *  to make an effect start playing on an EffectInstance.
+     * 
+     *  <p>In a subclass of EffectInstance, you must override this method. 
+     *  The override must call the <code>super.play()</code> method 
+     *  so that an <code>effectStart</code> event is dispatched
+     *  from the target.</p>
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Royale 0.9.3
+     */
+    function play():void;
+    
+    /**
+     *  Pauses the effect until you call the <code>resume()</code> method.
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Royale 0.9.3
+     */
+    /* function pause():void;
+     */
+    /**
+     *  Stops the effect, leaving the target in its current state.
+     *  This method is invoked by a call
+     *  to the <code>Effect.stop()</code> method. 
+     *  As part of its implementation, it calls
+     *  the <code>finishEffect()</code> method.
+     *
+     *  <p>The effect instance dispatches an <code>effectEnd</code> event
+     *  when you call this method as part of ending the effect.</p>
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Royale 0.9.3
+     */
+   /*  function stop():void;
+ */
+    /**
+     *  Resumes the effect after it has been paused 
+     *  by a call to the <code>pause()</code> method. 
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Royale 0.9.3
+     */
+    /* function resume():void;
+     */
+    /**
+     *  Plays the effect in reverse, starting from
+     *  the current position of the effect.
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Royale 0.9.3
+     */
+    /* function reverse():void;
+     */
+    /**
+     *  Interrupts an effect instance that is currently playing,
+     *  and jumps immediately to the end of the effect.
+     *  This method is invoked by a call
+     *  to the <code>Effect.end()</code> method. 
+     *  As part of its implementation, it calls
+     *  the <code>finishEffect()</code> method.
+     *
+     *  <p>The effect instance dispatches an <code>effectEnd</code> event
+     *  when you call this method as part of ending the effect.</p>
+     *
+     *  <p>In a subclass of EffectInstance,
+     *  you can optionally override this method
+     *  As part of your override, you should call
+     *  the <code>super.end()</code> method
+     *  from the end of your override, after your logic.</p>
+     *
+     *  @see mx.effects.Effect#end()
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Royale 0.9.3
+     */
+   /*  function end():void;
+ */
+    /**
+     *  Called by the <code>end()</code> method when the effect
+     *  finishes playing.
+     *  This function dispatches an <code>endEffect</code> event
+     *  for the effect target.
+     *
+     *  <p>You do not have to override this method in a subclass.
+     *  You do not need to call this method when using effects,
+     *  but you may need to call it if you create an effect subclass.</p>
+     *
+     *  @see mx.events.EffectEvent
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Royale 0.9.3
+     */
+    /* function finishEffect():void;
+     */
+    /**
+     *  Called after each iteration of a repeated effect finishes playing.
+     *
+     *  <p>You do not have to override this method in a subclass.
+     *  You do not need to call this method when using effects.</p>
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Royale 0.9.3
+     */
+  /*   function finishRepeat():void;
+     */
+}
+
+}
diff --git a/frameworks/projects/MXRoyale/src/main/royale/mx/events/EffectEvent.as b/frameworks/projects/MXRoyale/src/main/royale/mx/events/EffectEvent.as
new file mode 100644
index 000000000..6e5eabb60
--- /dev/null
+++ b/frameworks/projects/MXRoyale/src/main/royale/mx/events/EffectEvent.as
@@ -0,0 +1,291 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  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.
+//
+////////////////////////////////////////////////////////////////////////////////
+
+package mx.events
+{
+
+/* import flash.events.Event;
+ */
+ import org.apache.royale.events.Event;
+ import mx.effects.IEffectInstance;
+
+/**
+ *  Represents event objects that are specific to Flex effects. 
+ *  Flex effects dispatch the following types of events:
+ *  <ul>
+ *    <li><code>effectStart</code></li>
+ *    <li><code>effectStop</code></li>
+ *    <li><code>effectRepeat</code></li>
+ *    <li><code>effectEnd</code></li>
+ *    <li><code>effectRepeat</code></li>
+ *  </ul>
+ *
+ *  @see mx.effects.Effect
+ *  
+ *  @langversion 3.0
+ *  @playerversion Flash 9
+ *  @playerversion AIR 1.1
+ *  @productversion Royale 0.9.3
+ *  @royalesuppresspublicvarwarning
+ */
+public class EffectEvent extends Event
+{
+/*     include "../core/Version.as";
+ */
+	//--------------------------------------------------------------------------
+	//
+	//  Class constants
+	//
+	//--------------------------------------------------------------------------
+
+    /**
+     *  The <code>EffectEvent.EFFECT_END</code> constant defines the value of the 
+     *  <code>type</code> property of the event object for an 
+     *  <code>effectEnd</code> event. 
+     *
+     *  <p>The properties of the event object have the following values:</p>
+     *  <table class="innertable">
+     *     <tr><th>Property</th><th>Value</th></tr>
+     *     <tr><td><code>bubbles</code></td><td>false</td></tr>
+     *     <tr><td><code>cancelable</code></td><td>false</td></tr>
+     *     <tr><td><code>currentTarget</code></td><td>The Object that defines the 
+     *       event listener that handles the event. For example, if you use 
+     *       <code>myButton.addEventListener()</code> to register an event listener, 
+     *       myButton is the value of the <code>currentTarget</code>. </td></tr>
+     *     <tr><td><code>effectInstance</code></td><td>The effect instance object 
+     *       for the event.</td></tr>
+     *     <tr><td><code>target</code></td><td>The Object that dispatched the event; 
+     *       it is not always the Object listening for the event. 
+     *       Use the <code>currentTarget</code> property to always access the 
+     *       Object listening for the event.</td></tr>
+     *  </table>
+     *
+     *  @see mx.effects.Effect
+     *
+     *  @eventType effectEnd
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Royale 0.9.3
+     */
+    public static const EFFECT_END:String = "effectEnd";
+    
+    /**
+     *  The <code>EffectEvent.EFFECT_STOP</code> constant defines the value of the 
+     *  <code>type</code> property of the event object for an 
+     *  <code>effectStop</code> event.
+     *
+     *  <p>The properties of the event object have the following values:</p>
+     *  <table class="innertable">
+     *     <tr><th>Property</th><th>Value</th></tr>
+     *     <tr><td><code>bubbles</code></td><td>false</td></tr>
+     *     <tr><td><code>cancelable</code></td><td>false</td></tr>
+     *     <tr><td><code>currentTarget</code></td><td>The Object that defines the 
+     *       event listener that handles the event. For example, if you use 
+     *       <code>myButton.addEventListener()</code> to register an event listener, 
+     *       myButton is the value of the <code>currentTarget</code>. </td></tr>
+     *     <tr><td><code>effectInstance</code></td><td>The effect instance object 
+     *       for the event.</td></tr>
+     *     <tr><td><code>target</code></td><td>The Object that dispatched the event; 
+     *       it is not always the Object listening for the event. 
+     *       Use the <code>currentTarget</code> property to always access the 
+     *       Object listening for the event.</td></tr>
+     *  </table>
+     *
+     *  @see mx.effects.Effect
+     *
+     *  @eventType effectStop
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Royale 0.9.3
+     */
+/*     public static const EFFECT_STOP:String = "effectStop";
+ */    
+	/**
+     *  The <code>EffectEvent.EFFECT_START</code> constant defines the value of the 
+     *  <code>type</code> property of the event object for an 
+     *  <code>effectStart</code> event. 
+     *  
+	 *  <p>The properties of the event object have the following values:</p>
+	 *  <table class="innertable">
+	 *     <tr><th>Property</th><th>Value</th></tr>
+     *     <tr><td><code>bubbles</code></td><td>false</td></tr>
+     *     <tr><td><code>cancelable</code></td><td>false</td></tr>
+     *     <tr><td><code>currentTarget</code></td><td>The Object that defines the 
+     *       event listener that handles the event. For example, if you use 
+     *       <code>myButton.addEventListener()</code> to register an event listener, 
+     *       myButton is the value of the <code>currentTarget</code>. </td></tr>
+     *     <tr><td><code>effectInstance</code></td><td>The effect instance object 
+     *       for the event.</td></tr>
+     *     <tr><td><code>target</code></td><td>The Object that dispatched the event; 
+     *       it is not always the Object listening for the event. 
+     *       Use the <code>currentTarget</code> property to always access the 
+     *       Object listening for the event.</td></tr>
+	 *  </table>
+	 *
+	 *  @see mx.effects.Effect
+     *
+     *  @eventType effectStart
+	 *  
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion Royale 0.9.3
+	 */
+	public static const EFFECT_START:String = "effectStart";
+	
+    /**
+     *  The <code>EffectEvent.EFFECT_REPEAT</code> constant defines the value of the 
+     *  <code>type</code> property of the event object for an 
+     *  <code>effectRepeat</code> event. 
+     *  
+     *  <p>The properties of the event object have the following values:</p>
+     *  <table class="innertable">
+     *     <tr><th>Property</th><th>Value</th></tr>
+     *     <tr><td><code>bubbles</code></td><td>false</td></tr>
+     *     <tr><td><code>cancelable</code></td><td>false</td></tr>
+     *     <tr><td><code>currentTarget</code></td><td>The Object that defines the 
+     *       event listener that handles the event. For example, if you use 
+     *       <code>myButton.addEventListener()</code> to register an event listener, 
+     *       myButton is the value of the <code>currentTarget</code>. </td></tr>
+     *     <tr><td><code>effectInstance</code></td><td>The effect instance object 
+     *       for the event.</td></tr>
+     *     <tr><td><code>target</code></td><td>The Object that dispatched the event; 
+     *       it is not always the Object listening for the event. 
+     *       Use the <code>currentTarget</code> property to always access the 
+     *       Object listening for the event.</td></tr>
+     *  </table>
+     *
+     *  @see mx.effects.Effect
+     *
+     *  @eventType effectRepeat
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Royale 0.9.3
+     */
+/*     public static const EFFECT_REPEAT:String = "effectRepeat";
+ */
+    /**
+     *  The <code>EffectEvent.EFFECT_UPDATE</code> constant defines the value of the 
+     *  <code>type</code> property of the event object for an 
+     *  <code>effectUpdate</code> event. 
+     *  
+     *  <p>The properties of the event object have the following values:</p>
+     *  <table class="innertable">
+     *     <tr><th>Property</th><th>Value</th></tr>
+     *     <tr><td><code>bubbles</code></td><td>false</td></tr>
+     *     <tr><td><code>cancelable</code></td><td>false</td></tr>
+     *     <tr><td><code>currentTarget</code></td><td>The Object that defines the 
+     *       event listener that handles the event. For example, if you use 
+     *       <code>myButton.addEventListener()</code> to register an event listener, 
+     *       myButton is the value of the <code>currentTarget</code>. </td></tr>
+     *     <tr><td><code>effectInstance</code></td><td>The effect instance object 
+     *       for the event.</td></tr>
+     *     <tr><td><code>target</code></td><td>The Object that dispatched the event; 
+     *       it is not always the Object listening for the event. 
+     *       Use the <code>currentTarget</code> property to always access the 
+     *       Object listening for the event.</td></tr>
+     *  </table>
+     *
+     *  @see mx.effects.Effect
+     *
+     *  @eventType effectUpdate
+     *  
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Royale 0.9.3
+     */
+ /*    public static const EFFECT_UPDATE:String = "effectUpdate";
+ */
+	//--------------------------------------------------------------------------
+	//
+	//  Constructor
+	//
+	//--------------------------------------------------------------------------
+
+	/**
+	 *  Constructor.
+	 *
+	 *  @param eventType The event type; indicates the action that caused the event.
+	 *
+	 *  @param bubbles Specifies whether the event can bubble up the 
+	 *  display list hierarchy.
+	 *
+	 *  @param cancelable Specifies whether the behavior associated with the event can be prevented.
+	 *
+	 *  @param effectInstance The effect instance that triggered the event.
+	 *  
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion Royale 0.9.3
+	 */
+	public function EffectEvent(eventType:String, bubbles:Boolean = false,
+								cancelable:Boolean = false,
+								effectInstance:IEffectInstance = null)
+	{
+		super(eventType, bubbles, cancelable);
+
+		this.effectInstance = effectInstance;
+	}
+	
+	//--------------------------------------------------------------------------
+	//
+	//  Properties
+	//
+	//--------------------------------------------------------------------------
+
+	//----------------------------------
+	//  effectInstance
+	//----------------------------------
+	
+	/**
+	 *  The effect instance object for the event.
+	 *  You can use this property to access the properties of the effect
+	 *  instance object from within your event listener.
+	 *  
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion Royale 0.9.3
+	 */
+	public var effectInstance:IEffectInstance;
+	
+	//--------------------------------------------------------------------------
+	//
+	//  Overridden methods: Event
+	//
+	//--------------------------------------------------------------------------
+	
+	/**
+	 *  @private
+	 */
+	override public function cloneEvent():Event
+	{
+		return new EffectEvent(type, bubbles, cancelable, effectInstance);
+	}
+}
+
+}


 

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services