queue-min.js revision 34d05a0baa83aa231e5faed818bc6ab5112cf2bf
YUI.add("queue",function(C){var B=C.array.Native.slice,A=C.array.Native.splice;C.Queue=function(){var D=this instanceof C.Queue?this:new C.Queue();D.q=[];return D.add.apply(D,B.call(arguments));};C.Queue.prototype={id:0,run:function(){var H=this.q[0],F;if(!H){this.fire("complete");return this;}else{if(this.id){return this;}}F=H.fn||H;if(typeof F==="function"){var E=H.args||[],D=H.timeout||0,G=this;if(!(C.lang.isArray(E))){E=[E];}if(D<0){this.id=D;if(H.until){for(;!H.until();){F.apply(H,E);}}else{if(H.iterations){for(;H.iterations-->0;){F.apply(H,E);}}else{F.apply(H,E);}}this.q.shift();this.id=0;return this.run();}else{if(H.until){if(H.until()){this.q.shift();return this.run();}}else{if(!H.iterations||!--H.iterations){this.q.shift();}}this.id=setTimeout(function(){F.apply(H,E);if(G.id){G.id=0;G.run();}},D);}}return this;},add:function(){A.apply(this.q,[this.q.length,0].concat(B.call(arguments)));return this;},pause:function(){clearTimeout(this.id);this.id=0;return this;},stop:function(){this.pause();this.q=[];return this;}};C.augment(C.Queue,C.Event.Target);},"3.0.0");