Now I understand. Thank you very much! =)

2017-04-01 17:48 GMT+03:00 Peter Uhnak <i.uh...@gmail.com>:

> Hi,
>
> I wanted to point you to the new Spec book ( http://files.pharo.org/books-
> pdfs/spec/2017-01-23-SpecBooklet.pdf ), but apprently it's not there.
>
> Many Spec widgets have examples accompanying them, so always check class
> side (not for all though). For TreeModel you can see couple there - good
> for playing around; e.g.
>
> exampleWithNoSpecifiedNodes
>         "self exampleWithNoSpecifiedNodes"
>         TreeModel new
>                 roots: (1 to: 5);
>                 childrenBlock: [ :item | 1+item to: 5+item ];
>                 openWithSpec
>
> You specify the initial data (root nodes) via the `roots:` message.
> The `childrenBlock:` then specifies how one would retrieve data given a
> particular node; note that this  applies to _any node_, not just the root
> ones; so you can have potentially infinitely deep trees.
>
> A more complex example could be this (this is awful code for demonstration
> only ;):
>
> TreeModel new
>         roots: {#parent. #childless. 20. #root -> #(a b c)};
>         childrenBlock: [ :item |
>                 item isSymbol ifTrue: [
>                         item = #parent
>                                 ifTrue: [ #(child1 child2) ]
>                                 ifFalse: [ #() ]
>                 ] ifFalse: [
>                         item isNumber
>                                 ifTrue: [ {item + 2. item ** 2} ]
>                                 ifFalse: [ "association" item value ]
>                 ]
>         ];
>         openWithSpec
>
>
> Peter
>
> On Sat, Apr 01, 2017 at 06:49:41AM -0700, chrismihaylyk wrote:
> > Hi!
> >
> > Could anyone explain me how works childrenBlock: method from TreeModel?
> > step-by-step.
> > What data it operates? How makes a result?
> >
> > Thanks a lot? Khrystyna.
> >
> >
> >
> >
> >
> > --
> > View this message in context: http://forum.world.st/How-
> childrenBlock-in-TreeModel-works-tp4940884.html
> > Sent from the Pharo Smalltalk Users mailing list archive at Nabble.com.
> >
>
>

Reply via email to