Hi guys,
I'm using Roassal to build a visualization that looks like the following:
http://www.xconomy.com/wordpress/wp-content/images/2012/11/skeuo-calendar.pn...
I create two ad-hoc layouts (i.e., extending the ROGridLayout) to individually layout days inside months and months inside years.
I have a piece of code that looks something like:
view shape rectangle withText.
view nodes: nodes forEach: [ :aGroupOfObjects | | innerNodes |
innerNodes := do something with aGroupOfObjects. ... view shape rectangle size: 25; withCenteredText. ... view nodes: innerNodes. view layout: ROMonthLayout new. ]
view layout: ROYearLayout new.
view edges: ...
Notice that I want the both the outer node (i.e., the month container) and the inner nodes (i.e., days) with labels.
The problem is that when I set both nodes with labels the view takes time to be generated and interactions become impossible (i.e., the whole image actually becomes slow and you can no longer drag around shapes in the view).
I explored the issue a little bit and discovered that it might be something related to ROShape>>chainedDrawOn:for: and the way Roassal handles shapes with "nested" shapes (i.e., when 'next' is not a RONullShape .
I inspected one of my outer nodes and discovered that I have a chain such that 'outerNode next' is a ROLabel and the ROLabel has a ROChildrenShape as next and the next of the ROChildrenShape is a RONullShape .
Have you ever experienced such a problem? Do you know how can I handle that? Do you see any potential problem in the snippet I posted above?
Cheers and thanks in advance, Roberto
Hi Roberto,
I checked and yes, there was a little ugly bug :P I commited a new version, can you try and see if it works now, please?
Vanessa.
On 12/05/2012 11:20 AM, roberto.minelli@usi.ch wrote:
Hi guys,
I'm using Roassal to build a visualization that looks like the following:
http://www.xconomy.com/wordpress/wp-content/images/2012/11/skeuo-calendar.pn...
I create two ad-hoc layouts (i.e., extending the ROGridLayout) to individually layout days inside months and months inside years.
I have a piece of code that looks something like:
view shape rectangle withText.
view nodes: nodes forEach: [ :aGroupOfObjects | | innerNodes |
innerNodes := do something with aGroupOfObjects. ... view shape rectangle size: 25; withCenteredText. ... view nodes: innerNodes. view layout: ROMonthLayout new. ]
view layout: ROYearLayout new.
view edges: ...
Notice that I want the both the outer node (i.e., the month container) and the inner nodes (i.e., days) with labels.
The problem is that when I set both nodes with labels the view takes time to be generated and interactions become impossible (i.e., the whole image actually becomes slow and you can no longer drag around shapes in the view).
I explored the issue a little bit and discovered that it might be something related to ROShape>>chainedDrawOn:for: and the way Roassal handles shapes with "nested" shapes (i.e., when 'next' is not a RONullShape .
I inspected one of my outer nodes and discovered that I have a chain such that 'outerNode next' is a ROLabel and the ROLabel has a ROChildrenShape as next and the next of the ROChildrenShape is a RONullShape .
Have you ever experienced such a problem? Do you know how can I handle that? Do you see any potential problem in the snippet I posted above?
Cheers and thanks in advance, Roberto _______________________________________________ Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Hi Vanessa,
It works like a charm!
Thank you.
Cheers, Roberto
On Dec 5, 2012, at 7:22 PM, Vanessa Peña Araya van.c.pena@gmail.com wrote:
Hi Roberto,
I checked and yes, there was a little ugly bug :P I commited a new version, can you try and see if it works now, please?
Vanessa.
On 12/05/2012 11:20 AM, roberto.minelli@usi.ch wrote:
Hi guys,
I'm using Roassal to build a visualization that looks like the following:
http://www.xconomy.com/wordpress/wp-content/images/2012/11/skeuo-calendar.pn...
I create two ad-hoc layouts (i.e., extending the ROGridLayout) to individually layout days inside months and months inside years.
I have a piece of code that looks something like:
view shape rectangle withText.
view nodes: nodes forEach: [ :aGroupOfObjects | | innerNodes |
innerNodes := do something with aGroupOfObjects. ... view shape rectangle size: 25; withCenteredText. ... view nodes: innerNodes. view layout: ROMonthLayout new. ]
view layout: ROYearLayout new.
view edges: ...
Notice that I want the both the outer node (i.e., the month container) and the inner nodes (i.e., days) with labels.
The problem is that when I set both nodes with labels the view takes time to be generated and interactions become impossible (i.e., the whole image actually becomes slow and you can no longer drag around shapes in the view).
I explored the issue a little bit and discovered that it might be something related to ROShape>>chainedDrawOn:for: and the way Roassal handles shapes with "nested" shapes (i.e., when 'next' is not a RONullShape .
I inspected one of my outer nodes and discovered that I have a chain such that 'outerNode next' is a ROLabel and the ROLabel has a ROChildrenShape as next and the next of the ROChildrenShape is a RONullShape .
Have you ever experienced such a problem? Do you know how can I handle that? Do you see any potential problem in the snippet I posted above?
Cheers and thanks in advance, Roberto _______________________________________________ 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
I'm glad! :)
Vanessa.
On 12/06/2012 04:51 AM, roberto.minelli@usi.ch wrote:
Hi Vanessa,
It works like a charm!
Thank you.
Cheers, Roberto
On Dec 5, 2012, at 7:22 PM, Vanessa Peña Araya van.c.pena@gmail.com wrote:
Hi Roberto,
I checked and yes, there was a little ugly bug :P I commited a new version, can you try and see if it works now, please?
Vanessa.
On 12/05/2012 11:20 AM, roberto.minelli@usi.ch wrote:
Hi guys,
I'm using Roassal to build a visualization that looks like the following:
http://www.xconomy.com/wordpress/wp-content/images/2012/11/skeuo-calendar.pn...
I create two ad-hoc layouts (i.e., extending the ROGridLayout) to individually layout days inside months and months inside years.
I have a piece of code that looks something like:
view shape rectangle withText.
view nodes: nodes forEach: [ :aGroupOfObjects | | innerNodes |
innerNodes := do something with aGroupOfObjects. ... view shape rectangle size: 25; withCenteredText. ... view nodes: innerNodes. view layout: ROMonthLayout new. ]
view layout: ROYearLayout new.
view edges: ...
Notice that I want the both the outer node (i.e., the month container) and the inner nodes (i.e., days) with labels.
The problem is that when I set both nodes with labels the view takes time to be generated and interactions become impossible (i.e., the whole image actually becomes slow and you can no longer drag around shapes in the view).
I explored the issue a little bit and discovered that it might be something related to ROShape>>chainedDrawOn:for: and the way Roassal handles shapes with "nested" shapes (i.e., when 'next' is not a RONullShape .
I inspected one of my outer nodes and discovered that I have a chain such that 'outerNode next' is a ROLabel and the ROLabel has a ROChildrenShape as next and the next of the ROChildrenShape is a RONullShape .
Have you ever experienced such a problem? Do you know how can I handle that? Do you see any potential problem in the snippet I posted above?
Cheers and thanks in advance, Roberto _______________________________________________ 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
What was the problem?
Doru
On Wed, Dec 5, 2012 at 7:22 PM, Vanessa Peña Araya van.c.pena@gmail.comwrote:
Hi Roberto,
I checked and yes, there was a little ugly bug :P I commited a new version, can you try and see if it works now, please?
Vanessa.
On 12/05/2012 11:20 AM, roberto.minelli@usi.ch wrote:
Hi guys,
I'm using Roassal to build a visualization that looks like the following:
http://www.xconomy.com/**wordpress/wp-content/images/** 2012/11/skeuo-calendar.pnghttp://www.xconomy.com/wordpress/wp-content/images/2012/11/skeuo-calendar.png
I create two ad-hoc layouts (i.e., extending the ROGridLayout) to individually layout days inside months and months inside years.
I have a piece of code that looks something like:
view shape rectangle withText.
view nodes: nodes forEach: [ :aGroupOfObjects | | innerNodes |
innerNodes := do something with aGroupOfObjects. ... view shape rectangle size: 25; withCenteredText. ... view nodes: innerNodes. view layout: ROMonthLayout new.
]
view layout: ROYearLayout new.
view edges: ...
Notice that I want the both the outer node (i.e., the month container) and the inner nodes (i.e., days) with labels.
The problem is that when I set both nodes with labels the view takes time to be generated and interactions become impossible (i.e., the whole image actually becomes slow and you can no longer drag around shapes in the view).
I explored the issue a little bit and discovered that it might be something related to ROShape>>chainedDrawOn:for: and the way Roassal handles shapes with "nested" shapes (i.e., when 'next' is not a RONullShape .
I inspected one of my outer nodes and discovered that I have a chain such that 'outerNode next' is a ROLabel and the ROLabel has a ROChildrenShape as next and the next of the ROChildrenShape is a RONullShape .
Have you ever experienced such a problem? Do you know how can I handle that? Do you see any potential problem in the snippet I posted above?
Cheers and thanks in advance, Roberto ______________________________**_________________ Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/**mailman/listinfo/moose-devhttps://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-devhttps://www.iam.unibe.ch/mailman/listinfo/moose-dev
The problem was that, while constructing the nodes in the Mondrian builder, the shape assigned to each was a copy of the current shape. But this was a normal copy that didn't copy the chain of shapes. That means that all nodes were connected to the current shape and not to a copy. So, for each node you had a shape like this:
A ROBox -> a ROLabel -> a ROChildrenShape -> a ROChildrenShape -> a ROChildrenShape -> ... lots of ROChildrenShape ... -> a ROChildrenShape -> aRONullShape.
So when a node was update, ALL the shapes of the other nodes were updated too.
Vanessa.
On 12/06/2012 05:04 AM, Tudor Girba wrote:
What was the problem?
Doru
On Wed, Dec 5, 2012 at 7:22 PM, Vanessa Peña Araya <van.c.pena@gmail.com mailto:van.c.pena@gmail.com> wrote:
Hi Roberto, I checked and yes, there was a little ugly bug :P I commited a new version, can you try and see if it works now, please? Vanessa. On 12/05/2012 11:20 AM, roberto.minelli@usi.ch <mailto:roberto.minelli@usi.ch> wrote: Hi guys, I'm using Roassal to build a visualization that looks like the following: http://www.xconomy.com/wordpress/wp-content/images/2012/11/skeuo-calendar.png I create two ad-hoc layouts (i.e., extending the ROGridLayout) to individually layout days inside months and months inside years. I have a piece of code that looks something like: view shape rectangle withText. view nodes: nodes forEach: [ :aGroupOfObjects | | innerNodes | innerNodes := do something with aGroupOfObjects. ... view shape rectangle size: 25; withCenteredText. ... view nodes: innerNodes. view layout: ROMonthLayout new. ] view layout: ROYearLayout new. view edges: ... Notice that I want the both the outer node (i.e., the month container) and the inner nodes (i.e., days) with labels. The problem is that when I set both nodes with labels the view takes time to be generated and interactions become impossible (i.e., the whole image actually becomes slow and you can no longer drag around shapes in the view). I explored the issue a little bit and discovered that it might be something related to ROShape>>chainedDrawOn:for: and the way Roassal handles shapes with "nested" shapes (i.e., when 'next' is not a RONullShape . I inspected one of my outer nodes and discovered that I have a chain such that 'outerNode next' is a ROLabel and the ROLabel has a ROChildrenShape as next and the next of the ROChildrenShape is a RONullShape . Have you ever experienced such a problem? Do you know how can I handle that? Do you see any potential problem in the snippet I posted above? Cheers and thanks in advance, Roberto _______________________________________________ Moose-dev mailing list Moose-dev@iam.unibe.ch <mailto:Moose-dev@iam.unibe.ch> https://www.iam.unibe.ch/mailman/listinfo/moose-dev _______________________________________________ Moose-dev mailing list Moose-dev@iam.unibe.ch <mailto:Moose-dev@iam.unibe.ch> https://www.iam.unibe.ch/mailman/listinfo/moose-dev
-- www.tudorgirba.com http://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
Wow! Cool you've found it!
@Doru: The mondrian DSL in Roassal assigns a copy of the shape for each element. This is different from what we had in Mondrian. The reason for copying the shape, is that having a copy makes singular update much much easier, i.e., temporarily changing the color of an element.
Alexandre
On Dec 6, 2012, at 12:56 PM, Vanessa Peña Araya van.c.pena@gmail.com wrote:
The problem was that, while constructing the nodes in the Mondrian builder, the shape assigned to each was a copy of the current shape. But this was a normal copy that didn't copy the chain of shapes. That means that all nodes were connected to the current shape and not to a copy. So, for each node you had a shape like this:
A ROBox -> a ROLabel -> a ROChildrenShape -> a ROChildrenShape -> a ROChildrenShape -> ... lots of ROChildrenShape ... -> a ROChildrenShape -> aRONullShape.
So when a node was update, ALL the shapes of the other nodes were updated too.
Vanessa.
On 12/06/2012 05:04 AM, Tudor Girba wrote:
What was the problem?
Doru
On Wed, Dec 5, 2012 at 7:22 PM, Vanessa Peña Araya van.c.pena@gmail.com wrote: Hi Roberto,
I checked and yes, there was a little ugly bug :P I commited a new version, can you try and see if it works now, please?
Vanessa.
On 12/05/2012 11:20 AM, roberto.minelli@usi.ch wrote: Hi guys,
I'm using Roassal to build a visualization that looks like the following:
http://www.xconomy.com/wordpress/wp-content/images/2012/11/skeuo-calendar.pn...
I create two ad-hoc layouts (i.e., extending the ROGridLayout) to individually layout days inside months and months inside years.
I have a piece of code that looks something like:
view shape rectangle withText.
view nodes: nodes forEach: [ :aGroupOfObjects | | innerNodes |
innerNodes := do something with aGroupOfObjects. ... view shape rectangle size: 25; withCenteredText. ... view nodes: innerNodes. view layout: ROMonthLayout new.
]
view layout: ROYearLayout new.
view edges: ...
Notice that I want the both the outer node (i.e., the month container) and the inner nodes (i.e., days) with labels.
The problem is that when I set both nodes with labels the view takes time to be generated and interactions become impossible (i.e., the whole image actually becomes slow and you can no longer drag around shapes in the view).
I explored the issue a little bit and discovered that it might be something related to ROShape>>chainedDrawOn:for: and the way Roassal handles shapes with "nested" shapes (i.e., when 'next' is not a RONullShape .
I inspected one of my outer nodes and discovered that I have a chain such that 'outerNode next' is a ROLabel and the ROLabel has a ROChildrenShape as next and the next of the ROChildrenShape is a RONullShape .
Have you ever experienced such a problem? Do you know how can I handle that? Do you see any potential problem in the snippet I posted above?
Cheers and thanks in advance, Roberto _______________________________________________ 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
Hi,
On 6 Dec 2012, at 19:06, Alexandre Bergel alexandre.bergel@me.com wrote:
Wow! Cool you've found it!
@Doru: The mondrian DSL in Roassal assigns a copy of the shape for each element. This is different from what we had in Mondrian. The reason for copying the shape, is that having a copy makes singular update much much easier, i.e., temporarily changing the color of an element.
I know you have a shape per element, but I think the above argument is rather weak :). Even if you share the shape, you can still just associate a new copy to the element when you want to modify it.
But, I thought that the original argument was that if you have a shape per element, you could store actual values directly in the shape (for example, for caching).
Cheers, Doru
Alexandre
On Dec 6, 2012, at 12:56 PM, Vanessa Peña Araya van.c.pena@gmail.com wrote:
The problem was that, while constructing the nodes in the Mondrian builder, the shape assigned to each was a copy of the current shape. But this was a normal copy that didn't copy the chain of shapes. That means that all nodes were connected to the current shape and not to a copy. So, for each node you had a shape like this:
A ROBox -> a ROLabel -> a ROChildrenShape -> a ROChildrenShape -> a ROChildrenShape -> ... lots of ROChildrenShape ... -> a ROChildrenShape -> aRONullShape.
So when a node was update, ALL the shapes of the other nodes were updated too.
Vanessa.
On 12/06/2012 05:04 AM, Tudor Girba wrote:
What was the problem?
Doru
On Wed, Dec 5, 2012 at 7:22 PM, Vanessa Peña Araya van.c.pena@gmail.com wrote: Hi Roberto,
I checked and yes, there was a little ugly bug :P I commited a new version, can you try and see if it works now, please?
Vanessa.
On 12/05/2012 11:20 AM, roberto.minelli@usi.ch wrote: Hi guys,
I'm using Roassal to build a visualization that looks like the following:
http://www.xconomy.com/wordpress/wp-content/images/2012/11/skeuo-calendar.pn...
I create two ad-hoc layouts (i.e., extending the ROGridLayout) to individually layout days inside months and months inside years.
I have a piece of code that looks something like:
view shape rectangle withText.
view nodes: nodes forEach: [ :aGroupOfObjects | | innerNodes |
innerNodes := do something with aGroupOfObjects. ... view shape rectangle size: 25; withCenteredText. ... view nodes: innerNodes. view layout: ROMonthLayout new.
]
view layout: ROYearLayout new.
view edges: ...
Notice that I want the both the outer node (i.e., the month container) and the inner nodes (i.e., days) with labels.
The problem is that when I set both nodes with labels the view takes time to be generated and interactions become impossible (i.e., the whole image actually becomes slow and you can no longer drag around shapes in the view).
I explored the issue a little bit and discovered that it might be something related to ROShape>>chainedDrawOn:for: and the way Roassal handles shapes with "nested" shapes (i.e., when 'next' is not a RONullShape .
I inspected one of my outer nodes and discovered that I have a chain such that 'outerNode next' is a ROLabel and the ROLabel has a ROChildrenShape as next and the next of the ROChildrenShape is a RONullShape .
Have you ever experienced such a problem? Do you know how can I handle that? Do you see any potential problem in the snippet I posted above?
Cheers and thanks in advance, Roberto _______________________________________________ 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
-- _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;: 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
"The coherence of a trip is given by the clearness of the goal."
@Doru: The mondrian DSL in Roassal assigns a copy of the shape for each element. This is different from what we had in Mondrian. The reason for copying the shape, is that having a copy makes singular update much much easier, i.e., temporarily changing the color of an element.
I know you have a shape per element, but I think the above argument is rather weak :). Even if you share the shape, you can still just associate a new copy to the element when you want to modify it.
Yes, indeed. However this adds some extra work to do, and I do not see a nice way to do it transparently (but I haven't tried very hard, that's true).
Maybe the mondrian builder can do something about that.
But, I thought that the original argument was that if you have a shape per element, you could store actual values directly in the shape (for example, for caching).
So far, I have no evidence that caching at the level of the shape or the element makes a significant difference.
Alexandre
On Dec 6, 2012, at 12:56 PM, Vanessa Peña Araya van.c.pena@gmail.com wrote:
The problem was that, while constructing the nodes in the Mondrian builder, the shape assigned to each was a copy of the current shape. But this was a normal copy that didn't copy the chain of shapes. That means that all nodes were connected to the current shape and not to a copy. So, for each node you had a shape like this:
A ROBox -> a ROLabel -> a ROChildrenShape -> a ROChildrenShape -> a ROChildrenShape -> ... lots of ROChildrenShape ... -> a ROChildrenShape -> aRONullShape.
So when a node was update, ALL the shapes of the other nodes were updated too.
Vanessa.
On 12/06/2012 05:04 AM, Tudor Girba wrote:
What was the problem?
Doru
On Wed, Dec 5, 2012 at 7:22 PM, Vanessa Peña Araya van.c.pena@gmail.com wrote: Hi Roberto,
I checked and yes, there was a little ugly bug :P I commited a new version, can you try and see if it works now, please?
Vanessa.
On 12/05/2012 11:20 AM, roberto.minelli@usi.ch wrote: Hi guys,
I'm using Roassal to build a visualization that looks like the following:
http://www.xconomy.com/wordpress/wp-content/images/2012/11/skeuo-calendar.pn...
I create two ad-hoc layouts (i.e., extending the ROGridLayout) to individually layout days inside months and months inside years.
I have a piece of code that looks something like:
view shape rectangle withText.
view nodes: nodes forEach: [ :aGroupOfObjects | | innerNodes |
innerNodes := do something with aGroupOfObjects. ... view shape rectangle size: 25; withCenteredText. ... view nodes: innerNodes. view layout: ROMonthLayout new.
]
view layout: ROYearLayout new.
view edges: ...
Notice that I want the both the outer node (i.e., the month container) and the inner nodes (i.e., days) with labels.
The problem is that when I set both nodes with labels the view takes time to be generated and interactions become impossible (i.e., the whole image actually becomes slow and you can no longer drag around shapes in the view).
I explored the issue a little bit and discovered that it might be something related to ROShape>>chainedDrawOn:for: and the way Roassal handles shapes with "nested" shapes (i.e., when 'next' is not a RONullShape .
I inspected one of my outer nodes and discovered that I have a chain such that 'outerNode next' is a ROLabel and the ROLabel has a ROChildrenShape as next and the next of the ROChildrenShape is a RONullShape .
Have you ever experienced such a problem? Do you know how can I handle that? Do you see any potential problem in the snippet I posted above?
Cheers and thanks in advance, Roberto _______________________________________________ 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
-- _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;: 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
"The coherence of a trip is given by the clearness of the goal."
Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Hi,
On 12 Dec 2012, at 00:26, Alexandre Bergel alexandre.bergel@me.com wrote:
@Doru: The mondrian DSL in Roassal assigns a copy of the shape for each element. This is different from what we had in Mondrian. The reason for copying the shape, is that having a copy makes singular update much much easier, i.e., temporarily changing the color of an element.
I know you have a shape per element, but I think the above argument is rather weak :). Even if you share the shape, you can still just associate a new copy to the element when you want to modify it.
Yes, indeed. However this adds some extra work to do, and I do not see a nice way to do it transparently (but I haven't tried very hard, that's true).
Maybe the mondrian builder can do something about that.
Yes, but for that you should not rely on shape copying too deep in the engine.
But, I thought that the original argument was that if you have a shape per element, you could store actual values directly in the shape (for example, for caching).
So far, I have no evidence that caching at the level of the shape or the element makes a significant difference.
I know :). We had this discussion before, and with that occasion I argued that there is no real reason for the shape to be stateful unless you are composing shapes. Right now, the composition of shapes does not affect the bounds. As soon as you will compose them, you will likely feel the need to cache the bounds computation per shape. In Mondrian, we stored these values in the element (with the shape object as key). The end result was that Mondrian has half the amount of objects Roassal has for the same view.
Cheers, Doru
Alexandre
On Dec 6, 2012, at 12:56 PM, Vanessa Peña Araya van.c.pena@gmail.com wrote:
The problem was that, while constructing the nodes in the Mondrian builder, the shape assigned to each was a copy of the current shape. But this was a normal copy that didn't copy the chain of shapes. That means that all nodes were connected to the current shape and not to a copy. So, for each node you had a shape like this:
A ROBox -> a ROLabel -> a ROChildrenShape -> a ROChildrenShape -> a ROChildrenShape -> ... lots of ROChildrenShape ... -> a ROChildrenShape -> aRONullShape.
So when a node was update, ALL the shapes of the other nodes were updated too.
Vanessa.
On 12/06/2012 05:04 AM, Tudor Girba wrote:
What was the problem?
Doru
On Wed, Dec 5, 2012 at 7:22 PM, Vanessa Peña Araya van.c.pena@gmail.com wrote: Hi Roberto,
I checked and yes, there was a little ugly bug :P I commited a new version, can you try and see if it works now, please?
Vanessa.
On 12/05/2012 11:20 AM, roberto.minelli@usi.ch wrote: Hi guys,
I'm using Roassal to build a visualization that looks like the following:
http://www.xconomy.com/wordpress/wp-content/images/2012/11/skeuo-calendar.pn...
I create two ad-hoc layouts (i.e., extending the ROGridLayout) to individually layout days inside months and months inside years.
I have a piece of code that looks something like:
view shape rectangle withText.
view nodes: nodes forEach: [ :aGroupOfObjects | | innerNodes |
innerNodes := do something with aGroupOfObjects. ... view shape rectangle size: 25; withCenteredText. ... view nodes: innerNodes. view layout: ROMonthLayout new.
]
view layout: ROYearLayout new.
view edges: ...
Notice that I want the both the outer node (i.e., the month container) and the inner nodes (i.e., days) with labels.
The problem is that when I set both nodes with labels the view takes time to be generated and interactions become impossible (i.e., the whole image actually becomes slow and you can no longer drag around shapes in the view).
I explored the issue a little bit and discovered that it might be something related to ROShape>>chainedDrawOn:for: and the way Roassal handles shapes with "nested" shapes (i.e., when 'next' is not a RONullShape .
I inspected one of my outer nodes and discovered that I have a chain such that 'outerNode next' is a ROLabel and the ROLabel has a ROChildrenShape as next and the next of the ROChildrenShape is a RONullShape .
Have you ever experienced such a problem? Do you know how can I handle that? Do you see any potential problem in the snippet I posted above?
Cheers and thanks in advance, Roberto _______________________________________________ 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
-- _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;: 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
"The coherence of a trip is given by the clearness of the goal."
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
"Innovation comes in the least expected form. That is, if it is expected, it already happened."
We had this discussion before, and with that occasion I argued that there is no real reason for the shape to be stateful unless you are composing shapes. Right now, the composition of shapes does not affect the bounds. As soon as you will compose them, you will likely feel the need to cache the bounds computation per shape. In Mondrian, we stored these values in the element (with the shape object as key). The end result was that Mondrian has half the amount of objects Roassal has for the same view.
It is just what we are finding a balance between what we can make work today and what people are asking. I am not against this. I've tried a couple of months ago to make the shapes translatable. I couldn't make it work in the amount of time I had. Now that the internal of roassal is simpler (thanks to your discussion about the zordering), we do not rely on ROChildrenShape anymore (we will soon remove it). Probably I should give a try again to translating shapes.
Cheers, Alexandre