if (!window.tokyoace4) {
    tokyoace4 = {}
   
}


/* ############################################################################

AnimationScrollクラス
なめらかにページの指定したY方向にスクロールさせる

ex)
function scrollTop(){
	var anim = new tokyoace4.AnimationScroll(0,4);
	anim.start();
}
############################################################################ */

if (!window.tokyoace4.AnimationScroll) {
	/** AnimationScroll class definition. */
    tokyoace4.AnimationScroll = function( toY, slice) {
		
		if(toY != undefined){
			this.toY = toY;
		}
		
		if(slice != undefined){
			this.slice = slice;
		}
	}
	tokyoace4.AnimationScroll.toY = 0;
	tokyoace4.AnimationScroll.slice = 4;
	tokyoace4.AnimationScroll.timer = undefined;
	
	tokyoace4.AnimationScroll.prototype = {
		start : function() {
			var self =this;
            this.timerId = setInterval(function(){self.run();}, 20);
        },
        run : function(){
			var viewxy = document.viewport.getScrollOffsets();
			var x = viewxy.left;
			var y = viewxy.top;
			
			y += (this.toY - y) / this.slice;
			if(Math.abs(y-this.toY) < 1){
				y = this.toY;
				this.stop();
			}
			
			scrollTo(x,y);
		},
		stop : function(){
			clearInterval(this.timerId);
		}
		
	}
}