<?xml version="1.0" encoding="utf-8"?>
<mx:ApolloApplication 
    xmlns:mx="http://www.adobe.com/2006/mxml"
    width="200"
    height="100" 
    layout="absolute"
    applicationComplete="onAppInit();">
    
    <mx:Script>
        <![CDATA[
            
            private var _launchWindow:NativeWindow;
            private var _customWindow:NativeWindow;
            
            private function onAppInit():void
            {
                _launchWindow = this.stage.window;
                _launchWindow.addEventListener( Event.CLOSE, onAppClose );
            }
            
            private function openCustomWindow( evt:MouseEvent ):void
            {
                if( _customWindow != null ) return;
                
                var options:NativeWindowInitOptions = new NativeWindowInitOptions();
                _customWindow = new NativeWindow( true, options );
                _customWindow.stage.align = StageAlign.TOP_LEFT;
                _customWindow.stage.scaleMode = StageScaleMode.NO_SCALE;
                _customWindow.title = "CustomWindow";
                _customWindow.stage.addChild( new CustomLabel() );
                _customWindow.addEventListener( Event.CLOSE, onWindowClose );
            }
            
            private function onWindowClose( evt:Event ):void
            {
                _customWindow = null;
            }
            
            private function onAppClose( evt:Event ):void
            {
                if( _customWindow != null ) _customWindow.close();
            }
            
        ]]>
    </mx:Script>
    
    <mx:Button id="windowBtn" 
        top="10" left="10" right="10" bottom="10"
        label="open custom window"
        click="openCustomWindow( event );">
    </mx:Button>
    
</mx:ApolloApplication>