[Pharo-dev] SVG described countries in Roassal

Stéphane Ducasse stephane.ducasse at inria.fr
Sun Nov 17 06:45:05 EST 2013


I see that you have a loooot of fun.
Now I have the impression that in the future version you should not expose ROSVGPath and others 
because there are at the importer level not Roassal. So why do you need to wrap them.
If there is something missing in SVGPath what is it?

Stef

> Hi!
> 
> I had fun understanding how countries may be described using SVG.
> Here is a first shoot:
> 
> <Screen Shot 2013-11-16 at 5.36.21 PM.png>
> 
> Moving the mouse above a country name highlight the country. You can now rehearse your geography.
> 
> The complete source code of this example is:
> 
> -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
> | view element nameComponent label |
> view := ROView new.
> 
> ROSVGPath countries do: [ :k |
> 	element := (ROSVGPath path: (ROSVGPath perform: k)) elementOn: k.
> 	view add: element.
> ]. 
> 
> nameComponent := ROElement new.
> ROSVGPath countries do: [ :k |
> 	label := ROLabel elementOn: k asString.
> 	label @ ROLightlyHighlightable.
> 	label on: ROMouseEnter do: [ :event | ROBlink highlight: (view elementFromModel: event model asSymbol) ].
> 	label on: ROMouseLeave do: [ :event | ROBlink unhighlight: (view elementFromModel: event model asSymbol) ].
> 	nameComponent add: label.
> ].
> ROGridLayout new
> 	gapSize: -3;
> 	lineItemsCount: 15;
> 	on: nameComponent elements.
> 	
> view add: nameComponent.
> nameComponent translateTo: 0 @ 400.
> 
> view openInWindowSized: 1000 @ 700
> -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
> 
> Cheers,
> Alexandre
> -- 
> _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
> Alexandre Bergel  http://www.bergel.eu
> ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
> 
> 
> 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.pharo.org/pipermail/pharo-dev_lists.pharo.org/attachments/20131117/646c0162/attachment-0002.html>


More information about the Pharo-dev mailing list