Senocular ProgressiveDrawing Listener

Hi all,

So I picked up senocular’s ProgressiveDrawing class this morning (awesome), but I’m having some issues getting an oncomplete to fire correctly. I think it has to do with my for loop, but I don’t know why.


    for(var i:Number = 0; i < _msStructure.menuItems.length; i++){
        var nIndex:Number = i;
        
        mcBtn = _mcTarget["mcBtn"+i];
        nBtnCenter = mcBtn._x +(mcBtn._width+mcBtn.mcCapR._width)/2;
        
        mcLineHolder = _mcTarget.createEmptyMovieClip("mcLineHolder"+i, _mcTarget.getNextHighestDepth());
        pdTreeBase* = new ProgressiveDrawing(mcLineHolder);
        pdTreeBase*.lineStyle(2, 0xFFFFFF, 100);
        pdTreeBase*.moveTo(nCenter, nTop+nInc*4);
        pdTreeBase*.lineTo(nCenter, nTop+nInc*2);
        pdTreeBase*.curveTo(nCenter, nTop+nInc, nCenter+_nInc, nTop+nInc);        
        pdTreeBase*.lineTo(nBtnCenter-_nInc, nTop+nInc);
        pdTreeBase*.curveTo(nBtnCenter, nTop+nInc, nBtnCenter, nTop);
        pdTreeBase*.draw(Math.abs(nCenter-nBtnCenter)*.2);
        growBtns(pTreeBase*, i);
    }

function growBtns(pdItem:ProgressiveDrawing, nIndex:Number):Void {
    var pdListener:Object = new Object();
    pdListener.onComplete = function(){
        trace(nIndex);
    }
    
    pdItem.addListener(pdListener);
}

so it’s basically tracing (0, 1, 2, 3, 4, 5) 6 times (apparently because of the loop, not because of the number of methods I call before the draw. I want the onComplete to fire once per item so I can target an appropriate movie clip.

Any notion?