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:
authorMatt Ebb <matt@mke3.net>2010-03-29 11:15:12 +0400
committerMatt Ebb <matt@mke3.net>2010-03-29 11:15:12 +0400
commitf4dcd1d570272a6bb8350a685d9539a0534fe551 (patch)
tree5c95c0518177ae58e2d93ff05f27f4b999869cea /source/blender/editors
parent86b30beb45fbdfd74bc7cef38a6098a2205b954d (diff)
Fix [#21706] edit field in nodegroup which overlaps a node, edits the field of the overlapped node
Diffstat (limited to 'source/blender/editors')
-rw-r--r--source/blender/editors/space_node/node_draw.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/source/blender/editors/space_node/node_draw.c b/source/blender/editors/space_node/node_draw.c
index 50f9d84ce71..f4c9353ff92 100644
--- a/source/blender/editors/space_node/node_draw.c
+++ b/source/blender/editors/space_node/node_draw.c
@@ -394,9 +394,6 @@ static void node_update_group(const bContext *C, bNodeTree *ntree, bNode *gnode)
rctf *rect= &gnode->totr;
int counter;
- /* init ui blocks for sub-nodetrees */
- node_uiblocks_init(C, ngroup);
-
/* center them, is a bit of abuse of locx and locy though */
for(node= ngroup->nodes.first; node; node= node->next) {
node->locx+= gnode->locx;
@@ -1099,8 +1096,16 @@ void drawnodespace(const bContext *C, ARegion *ar, View2D *v2d)
if(snode->nodetree) {
bNode *node;
+ /* init ui blocks for opened node group trees first
+ * so they're in the correct depth stack order */
+ for(node= snode->nodetree->nodes.first; node; node= node->next) {
+ if(node->flag & NODE_GROUP_EDIT)
+ node_uiblocks_init(C, (bNodeTree *)node->id);
+ }
+
node_uiblocks_init(C, snode->nodetree);
+
/* for now, we set drawing coordinates on each redraw */
for(node= snode->nodetree->nodes.first; node; node= node->next) {
if(node->flag & NODE_GROUP_EDIT)