Plumiferos request
Compositor: Viewer Nodes inside of Groups now work too. To not frustrate interactive speed, the following rules apply: - Making a Group editable (or closing) doesn't signal recalculation of composite - clicking on an Input socket always checks changes and calulcates - When there are Viewers inside an edited Group, Viewers in the main tree are not executed. Also added: a "hide unused sockets" icon in the header of Viewer nodes. This allows cleanup of Groups, to prevent these sockets get reveiled.
This commit is contained in:
		@@ -441,6 +441,12 @@ static void node_set_active(SpaceNode *snode, bNode *node)
 | 
			
		||||
				node->flag |= NODE_DO_OUTPUT;
 | 
			
		||||
				if(was_output==0) {
 | 
			
		||||
					NodeTagChanged(snode->edittree, node);
 | 
			
		||||
					
 | 
			
		||||
					/* if inside group, tag entire group */
 | 
			
		||||
					node= snode_get_editgroup(snode);
 | 
			
		||||
					if(node)
 | 
			
		||||
						NodeTagIDChanged(snode->nodetree, node->id);
 | 
			
		||||
					
 | 
			
		||||
					snode_handle_recalc(snode);
 | 
			
		||||
				}
 | 
			
		||||
				
 | 
			
		||||
@@ -1089,10 +1095,9 @@ static int do_header_node(SpaceNode *snode, bNode *node, float mx, float my)
 | 
			
		||||
		}
 | 
			
		||||
		totr.xmin-=18.0f;
 | 
			
		||||
	}
 | 
			
		||||
	if(node->outputs.first) {
 | 
			
		||||
		if(BLI_in_rctf(&totr, mx, my)) {
 | 
			
		||||
			node_hide_unhide_sockets(snode, node);
 | 
			
		||||
		}
 | 
			
		||||
	/* hide unused sockets */
 | 
			
		||||
	if(BLI_in_rctf(&totr, mx, my)) {
 | 
			
		||||
		node_hide_unhide_sockets(snode, node);
 | 
			
		||||
	}
 | 
			
		||||
	
 | 
			
		||||
	
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user