[Pharo-dev] Using TreeModel>>selectAll

Stéphane Ducasse stephane.ducasse at inria.fr
Thu Dec 12 04:53:36 EST 2013


TreeMorph

On Dec 12, 2013, at 10:27 AM, Benjamin <Benjamin.VanRyseghem.Pharo at gmail.com> wrote:

> Of ?
> 
> Ben
> 
> On 12 Dec 2013, at 08:11, Stéphane Ducasse <stephane.ducasse at inria.fr> wrote:
> 
>> In the midterm 
>> 
>> would it not be better to start a new implementation?
>> 
>> Stef
>> On Dec 11, 2013, at 11:18 PM, Benjamin <Benjamin.VanRyseghem.Pharo at gmail.com> wrote:
>> 
>>> That’s the default behaviour
>>> 
>>> I was thinking today of introducing a special one which act as you described
>>> 
>>> Ben
>>> 
>>> On 11 Dec 2013, at 21:49, Nicolai Hess <nicolaihess at web.de> wrote:
>>> 
>>>> One thing I didn't understand is, are valueholders supposed to announce changes, even if
>>>> the "value" didn't changed?
>>>> 
>>>> |log node |
>>>> log := OrderedCollection new.
>>>> node:=
>>>> TreeNodeModel new 
>>>> content: $a;
>>>> whenSelectedChanged:[:item | self halt.log add:item];
>>>> selected: true;
>>>> selected: true;
>>>> selected: true.
>>>> log  
>>>> 
>>>> will log three times, even the value (selected=true) didn't changed at all.
>>>> (or at most one if "selected" is initialized with false).
>>>> 
>>>> Nicolai
>>>> 
>>>> 
>>>> 
>>>> 2013/12/9 Martin Dias <tinchodias at gmail.com>
>>>> thanks for your help, Ben
>>>> 
>>>> On Mon, Dec 9, 2013 at 11:15 AM, Benjamin
>>>> <Benjamin.VanRyseghem.Pharo at gmail.com> wrote:
>>>> > I am still chasing why it’s executed three times
>>>> >
>>>> > Must be an issue in the info propagation.
>>>> >
>>>> > Ben
>>>> >
>>>> > On 09 Dec 2013, at 06:48, Martin Dias <tinchodias at gmail.com> wrote:
>>>> >
>>>> > Hi, I'm back with more annoying questions :)
>>>> >
>>>> > Using #whenSelectedItemsChanged:, I see that the block is evaluated a lot of
>>>> > times:
>>>> >
>>>> > log := OrderedCollection new.
>>>> > roots := #(1 2) collect: [ :each |
>>>> > TreeNodeModel new
>>>> > content: each;
>>>> > selected: true;
>>>> > yourself ].
>>>> >
>>>> > TreeModel new
>>>> > roots: roots;
>>>> > multiSelection: true;
>>>> > whenSelectedItemsChanged: [ :items |
>>>> > log add: items ];
>>>> > openWithSpec.
>>>> > log ---> an OrderedCollection(#() an OrderedCollection(1) an
>>>> > OrderedCollection(1) an OrderedCollection(1 2) an OrderedCollection(1 2) an
>>>> > OrderedCollection(1 2))
>>>> >
>>>> > I'd expect only one evaluation... is it a bug or a feature?
>>>> >
>>>> > cheers,
>>>> > Martín
>>>> >
>>>> >
>>>> > On Sun, Dec 8, 2013 at 12:22 AM, Martin Dias <tinchodias at gmail.com> wrote:
>>>> >>
>>>> >> aha! thanks
>>>> >>
>>>> >> Martín
>>>> >>
>>>> >> On Sat, Dec 7, 2013 at 10:33 AM, Benjamin
>>>> >> <Benjamin.VanRyseghem.Pharo at gmail.com> wrote:
>>>> >> > roots := #(1 2 3) collect: [ :e | TreeNodeModel new content: e ;
>>>> >> > yourself ].
>>>> >> >
>>>> >> > TreeModel new
>>>> >> >  roots: roots;
>>>> >> >  multiSelection: true;
>>>> >> >  openWithSpec.
>>>> >> >
>>>> >> > roots third
>>>> >> > selected: true;
>>>> >> > takeHighlight
>>>> >> >
>>>> >> > Ben
>>>> >> >
>>>> >> > On 07 Dec 2013, at 05:44, Martin Dias <tinchodias at gmail.com> wrote:
>>>> >> >
>>>> >> > ouch! thanks Ben.
>>>> >> >
>>>> >> > Another related question: is there any way of selecting an arbitrary
>>>> >> > item? I tried (among others) with:
>>>> >> >
>>>> >> > TreeModel new
>>>> >> >  roots: #(1 2 3);
>>>> >> >  multiSelection: true;
>>>> >> >  openWithSpec;
>>>> >> >  selection: 3
>>>> >> >
>>>> >> > without success.
>>>> >> >
>>>> >> > Cheers,
>>>> >> > Martín
>>>> >> >
>>>> >> >
>>>> >> >
>>>> >> > On Thu, Dec 5, 2013 at 4:17 PM, Benjamin
>>>> >> > <Benjamin.VanRyseghem.Pharo at gmail.com> wrote:
>>>> >> >
>>>> >> > your tree here is single selection so it will not work
>>>> >> >
>>>> >> > TreeModel new
>>>> >> > roots: #(1 2 3);
>>>> >> > multiSelection: true;
>>>> >> > openWithSpec;
>>>> >> > selectAll
>>>> >> >
>>>> >> > Ben
>>>> >> >
>>>> >> > On 05 Dec 2013, at 15:38, Martin Dias <tinchodias at gmail.com> wrote:
>>>> >> >
>>>> >> > Hi,
>>>> >> >
>>>> >> > I'm not sure how this method should be used. I tried in different
>>>> >> > ways, for example:
>>>> >> >
>>>> >> > TreeModel new
>>>> >> >   roots: #(1 2 3);
>>>> >> >   selectAll;
>>>> >> >   openWithSpec
>>>> >> >
>>>> >> > But always the items are unselected. Is it a bug? or I didn't find the
>>>> >> > way to use it?
>>>> >> >
>>>> >> > Thanks,
>>>> >> > Martín
>>>> >> >
>>>> >> >
>>>> >> >
>>>> >> >
>>>> >
>>>> >
>>>> >
>>>> 
>>>> 
>>> 
>> 
> 

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


More information about the Pharo-dev mailing list