[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [28196] trunk/blender/source/blender/ editors/space_node/node_edit.c: CTRL+SHIFT click on node " Make viewer connect to node" now also works

Ton Roosendaal ton at blender.org
Wed Apr 14 19:32:28 CEST 2010


Revision: 28196
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=28196
Author:   ton
Date:     2010-04-14 19:32:28 +0200 (Wed, 14 Apr 2010)

Log Message:
-----------
CTRL+SHIFT click on node "Make viewer connect to node" now also works
if there's no active viewer, or no existing link to viewer.

Modified Paths:
--------------
    trunk/blender/source/blender/editors/space_node/node_edit.c

Modified: trunk/blender/source/blender/editors/space_node/node_edit.c
===================================================================
--- trunk/blender/source/blender/editors/space_node/node_edit.c	2010-04-14 17:15:58 UTC (rev 28195)
+++ trunk/blender/source/blender/editors/space_node/node_edit.c	2010-04-14 17:32:28 UTC (rev 28196)
@@ -950,6 +950,15 @@
 		if( ELEM(node->type, CMP_NODE_VIEWER, CMP_NODE_SPLITVIEWER)) 
 			if(node->flag & NODE_DO_OUTPUT)
 				break;
+	/* no viewer, we make one active */
+	if(node==NULL) {
+		for(node= snode->edittree->nodes.first; node; node= node->next) {
+			if( ELEM(node->type, CMP_NODE_VIEWER, CMP_NODE_SPLITVIEWER)) {
+				node->flag |= NODE_DO_OUTPUT;
+				break;
+			}
+		}
+	}
 		
 	if(node) {
 		bNodeLink *link;
@@ -958,8 +967,13 @@
 		for(link= snode->edittree->links.first; link; link= link->next)
 			if(link->tonode==node)
 				break;
-
-		if(link) {
+		
+		if(link==NULL) {
+			nodeAddLink(snode->edittree, tonode, tonode->outputs.first, node, node->inputs.first);
+			ntreeSolveOrder(snode->edittree);
+			NodeTagChanged(snode->edittree, node);
+		}
+		else if(link) {
 			link->fromnode= tonode;
 			link->fromsock= tonode->outputs.first;
 			NodeTagChanged(snode->edittree, node);





More information about the Bf-blender-cvs mailing list