<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" 
               xmlns:s="library://ns.adobe.com/flex/spark" 
               xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600">
    <s:layout>
        <s:BasicLayout/>
    </s:layout>
    <fx:Declarations>
        <!-- 将非可视元素(例如服务、值对象)放在此处 -->
    </fx:Declarations>
    
    <fx:Script>
        <![CDATA[
            import mx.effects.Blur;
            import mx.effects.Move;
            import mx.effects.Resize;
            import mx.effects.easing.Elastic;
            import mx.events.TweenEvent;
            import mx.managers.PopUpManager;
            
        public function popuphandler():void
        {
            var basewindow:BaseWindow = new BaseWindow();
            
            basewindow.title = "drag me please";
            basewindow.width = 600;
            basewindow.height = 400;
//            basewindow.addEventListener(MouseEvent.MOUSE_DOWN, alert_mouseDown, true);
            /*获取弹出的位置*/
            var _x:int = (parent.width - basewindow.width)/2;
            var _y:int = (parent.height - basewindow.height)/2;
            
            /*初始化我们实现效果要用到的实例*/
            var movePop:Move = new Move();
//            movePop.easingFunction = Elastic.easeInOut;
            movePop.duration = 800;
            
            var resize:Resize = new Resize();
            resize.duration = 800;
//            resize.easingFunction = Elastic.easeInOut;
            
            var blur:Blur = new Blur();
            blur.duration = 800;
            blur.blurXFrom = 30;
            blur.blurXTo = 0;
            blur.blurYFrom = 30;
            blur.blurYTo = 0;
            
            /*开始动画过程*/
            movePop.xFrom = (parent.width - 10)/2;
            movePop.yFrom = (parent.height - 10)/2;
            movePop.xTo = _x;
            movePop.yTo = _y;
            resize.widthFrom = 50;
            resize.heightFrom= 50;
            resize.heightTo = basewindow.height;
            resize.widthTo = basewindow.width;
            
            /*开始动画的时间*/
//            movePop.startDelay = 3000;
//            resize.startDelay = 3000;
            
            /*设置动画目标*/
            blur.target = basewindow;
            movePop.target = basewindow;
            resize.target = basewindow;
            PopUpManager.addPopUp(basewindow, this, true);
//            PopUpManager.centerPopUp(basewindow);
            
            blur.play();
            movePop.play();
            resize.play();
//            basewindow = PopUpManager.createPopUp(this, BaseWindow, true) as BaseWindow;
//            PopUpManager.centerPopUp(basewindow);
            basewindow.isPopUp = false;
            //removepop进行的特效,如果需要的话
            //blur.addEventListener(TweenEvent.TWEEN_END,function removepop():void{PopUpManager.removePopUp(basewindow);});
        }
            
            
        private function alert_mouseDown(evt:MouseEvent):void {
            evt.stopImmediatePropagation();
        }
            
        ]]>
    </fx:Script>
    <s:Button label="pop-up google" click="popuphandler();"/>
</s:Application>