| <?xml version="1.0" encoding="utf-8"?> |
| <!-- |
| |
| Licensed to the Apache Software Foundation (ASF) under one or more |
| contributor license agreements. See the NOTICE file distributed with |
| this work for additional information regarding copyright ownership. |
| The ASF licenses this file to You under the Apache License, Version 2.0 |
| (the "License"); you may not use this file except in compliance with |
| the License. You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, software |
| distributed under the License is distributed on an "AS IS" BASIS, |
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| See the License for the specific language governing permissions and |
| limitations under the License. |
| |
| --> |
| <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" xmlns="*" |
| paddingLeft="0" paddingRight="0" paddingTop="0" paddingBottom="0" |
| layout="absolute" |
| height="375" |
| width="500" |
| applicationComplete="setAppEnd()" > |
| |
| |
| <mx:SWFLoader id="ldr" complete="subappLoaded(event)" init="show(event)" ioError="show(event)" securityError="show(event)"/> |
| |
| <mx:Script> |
| <![CDATA[ |
| /** |
| In conjunction with Runner, this loads test swfs. |
| Runner is invoked with a shell_swf argument |
| (which should be mustella.dir + genericLoad.swf), |
| it launches this swf, which calls Runner, asking for the nextSwf to load. |
| |
| The response from Runner is a url with a swf, such as |
| file:///c|my.swf or |
| http://localhost/my.swf |
| |
| |
| **/ |
| |
| |
| import flash.net.URLLoader; |
| import flash.net.URLRequest; |
| |
| |
| private var urlLoader:URLLoader = null; |
| private var frontURL:String = null; |
| private var domain:String = null; |
| |
| |
| public function setAppEnd():void |
| { |
| |
| /// we call Runner for a swf to run. Call within the domain |
| var tmp:String = root.loaderInfo.url; |
| frontURL = tmp.substring (0, tmp.indexOf (":")); |
| domain = tmp.substring (tmp.indexOf (":")+3); |
| domain = domain.substring (0, domain.indexOf ("/")); |
| |
| var reqStr:String = "http://localhost:9999/nextSwf"; |
| |
| if (frontURL == "http") |
| { |
| reqStr = "http://" + domain + ":9999/nextSwf"; |
| } |
| |
| |
| |
| trace ("genericLoad request: "+ reqStr); |
| |
| var req:URLRequest = new URLRequest(reqStr); |
| urlLoader = new URLLoader(); |
| urlLoader.addEventListener("complete", completeHandler); |
| urlLoader.addEventListener("ioerror", ioerrorHandler); |
| urlLoader.addEventListener("securityError", ioerrorHandler); |
| urlLoader.load(req); |
| |
| |
| |
| } |
| private function show(event:Event):void |
| { |
| trace ("genericLoad: " + event); |
| |
| } |
| |
| private function completeHandler(event:Event):void |
| { |
| var data:String = urlLoader.data; |
| trace ("genericLoad: data to load: " + data); |
| ldr.source = data; |
| |
| |
| } |
| |
| public function ioerrorHandler(event:Event):void |
| { |
| // hosed |
| trace ("Error fetching the swf name to load: " +event); |
| |
| } |
| |
| public function subappLoaded(event:Event):void |
| { |
| show(event); |
| callLater(oneLater); |
| } |
| |
| public function oneLater():void |
| { |
| trace("oneLater"); |
| callLater(twoLater); |
| } |
| |
| public function twoLater():void |
| { |
| trace("twoLater"); |
| StyleManager.mx_internal::stylesRoot = null; |
| callLater(threeLater); |
| } |
| |
| public function threeLater():void |
| { |
| trace("threeLater"); |
| callLater(fourLater); |
| } |
| |
| public function fourLater():void |
| { |
| trace("fourLater"); |
| } |
| ]]> |
| </mx:Script> |
| |
| |
| </mx:Application> |