Open borupdaniel opened 5 years ago
@aganders3 could you comment on whether this is already possible in the current framework?
This should be possible but I'm not sure if it can be done on the node side for all cases, or if it will require changes to the framework. I think the shapes node specifically uses some "custom" widgets so that may be a clue for where this becomes a problem.
Testing now with shapes it seems like adding the self.sb.set_immediate(True)
to the SHAPES_GROUP
constructor may do what you want.
Oh I guess that's a different problem. Setting immediate
will cause the node to update when you tab out of the widget. I'm not sure if there's a way for a single "return" to ensure the updated values from all widgets are checked but I will look into that. I'm pretty sure that will be a framework change rather than a node-level change.
Some nodes wait for the user to hit return/enter before processing a change to a parameter in the node menu (the "shapes" node, for example).
However, only the specific parameter in which the user hits return/enter is updated. This leads to somewhat frustrating behavior where, for example, a node network will fail to run successfully due to a dimension mismatch — even though the Shapes node shows the correct dimensions — until the user returns to all updated boxes and hits return.
It would seem smoother to synchronize this so that any time the user hits return, all updated values in the node menu are recognized.
I'm marking this as a question as well in case this is already possible in the current framework — in that case this is a discussion for the node development issues board.