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 ----- From: laurent laffont To: Pharo-project@lists.gforge.inria.fr 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=...' 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-xm... 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