I'll have a look at it. And will write a few examples.
I don't use nesting. And yes drag and drop doesn't apply to the whole
group for now, but it can be done (i think).
Well the bug is due to a nil returned by elementFromModel, but i fixed
my code, so it seems ok.
Then groupBy: aBlock aBlock must point to the "leader" of the group, I
mean the element on which apply the outer layout in this case 100 must
point to 0 and not 0 to 100, since 0 has edges and not 100. So change
the + by a - is better.
In case the block returns nil or raise an exception, we use the model of
the element, so we can pass a block which has sense only for the member
of groups and not for the leader for example.
Mathieu
Le 28.07.2013 23:36, Alexandre Bergel a écrit :
It is interesting.
Even though, apparently you may want to use the classical nesting for this. The very
first thing I've tried to do is to drag and drop a node, but nodes do not stay grouped
when drag and dropping.
I do not understand how ROMixingLayout operates. Can you write some simple tests that are
not about visualizing compile methods?
For example, I've tried this:
view shape rectangle color: Color red; size: 20.
view nodes: (0 to: 21).
view edgesFrom: [ :v | v \ 3 ].
view shape rectangle color: Color green; size: 20.
view nodes: (100 to: 121).
view layout: (ROMixingLayout withInner: (ROGridLayout new) outer: ROTreeLayout new
groupBy: [:v | v + 100 ]).
I get an error and I do not understand why.
Alexandre