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>2019-03-16 20:48:22 +0300
committerBrecht Van Lommel <brechtvanlommel@gmail.com>2019-03-16 22:36:35 +0300
commit9e152f919f2f86cbe3530c6adc34373ebc703904 (patch)
treee3434b83601c03e659b4a1bfd4ae5027f58fa3f5 /source/blender/blenkernel/intern/node.c
parent5797a5fc65c87b69460d910a82d219b5e3ea12ad (diff)
Python API: add Python-defined node groups for shaders and compositing.
This was already supported for Cycles shader nodes, but now also works for Eevee and compositing nodes. Instead of a generic NodeCustomGroup, now there is ShaderNodeCustomGroup and CompositorNodeCustomGroup that can be subclassed and registered. Differential Revision: https://developer.blender.org/D4370
Diffstat (limited to 'source/blender/blenkernel/intern/node.c')
-rw-r--r--source/blender/blenkernel/intern/node.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/source/blender/blenkernel/intern/node.c b/source/blender/blenkernel/intern/node.c
index 57dcbcbebf8..d4dd74a0e2d 100644
--- a/source/blender/blenkernel/intern/node.c
+++ b/source/blender/blenkernel/intern/node.c
@@ -1804,7 +1804,7 @@ static void free_localized_node_groups(bNodeTree *ntree)
return;
for (node = ntree->nodes.first; node; node = node->next) {
- if (node->type == NODE_GROUP && node->id) {
+ if ((ELEM(node->type, NODE_GROUP, NODE_CUSTOM_GROUP)) && node->id) {
bNodeTree *ngroup = (bNodeTree *)node->id;
ntreeFreeTree(ngroup);
MEM_freeN(ngroup);
@@ -2046,7 +2046,7 @@ bNodeTree *ntreeLocalize(bNodeTree *ntree)
LIB_ID_COPY_NO_ANIMDATA));
for (node = ltree->nodes.first; node; node = node->next) {
- if (node->type == NODE_GROUP && node->id) {
+ if ((ELEM(node->type, NODE_GROUP, NODE_CUSTOM_GROUP)) && node->id) {
node->id = (ID *)ntreeLocalize((bNodeTree *)node->id);
}
}
@@ -2369,7 +2369,7 @@ bool ntreeHasTree(const bNodeTree *ntree, const bNodeTree *lookup)
return true;
for (node = ntree->nodes.first; node; node = node->next)
- if (node->type == NODE_GROUP && node->id)
+ if (ELEM(node->type, NODE_GROUP, NODE_CUSTOM_GROUP) && node->id)
if (ntreeHasTree((bNodeTree *)node->id, lookup))
return true;