However, I think there is still another opportunity.
RTComposer should be just a view with some nodes inside where the other views reside.
Then, the instructions like #move:above: should be the ability of a layout. This would
imply less concepts and you would also get the ability of creating a custom layout. What
do you think?
This is actually the case.
The composer knows exactly what other builder add to the view.
Since Roassal layouts work with single elements and with groups, the layout can be used
with what the builders add to the view.
Alexandre
On Mon, Aug 4, 2014 at 1:31 AM, Alexandre Bergel <alexandre.bergel(a)me.com> wrote:
Dear All,
This week end has been intense for Roassal (yeah, I got a flu, so I stayed home :-)
Two major improvements of Roassal: Pie builder and Builder composition have been added.
I will send a post about the pie builder later on. In this email I want to discuss the
composition. Here is an example of builder composition:
<Screen Shot 2014-08-03 at 6.55.38 PM.png>
The code is available from RTComposerExample>>exampleClassAnalysis
The cool thing, is that highlights are propagated across different builders. This means
that you can globally highlight some elements.
The class RTComposer is actually quite simple.
Here is a short and simple example, in which code dedicated to the composition is
indicated in bold:
-=-=—=-=-=—=-=-=—=-=-=—=-=-=—=
classes := Collection withAllSubclasses.
c := RTComposer new.
b1 := RTMondrianViewBuilder new.
b1 view: c view.
b1 nodes: classes.
b1 gridLayout.
b1 build.
c propagateHighlight.
c group: #hierarchy.
b2 := RTCharterBuilder new.
b2 view: c view.
b2 extent: 200 @ 200.
b2 points: classes.
b2 allY: #numberOfMethods.
b2 stackX.
b2 curve.
b2 axisX.
b2 axisYWithNumberOfTicks: 4.
c propagateHighlight.
c group: #curve.
c move: #hierarchy above: #curve.
c open
-=-=—=-=-=—=-=-=—=-=-=—=-=-=—=
<Screen Shot 2014-08-03 at 7.19.02 PM.png>
This is still early work. Many more things have to be improved. For example, the layout
of builder is quite simple. Maybe we will need something more complex. The propagation of
events may also be improved.
Feedbacks are welcome. This is a crucial point of Roassal, and it has to be done right.
Cheers,
Alexandre
--
_,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
Alexandre Bergel
http://www.bergel.eu
^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
_______________________________________________
Moose-dev mailing list
Moose-dev(a)iam.unibe.ch
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
--
www.tudorgirba.com
"Every thing has its own flow"
_______________________________________________
Moose-dev mailing list
Moose-dev(a)iam.unibe.ch
https://www.iam.unibe.ch/mailman/listinfo/moose-dev