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

  1. package mx.utils
  2. {
  3.    import flash.display.DisplayObject;
  4.    import flash.geom.Point;
  5.    import flash.geom.Rectangle;
  6.    import mx.managers.ISystemManager;
  7.    
  8.    public class PopUpUtil
  9.    {
  10.       public function PopUpUtil()
  11.       {
  12.          super();
  13.       }
  14.       
  15.       public static function positionOverComponent(param1:DisplayObject, param2:ISystemManager, param3:Number, param4:Number, param5:Number = NaN, param6:Point = null, param7:Point = null, param8:Boolean = true) : Point
  16.       {
  17.          var _loc13_:Point = null;
  18.          var _loc14_:Number = NaN;
  19.          var _loc15_:Rectangle = null;
  20.          var _loc16_:Point = null;
  21.          var _loc17_:Point = null;
  22.          var _loc9_:ISystemManager = param2.topLevelSystemManager;
  23.          var _loc10_:DisplayObject = _loc9_.getSandboxRoot();
  24.          var _loc11_:Number = 0;
  25.          var _loc12_:Number = 0;
  26.          if(param6)
  27.          {
  28.             _loc11_ = param6.x;
  29.             _loc12_ = param6.y;
  30.          }
  31.          else
  32.          {
  33.             if(!param7)
  34.             {
  35.                param7 = new Point(0,0);
  36.             }
  37.             _loc13_ = _loc10_.globalToLocal(param1.localToGlobal(param7));
  38.             _loc11_ = _loc13_.x;
  39.             _loc12_ = _loc13_.y;
  40.          }
  41.          if(!isNaN(param5))
  42.          {
  43.             _loc14_ = _loc10_.globalToLocal(param1.localToGlobal(new Point(0,param5))).y;
  44.             _loc12_ = _loc14_ - param4 / 2;
  45.          }
  46.          if(param8)
  47.          {
  48.             _loc15_ = _loc9_.getVisibleApplicationRect(null,true);
  49.             _loc16_ = _loc10_.globalToLocal(_loc15_.topLeft);
  50.             _loc17_ = _loc10_.globalToLocal(_loc15_.bottomRight);
  51.             _loc11_ = Math.max(_loc16_.x,Math.min(_loc17_.x - param3,_loc11_));
  52.             _loc12_ = Math.max(_loc16_.y,Math.min(_loc17_.y - param4,_loc12_));
  53.          }
  54.          return new Point(_loc11_,_loc12_);
  55.       }
  56.    }
  57. }
  58.  
  59.