Hi cairngorm coders, is there a way to help me out?
cu masu On Sat, Jul 12, 2008 at 11:51 PM, Sebastian Mohr <[EMAIL PROTECTED]> wrote: > Hi Alex, > > when I call the CairngormEvent > the first time just like this: > > new LoadTestEvent().dispatch(); > > the moduleReadyHandler - method > will not be called. But when I call the > LoadTestEvent a second time, once > again, just like this: > > new LoadTestEvent().dispatch() > > the moduleReadyHandler - method > will be successfully called. > > I believe that the two EventListeners: > > ModuleEvent.READY and > ModuleEvent.ERROR > > are not registered correctly in the first place. > But I don't understand why!? Maybe there is > an issue related to the FrontController? > > Thank you, > masu > > > > On 7/12/08, Alex Harui <[EMAIL PROTECTED]> wrote: >> >> I'm not sure I see the event logic you're talking about. >> >> >> ------------------------------ >> >> *From:* [email protected] [mailto:[EMAIL PROTECTED] *On >> Behalf Of *Sebastian Mohr >> *Sent:* Saturday, July 12, 2008 9:22 AM >> *To:* [email protected] >> *Subject:* Re: [flexcoders] Module hell... Flex 3 >> >> >> >> Hi there, >> >> I have the same problem as *dbronk *mentioned >> (see below) in conjunction with Cairngorm 2.2.1. >> >> I always have to dispatch the LoadTestEvent >> twice to make the LoadTestCommand calling >> the moduleReadyHandler-method. here is the >> code: >> >> package com.test >> { >> import com.adobe.cairngorm.commands.ICommand; >> import com.adobe.cairngorm.control.CairngormEvent; >> >> import flash.system.ApplicationDomain; >> >> import mx.events.ModuleEvent; >> import mx.modules.IModuleInfo; >> import mx.modules.ModuleManager; >> >> public class LoadTestCommand implements ICommand >> { >> private var moduleInfo:IModuleInfo; >> >> public function LoadTestCommand() >> { >> moduleInfo = ModuleManager.getModule('TestModule.swf'); >> moduleInfo.addEventListener(ModuleEvent.READY, >> moduleReadyHandler); >> moduleInfo.addEventListener(ModuleEvent.ERROR, >> moduleErrorHandler); >> } >> >> public function execute(event:CairngormEvent):void >> { >> moduleInfo.load(ApplicationDomain.currentDomain); >> } >> >> public function moduleReadyHandler(e:ModuleEvent) : void >> { >> trace('SUCCESS'); >> } >> >> public function moduleErrorHandler(e:ModuleEvent) : void >> { >> trace('ERROR'); >> } >> } >> } >> >> Is there a solution to dispatch the event only once >> to make the Command loading the module? >> >> Thank you, >> masu >> >> >> On 1/28/08, *dbronk* <[EMAIL PROTECTED]> wrote: >> >> I'm trying to get something very basic to work with modules. I have >> my app and two swf modules (Form1.swf and Form2.swf). Each test >> module simply has a couple TextInput fields. I have also extended >> Module so I can follow what is going on and I will be adding custom >> code later. MyModule extends Module has: >> >> public function MyModule() { >> super(); >> trace("Module constructor"); >> addEventListener(FlexEvent.INITIALIZE, onInitialize); >> } >> >> protected function onInitialize(event:Event) : void { >> trace("Module.onInit: " + this.toString()); >> dispatchEvent(new BaseEvent("moduleLoaded", this, true, true)); >> } >> >> Very basic. I want to be notified when the Module is initialized. >> >> When I have the following code inline to a button click which will >> load the module it works fine >> >> var moduleLoader : ModuleLoader = new ModuleLoader(); >> moduleLoader.id = moduleName; >> moduleLoader.url = moduleName; >> moduleLoader.loadModule(); >> moduleLoader.addEventListener("moduleLoaded", onModuleLoaded); >> moduleStackChild = moduleLoader; >> moduleStack.addChild(moduleStackChild); >> moduleMap.put(moduleName, moduleStackChild); >> >> My onModuleLoaded function gets called. >> >> Now for the issue. If I take this code and place it into a common >> object it no longer works THE FIRST TIME. I have two buttons, one to >> load Form1.swf and the other to load Form2.swf. When this code to >> load the module is in a separate class, it doesn't matter if I click >> button 1 or 2 first. It simply will not work on the first click. >> Second click and beyond work fine. Also, in debug mode, works great >> every time. What happens is that the last thing that runs is the >> loadModule() command. The constructor on MyModule never executes on >> the first execution. Future executions work fine. >> >> I'm hoping I explained this good enough as it is very strange. But I >> definitely want to have this function in my util classes and not have >> to duplicate the code all over the place. >> >> Suggestions? >> >> Thanks, >> Dale >> >> >> >> > >

