Changeset View
Changeset View
Standalone View
Standalone View
source/blender/editors/space_node/node_edit.c
| Show First 20 Lines • Show All 1,707 Lines • ▼ Show 20 Lines | LISTBASE_FOREACH (bNode *, node, &snode->edittree->nodes) { | ||||
| /* Only allow muting of nodes having a mute func! */ | /* Only allow muting of nodes having a mute func! */ | ||||
| if ((node->flag & SELECT) && node->typeinfo->update_internal_links) { | if ((node->flag & SELECT) && node->typeinfo->update_internal_links) { | ||||
| node->flag ^= NODE_MUTED; | node->flag ^= NODE_MUTED; | ||||
| snode_update(snode, node); | snode_update(snode, node); | ||||
| do_tag_update |= (do_tag_update || node_connected_to_output(bmain, snode->edittree, node)); | do_tag_update |= (do_tag_update || node_connected_to_output(bmain, snode->edittree, node)); | ||||
| } | } | ||||
| } | } | ||||
| do_tag_update |= ED_node_is_geometry(snode); | |||||
| snode_notify(C, snode); | snode_notify(C, snode); | ||||
| if (do_tag_update) { | if (do_tag_update) { | ||||
| snode_dag_update(C, snode); | snode_dag_update(C, snode); | ||||
| } | } | ||||
| return OPERATOR_FINISHED; | return OPERATOR_FINISHED; | ||||
| } | } | ||||
| Show All 24 Lines | static int node_delete_exec(bContext *C, wmOperator *UNUSED(op)) | ||||
| LISTBASE_FOREACH_MUTABLE (bNode *, node, &snode->edittree->nodes) { | LISTBASE_FOREACH_MUTABLE (bNode *, node, &snode->edittree->nodes) { | ||||
| if (node->flag & SELECT) { | if (node->flag & SELECT) { | ||||
| do_tag_update |= (do_tag_update || node_connected_to_output(bmain, snode->edittree, node)); | do_tag_update |= (do_tag_update || node_connected_to_output(bmain, snode->edittree, node)); | ||||
| nodeRemoveNode(bmain, snode->edittree, node, true); | nodeRemoveNode(bmain, snode->edittree, node, true); | ||||
| } | } | ||||
| } | } | ||||
| do_tag_update |= ED_node_is_geometry(snode); | |||||
| ntreeUpdateTree(CTX_data_main(C), snode->edittree); | ntreeUpdateTree(CTX_data_main(C), snode->edittree); | ||||
| snode_notify(C, snode); | snode_notify(C, snode); | ||||
| if (do_tag_update) { | if (do_tag_update) { | ||||
| snode_dag_update(C, snode); | snode_dag_update(C, snode); | ||||
| } | } | ||||
| return OPERATOR_FINISHED; | return OPERATOR_FINISHED; | ||||
| ▲ Show 20 Lines • Show All 1,071 Lines • Show Last 20 Lines | |||||