티스토리 뷰

728x90
반응형
이번 클래스는 fla에 있는 Linkage class를 연동시켜주는 유틸 클래스이다.
나름 많이 쓰는 클래스이기도 하다. 여태 몇 번의 수정이 있긴 했지만 많은 변화는 없었다.
더 좋은 방법도 있을거라 생각되지만 아직까지 나름 쓸만하다.

 
package oddeye.utils
{

    import flash.system.ApplicationDomain;
    import flash.utils.getDefinitionByName;
    import flash.utils.getQualifiedClassName;
    import flash.utils.getQualifiedSuperclassName;


    public class DefineClass
    {
        
		/**
		 * 라이브러리 클래스 연동
		 * @param	name
		 * @return
		 */
        public static function getLibraryClass( name:String ):MovieClip
		{
			var ReferClass:Class = DefineClass.getClass( name );
			
			return new ReferClass();
		}
		
        /**
         * 클래스 인식시키기
         * @param name
         * @return
         *
         */
        public static function getClass( name:String ):Class
        {
            return Class( getDefinitionByName( name ));
        }


        /**
         * 클래스 이름 찾기
         * @param obj
         * @return
         *
         */
        public static function getClassName( obj:* ):String
        {
            return getQualifiedClassName( obj );
        }


        /**
         * 최상위 클래스 찾기
         * @param obj
         * @return
         *
         */
        public static function getSuperClass( obj:* ):String
        {
            return getQualifiedSuperclassName( obj );
        }


        /**
         * 같은 도메인내의 외부 swf의 클래스 인식
         * @param domain
         * @param name
         * @return
         *
         */
        public static function getDomainClass( domain:ApplicationDomain, name:String ):Class
        {
            return Class( domain.getDefinition( name ));
        }
    }
}
728x90
반응형
댓글