2014-10-06 13:21 GMT+02:00 Alexandre Bergel alexandre.bergel@me.com:
For having the implementation of topLeft. What you've asked for, nobody asked for it before, so things where missing in Roassal :)
Alexandre
Ah, ok. With topLeft it works now, but I thought this is done through constraints, therefore I used the TRConstraint alignFromLeft: group Don't they work on groups ?
On 6 Oct 2014, at 07:45, Nicolai Hess nicolaihess@web.de wrote:
2014-10-06 3:17 GMT+02:00 Alexandre Bergel alexandre.bergel@me.com:
Hi Nicolai,
First of all, thanks for your review. This is really useful. I fixed what I can. Indeed, the flag example is really bad when I am thinking about it. I will think about a new example.
Regarding your example with RTNest, I had to improve and clean RTNest to make the behavior you wish to have happen. The code below is the same you have provided, except I have added “topLeft”:
-=-=-=-=-=-=-=-=-=-=-=-= v := RTView new. es := (RTBox new color: Color gray) elementsOn: (Collection subclasses). v addAll: es.
RTNest new topLeft; for: es add: [ :group :model | group add: ((RTLabel new color: Color black) elementOn:model). group add: ((RTBox new color: Color orange;
width:#numberOfMethods) elementOn:model). group add: ((RTBox new color: Color lightGreen; width:#numberOfInstanceVariables ) elementOn:model). RTVerticalLineLayout on: group. TRConstraint alignFromLeft: group ].
RTVerticalLineLayout on: es. TRConstraint setAllToMaxWidth: es. TRConstraint alignFromLeft: es. v
-=-=-=-=-=-=-=-=-=-=-=-=
Side note on this: I am really happy to not have RTElement a composite. Playing with such behavior is terrible, especially without breaking existing code.
You need to update Roassal for this.
I don't quite understand this, for what would I need to update roassal?
The last two sentences are: "Different form of nesting. for:inShape:add:, on:inShape:nest:layout:
Nesting in a popup."
This is just a reminder for "to be done", right?
Yes, this is a simple todo. Strange that it does not appear.
It always take me some seconds to realize that "TRShape
withAllSubclasses" is only the "data”.
Very true. I already heard this remark.
Thanks!
Cheers, Alexandre
On Oct 3, 2014, at 8:02 PM, Nicolai Hess nicolaihess@web.de wrote:
2014-10-03 3:13 GMT+02:00 Alexandre Bergel alexandre.bergel@me.com: Hi!
Just to let you know I worked on Section 3, Section 5, Section 8 of the
Roassal chapter:
https://dl.dropboxusercontent.com/u/31543901/AgileVisualization/Roassal/0104...
Feedback is always welcome!
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
This is great! I really like what you can do with roassal. I am interested in all kind of visualiazation frameworks and I am happy we can do this great stuff in smalltalk.
A few comments:
In 1. View, Elements.... .. "Consider the following example that visually associate some numbers
(Figure 1.2):"
this is the first figure (1.1)
2.4 Shape compositing I don't think, flags are a good example. Looks like abusing roassal for
simple drawings. And you
can not use composed shapes for drawing every flag (how would you draw
the flag of cyprus?)
If I need to show flags in a visualization I would use an image (that
would be a good example
for RTBitmap :) )
In 5. Nesting elements In the second example you write: "A layout may be specified when using RTNest. For example ..."
But the first example already had a grid layout. What is the difference
between
adding the layout on the elements and adding the layout to the RTNest ?
I tried to find another example for RTNest to visualize multiple
properties, for example
a Class is drawn as a box with a label and two "bars" indicating the
number of methods and the
number of instVars:
v := RTView new. es := (RTBox new color: Color gray) elementsOn: (Collection
subclasses).
v addAll: es. RTNest new for: es add: [ :group :model | group add: ((RTLabel new color: Color black)
elementOn:model).
group add: ((RTBox new color: Color orange;
width:#numberOfMethods) elementOn:model).
group add: ((RTBox new color: Color lightGreen;
width:#numberOfInstanceVariables ) elementOn:model).
RTVerticalLineLayout on: group. TRConstraint alignFromLeft: group ]. RTVerticalLineLayout on: es. TRConstraint setAllToMaxWidth: es. TRConstraint alignFromLeft: es. v
would this be the right way or is there a simpler solution. And it seems that the TRConstraint does not work for the group
elements. They are not aligned to the left.
The last two sentences are: "Different form of nesting. for:inShape:add:, on:inShape:nest:layout:
Nesting in a popup."
This is just a reminder for "to be done", right?
I looked at the examples for Composite shapes in "Roassal examples" (in
the latest moose image).
The "for:inShape" examples doesn't look like the preview images.
- Giving behavior ...
I can not decode the first sentence, I know it is about interaction,
actions and user actions,
and somehow I understand what you describe but the sentence looks
strange (but I am not a native english speaker:) ).
Below, in the description of the specific interactions: "RTLabelled adds a label above an element. The label may be
particularized using text: " -> if <- the default string representation is not sufficient.
About the examples here and those in the moose image: don't mix "data"
with "code".
I (maybe it is just me) find it always confusing to see examples build
on some "data objects" where this data is the framework itself. For example TRShape
is a class from the framework. And the example for "8. Expressing
constraints" starts with:
objects := TRShape
withAllSubclasses. v := RTView new. n := RTMultiLinearColorForIdentity new objects: objects. ..... It always take me some seconds to realize that "TRShape
withAllSubclasses" is only the "data".
Nicolai
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
Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev