Comment #13 on issue 831 by google....(a)ben.coman.com.au: Rossal problem
with nested node translation to left of 0@0
http://code.google.com/p/moose-technology/issues/detail?id=831
I believe operating as per Comment 12 will be much more intuitive to work
with.
To expand your test method above, if you present the following to a dozen
random programmers,
what do you think their answer would be for the position of innerNodes 1, 2
& 3 ?
testDraggingOnTheTopLeftCorner
| view outterNode innerNode1 innerNode2 innerNode3 result |
view := ROView new.
view @ RODraggable.
outterNode := ROElement new.
outterNode + (ROBox new extent: 50 @ 50).
innerNode1 := ROElement new.
innerNode1 + (ROBox blue extent: 10 @ 10).
innerNode2 := ROElement new.
innerNode2 + (ROBox green extent: 10 @ 10).
innerNode3 := ROElement new.
innerNode3 + (ROBox red extent: 10 @ 10).
outterNode add: innerNode1.
outterNode add: innerNode2.
outterNode add: innerNode3.
view add: outterNode.
" view open "
"Witout dragging"
self assert: innerNode1 position = (0 @ 0).
self assert: innerNode2 position = (0 @ 0).
self assert: innerNode3 position = (0 @ 0).
"Dragging innerNodes"
innerNode1 translateBy: -10 @ -10.
innerNode2 translateBy: -10 @ -10.