Alex,
Thanx for the dynamic edges, it is really useful. For now, it works only
for layouts that do not depend on the presence of edges to compute the node
layouts. Will it be possible to extend this mechanism to include layouts
that need edges too?
For example, we could include a selector to get edges of a node and the
selector is used to layout and display dynamic edges.
Hence, this mechanism will be more generic.
What do you think?
usman
On Sun, Apr 7, 2013 at 2:07 PM, Alexandre Bergel <alexandre.bergel(a)me.com>wrote;wrote:
Hi!
Having edges that show up when you enter a node is a recurrent need.
I have worked on some easy way to make this possible.
Using the Roassal low level api:
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
| view rawView el1 el2 el3 |
rawView := ROView new.
rawView add: (el1 := ROBox element size: 20).
rawView add: (el2 := ROBox element size: 20).
rawView add: (el3 := ROBox element size: 20).
ROCircleLayout on: (Array with: el1 with: el2 with: el3).
el1 @ RODraggable.
el2 @ RODraggable.
el3 @ RODraggable.
el1 @ (RODynamicEdge toAll: (Array with: el2 with: el3) using: (ROLine
arrowed color: Color red)).
rawView open
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Screenshot:
Using the Mondrian builder:
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
view interaction
dynamicEdge: [ :model | (Array with: 10 with: 20 with: 30) copyWithout:
model ]
using: (ROLine arrowed color: Color red).
view shape rectangle size: 20.
view nodes: (Array with: 10 with: 20 with: 30).
view circleLayout.
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Cheers,
Alexandre
On Feb 6, 2013, at 9:18 AM, Usman Bhatti <usman.bhatti(a)gmail.com> wrote:
Hello Martin,
Here is a script that did work for me in the past.
|view|
view := ROMondrianViewBuilder new.
view interaction on: ROMouseEnter do: [ :event |
view shape line color: Color blue.
view edgesFrom: [ :i | i // 2 ].
view raw signalUpdate.
].
view interaction on: ROMouseLeave do: [:event |
view raw allElementsDo: [ :el | el isEdge ifTrue: [el remove] ].
view raw signalUpdate].
view shape rectangle size: 20.
view nodes: (1 to: 20).
view gridLayout.
view open
I tried in the newest Roassal and it does not work (edges are not removed
from the canvas). So, if you want to see it in action, you can do so with
Roassal 1.147, which corresponds to (ConfigurationOfRoassal project
version: '1.148') load.
I'll have a look into what broke this feature in latest Roassal.
Usman
On Tue, Feb 5, 2013 at 7:27 PM, Martin Dias <tinchodias(a)gmail.com> wrote:
Hello,
I have some nodes on a view, and I would like that on ROMouseEnter,
some edges are shown, and on ROMouseLeave they disappear.
My code is a bit complex, but I can recreate the scenario in a script
if you need.
Best regards,
Martin
_______________________________________________
Moose-dev mailing list
Moose-dev(a)iam.unibe.ch
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
_______________________________________________
Moose-dev mailing list
Moose-dev(a)iam.unibe.ch
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
--
_,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
Alexandre Bergel
http://www.bergel.eu
^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
_______________________________________________
Moose-dev mailing list
Moose-dev(a)iam.unibe.ch
https://www.iam.unibe.ch/mailman/listinfo/moose-dev