Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Port & transmission in Mondrian #499

Closed
seandenigris opened this issue Aug 3, 2015 · 2 comments
Closed

Port & transmission in Mondrian #499

seandenigris opened this issue Aug 3, 2015 · 2 comments

Comments

@seandenigris
Copy link
Contributor

Originally reported on Google Code with ID 499

Hi Alex,

-=-=-=-=-=
Previous discussion:
What we did in Glamour was to attach to each Presentation a kind of default interaction.
In your example, I would make #mouseEnter, #mouseClick ... default ports that are populated
when the corresponding interactions happen on a graph element.

Then of course, these ports will belong to graph elements. Like this transmissions
are created between the ports of a graph element. Perhaps there will also be a need
to identify graph elements by name so that you can refer to them from outside the context
of a script.

-=-=-=-=-=
Previous discussion:

Why not having ports that belong to an interaction instead? Consider the following
script:
view nodes: (1 to: 1000).

Figure selection will imply a transmission between the root and each of these nodes.
It could be a single transmission between 'root interaction' and the unique interaction
of the nodes?

-=-=-=-=-=
Doru answer:
At least two reasons. First, the ports are not just for transmitting information, but
ports also allow you to store arbitrary values that model the graph element, and thus
you can model the state of a visualization (including side-effects). Second, using
ports you will be able to let the shape populate ports by default without writing any
explicit interaction (only write transmission when you want to deal with them).

Now, about we can be smart about transmissions and do what we do for shapes: we share
the object between multiple graph elements. For this, we will just need a lookup of
the origins instead of hardcoding them. Actually in Glamour, we have:

GLMTransmission>>originatesAt: aPort

and thus, you can have a smart transmission that performs a more complex check by checking
if the port is part of any elements from a collection. Like this you will have only
one the transmission object. You could write:

view nodes: #(1 2 3) labeled: #interestingNodes.
view nodes: #(5 6 7) labeled: #otherNodes.
view transmitTo: #otherNodes fromAny: #interestingNodes port: #selection.

Cheers,
Doru

Reported by alexandre.bergel on 2011-01-19 23:36:28

@seandenigris
Copy link
Contributor Author

Reported by tudor.girba on 2011-01-20 07:40:27

  • Labels added: Type-Enhancement
  • Labels removed: Type-Defect

@seandenigris
Copy link
Contributor Author

I close this one, I have no plan to work on it so far. Roassal will provide a much nicer
interaction mechanism than what Mondrian offers.

Reported by alexandre.bergel on 2012-01-02 20:32:21

  • Status changed: WontFix

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant