I'm having trouble with SeriesInterpolate and the effectEnd event.  This seems 
to 
continually dispatch so my callback function is continually being called.  I 
know that this 
effect should only dispatch an event for each target. Has anyone else ran into 
this before?

--- In flexcoders@yahoogroups.com, "g_odds" <[EMAIL PROTECTED]> wrote:
>
> Oops, drop the playCount++ line.
> 
> 
> --- In flexcoders@yahoogroups.com, "g_odds" <g_odds@> wrote:
> >
> > Righto.  So it would appear that the reason for this is that the
> > play() function of the SeriesInterpolateInstance, SeriesSlideInstance
> > and SeriesZoomInstance classes are missing the call to super.play()
> > which would result in the effectStart event being dispatched.
> > 
> > If you need this event dispatched then you have to extend the factory
> > and instance class along the lines of this:
> > 
> > package
> > {
> >   import mx.charts.effects.SeriesInterpolate;
> >   
> >   public class TSFSeriesInterpolate extends SeriesInterpolate
> >   {
> >       
> >     public function TSFSeriesInterpolate(target:Object = null)
> >     {
> >       super(target);
> >       instanceClass = TSFSeriesInterpolateInstance;
> >     }
> >       
> >   }
> >     
> > }
> > 
> > import mx.charts.effects.effectClasses.SeriesInterpolateInstance;
> > import mx.events.EffectEvent;
> > 
> > class TSFSeriesInterpolateInstance extends SeriesInterpolateInstance
> > {
> >   public function TSFSeriesInterpolateInstance(target:Object)
> >   {
> >     super(target);
> >   }
> >     
> >   override public function play():void
> >   {
> >     // The next six lines are what occurs in the EffectInstance's
> >     // play() function, so because the hierarchy of play() functions
> >     // is broken we must do these ourselves.
> >     playCount++;
> >     dispatchEvent(new EffectEvent(EffectEvent.EFFECT_START,
> >                                   false,false,this));
> >     if (target)
> >       target.dispatchEvent(new EffectEvent(EffectEvent.EFFECT_START,
> >                                            false, false, this));
> >         
> >     super.play();
> >   }
> > }
> > 
> > 
> > Cheers,
> > 
> > Graham
> > 
> > 
> > --- In flexcoders@yahoogroups.com, "g_odds" <g_odds@> wrote:
> > >
> > > It would appear that from SeriesEffect downwards in the object
> > > hierarchy, none dispatch an effectStart event when played.  I have
> > > checked this by using exactly the same code except for changing the
> > > effect type and only series effects appear to exhibit this behaviour.
> > > 
> > > I'm sifting through the source to find out why but so far I haven't
> > > spotted anything.
> > > 
> > > Thanks in advance for any help.
> > > 
> > > Graham
> > >
> >
>



Reply via email to