Add an Event to ProgramNodes that is called when children are added to allow setting default configration / Add config inheritance

Summary

Add a way to set the default configuration of child nodes when they are added instead of having to manually call traverse.

What is it?

Something like an Event or Callback in ProgramNodeContribution that is called when a child node is added by any means (added, pasted, moved) that passes the child node reference. This allows changing of default config when a node is added.
A filter option, similar to traverse, would allow the developers to specify the nodes they want to change the config on.

Alternatively it could be a way to register Config Inheritance where nodes added would traverse upwards in the tree to build their default config.

This allows default setting of TCP, speeds, blends etc. for move nodes, default wait time, and more.

Why is it needed?

Currently move nodes need all their values set manually. For tool changers and grippers where the TCP and speed might depend on the current tool/load the end-user currently has to set it all up manually. A way to change the default config for child nodes would allow developers to set needed values or sane defaults for the various nodes.

5 Likes