| dojo.provide("dojo.animation.AnimationSequence"); |
| dojo.require("dojo.animation.AnimationEvent"); |
| dojo.require("dojo.animation.Animation"); |
| dojo.deprecated("dojo.animation.AnimationSequence is slated for removal in 0.5; use dojo.lfx.* instead.","0.5"); |
| dojo.animation.AnimationSequence=function(_1){ |
| this._anims=[]; |
| this.repeatCount=_1||0; |
| }; |
| dojo.lang.extend(dojo.animation.AnimationSequence,{repeatCount:0,_anims:[],_currAnim:-1,onBegin:null,onEnd:null,onNext:null,handler:null,add:function(){ |
| for(var i=0;i<arguments.length;i++){ |
| this._anims.push(arguments[i]); |
| arguments[i]._animSequence=this; |
| } |
| },remove:function(_3){ |
| for(var i=0;i<this._anims.length;i++){ |
| if(this._anims[i]==_3){ |
| this._anims[i]._animSequence=null; |
| this._anims.splice(i,1); |
| break; |
| } |
| } |
| },removeAll:function(){ |
| for(var i=0;i<this._anims.length;i++){ |
| this._anims[i]._animSequence=null; |
| } |
| this._anims=[]; |
| this._currAnim=-1; |
| },clear:function(){ |
| this.removeAll(); |
| },play:function(_6){ |
| if(this._anims.length==0){ |
| return; |
| } |
| if(_6||!this._anims[this._currAnim]){ |
| this._currAnim=0; |
| } |
| if(this._anims[this._currAnim]){ |
| if(this._currAnim==0){ |
| var e={type:"begin",animation:this._anims[this._currAnim]}; |
| if(typeof this.handler=="function"){ |
| this.handler(e); |
| } |
| if(typeof this.onBegin=="function"){ |
| this.onBegin(e); |
| } |
| } |
| this._anims[this._currAnim].play(_6); |
| } |
| },pause:function(){ |
| if(this._anims[this._currAnim]){ |
| this._anims[this._currAnim].pause(); |
| } |
| },playPause:function(){ |
| if(this._anims.length==0){ |
| return; |
| } |
| if(this._currAnim==-1){ |
| this._currAnim=0; |
| } |
| if(this._anims[this._currAnim]){ |
| this._anims[this._currAnim].playPause(); |
| } |
| },stop:function(){ |
| if(this._anims[this._currAnim]){ |
| this._anims[this._currAnim].stop(); |
| } |
| },status:function(){ |
| if(this._anims[this._currAnim]){ |
| return this._anims[this._currAnim].status(); |
| }else{ |
| return "stopped"; |
| } |
| },_setCurrent:function(_8){ |
| for(var i=0;i<this._anims.length;i++){ |
| if(this._anims[i]==_8){ |
| this._currAnim=i; |
| break; |
| } |
| } |
| },_playNext:function(){ |
| if(this._currAnim==-1||this._anims.length==0){ |
| return; |
| } |
| this._currAnim++; |
| if(this._anims[this._currAnim]){ |
| var e={type:"next",animation:this._anims[this._currAnim]}; |
| if(typeof this.handler=="function"){ |
| this.handler(e); |
| } |
| if(typeof this.onNext=="function"){ |
| this.onNext(e); |
| } |
| this._anims[this._currAnim].play(true); |
| }else{ |
| var e={type:"end",animation:this._anims[this._anims.length-1]}; |
| if(typeof this.handler=="function"){ |
| this.handler(e); |
| } |
| if(typeof this.onEnd=="function"){ |
| this.onEnd(e); |
| } |
| if(this.repeatCount>0){ |
| this._currAnim=0; |
| this.repeatCount--; |
| this._anims[this._currAnim].play(true); |
| }else{ |
| if(this.repeatCount==-1){ |
| this._currAnim=0; |
| this._anims[this._currAnim].play(true); |
| }else{ |
| this._currAnim=-1; |
| } |
| } |
| } |
| }}); |