GraphEditor: Add pin/lock preview to node feature - #3079
MatthieuBEAUD wants to merge 14 commits into
Conversation
|
|
|
This looks like a nice clean way to add in this functionality. I have a few workflow cases that would be good to check / resolve:
For both compound (non definition graphs) and funcation graphs for when you dive into the graph, lock a graph node and then go out of it. I can suggest 2 options: Both may be useful even when you scroll the graph so that locked node is no longer visible. a. can be useful longer term as well to allow filtered selection of node / node outputs to render. Think b. is the simplest to add. Thanks. |
|
Thanks for this proposal, @MatthieuBEAUD! See the instructions at #3079 (comment) on how to resolve the CLA authorization warnings, so that we can begin reviewing this PR. |
6a5a89a to
3a12842
Compare
Thank you very much for this feedback !
All that being said, maybe adding the name / path of the current preview node to the viewport would be the more robust way afterall. I see when I can find time to work on point 3. Thanks again 🙏 |
|
Maybe let's keep it simple.
If someone scrolls the node out of view then 1) handles that case. Disallow functional node graph child node locking for now for this PR. There should be a global state that tells you this -- the graph is marked as read-only. Not all nodes chosen can have its upstream graph or itself rendered. For this PR let's just leave it as rendering nothing, and handle either prevention or fallback as a separate item. So I think the only addition is to check for read-only graph state. |
|
Thanks for the feedback I'll try and find a few hours to highlight the parent/child node of the current lock selection, and check of readonly state Thank you ! |
|
Suggestion Parent / child indicators exist and we can use title bar color for now. So something like this: (apologies in advance but this is AI generated slop, but shows the basic rule set :))
Thought blurb:
From what I've seen having both a title color cue and and icon are both useful with a icon addition post #3043 PR. Does this sound okay? |
|
Yes perfectly clear, I muted the color for when the child is selected then 👌 and we'll wait post #3043 to add the icon I also changed the color to match your example palette, as the dimmed yellow-ish felt confusing and too brown, and didn't feel like a muted highlight color. here are the results: |
kwokcb
left a comment
There was a problem hiding this comment.
This looks pretty close.
I think the key item to address is file->new and file->load clearing lock state.
Rest is minor.
kwokcb
left a comment
There was a problem hiding this comment.
Thanks for the final updates. Looks good to me.
You just need to resolve and test your changes.
Thank you very much ! thank you for the constant reviews 🙌 |
…ly locked preview render node
b4a672c to
e4adee3
Compare
|
Rebased, and re tested the feature, and all seems good ! (lock outside, lock inside nodegraph, reload, and load graph) I suppose I'll need another approval before merging
|
|
Thanks for all of your work on this, @MatthieuBEAUD, and to @kwokcb for the detailed review! Routing every assignment of I have one request on the keyboard shortcut, along with a few refinements that I think would be important to address before we merge:
A few smaller notes:
With those refinements, this PR should be in good shape to merge. Thanks again for taking this on, and for working through the UX questions with Bernard along the way! |
|
Thank you for all the detailled feedback. Indeed there is a Also moved all the nodeHeaderColor to named const in the header. And ensured the highlight and text support an output rendernode. here is the sum up test: mtlx.mp4 |
|
Hello, is there anything else I should do for this PR ? (since the 2 week period after the dev day is today I was just wondering 😇 ) |
|
Thanks for this latest revision, @MatthieuBEAUD! Looking through the changes, I see one remaining issue that I think is important to address: The lock release in I also have a question on the new label. In And one minor note: a render node is always a node or a document-scope output, so only a nodegraph can be its ancestor, and the muted branch in the node and output cases of Otherwise, I think this is looking really close to the mark, and it should make a great Dev Days contribution! |
|
Thank you ! 🙏 I'll try address those before the weekend, and hopefully still make the cut for this to be considered a DevDays contribution 😇 |









Issue
#3039
Description
Added a feature to be able to lock with node is used for the preview render:
Added:
Notes:
Demo