package org.libspark.betweenas3.tweens
{
import flash.events.IEventDispatcher;
// EventDispatcher は委譲 & 遅延生成で実装しましょう。
/**
* トゥイーン及びその制御.
*
* @author yossy:beinteractive
*/
public interface ITween extends IEventDispatcher
{
/**
* このトゥイーンの継続時間 (秒) を返します.
*/
function get duration():Number;
/**
* このトゥイーンの現在位置 (秒) を返します.
*/
function get position():Number;
/**
* このトゥイーンが現在再生中であれば true, そうでなければ false を返します.
*/
function get isPlaying():Boolean;
/**
* このトゥイーンの完了時に再生を停止するのであれば true, そうでなければ false を設定します.
*/
function get stopOnComplete():Boolean;
/**
* @private
*/
function set stopOnComplete(value:Boolean):void;
function get onPlay():Function;
function set onPlay(value:Function):void;
function get onPlayParams():Array;
function set onPlayParams(value:Array):void;
function get onStop():Function;
function set onStop(value:Function):void;
function get onStopParams():Array;
function set onStopParams(value:Array):void;
function get onUpdate():Function;
function set onUpdate(value:Function):void;
function get onUpdateParams():Array;
function set onUpdateParams(value:Array):void;
function get onComplete():Function;
function set onComplete(value:Function):void;
function get onCompleteParams():Array;
function set onCompleteParams(value:Array):void;
/**
* このトゥイーンの再生を現在の位置から開始します.
*/
function play():void;
/**
* このトゥイーンの再生を現在の位置で停止します.
*/
function stop():void;
/**
* このトゥイーンの再生を一時停止または再開します.
*/
function togglePause():void;
/**
* このトゥイーンの再生を指定された位置から開始します.
*
* @param position 再生を開始する位置 (秒)
*/
function gotoAndPlay(position:Number):void;
/**
* このトゥイーンの再生を指定された位置で停止します.
*
* @param position 再生を停止する位置 (秒)
*/
function gotoAndStop(position:Number):void;
/**
* この ITween のクローンを生成して返します.
*
* @return この ITween のクローン
*/
function clone():ITween;
}
}