1  /**
     2   * com.sekati.utils.MovieClipUtils
     3   * @version 1.3.5
     4   * @author jason m horwitz | sekati.com
     5   * Copyright (C) 2007  jason m horwitz, Sekat LLC. All Rights Reserved.
     6   * Released under the MIT License: http://www.opensource.org/licenses/mit-license.php
     7   */
     8   
     9  /**
    10   * Static class wrapping various MovieClip utilities.
    11   * @see {@link com.sekati.utils.ClassUtils}
    12   */
    13  class com.sekati.utils.MovieClipUtils {
    14  
    15  	/**
    16  	 * absolute remove movieclip
    17  	 * @param mc (MovieClip)
    18  	 * @return Void
    19  	 */
    20  	public static function rmClip(mc:MovieClip):Void {
    21  		mc.swapDepths( mc._parent.getNextHighestDepth( ) );
    22  		mc.removeMovieClip( );
    23  	}
    24  
    25  	/**
    26  	 * recursively set cacheAsBitmap property on top level clip and all children
    27  	 * since var i is a string use mc[i] to refer to the mc - recurses max 256 levels
    28  	 */
    29  	public static function recursiveCache(mc:MovieClip):Void {
    30  		mc.cacheAsBitmap = true;
    31  		for (var i in mc) {
    32  			if (typeof (mc[i]) == "movieclip") {
    33  				MovieClipUtils.recursiveCache( mc[i] );
    34  			}
    35  		}
    36  	}
    37  
    38  	/**
    39  	 * simple HitTest wrapper
    40  	 * @param mc mc (MovieClip)
    41  	 * @return Boolean
    42  	 */
    43  	public static function hitTest(mc:MovieClip):Boolean {
    44  		return (mc.hitTest( _root._xmouse, _root._ymouse, true ));
    45  	}
    46  
    47  	private function MovieClipUtils() {
    48  	}
    49  }