Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMiguel Porces <cmporces>2020-06-30 19:00:03 +0300
committerBrecht Van Lommel <brecht@blender.org>2020-06-30 19:04:25 +0300
commit03b817305995e15b7e85f20e7b952b20b0aabda9 (patch)
tree6213fa2fed6d99ba38a10833592e5752cf975337 /release
parent6add0cc88a0d06e0a60f88b83c4894bd8701ecb5 (diff)
Python API: support setting properties in nested data in node add operator
Differential Revision: https://developer.blender.org/D8093
Diffstat (limited to 'release')
-rw-r--r--release/scripts/startup/bl_operators/node.py9
1 files changed, 8 insertions, 1 deletions
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'},