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

Node selection pre-highlighting #726

Merged

Conversation

johnhaddon
Copy link
Member

This introduces a new highlighted state for Gadgets, mirroring the equivalent state already available of Widgets. It then refactors the selection representation in the NodeGraph to use the highlighted state for selected nodes, reducing complexity in the NodeGadgets and dramatically reducing the amount of signal handing required for selection highlight management. Finally it adds selection pre-highlighting for #94.

These match the equivalent methods on the Widget class.
It was already doing this, but using a private m_hovered member variable rather than the public status.
…get.

This reduces the amount of signal handling needed to keep the highlight status up to date, and means other NodeGadget implementations would have one less thing to worry about.
It just uses the highlighting state now that that is kept in sync with the selection by the GraphGadget.
As the user drags out the selection rectangle in the node graph, nodes are highlighted to indicate whether or not they will be selected. This makes it clearer what is about to happen, and avoids ambiguity about whether it is wholly enclosed or merely intersected nodes that will be selected.

Fixes GafferHQ#94.
andrewkaufman added a commit that referenced this pull request Jan 27, 2014
@andrewkaufman andrewkaufman merged commit f749a1a into GafferHQ:master Jan 27, 2014
@johnhaddon johnhaddon deleted the nodeSelectionPreHighlighting branch January 28, 2014 09:30
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

Successfully merging this pull request may close these issues.

2 participants