Multiple selection adorner


We have a requirement to have a multiple selection adorner to behave like Visio, meaning there’s an invisible group adorner which allows us to rotate, resize and move based on the collective adorner.

What would you suggest? Create a temporary group for this and remove it when unfocused or is there a tool that we can manipulate to achieve this behavior?

(Pictures below)


Resized (note that the nodes’ locations actually move (x and y) when resized. They’re moved anchoring on the collective adorner point of the resize at the top left corner)


So those are currently three separate top-level Nodes?

Yes, I suspect using a temporary Group might be the easiest to implement. I bet it won’t be easy, though.

It’s odd that your example has the right corner of the green triangle sticking out beyond the group’s bounds.

Yes, those three are separate nodes. (no real group created yet)

Yup, looks like a bug in Visio 2010. When you zoom in somehow their calculation of the bounding rectangle is not correct causing the corner of the triangle to stick out of the collective adorner.

So when we put in a temporary group, does GoXam currently support rotating all nodes in the group accordingly? I haven’t seen a sample on a group resize as well.


No, rotating a Group won’t rotate and reposition its member nodes.

Nor will resizing a Group resize and reposition its member nodes.

That’s why it will be non-trivial to implement this functionality.

Upon further thought, I suspect it might be easier not to make use of Groups at all.