Hi Alexandre, thanks for asking. The script I posted has an issue: when you expand 2 or 3 nested nodes, some unwanted lines appear. It is possible to live with that, anyway.
 
It could be very useful in serialization because sometimes you start traversing an object and you end up traversing much more objects you wanted. So Mondrian could help to find the problematic objects.

On Mon, Nov 14, 2011 at 3:29 PM, Tudor Girba <tudor@tudorgirba.com> wrote:
It would be great to have the ability of affecting the parent graph of a node, not just the subgraph of a node.
 
+1
 
Like this we could truly implement the expandable trees.
 
Additionally, it would be nice to express the graph more concisely. I am a newbie in Mondrian so maybe it has not sense what I imagine (following the example with Collection hierarchy):
 
view shape expandableNode childrenNodesWith: [:aNodeToExpand | aExpandableNode subclasses].
view node: Collection.
view edgesFrom: #superclass.
 
is it possible to add only the root at first and the rest when nodes expand?
 
Martin
 

Doru


On 14 Nov 2011, at 17:30, Alexandre Bergel wrote:

> Martin, are you happy with what Mondrian offers currently? Is there anything else you would like to see?
>
> Alexandre
>
>
> On 8 Nov 2011, at 15:50, Martin Dias wrote:
>
>> Johan and Alexandre: Thank you, was funny to play with Mondrian Easel and to see AspectMaps.
>> Doru: You was right, I had in mind something like a tree. I made a proof script using blocks for recursion... look:
>>
>> | blockForClass blockForExpandable blockForLeaf |
>> blockForClass := [:aClass |
>>      blockForLeaf value: aClass.
>>      aClass subclasses do: [:aSubclass |
>>              (aSubclass subclasses isEmpty
>>                      ifTrue: [blockForLeaf]
>>                      ifFalse: [blockForExpandable])
>>                              value: aSubclass ] ].
>> blockForLeaf := [:aClass |
>>      view shape label text: #name.
>>      view node: aClass.
>>      view edgesFrom: #superclass.
>>      view horizontalTreeLayout ].
>> blockForExpandable := [:aClass |
>>      view interaction
>>              whenClickingUpdateNode: [:x | blockForClass value: x ]
>>              withLayoutUpdate: true.
>>      view shape rectangle
>>              dashedBorder;
>>              size: 10;
>>              borderColor: Color lightGray.
>>      view node: aClass.
>>      view edgesFrom: #superclass.
>>      view horizontalTreeLayout ].
>> blockForClass value: Collection.
>>
>>
>>
>>
>>
>> On Tue, Nov 8, 2011 at 4:16 AM, Tudor Girba <tudor@tudorgirba.com> wrote:
>> Hi,
>>
>> I think Martin was asking for a script that would add nodes to the parent graph, not to the inner graph of a selected node.
>>
>> The idea is to have an expandable graph that would behave similarly to a tree morph widget (when you expand a node, the whole tree becomes larger).
>>
>> Cheers,
>> Doru
>>
>>
>>
>> On 8 Nov 2011, at 04:28, Alexandre Bergel wrote:
>>
>>>> During Smalltalks conference, we started with Mariano and Doru to do an experiment: to use Mondrian to visualize the graph that is being serialized with Fuel.
>>>
>>> Cool!
>>>
>>>> 1) Is it fine how I installed Mondrian?
>>>>
>>>> Gofer it
>>>>     squeaksource: 'Mondrian';
>>>>     package: 'ConfigurationOfMondrian';
>>>>     load.
>>>> (ConfigurationOfMondrian project latestVersion) load.
>>>
>>> Yes.
>>>
>>>> 2) For large graphs, I would like to show them lazily, maybe drawing some expandable nodes (+). Do you understand what I mean? Is that possible?
>>>
>>> Try this in an easel:
>>> -=-=-=-=-=-=-=-=-=-=-=-=
>>> view shape rectangle size: 20.
>>> view interaction action: #inspect.
>>> view interaction
>>>      whenEnteringUpdateNode: [:node |
>>>              view interaction forwarder.
>>>              view nodes: (Set allSubclasses).
>>>                      view interaction forwarder.
>>>              view edgesFrom: #superclass..
>>>              view treeLayout
>>>              ]
>>>      whenLeavingUpdateNode:  [:node | ]
>>>      withLayoutUpdate: true.
>>> view nodes: (1 to: 3)
>>> -=-=-=-=-=-=-=-=-=-=-=-=
>>>
>>> Cheers,
>>> Alexandre
>>> --
>>> _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
>>> Alexandre Bergel  http://www.bergel.eu
>>> ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
>>>
>>>
>>>
>>>
>>>
>>> _______________________________________________
>>> Moose-dev mailing list
>>> Moose-dev@iam.unibe.ch
>>> https://www.iam.unibe.ch/mailman/listinfo/moose-dev
>>
>> --
>> www.tudorgirba.com
>>
>> "Not knowing how to do something is not an argument for how it cannot be done."
>>
>>
>> _______________________________________________
>> Moose-dev mailing list
>> Moose-dev@iam.unibe.ch
>> https://www.iam.unibe.ch/mailman/listinfo/moose-dev
>>
>> _______________________________________________
>> Moose-dev mailing list
>> Moose-dev@iam.unibe.ch
>> https://www.iam.unibe.ch/mailman/listinfo/moose-dev
>
> --
> _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
> Alexandre Bergel  http://www.bergel.eu
> ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
>
>
>
>
>
> _______________________________________________
> Moose-dev mailing list
> Moose-dev@iam.unibe.ch
> https://www.iam.unibe.ch/mailman/listinfo/moose-dev

--
www.tudorgirba.com

"Reasonable is what we are accustomed with."


_______________________________________________
Moose-dev mailing list
Moose-dev@iam.unibe.ch
https://www.iam.unibe.ch/mailman/listinfo/moose-dev