ProgressionのDocumentEventをほかのキャストで利用する

CastDocumentクラスのresizeCompleteを、CastSpriteとかCastMovieClipで使いたいと思ってやってみた。

最初は

package {
 import jp.progression.casts.*;
 import jp.progression.commands.*;
 import jp.progression.events.*;
 import jp.progression.loader.*;
 import jp.progression.*;
 import jp.progression.scenes.*;

 import jp.nium.events.DocumentEvent;

 public class Hoge extends CastMovieClip {

  public function Thumbnails( initObject:Object = null ) {
   super( initObject );
  }

  protected override function _onCastAdded():void {
   addEventListener( DocumentEvent.RESIZE_COMPLETE , onResizeComplete);
  }

  protected override function _onCastRemoved():void {
   removeEventListener( DocumentEvent.RESIZE_COMPLETE, onResizeComplete);
  }

  function onResizeComplete( eve:DocumentEvent ):void {
   // リサイズ完了
  }

 }

}

みたいにやってみたけどこれはダメだった。
考えてみればCastMovieClipにDocumentEventがないんだから当たり前なわけで、

addEventListener( DocumentEvent.RESIZE_COMPLETE , onResizeComplete);
removeEventListener( DocumentEvent.RESIZE_COMPLETE , onResizeComplete);

の部分を

CastDocument.addEventListener( DocumentEvent.RESIZE_COMPLETE , onResizeComplete);
CastDocument.removeEventListener( DocumentEvent.RESIZE_COMPLETE , onResizeComplete);

に変更したら無事動いた。

も一回CastDcumentクラスを継承して書き直しか?とか思ったけど大丈夫で一安心。
Progression柔軟だなー。