so now it works.
Cool!
One more question before committing the changes (in order to use RTMondrianViewBuilder and take benefit of your last works). In Roassal a ROShape had a size of 5@5 by default (defaultExtent, I think). In Roassal2, such default size has not been implemented.
The reason is that there is no good reason to have a minimum size. Why not having a maximum size as well? Why 5?
However, I perfectly understand the need. And indeed, there should be an easy way to build constrained shapes.
So there is two solutions:
- I put a patch in the System Complexity View. But the problem will persist for any other visualization; or
What you can do, is to reuse the Mondrian shape builder even without using RTMondrianViewBuilder. This is something that I have not advertised well (since it is very specific).
For example, instead of doing this:
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
| v es |
v := RTView new.
es := (RTBox new size: [ :cls | 5 max: cls numberOfVariables ]; borderColor: Color black) elementsOn: RTObject withAllSubclasses.
v addAll: es.
RTFlowLayout on: es.
v open
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
You can do:
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
| v sb es |
v := RTView new.
sb := RTMondrianShapeBuilder new.
sb rectangle
size: #numberOfVariables.
es := sb elementsOn: RTObject withAllSubclasses.
v addAll: es.
RTFlowLayout on: es.
v open
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
The result is
Does this make sense?
- Alex (or anyone else) adds a method to set a minimum width and height in Roassal2 as it was in Roassal.
This is not a good solution :-)
Thanks in advance for your answer.
And already thanks for the improvements, you made.
Thanks to you and all your team for using Roassal and trusting us.
Cheers,
Alexandre
Le 18 avr. 2014 à 00:36, Alexandre Bergel a écrit :
done!
I have introduced #build on RTMondrianViewBuilder and RTBuilder
Alexandre
--
_,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
Alexandre Bergel http://www.bergel.eu
^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
On Apr 17, 2014, at 6:00 PM, Tudor Girba <tudor@tudorgirba.com> wrote:
Yes. The only problem is that applyLayout is not polymorphic with all builders and with the RTView.
I would suggest a message like: build or process. What do you think?
Doru
On Thu, Apr 17, 2014 at 10:53 PM, Alexandre Bergel <alexandre.bergel@me.com> wrote:
Send applyLayout to the builder.
builder := RTMondrianViewBuilder new.
builder nodes: ….
builder applyLayout
--
_,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
Alexandre Bergel http://www.bergel.eu
^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
On Apr 17, 2014, at 1:03 PM, Anne Etien <anne.etien@univ-lille1.fr> wrote:
Hi,
I took the latest version of Glamour. Now there is another problem: the layout is not taken into account, so all the elements appear in the center. It seems according to Leo that RTMondrianViewBuilder>>open is not called and so the applyLayout method is never called.
Anne
Le 16 avr. 2014 à 12:18, Tudor Girba a écrit :
Fixed. Please take the latest version of Glamour.
Doru
On Wed, Apr 16, 2014 at 12:11 PM, Tudor Girba <tudor@tudorgirba.com> wrote:
Thanks for the report. Please open a bug and I will fix it. This is still a construction site :)
Doru
On Wed, Apr 16, 2014 at 12:00 PM, Anne Etien <anne.etien@univ-lille1.fr> wrote:
It does not work. We (Leo and I) made this insertion and modified the viewSimpleSystemComplexityWithSelection: height: width: color: on: to apply on RTMondrianBuilder and no more on an RTView. But it really seems that GLMRoassal2Presentation is waiting for an RTView as view and not a RTMondrianViewBuilder. The elements method does not exist on a RTMondrianViewBuilder.
So it seems that it is really more complex to use a RTMondrianViewBuilder in the Customizable System Complexity view since it has repercussions on Glamour.
Leo and Anne
GLMRoassal2Presentation >> renderOn: aView
self paintingBlock glamourValue: (
aView asGlamorousMultiValue,
self entity asGlamorousMultiValue,
self asGlamorousMultiValue ).
" self flag: 'This should be the responsibility of the the view'.
aView applyLayout. "
self shouldPopulateSelection ifTrue: [
aView elements do: [:each |
each on: TRMouseLeftClick do: [:event | self selection: each model ]] ].
self view: aView
Le 16 avr. 2014 à 11:25, Tudor Girba a écrit :
Ah, I see the confusion.
You can just do:
MooseCustomizableSystemComplexityBrowser>>complexityIn: a
^ a roassal2
initializeView: [ RTMondrianViewBuilder new ]
painting: [ :view :group :height :width :color :presentation |
group key
viewSimpleSystemComplexityWithSelection: OrderedCollection new
height: [:e | (height value:e) max: 5]
width: [:e | (width value:e) max: 5]
color: color
on: view ]
Doru
On Wed, Apr 16, 2014 at 10:37 AM, Anne Etien <anne.etien@univ-lille1.fr> wrote:
In fact I tried with Leo to use RTMondrianViewBuilder, but it seems that it is not possible.
Indeed, the view in the painting: block parameter is a RTView. I don't want to modify the initialize method of GLMRoassal2Presentation.
So perhaps I am wrong, but it seems not so easy for the Customizable System Complexity to use RTMondrianViewBuilder.
Please find below GLMRoassal2Presentation >>initialize and MooseCustomizableSystemComplexityBrowser>>complexityIn: a
Anne
GLMRoassal2Presentation >>initialize
super initialize.
newViewBlock := [ RTView new ].
shouldPopulateSelection := true.
self defaultActions
MooseCustomizableSystemComplexityBrowser>>complexityIn: a
^ a roassal2
painting: [ :view :group :height :width :color :presentation |
group key
viewSimpleSystemComplexityWithSelection: OrderedCollection new
height: [:e | (height value:e) max: 5]
width: [:e | (width value:e) max: 5]
color: color
on: view ]
Le 16 avr. 2014 à 07:54, Tudor Girba a écrit :
No, it does not mean that :).
Builders are useful when the target visualization matches the metaphor of the builder. For example, the MondrianBuilder is made for a graph visualization like System Complexity. But, if you would want to visualize a graph that places a lot of emphasis on position and animation, it is probably easier to work with RTView.
Doru
On Wed, Apr 16, 2014 at 7:45 AM, Anne Etien <anne.etien@univ-lille1.fr> wrote:
Hi,
I will try to modify the Customizable System Complexity to work with the MondrianBuilder. By the way, does it means that normally, the RTView should not be directly manipulated for a visualization, but only builder?
Anne
Le 16 avr. 2014 à 07:20, Tudor Girba a écrit :
Hi Alex,
The recent implementation of the Customizable System Complexity works directly with the RTView. This is where the issue comes from :). We should change it to work with the MondrianBuilder.
Doru
On Wed, Apr 16, 2014 at 12:23 AM, Alexandre Bergel <alexandre.bergel@me.com> wrote:
Hi Anne!
I was not able to make the example run. Maybe I run an old Moose image. I have created a couple of weeks ago a RTBoundedShapeBuilder. Mondrian uses it.
For example:
| b |
b := RTMondrianViewBuilder new.
b shape rectangle size: #yourself.
b nodes: (1 to: 20).
b open
Produce the following:
<Screen Shot 2014-04-15 at 7.21.14 PM.png>
Is this what you expect?
Alexandre
On Apr 15, 2014, at 12:45 PM, Anne Etien <anne.etien@univ-lille1.fr> wrote:
You can use Customizable System Complexity view from the MoosePanel while right clicking on a group of classes, then visualize and then the fourth item. I made a screenshot to explain and another showing the visu on a MooseModel. I didn't know this visu before Friday, but it is I think a great one ;o)
I modified the code of the MooseCustomizableSystemComplexityBrowser>>complexityIn: method.
We just modified it to migrate it and the called method from Roassal to Roassal2.
Anne
<CSCView.png><MoosePanel.png>
Le 15 avr. 2014 à 17:29, Alexandre Bergel a écrit :
We indeed need a way to have limit for the size. But we have to do it in a nice way. For example, with GraphET we often need elements smaller than 5 x 5.
How do you define Customizable System Complexity view?
Can I have a look at it?
Alexandre
--
_,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
Alexandre Bergel http://www.bergel.eu
^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
On Apr 15, 2014, at 12:05 PM, Anne Etien <anne.etien@univ-lille1.fr> wrote:
Hi,
I took your email for us Doru, so I did it for the specific visu, but I think that I shouldn't. Indeed, in Roassal a ROShape had a size of 5@5 by default (defaultExtent, I think). In Roassal2, such default size has not been implemented. So I put a patch in the System Complexity View, but I think that it should be done everywhere.
So Alex, can you, please, set a minimum width and height in Roassal2 as it was in Roassal? When it is done, I will remove my patch.
Currently, it works.
Anne
Le 15 avr. 2014 à 07:10, Tudor Girba a écrit :
Hi,
Thanks for working on this. However, the System Complexity View requires a minimum width and height. Could you make it so that it is at least 5?
Doru
On Fri, Apr 11, 2014 at 9:17 PM, Anne Etien <anne.etien@univ-lille1.fr> wrote:
Perfect for the borders of the shape and of the popup.
Thanks
Anne
Le 11 avr. 2014 à 21:11, Juraj Kubelka a écrit :
I have just committed the fix.
El 11-04-2014, a las 14:10, Alexandre Bergel <alexandre.bergel@me.com> escribió:
Juraj is currently working on the border
Alexandre
On Apr 11, 2014, at 12:48 PM, Anne Etien <anne.etien@univ-lille1.fr> wrote:
Hi,
Today, we migrated the Customizable System Complexity view of the Moose Panel from Roassal to Roassal2.
The render is not so beautiful due to the border and the popUp.
We hope that the behavior of the view remains the same.
Leo, Kevin and Anne.
_______________________________________________
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
--
www.tudorgirba.com
"Every thing has its own flow"
_______________________________________________
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
_______________________________________________
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
"Every thing has its own flow"
_______________________________________________
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
--
www.tudorgirba.com
"Every thing has its own flow"
_______________________________________________
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
--
www.tudorgirba.com
"Every thing has its own flow"
_______________________________________________
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
--
www.tudorgirba.com
"Every thing has its own flow"
--
www.tudorgirba.com
"Every thing has its own flow"
_______________________________________________
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
_______________________________________________
Moose-dev mailing list
Moose-dev@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@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
_______________________________________________
Moose-dev mailing list
Moose-dev@iam.unibe.ch
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
--
_,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
Alexandre Bergel
http://www.bergel.eu^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.