Actually, we don't recommend doing that.  It will solve lots of class 
definition problems, but the module will no longer unload.  If you don't care 
about unloading modules then that's fine.

Maybe the decoupling allowed the module to be unloaded.  Make sure something is 
keep a strong reference to something in the module otherwise it can go away.

It is hard to say how much a module can be optimized.  The only thing that 
matters is how many classes it has compared to the main app.  If you are using 
the framework RSL in the main app (which you should), then when you extern the 
framework RSL agains the module (don't use RSL linkage in modules) it should 
really shrink the SWF unless you've got tons of custom business logic or assets 
in the module.

I'm not going to Max this year.  LA isn't high on my list of places to go.

Alex Harui
Flex SDK Developer
Adobe Systems Inc.<http://www.adobe.com/>
Blog: http://blogs.adobe.com/aharui

From: flexcoders@yahoogroups.com [mailto:flexcod...@yahoogroups.com] On Behalf 
Of djhatrick
Sent: Tuesday, September 01, 2009 9:41 AM
To: flexcoders@yahoogroups.com
Subject: [flexcoders] Re: Modules and fonts vanishing is giving me the cramps



Very doubtful that I did that.

To be on the safe side, is having this inside my creationComplete event of 
every module a good idea? Yes.

var myLoaderContext:LoaderContext = new LoaderContext();
myLoaderContext.applicationDomain = ApplicationDomain.currentDomain;

I always make sure that my visual components for whatever module I am creating 
are only inside my module.

It was really weird, the puremvc, issue, it was just a reference to my model 
with with retrieveProxy inside of one of my shell commands. All I did was 
remove that reference and my fonts reapeared.

What I do is put all my commands in my shell, and use the puremvc 
shellModuleJuction paradigm, which cleanly, decouples any references to the 
modules directly through a nice event mechanism.

This is a pretty intense flex project. Off hand, say you have a module that 
checks in at 1.2 megs with out doing the link reports. When I do all the link 
stuff with a build script, what can I expect that to be reduced to? Any ideas, 
mostly it's datagrids and charts inside.

Also, looks like I am not going to make Adobe Max this year, :( I saw you speak 
last year.

Thanks,
Patrick

--- In flexcoders@yahoogroups.com<mailto:flexcoders%40yahoogroups.com>, Alex 
Harui <aha...@...> wrote:
>
> The rule for fonts in Flex is that whatever TextField or subclass of 
> TextFIeld (like DataGridItemRenderer) is displaying the font must be created 
> in the module containing the font. I haven't used pureMVC so I don't know how 
> it could break that. Most Flex components use a lookup scheme to figure out 
> which moduleFactory to use. Others like Charts and DataGrid need to use 
> ContextualClassFactory instead of the default ClassFactory. Could you have 
> changed something in there?
>
> Alex Harui
> Flex SDK Developer
> Adobe Systems Inc.<http://www.adobe.com/>
> Blog: http://blogs.adobe.com/aharui
>
> From: flexcoders@yahoogroups.com<mailto:flexcoders%40yahoogroups.com> 
> [mailto:flexcoders@yahoogroups.com<mailto:flexcoders%40yahoogroups.com>] On 
> Behalf Of djhatrick
> Sent: Monday, August 31, 2009 2:32 PM
> To: flexcoders@yahoogroups.com<mailto:flexcoders%40yahoogroups.com>
> Subject: [flexcoders] Re: Modules and fonts vanishing is giving me the cramps
>
>
>
> Alex,
>
> My problem I think is because i accessed my modules model directly from one 
> of my commands in my shell -- on accident... (using puremvc)
>
> Is kind of thing normal? Any reason to why this would make one of my fonts 
> disappear. I want to prevent accidents like this in the future, Link reports 
> are next on my hit-list with this project.
>
> Thanks for responding,
> Patrick
>
> --- In 
> flexcoders@yahoogroups.com<mailto:flexcoders%40yahoogroups.com><mailto:flexcoders%40yahoogroups.com>,
>  Alex Harui <aharui@> wrote:
> >
> > Most common scenario: you switched to using a bold font, but didn't embed 
> > the bold font, just the normal font.
> >
> > Second: The font didn't get embedded. Use -keep-generated-actionscript or 
> > -link-report to see if the font is really there
> >
> > Third: If fonts are in modules, make sure they are loaded and didn't get 
> > unloaded
> >
> > Alex Harui
> > Flex SDK Developer
> > Adobe Systems Inc.<http://www.adobe.com/>
> > Blog: http://blogs.adobe.com/aharui
> >
> > From: 
> > flexcoders@yahoogroups.com<mailto:flexcoders%40yahoogroups.com><mailto:flexcoders%40yahoogroups.com>
> >  
> > [mailto:flexcoders@yahoogroups.com<mailto:flexcoders%40yahoogroups.com><mailto:flexcoders%40yahoogroups.com>]
> >  On Behalf Of djhatrick
> > Sent: Monday, August 31, 2009 9:59 AM
> > To: 
> > flexcoders@yahoogroups.com<mailto:flexcoders%40yahoogroups.com><mailto:flexcoders%40yahoogroups.com>
> > Subject: [flexcoders] Re: Modules and fonts vanishing is giving me the 
> > cramps
> >
> >
> >
> > All of a sudden this happened again, to my modules, all my fonts are 
> > missing? I don't know how to restore my previous changes and see what 
> > simple change could have caused this. Other than replacing about 5 hours 
> > work and trying to re-add each change one at a time.
> >
> > On a scale of 1-10 for annoying problems this off the chart. I am not doing 
> > anything unusual here. I just made a few changes to some properties and 
> > collections and now I don't see any fonts.
> >
> > Any suggestions here?
> >
> > Thanks,
> > Patrick
> >
> > --- In 
> > flexcoders@yahoogroups.com<mailto:flexcoders%40yahoogroups.com><mailto:flexcoders%40yahoogroups.com><mailto:flexcoders%40yahoogroups.com>,
> >  Alex Harui <aharui@> wrote:
> > >
> > > Not sure I understood the problem, but the first thing to know about 
> > > sub-modules is that by default they load into sibling applicationdomains. 
> > > This is due to the way applicationdomains work. You can look at the 
> > > diagrams in the modules presentation on my blog to help visualize it.
> > >
> > > The main Flex app almost always has ModuleManager in it to support CSS 
> > > and Resource Modules. When you load a module, the main app's appDom is 
> > > the parent and the module gets loaded as a child of that appdom. That's 
> > > what we want, right? But the problem is that when that module tries to 
> > > load a sub-module, it is going to use the main apps' ModuleManager and 
> > > thus the sub-module loads as a child of the main app's appdom and not the 
> > > module's appdom and then sub-module can't see the module's classes. I'm 
> > > guessing that's your problem.
> > >
> > > The solution is to explicitly set the applicationDomain parameter when 
> > > loading the sub-module. But even that can be tricky because when you say 
> > > "new ApplicationDomain(ApplicationDomain.currentDomain)" if that code is 
> > > in a class loaded in the main app's appdom, currentDomain is the main 
> > > app's appdom. So be sure the code that calls load is in the module and 
> > > nowhere else.
> > >
> > > Maybe that'll help.
> > >
> > > Alex Harui
> > > Flex SDK Developer
> > > Adobe Systems Inc.<http://www.adobe.com/>
> > > Blog: http://blogs.adobe.com/aharui
> > >
> > > From: 
> > > flexcoders@yahoogroups.com<mailto:flexcoders%40yahoogroups.com><mailto:flexcoders%40yahoogroups.com><mailto:flexcoders%40yahoogroups.com>
> > >  
> > > [mailto:flexcoders@yahoogroups.com<mailto:flexcoders%40yahoogroups.com><mailto:flexcoders%40yahoogroups.com><mailto:flexcoders%40yahoogroups.com>]
> > >  On Behalf Of djhatrick
> > > Sent: Friday, August 07, 2009 10:13 AM
> > > To: 
> > > flexcoders@yahoogroups.com<mailto:flexcoders%40yahoogroups.com><mailto:flexcoders%40yahoogroups.com><mailto:flexcoders%40yahoogroups.com>
> > > Subject: [flexcoders] Modules and fonts vanishing is giving me the cramps
> > >
> > >
> > >
> > > Alex (or/and others)
> > >
> > > Here's my issue, I have a module that loads another module, a sub module. 
> > > I am trying to access the loaded module, the problem is that first, if I 
> > > add it to my shared code file, doesn't it compiled into the shell? or 
> > > just a reference....
> > >
> > > I can access methods on my module through it's public properties, but I 
> > > have to assign it as wildcard, "*"? Which works 90 percent of the time, 
> > > but once in a while the module's or it's properties come back as 
> > > undefined. So, I tried the shared code solution again, but then my fonts 
> > > mysteriously vanish out of my app.
> > >
> > > Help, I am gonna go smack my head with a hammer a few times, Thanks,
> > > Patrick
> > >
> >
>

Reply via email to