I can't answer for Roassal specific content, but in terms of plain
Pharo, for (3) you might be interested to try this example.
In Playground, evaluate...
Integer compile: '
plusOne
^ self + 1' .
Then inspect...
#(1 2 3) collect: #plusOne.
Debug into it, to observe #value: sent to aBlock variable when it holds #plusOne
such that ByteSymbol(Symbol)>>#value: twists this into a send of
#plusOne (i.e. self) to anObject.
In general, since symbols and blocks both respond to #value:
they can be used interchangeably.
cheers -ben
On Sun, Mar 19, 2017 at 7:31 PM, Markus Böhm <markus.boehm(a)gmail.com> wrote:
Agile Vis ebook is superb, copied following snippet, know hopefully what it's doing,
but want to make sure I understand how it works (in terms of "plain" Pharo):
1) @ RTPopup: Class name is enough, but it is initiated under the hood?
2) RTMetricNormalizer new ...: There is no need to keep reference to created object? Why?
because messages sent to object (like normalizeSize) have a "sideeffect" on es?
3) RTMetricNormalizer connects to model via #yourself? Is every symbol or code block.
that is sent to RTMetricNormalizer as argument, executed when finally "sent" to
es?
BR Mike
v := RTView new. es := (RTEllipse new color: Color blue) elementsOn: #(4 5 1 2 3 5). v
addAll: es. es @ RTPopup. RTMetricNormalizer new elements: es; alphaColor; normalizeSize:
#yourself min: 20 max: 50; normalizeColor: #yourself. RTHorizontalLineLayout new
alignCenter; on: es. es @ RTLabeled. v
_______________________________________________
Moose-dev mailing list
Moose-dev(a)list.inf.unibe.ch
https://www.list.inf.unibe.ch/listinfo/moose-dev