[Bf-blender-cvs] [03b81730599] master: Python API: support setting properties in nested data in node add operator
Miguel Porces
noreply at git.blender.org
Tue Jun 30 18:08:18 CEST 2020
Commit: 03b817305995e15b7e85f20e7b952b20b0aabda9
Author: Miguel Porces
Date: Tue Jun 30 18:00:03 2020 +0200
Branches: master
https://developer.blender.org/rB03b817305995e15b7e85f20e7b952b20b0aabda9
Python API: support setting properties in nested data in node add operator
Differential Revision: https://developer.blender.org/D8093
===================================================================
M release/scripts/startup/bl_operators/node.py
===================================================================
diff --git a/release/scripts/startup/bl_operators/node.py b/release/scripts/startup/bl_operators/node.py
index 9fdaebc7540..1c5ebb4fa17 100644
--- a/release/scripts/startup/bl_operators/node.py
+++ b/release/scripts/startup/bl_operators/node.py
@@ -94,9 +94,16 @@ class NodeAddOperator:
for setting in self.settings:
# XXX catch exceptions here?
value = eval(setting.value)
+ node_data = node
+ node_attr_name = setting.name
+
+ # Support path to nested data.
+ if '.' in node_attr_name:
+ node_data_path, node_attr_name = node_attr_name.rsplit(".", 1)
+ node_data = node.path_resolve(node_data_path)
try:
- setattr(node, setting.name, value)
+ setattr(node_data, node_attr_name, value)
except AttributeError as e:
self.report(
{'ERROR_INVALID_INPUT'},
More information about the Bf-blender-cvs
mailing list