home *** CD-ROM | disk | FTP | other *** search
/ Mac Easy 2012 April / ME_04_2012.iso / Video-Tutorial / iPhoto / media / player.swf / scripts / mx / utils / NameUtil.as < prev    next >
Encoding:
Text File  |  2011-11-11  |  2.6 KB  |  96 lines

  1. package mx.utils
  2. {
  3.    import flash.display.DisplayObject;
  4.    import flash.utils.getQualifiedClassName;
  5.    import mx.core.IRepeaterClient;
  6.    import mx.core.mx_internal;
  7.    
  8.    use namespace mx_internal;
  9.    
  10.    public class NameUtil
  11.    {
  12.       mx_internal static const VERSION:String = "4.5.0.20967";
  13.       
  14.       private static var counter:int = 0;
  15.       
  16.       public function NameUtil()
  17.       {
  18.          super();
  19.       }
  20.       
  21.       public static function createUniqueName(param1:Object) : String
  22.       {
  23.          if(!param1)
  24.          {
  25.             return null;
  26.          }
  27.          var _loc2_:* = getQualifiedClassName(param1);
  28.          var _loc3_:int = int(_loc2_.indexOf("::"));
  29.          if(_loc3_ != -1)
  30.          {
  31.             _loc2_ = _loc2_.substr(_loc3_ + 2);
  32.          }
  33.          var _loc4_:int = int(_loc2_.charCodeAt(_loc2_.length - 1));
  34.          if(_loc4_ >= 48 && _loc4_ <= 57)
  35.          {
  36.             _loc2_ += "_";
  37.          }
  38.          return _loc2_ + counter++;
  39.       }
  40.       
  41.       public static function displayObjectToString(param1:DisplayObject) : String
  42.       {
  43.          var _loc2_:String = null;
  44.          var _loc3_:DisplayObject = null;
  45.          var _loc4_:String = null;
  46.          var _loc5_:Array = null;
  47.          try
  48.          {
  49.             _loc3_ = param1;
  50.             while(_loc3_ != null)
  51.             {
  52.                if(_loc3_.parent && _loc3_.stage && _loc3_.parent == _loc3_.stage)
  53.                {
  54.                   break;
  55.                }
  56.                _loc4_ = "id" in _loc3_ && Boolean(_loc3_["id"]) ? _loc3_["id"] : _loc3_.name;
  57.                if(_loc3_ is IRepeaterClient)
  58.                {
  59.                   _loc5_ = IRepeaterClient(_loc3_).instanceIndices;
  60.                   if(_loc5_)
  61.                   {
  62.                      _loc4_ += "[" + _loc5_.join("][") + "]";
  63.                   }
  64.                }
  65.                _loc2_ = _loc2_ == null ? _loc4_ : _loc4_ + "." + _loc2_;
  66.                _loc3_ = _loc3_.parent;
  67.             }
  68.          }
  69.          catch(e:SecurityError)
  70.          {
  71.          }
  72.          return _loc2_;
  73.       }
  74.       
  75.       public static function getUnqualifiedClassName(param1:Object) : String
  76.       {
  77.          var _loc2_:String = null;
  78.          if(param1 is String)
  79.          {
  80.             _loc2_ = param1 as String;
  81.          }
  82.          else
  83.          {
  84.             _loc2_ = getQualifiedClassName(param1);
  85.          }
  86.          var _loc3_:int = int(_loc2_.indexOf("::"));
  87.          if(_loc3_ != -1)
  88.          {
  89.             _loc2_ = _loc2_.substr(_loc3_ + 2);
  90.          }
  91.          return _loc2_;
  92.       }
  93.    }
  94. }
  95.  
  96.