Here is example

Application:

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml";
layout="absolute">
     <mx:Script>
         <![CDATA[
             import mx.controls.Alert;
         ]]>
     </mx:Script>
     <mx:Button x="133" y="10" label="s1" id="button1"
click="{mod1.url='modules/m1.swf';mod1.loadModule();}"/>
     <mx:Button x="181" y="10" label="s2" id="button2"
click="{mod1.url='modules/m2.swf';mod1.loadModule();}"/>
     <mx:Canvas id="c1">
         <mx:ModuleLoader id="mod1" width="100%" height="100%" x="0"
y="100" loading="Alert.show('LOADING')" ready="Alert.show('READY')"/>
     </mx:Canvas>
</mx:Application>

Module1:

<?xml version="1.0" encoding="utf-8"?>
<mx:Module xmlns:mx="http://www.adobe.com/2006/mxml"; layout="absolute"
width="400" height="300" backgroundColor="green">
     <mx:VBox width="100%" height="100%">
         <mx:ViewStack x="0" y="0" id="viewstack1" width="100%"
height="100%">
             <mx:Canvas label="View 1" width="100%" height="100%">
                 <mx:Label text="View 1"/>
             </mx:Canvas>
             <mx:Canvas label="View 2" width="100%" height="100%">
                 <mx:Label text="View 2"/>
             </mx:Canvas>
         </mx:ViewStack>
         <mx:ToggleButtonBar dataProvider="viewstack1">
         </mx:ToggleButtonBar>
     </mx:VBox>
</mx:Module>


Module2:


<?xml version="1.0" encoding="utf-8"?>
<mx:Module xmlns:mx="http://www.adobe.com/2006/mxml"; layout="absolute"
width="400" height="300" backgroundColor="red">
     <mx:VBox width="100%" height="100%">
         <mx:ViewStack x="0" y="0" id="viewstack1" width="100%"
height="100%">
             <mx:Canvas label="View 1" width="100%" height="100%">
                 <mx:Label text="View 1"/>
             </mx:Canvas>
             <mx:Canvas label="View 2" width="100%" height="100%">
                 <mx:Label text="View 2"/>
             </mx:Canvas>
         </mx:ViewStack>
         <mx:ToggleButtonBar dataProvider="viewstack1">
         </mx:ToggleButtonBar>
     </mx:VBox>
</mx:Module>

Whel click button S1 - module loaded OK,
When Click button S2 - gives error:
TypeError: Error #1034: Type Coercion failed: cannot convert
mx.controls::[EMAIL PROTECTED] to mx.controls.ButtonBar.
     at
mx.skins.halo::ButtonBarButtonSkin/mx.skins.halo:ButtonBarButtonSkin::up\
dateDisplayList()
     at mx.skins::ProgrammaticSkin/validateDisplayList()
     at mx.managers::LayoutManager/::validateDisplayList()
     at mx.managers::LayoutManager/::doPhasedInstantiation()
     at Function/http://adobe.com/AS3/2006/builtin::apply()
     at mx.core::UIComponent/::callLaterDispatcher2()
     at mx.core::UIComponent/::callLaterDispatcher()
     at flash.utils::Timer/flash.utils:Timer::_timerDispatch()
     at flash.utils::Timer/flash.utils:Timer::tick()

in Debug mode even more fancy thing going on, when click at S1 gives
right away error:

VerifyError: Error #1014: Class mx.collections::IList could not be
found.
     at global$init()
     at ()[E:\!!Project\Flex\PicasaFlex\modules\m2.mxml:0]
     at Function/http://adobe.com/AS3/2006/builtin::call()
     at mx.core::ComponentDescriptor/get
properties()[E:\dev\flex\sdk\frameworks\projects\framework\src\mx\core\C\
omponentDescriptor.as:239]
     at
mx.core::Container/createComponentFromDescriptor()[E:\dev\flex_3_beta2\s\
dk\frameworks\projects\framework\src\mx\core\Container.as:3586]
     at
mx.core::Container/createComponentsFromDescriptors()[E:\dev\flex_3_beta2\
\sdk\frameworks\projects\framework\src\mx\core\Container.as:3522]
     at
mx.core::Container/mx.core:Container::createChildren()[E:\dev\flex_3_bet\
a2\sdk\frameworks\projects\framework\src\mx\core\Container.as:2624]
     at
mx.core::UIComponent/initialize()[E:\dev\flex_3_beta2\sdk\frameworks\pro\
jects\framework\src\mx\core\UIComponent.as:5144]
     at
mx.core::Container/initialize()[E:\dev\flex_3_beta2\sdk\frameworks\proje\
cts\framework\src\mx\core\Container.as:2561]
     at
modules::m2/initialize()[E:\!!Project\Flex\PicasaFlex\modules\m2.mxml:0]
     at
mx.core::UIComponent/http://www.adobe.com/2006/flex/mx/internal::childAd\
ded()[E:\dev\flex_3_beta2\sdk\frameworks\projects\framework\src\mx\core\\
UIComponent.as:5041]
     at
mx.core::Container/http://www.adobe.com/2006/flex/mx/internal::childAdde\
d()[E:\dev\flex_3_beta2\sdk\frameworks\projects\framework\src\mx\core\Co\
ntainer.as:3334]
     at
mx.core::Container/addChildAt()[E:\dev\flex_3_beta2\sdk\frameworks\proje\
cts\framework\src\mx\core\Container.as:2258]
     at
mx.core::Container/addChild()[E:\dev\flex_3_beta2\sdk\frameworks\project\
s\framework\src\mx\core\Container.as:2188]
     at
mx.modules::ModuleLoader/mx.modules:ModuleLoader::moduleReadyHandler()[E\
:\dev\flex_3_beta2\sdk\frameworks\projects\framework\src\mx\modules\Modu\
leLoader.as:339]
     at
flash.events::EventDispatcher/flash.events:EventDispatcher::dispatchEven\
tFunction()
     at flash.events::EventDispatcher/dispatchEvent()
     at
ModuleManager.as$25::ModuleInfoProxy/ModuleManager.as$25:ModuleInfoProxy\
::moduleEventHandler()[E:\dev\flex_3_beta2\sdk\frameworks\projects\frame\
work\src\mx\modules\ModuleManager.as:1025]
     at
flash.events::EventDispatcher/flash.events:EventDispatcher::dispatchEven\
tFunction()
     at flash.events::EventDispatcher/dispatchEvent()
     at
ModuleManager.as$25::ModuleInfo/readyHandler()[E:\dev\flex_3_beta2\sdk\f\
rameworks\projects\framework\src\mx\modules\ModuleManager.as:704]
     at
flash.events::EventDispatcher/flash.events:EventDispatcher::dispatchEven\
tFunction()
     at flash.events::EventDispatcher/dispatchEvent()
     at
mx.core::FlexModuleFactory/mx.core:FlexModuleFactory::update()[E:\dev\fl\
ex_3_beta2\sdk\frameworks\projects\framework\src\mx\core\FlexModuleFacto\
ry.as:321]
     at
mx.core::FlexModuleFactory/mx.core:FlexModuleFactory::docFrameHandler()[\
E:\dev\flex_3_beta2\sdk\frameworks\projects\framework\src\mx\core\FlexMo\
duleFactory.as:406]


Any ideas what is going on? may be I do something wrong?

Reply via email to