Wow, I found it.  Unsurprisingly it was my fail...our repository
didn't have the right version of the ArcGIS library, while Flash
Builder did.  I noticed the InfoWindow was
"com.esri.ags.components.InfoWindow" in the link report, but Flash
Builder thought it was
"com.esri.ags.components.supportClasses.InfoWindow".  Apparently it
got moved in the new ArcGIS version.

At least I learned more about flex mojos in the process.

On Nov 8, 5:58 am, velo <[email protected]> wrote:
> Also take a look on faq.  There is a tip there on how to proceed when
> things work on FB but not at FM
>
> Sent from iPad.
>
> On Nov 7, 7:35 pm, alreit <[email protected]> wrote:
>
>
>
>
>
>
>
> > Hi everyone.
>
> > I'm having an issue with skinning a component in a .swc library in my
> > project.  When using Flash Builder 4.5.1 I don't have the issue, but
> > when I try to compile the project with maven I'm running into some
> > issues.  I've tried 2 workarounds, and both fail at the flex mojos
> > stage, so I was hoping one of you clever folks could give me some
> > advice.
>
> > I use a lot of SkinnableComponents in the app, and all the skins are
> > set in a .css file which is loaded via a <style source="style.css"/>
> > declaration in the top level application file.  The app is based
> > heavily on geographic mapping, and I'm using the ESRI API for most of
> > the mapping stuff.  The ESRI .swc is loaded via a dependency:
>
> > ...
> > <dependency>
> >   <groupId>com.esri.ags</groupId>
> >   <artifactId>agslib</artifactId>
> >   <version>2.2-2010-12-08</version>
> >   <type>swc</type>
> > </dependency>
> > ...
>
> > Now what I need to do is skin the InfoWindow component from the ESRI
> > ArcGIS library, but flex mojos won't let me do it.  I built a simple
> > skin .mxml file with the following:
>
> > ...
> > <!-- host component -->
> > <fx:Metadata>
> >   [HostComponent("com.esri.ags.components.supportClasses.InfoWindow")]
> > </fx:Metadata>
> > ...
>
> > and added this to my style.css file:
>
> > ...
> > esri|InfoWindow {
> >   skinClass: ClassReference("skin.InfoWindowSkin");}
>
> > ...
>
> > This works in Flash Builder with no complaints, but when I try to
> > compile via flex mojos, I get the following:
>
> > /Users/adam/Development/workspace 4.5.1/FROGS/frogs/src/themes/
> > style.css(21): Warning: Cannot resolve namespace qualified type
> > 'InfoWindow' in CSS selector 'InfoWindow'
>
> > esri|InfoWindow {
>
> > /Users/adam/Development/workspace 4.5.1/FROGS/frogs/src/skin/
> > InfoWindowSkin.mxml(-1):  Error: Type was not found or was not a
> > compile-time constant: InfoWindow.
>
> > That was attempt #1.  After some time poking around and not finding a
> > solution, I tried again with some hackery.  This time I changed the
> > HostComponent of the skin to a mx.core.Container, which is the base
> > class for an ESRI InfoWindow, and tried setting the skin via
> > actionscript:
>
> > ...
> > esriMap.infoWindow.setStyle("skinClass", Class(skin.InfoWindowSkin));
> > ...
>
> > Once again, this worked in Flash Builder, and when I compiled via flex
> > mojos it built successfully!  But then I actually ran the compile .swf
> > file, and the skin didn't load at all for the InfoWindow.  The
> > InfoWindow had it's default ESRI skin.  And I was sad again.
>
> > Anybody run into this before?  It doesn't seem like it'd be that rare
> > of an issue, but I haven't turned anything up anywhere that points
> > towards a solution.
>
> > Here's my version stuff:
> > <flexVersion>4.5.0.20967</flexVersion>
> > <flashVersion>10.2</flashVersion>
> > <flexmojosVersion>4.0-RC2</flexmojosVersion>
> > <javaVersion>1.6</javaVersion>
>
> > If there's any other information I can provide let me know.
>
> > Thanks,
> > Adam Reiter

-- 
You received this message because you are subscribed to the Google
Groups "Flex Mojos" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/flex-mojos

http://flexmojos.sonatype.org/

Reply via email to