チェンジセット 802
- コミット日時:
- 2008/07/09 14:48:37 (4 ヶ月前)
- ファイル:
凡例:
- 変更無し
- 追加
- 削除
- 更新
- コピー
- 移動
as3/Thread/trunk/src/org/libspark/thread/threads/tweener/TweenerThread.as
r641 r802 55 55 * 56 56 * @param target Tweener に渡す、トゥイーンのターゲット 57 * @param args Tweener に渡す、トゥイーンの引数 57 * @param args Tweener に渡す、トゥイーンの引数。複数渡すと、全てを連続して実行します 58 58 */ 59 public function TweenerThread(target:Object, args:Object)59 public function TweenerThread(target:Object, ...args:Array) 60 60 { 61 61 _target = target; 62 62 _args = args; 63 _specialArgs = splitSpecialArgs(args);64 63 _startTime = 0; 65 64 _monitor = new Monitor(); 66 67 args.onComplete = completeHandler;68 65 } 69 66 70 67 private var _target:Object; 71 private var _args: Object;68 private var _args:Array; 72 69 private var _specialArgs:Object; 73 70 private var _startTime:uint; … … 123 120 override protected function run():void 124 121 { 122 if (_args.length == 0) { 123 return; 124 } 125 126 _startTime = getTimer(); 127 128 _monitor.wait(); 129 interrupted(interruptedHandler); 130 131 nextTween(); 132 } 133 134 private function nextTween():void 135 { 136 if (_args.length == 0) { 137 _monitor.notifyAll(); 138 return; 139 } 140 141 var a:Object = _args.shift(); 142 143 _specialArgs = splitSpecialArgs(a); 144 145 a.onComplete = completeHandler; 146 125 147 if ('show' in _specialArgs && _specialArgs.show) { 126 148 if (_target is DisplayObject) { … … 134 156 } 135 157 136 _startTime = getTimer(); 137 138 Tweener.addTween(_target, _args); 139 140 waitTween(); 141 } 142 143 /** 144 * @private 145 */ 146 private function waitTween():void 147 { 148 _monitor.wait(); 149 interrupted(interruptedHandler); 158 Tweener.addTween(_target, a); 150 159 } 151 160 … … 166 175 } 167 176 168 _monitor.notifyAll();177 nextTween(); 169 178 } 170 179
