���
Well, with the refactoring Stef and I did at CampSmalltalk, blocks (as an action) are now supported for buttons.
I'll have to add some helpers (or make the existing ones agnostic) to TEasilyThemed for convenience though.

Regards, Gary
----- Original Message -----
From: laurent laffont
To: Pharo-project@lists.gforge.inria.fr
Sent: Tuesday, August 17, 2010 7:11 PM
Subject: Re: [Pharo-project] Pharocasts: Display Picasa photos


2010/8/17 Gary Chambers <gazzaguru2@btinternet.com>
Ask away if you'd like more examples of Morphic/Polymorph things...

I think everybody want to have (lot) more examples ;)

More seriously, on Pharocasts the GUI tab is the most clicked one by far (according to google analytics), so I suppose a lot of people want (including  me) to start by doing a little graphical app.  Polymorph seems cool, but aaarggghhh  almost no documentation. Indeed I'm just starting to feel the logic behind it so I will try to record more screencasts on it.
 
Even for me, that was the first time I used a Block as the model for a button! :-)

And I think that's how it should be for all callbacks: it's far easier to think (for me at least) and design by giving a block to an action than a selector and a model.


Laurent (who is waiting for more examples :)
 

Regards, Gary
----- Original Message -----
Sent: Monday, August 16, 2010 7:31 PM
Subject: Re: [Pharo-project] Pharocasts: Display Picasa photos

This example is really interesting, I've just learn a lot of things.

Laurent

On Mon, Aug 16, 2010 at 2:10 PM, Gary Chambers <gazzaguru2@btinternet.com> wrote:
Indeed, nice...

Here's an adaptation for Flickr...

| xmlStream xmlDoc photos builder clickBlock |
xmlStream := 'http://api.flickr.com/services/feeds/photos_public.gne?id=12018791@N06&lang=en-us&format=rss_200' asUrl retrieveContents contentStream.
xmlDoc := XMLDOMParser parseDocumentFrom: xmlStream.

photos := OrderedCollection new.
xmlDoc tagsNamed: #item do:
            [:item| | title thumbUrl photoUrl |
             title := (item firstTagNamed: #title) characterData.
             thumbUrl := ((item firstTagNamed: #media:thumbnail) attributeAt: #url) asUrl.
             photoUrl := ((item firstTagNamed: #media:content) attributeAt: #url) asUrl.
             photos add: title -> (Form fromBinaryStream: thumbUrl retrieveContents contentStream) -> photoUrl].

clickBlock := [:url :title | | scrollPane |
scrollPane := GeneralScrollPane new
 scrollTarget: (builder
 newImage: (Form fromBinaryStream: url retrieveContents contentStream)).
scrollPane openInWindow
 setLabel: title;
 extent: 600@400.
scrollPane color: Color transparent].

builder := UITheme builder.
((builder
  newRow: (photos collect:
                   [:aPhoto|
                    (builder
   newButtonFor: clickBlock
   getState: nil
   action: #value:value:
   arguments: {aPhoto value. aPhoto key key}
   getEnabled: nil
   label: ((builder newColumn: {
     builder newImage: aPhoto key value.
     builder newLabel: aPhoto key key})
     cellPositioning: #center;
     layoutInset: 10)
   help: nil)]))
wrapDirection: #topToBottom;
openInWindow)
 setLabel: (xmlDoc firstTagNamed: #title) characterData;
 extent: 700@680.


Regards, Gary

----- Original Message ----- From: "Germ��n Arduino" <garduino@gmail.com>
To: <Pharo-project@lists.gforge.inria.fr>
Cc: "A friendly place where any question about pharo is welcome" <pharo-users@lists.gforge.inria.fr>
Sent: Sunday, August 15, 2010 11:14 PM
Subject: Re: [Pharo-project] Pharocasts: Display Picasa photos



Excellent!

2010/8/15 laurent laffont <laurent.laffont@gmail.com>:
Learn:
- how to get data from an URL
- parse XML documents
- build a GUI to display photos with Polymorph
- how to prototype quickly with debugger and inspector
http://pharocasts.blogspot.com/2010/08/see-how-to-get-data-from-url-parse-xml.html
Cheers,
Laurent Laffont

http://pharocasts.blogspot.com/
http://magaloma.blogspot.com/

_______________________________________________
Pharo-project mailing list
Pharo-project@lists.gforge.inria.fr
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


_______________________________________________
Pharo-project mailing list
Pharo-project@lists.gforge.inria.fr
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


_______________________________________________
Pharo-project mailing list
Pharo-project@lists.gforge.inria.fr
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


_______________________________________________
Pharo-project mailing list
Pharo-project@lists.gforge.inria.fr
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


_______________________________________________
Pharo-project mailing list
Pharo-project@lists.gforge.inria.fr
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


_______________________________________________
Pharo-project mailing list
Pharo-project@lists.gforge.inria.fr
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project