Created by: portnov
This is partly a continuation of #1959 (closed).
What this adds is:
- Possibility for node class to define what to put to node's right-click menu.
- By default, items are added allowing to replace this node with new one. This is primarily intended to allow to easily replace deprecated node with new one. But it can be also used to replace one node to other, which has similar functionality.
- bl_idnames of nodes which this node can be replaced with, along with remapping of input/output socket names, is defined declaratively via
replacement_nodes
class property. - New node class can override
migrate_from
method to correctly copy all settings from old node. - Two simple examples are added: replacement of old MatrixIn node with new one, and replacement of Extrude Separate node with Inset Special.
Please review and test.