Hi Doru,
I am not sure to understand what you say: I understand that if I use allowNil, the presentation is triggered when I set #selectedVersion. But if I set #selectedCat and/or #selectedElement, it should be triggered differently, no ?
For now, I use when: in the feedback method. The behavior is different if #selectedElement is not nil.
If I don't allow nil, the presentation is triggered when I set the three elements (#selectedVersion, #selectedCat and #selectedElement). But the method oBrowser>>feedback has only the #selectedVersion value.
Maybe the problem come from my method feedback
Here is a part of the source code:
===== feedback | browser | browser := GLMTabulator new. browser column: #left; column: #mondrian; column: #right.
browser showOn: #left; using: [ browser list display: [:version | version changes ]; title: 'Actions'; whenKindOf: OrionModel.]. browser showOn: #mondrian; using: [ browser mondrian painting: [ :view :version | |group| group := FAMIXPackageGroup new. group addAll: version allPackages. group viewColoredDSMOn: view ]]. browser showOn: #right; using: [ browser table title: 'Model Metrics'; display: [ :version :cat :entity | "nothing for now" ]; when: [:version | version notNil]. browser table title: 'category Metrics'; display: [ :version :cat :entity | "nothing for now" ]; when: [:version :cat | cat notNil]. browser table title: 'entity Metrics'; display: [ :version :cat :entity | "nothing for now" ]; when: [:version :cat :entity | entity notNil]. ]. ^ browser =====
Cheers, Jannik
On Dec 1, 2009, at 12:15 , Tudor Girba wrote:
Hi Jannik,
Every presentation has a condition that defines when it gets active. By default, the condition is that all origin ports need to be notNil. If you specify allowNil, then you will get notified every time any of the ports change.
In your case, if you set the #selectedVersion the presentation will be triggered. If you want to control the exact input, you should use a #when: clause
Cheers, Doru
On 1 Dec 2009, at 12:04, Laval Jannik wrote:
Hi Doru,
I'm working on a browser and I have a problem for communication between pane. Here is a part of my sourcecode:
===== | browser| browser := GLMTabulator new. browser row: #browser; row: #feedback.
browser showOn:#browser; using:[ browser custom: self orionBrowser. ].
browser showOn: #feedback; from: #browser -> #selectedVersion; from: #browser -> #selectedCat; from: #browser -> #selectedElement; using:[ |feed| feed := self feedback. feed allowNil. browser custom: feed. ].
^ browser
In the "self feedback", I only have selectedVersion. The other values are nil. Have you an idea of my problem ?
the repository is:'http://www.squeaksource.com/Orion' and the concerned method is OrionBrowser>>oBrowser.
Thank you for your help.
Cheers
Jannik Laval PhD Student - Rmod Team - INRIA Certified Project Management Associate (IPMA) http://www.jannik-laval.eu http://rmod.lille.inria.fr
Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
-- www.tudorgirba.com
"What we can governs what we wish."
Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
--- Jannik Laval PhD Student - Rmod Team - INRIA Certified Project Management Associate (IPMA) http://www.jannik-laval.eu http://rmod.lille.inria.fr ---