Hi folks. I am trying to script some distribution maps. For the moment I was doing simple things with just two colors. Example:
^ (DistributionMap onContainers: (self listOfCorePackages collect: [ :each | (PackageInfo named: each) ]) elements: #classes properties: [:element | element hasUsedInstances = true] ) render open. That show me classes with used instances with blue and the rest with red. Now I want: element hasUsedInstances = true -> blue element instanceCount > 0 and: [hasUsedInstances = false] -> red the rest (without instances) -> yellow Forget about the colors, I don't care which color (although it would be cool to be able to choose). What I don't know how to do is to define multiple properties. And I cannot use the wizard, I have to do it by code ;) Can someone help ? Thank you very much in advance. Mariano _______________________________________________ Moose-dev mailing list [hidden email] https://www.iam.unibe.ch/mailman/listinfo/moose-dev |
Hi,
If you return multiple values in your properties block, you will get multiple colors. Cheers, Doru On Wed, May 12, 2010 at 3:58 PM, Mariano Martinez Peck <[hidden email]> wrote: Hi folks. I am trying to script some distribution maps. For the moment I was doing simple things with just two colors. Example: _______________________________________________ Moose-dev mailing list [hidden email] https://www.iam.unibe.ch/mailman/listinfo/moose-dev |
In reply to this post by Mariano Martinez Peck
nobody ? :(
On Wed, May 12, 2010 at 3:58 PM, Mariano Martinez Peck <[hidden email]> wrote: Hi folks. I am trying to script some distribution maps. For the moment I was doing simple things with just two colors. Example: _______________________________________________ Moose-dev mailing list [hidden email] https://www.iam.unibe.ch/mailman/listinfo/moose-dev |
Hi Mariano,
If you want, I use this script in a visualization, it should help you. ^ ((DistributionMap onContainers: anOrionModel allModelPackages elements: #classes properties: [:element | element stateIn: anOrionModel] ) propertyColorMap: (Dictionary new at: #notChanged put: Color gray; at:#isModified put: Color green; at: #isCreated put: Color blue; at: #isRemoved put: Color red; yourself); yourself) render open. Cheers, Jannik On May 14, 2010, at 20:53 , Mariano Martinez Peck wrote: nobody ? :( --- Jannik Laval _______________________________________________ Moose-dev mailing list [hidden email] https://www.iam.unibe.ch/mailman/listinfo/moose-dev |
Hi Mariano,
I believe you did not receive the previous mails because you are not subscribed to the mailing list and the default behavior is to only reply to the moose-dev mailing list. If you want to subscribe, you can do it through: https://www.iam.unibe.ch/mailman/listinfo/moose-dev The idea is that if you return multiple values in your properties block, you will get multiple colors. Cheers, Doru On 14 May 2010, at 20:57, Laval Jannik wrote: > Hi Mariano, > > If you want, I use this script in a visualization, it should help you. > > ^ ((DistributionMap onContainers: anOrionModel allModelPackages > elements: #classes properties: [:element | element stateIn: > anOrionModel] ) > propertyColorMap: (Dictionary new at: #notChanged put: Color gray; > at:#isModified put: Color green; at: #isCreated put: Color blue; at: > #isRemoved put: Color red; yourself); yourself) > render > open. > > Cheers, > Jannik > > > On May 14, 2010, at 20:53 , Mariano Martinez Peck wrote: > >> nobody ? :( >> >> On Wed, May 12, 2010 at 3:58 PM, Mariano Martinez Peck <[hidden email] >> > wrote: >> Hi folks. I am trying to script some distribution maps. For the >> moment I was doing simple things with just two colors. Example: >> >> >> ^ (DistributionMap onContainers: (self listOfCorePackages >> collect: [ :each | (PackageInfo named: each) ]) elements: >> #classes properties: [:element | element hasUsedInstances = true] ) >> render >> open. >> >> >> That show me classes with used instances with blue and the rest >> with red. Now I want: >> >> element hasUsedInstances = true -> blue >> element instanceCount > 0 and: [hasUsedInstances = false] -> red >> the rest (without instances) -> yellow >> >> Forget about the colors, I don't care which color (although it >> would be cool to be able to choose). What I don't know how to do >> is to define multiple properties. And I cannot use the wizard, I >> have to do it by code ;) >> >> Can someone help ? >> >> Thank you very much in advance. >> >> Mariano >> >> _______________________________________________ >> Moose-dev mailing list >> [hidden email] >> https://www.iam.unibe.ch/mailman/listinfo/moose-dev > > --- > Jannik Laval > > _______________________________________________ > Moose-dev mailing list > [hidden email] > https://www.iam.unibe.ch/mailman/listinfo/moose-dev -- www.tudorgirba.com "Some battles are better lost than fought." _______________________________________________ Moose-dev mailing list [hidden email] https://www.iam.unibe.ch/mailman/listinfo/moose-dev |
On Sat, May 15, 2010 at 2:53 AM, Tudor Girba <[hidden email]> wrote: Hi Mariano, I am already subscribed. I even could send this email. I wouldn't be able (probably) sent the email if I was not.
Thanks Doru/Jannik I will give a try and let you know. Cheers, _______________________________________________ Moose-dev mailing list [hidden email] https://www.iam.unibe.ch/mailman/listinfo/moose-dev |
Thanks Jannik. It worked like a charm :)
Now I have another question: how can I put a reference in a DistributionMap to know what does it mean each color. For example, suppose I export the map to a png and I send it to you...how to you know each color what does it mean ? It would be cool to have such information in a header or some other visible place. Can I do this? how? (not with wizard please!) Thanks Mariano On Sat, May 15, 2010 at 4:05 PM, Mariano Martinez Peck <[hidden email]> wrote:
_______________________________________________ Moose-dev mailing list [hidden email] https://www.iam.unibe.ch/mailman/listinfo/moose-dev |
Sorry for the noise...I am an idiot. It is below the map :)
Now, can I put it in above? like kind of header? Thanks! mariano On Mon, May 17, 2010 at 11:31 AM, Mariano Martinez Peck <[hidden email]> wrote: Thanks Jannik. It worked like a charm :) _______________________________________________ Moose-dev mailing list [hidden email] https://www.iam.unibe.ch/mailman/listinfo/moose-dev |
For now there is no way to put it above the map, the script generating the visualization 'hardcode' the map description to be at the bottom. But it could be changed
2010/5/17 Mariano Martinez Peck <[hidden email]> Sorry for the noise...I am an idiot. It is below the map :) _______________________________________________ Moose-dev mailing list [hidden email] https://www.iam.unibe.ch/mailman/listinfo/moose-dev |
In reply to this post by Mariano Martinez Peck
On Mon, May 17, 2010 at 11:37 AM, Mariano Martinez Peck <[hidden email]> wrote: Sorry for the noise...I am an idiot. It is below the map :) Ok...I did it. If someone is interested in the change, I just move the place of "self renderLegendOn: view." in AbstractDistributionMap >> renderOn: now it is: renderOn: view | nodes colorsAndNodes elements | nodes := self parts. nodes := self orderParts: nodes. self renderLegendOn: view. "Node for the map itself" view shape rectangle withoutBorder. view node: #map forIt: [ "Node for container + title" view shape rectangle withoutBorder. view nodes: nodes forEach: [ :node | (view shape label) withoutBorder; fontSize: 7. view node: node name. "Node for container" view interaction nodraggable. view interaction popupText: [ :element | element asString ]. view interaction menuMorphBlock: [ :element | element mooseMenuMorph ]. (view shape rectangle) borderColor: Color gray; borderWidth: 1. view node: node forIt: [ "Node for elements" view interaction nodraggable. view interaction popupText: [ :element | element asString ]. self renderElementsFrom: node on: view. view gridLayout gapSize: 2 ]. view verticalLineLayout gapSize: 0 ]. view flowLayout maxWidth: 800 ]. view verticalLineLayout. ^ view thanks mariano Thanks! _______________________________________________ Moose-dev mailing list [hidden email] https://www.iam.unibe.ch/mailman/listinfo/moose-dev |
Free forum by Nabble | Edit this page |