Is there a way to load PetitGui with a smaller set of dependecies? Or is Magritte and Grease and etc. needed for the GUI? Loading PetitParser default loads default of Glamour, too. And that's quite a lot.
I'm working on a treemap layout in Mondrian. I created the basic
functionality but am far from finished.
For the current progress see the following screenshots:
http://cl.ly/342z261g021c3X1j3X2b - A visualization of a very simple java
http://cl.ly/3H3x1K1y3O3j430S0a2z - A visualization of FAMIX itself.
The following is an example of how one sets up the layout:
> view nodes: self nodes.
> view edges: self nodes
> from: [ :each | each ]
> toAll: [ :each | each children ].
> view layout: (MOTreeMapLayoutIncubation withWeightBlock: [ :e |
> | model |
> model := e model.
> model isNil ifTrue: [
> ifFalse: [
> e model entity numberOfLinesOfCode.
The tree structure is given by the edges definition. The layout is created
with a weight block (lines of code here, but could be anything).
At the end I'd like to have something like:
http://cl.ly/3v1L3O2a2n1H1C2x3J0V - TreeMap in Softwarenaut in VisualWorks.
This is the first code that I'm writing with Mondrian, so I'm sure it could
be improved in many areas. If anyone sees a problem with how I set up the
layout. please do tell. If anyone wants to look at the code in detail
please take a look at MOTreeMapLayoutIncubation in my
Softwarenaut repository (I'm creating the tree map layout as part of the
Softwarenaut port to Pharo):
> location: 'http://www.squeaksource.com/Softwarenaut'
> user: ''
> password: ''
The layout is currently in this repo, if it is more mature, it would be
cool to add it to Mondrian itself. I'd like to make it as generic as
Now for some specific questions:
The red colors you see in the screenshots is actually a bug. What I would
like to do is only color the leaf nodes, but somehow (my guess is, it has
something to do with shape caching?), it also colors the containment blocks.
The way I do it is, while ging through the nodes (MONode) to draw them
If it is a leaf
> node shape fillColor: ((Color fromString: '#ff0000') alpha: 0.1).
If it is a containment block:
> node shape fillColor: (Color fromString: '#eeeeee').
But somehow all shapes (except the root node) are colored with the red
translucent color. Does anyone have an idea why this could be the case?
In general: I'm doing the styling of the nodes (also tried to add some
interactivity) directly inside the layout, but I'm not sure if this is the
Mondrian way to do this, since normally shape definitions and interaction
is defined when creating the view. Is this okay? Or should I do this in
My thought was that I'd like to have a treemap layout with default, nice
looking interactions, colors etc. without having to define them outside,
when defining the view, so it needs as little setup as possible.
Any inputs in general are greatly appreciated.
Labels: Type-Defect Priority-Medium
New issue 489 by jfabry: Glamour: action list without the dropdown
I have a Glamour pane that is an actionList where I do 5
populate:on:entitled:with: so that the pane has 5 buttons. Now what happens
is that the pane also has a dropdown menu, with the same actions as the
buttons. This menu should not be there according to Doru ...
Labels: Type-Defect Priority-Medium
New issue 774 by santiago...(a)gmail.com: MNU error after selecting data
Running the script:
| browser browserB|
browser := GLMTabulator new.
row: [ :r | r column: #columnA; column: #columnB ].
browser transmit to: #columnA; andShow: [ :a |
a list display: #('Value 1' 'Value 2' 'Value 3' 'Value 1').
browserB aPane: #data; aPane: #AdditionalInformation1; aPane:
browserB transmit to:#data; andShow: [ :a |
a titleIcon: GLMUIThemeExtraIcons glamorousBrowse ;title:'Data'.
a list display:#('data A' 'data B' 'data C').
browserB transmit from:#data; to:#AdditionalInformation1; andShow: [ :a |
a titleIcon: GLMUIThemeExtraIcons glamorousAccept ;title:'Additional
a text display:'something'.
browser transmit from: #columnA; to: #columnB; andShow: [ :a |
a custom: browserB.
browser openOn: MooseModel root allModels anyOne.
I received the following error after selecting "data A" "data B" or "data
C": MessageNotUnderstood; receiver of "fullBounds" is nil.