Comment #1 on issue 888 by alexandr...(a)gmail.com: MondrianViewBuilder
should support a better zOrder
http://code.google.com/p/moose-technology/issues/detail?id=888
The content of the mail sent today:
I agree with you Doru. Two weeks ago I have seen Emmanuel Pietriga (INRIA
guy) who has designed ZVTM. There is plenty of good ideas in it. One that I
like is about managing the z-index. In ZVTM, different strategies can be
plugged to compute the z-index. I took this idea for Roassal.
A view or a any graphical element can now have an instance of ROZOrdering
that gives a zIndex to each added element. Here is an example:
-=-=-=-=-=-=-=-=-=-=-=-=
view raw zOrdering: (ROZOrdering new
at: 5 put: #isEdge;
at: 10 put: #isNotEdge).
view shape label text: #yourself.
view nodes: (1 to: 20).
view edges: (1 to: 20) from: [:x | x // 2] to: 1.
view edges: (1 to: 20) from: [:x | x // 3] to: 2.
view edges: (1 to: 20) from: [:x | x // 5] to: #yourself.
view edges: (1 to: 20) from: [:x | x // 7] to: #yourself.
view dominanceTreeLayout.
-=-=-=-=-=-=-=-=-=-=-=-=
ROZOrdering also support dynamically computed zIndex, such as:
-=-=-=-=-=-=-=-=-=
view raw zOrdering: (ROZOrdering new
at: [ :element | element depth ] put: true).
-=-=-=-=-=-=-=-=-=
This means that the zIndex is based on the nesting of the element.
Currently this does not quite work since the zOrdering is not passed along
the nesting. For the Mondrian DSL, we need a default ROZOrdering, probably
based on the nesting depth.
Any comment?