チェンジセット 2688

差分発生行の前後
無視リスト:
コミット日時:
2009/05/22 19:08:45 (3 年前)
コミッタ:
yossy
ログメッセージ:

BetweenAS3(ba): Fixed interfaces related a tween.

ファイル:

凡例:

変更無し
追加
削除
更新
コピー
移動
  • as3/BetweenAS3/branches/dramatic-before-after/src/fp10/org/libspark/betweenas3/tweens/IObjectTween.as

    r2618 r2688  
    2626 *  
    2727 */ 
    28 package org.libspark.betweenas3.targets.single 
     28package org.libspark.betweenas3.tweens 
    2929{ 
    3030        import org.libspark.betweenas3.easing.IEasing; 
    31         import org.libspark.betweenas3.targets.ITweenTarget; 
    3231         
    3332        // target の各プロパティに対する値のセッター、特殊プロパティの処理の提供などが主な役割。 
     
    4241         * @author      yossy:beinteractive 
    4342         */ 
    44         public interface ISingleTweenTarget extends ITweenTarget 
     43        public interface IObjectTween extends ITween 
    4544        { 
    46                 /** 
    47                  * このトゥイーンに掛ける時間 (秒) を設定します. 
    48                  */ 
    49                 function get time():Number; 
    50                  
    51                 /** 
    52                  * @private 
    53                  */ 
    54                 function set time(value:Number):void; 
    55                  
    5645                /** 
    5746                 * このトゥイーンで使用するイージングを設定します. 
     
    10392                 */ 
    10493                function setDestinationValue(propertyName:String, value:Number, isRelative:Boolean = false):void; 
    105                  
    106                 // トゥイーン値がオブジェクトで指定された場合、そのトゥイーンはさらに別の ISingleTweenTarget によって行われる。 
    107                 // そのとき、対象となるオブジェクトの受け渡しを行う必要があるため、この ISingleTweenTarget が対象とする 
    108                 // オブジェクト (target) のための特殊化されたゲッター及びセッターを提供する。 
    109                  
    110                 // 主に DisplayObject の filters や、SoundChannel の soundTransform で必要になる。 
    111                 // 
    112                 // getObject('soundTransform'); で SoundChannel の soundTransform が取得でき、 
    113                 // setObject('soundTransform', st); で SoundChannel の soundTransform に値を更新後の SoundTransform が 
    114                 // 設定できるイメージ。 
    115                  
    116                 // 実際のオブジェクトの受け渡し (setObject) は、トゥイーンの更新 (update) を行った後に親に受け渡し (setObject) を行う 
    117                 // TweenTargetLadder (ladder=はしご) が子トゥイーンをデコレートして間に入ることにより実現する。 
    118                  
    119                 // Bezier2DTweenTarget などは特殊なので専用のファクトリメソッドを登録する方向で。 
    120                 // function create(target:Object, to:Object, from:Object, args:Object):ISingleTweenTarget 
    121                 // を 
    122                 // registerTweenTargetWithFactory(Object, '_bezier', create); 
    123                 // で登録する感じ。第二引数は配列ではない。 
    124                 // これで target が Object かつ _bezier プロパティがある場合にファクトリメソッドが呼ばれるので 
    125                 // パラメータを見てインスタンスを生成する。使用したパラメータは delete で削除しておく。 
    126                 // 通常の ISingleTweenTarget は 
    127                 // registerTweenTarget(DisplayObject, ['x', 'y', ...], ['_blurFilter', ...], DisplayObjectTweenTarget); 
    128                 // で登録。なぜ通常もファクトリメソッド方式にしないかというと、相対指定のプロパティ処理であったりなんだり実装者が書くべき(同じような)コードが増えるため。 
    129                  
    130                 /** 
    131                  * 指定されたプロパティのオブジェクトを取得します. 
    132                  *  
    133                  * @param       propertyName    取得するプロパティ名 
    134                  * @return      対応するオブジェクト 
    135                  */ 
    136                 function getObject(propertyName:String):Object; 
    137                  
    138                 /** 
    139                  * 指定されたプロパティにオブジェクトを代入します. 
    140                  *  
    141                  * @param       propertyName    設定するプロパティ名 
    142                  * @param       value   設定するオブジェクト 
    143                  */ 
    144                 function setObject(propertyName:String, value:Object):void; 
    14594        } 
    14695} 
  • as3/BetweenAS3/branches/dramatic-before-after/src/fp10/org/libspark/betweenas3/tweens/ITween.as

    r2469 r2688  
    2929{ 
    3030        import flash.events.IEventDispatcher; 
    31         import org.libspark.betweenas3.targets.ITweenTarget; 
    3231         
    3332        // EventDispatcher は委譲 & 遅延生成で実装しましょう。 
     
    4039        public interface ITween extends IEventDispatcher 
    4140        { 
    42                 /** 
    43                  * 制御の対象となるトゥイーンターゲットを設定します. 
    44                  */ 
    45                 function get tweenTarget():ITweenTarget; 
    46                  
    4741                /** 
    4842                 * このトゥイーンの継続時間 (秒) を返します. 
     
    110104                 */ 
    111105                function gotoAndStop(position:Number):void; 
     106                 
     107                /** 
     108                 * この ITween のクローンを生成して返します. 
     109                 *  
     110                 * @return      この ITween のクローン 
     111                 */ 
     112                function clone():ITween; 
    112113        } 
    113114}