Okay, rather than try to explain this crazily, here's a visual example of 
something I've done:

http://www.nationaljournal.com/njonline/hc_20100322_8844.php

The graphic loads an SVG file and parses it into Degrafa GeometryGroups (I 
basically followed their map example here: 
http://www.degrafa.org/source/DegrafaMapSample/DegrafaMapDemo.html, but made an 
empty "Geography" class so I could fill it with path and other data and get it 
out later). It pushes each GeomtryGroup into a Surface. The Surface listens for 
a click event, and finds out what GeometryGroup was clicked on using the 
event.target. The whole thing is wrapped in QuietlyScheming's Landscape 
component so it can zoom in on the clicked GeometryGroup. 

Trying to port this to Flex 4 / FXG has proven difficult. The only way I can 
get the SVG to display correctly is to turn my GeometryGroups into Paths 
(making them Graphics causes layout chaos) and shove them into a single Graphic 
instance. The problem is that the Paths don't dispatch any events (can't listen 
for a click, rollover, anything). And as far as I know, there's no way to 
figure out which Path was clicked on if you're listening to the Graphic 
instance.

Am I missing something obvious? Does anyone have an idea how I should be 
thinking about porting this over? Am I doing it wrong entirely? I haven't spent 
too long on it, but it's proven to be frustrating (Would I be better off 
fiddling with the Degrafa source to get it to compile under Flex 4?)

Any suggestions welcome.

Charlie 

Reply via email to