|
Blender
V2.93
|
#include <stdlib.h>#include "MEM_guardedalloc.h"#include "DNA_anim_types.h"#include "DNA_node_types.h"#include "BLI_linklist.h"#include "BLI_listbase.h"#include "BLI_math.h"#include "BLI_string.h"#include "BLT_translation.h"#include "BKE_action.h"#include "BKE_animsys.h"#include "BKE_context.h"#include "BKE_lib_id.h"#include "BKE_main.h"#include "BKE_report.h"#include "DEG_depsgraph_build.h"#include "ED_node.h"#include "ED_render.h"#include "ED_screen.h"#include "RNA_access.h"#include "RNA_define.h"#include "WM_api.h"#include "WM_types.h"#include "UI_resources.h"#include "NOD_common.h"#include "NOD_socket.h"#include "node_intern.h"Go to the source code of this file.
Separate Operator | |
| enum | eNodeGroupSeparateType { NODE_GS_COPY , NODE_GS_MOVE } |
| typedef enum eNodeGroupSeparateType | eNodeGroupSeparateType |
| static const EnumPropertyItem | node_group_separate_types [] |
| static int | node_group_separate_selected (Main *bmain, bNodeTree *ntree, bNodeTree *ngroup, float offx, float offy, int make_copy) |
| static int | node_group_separate_exec (bContext *C, wmOperator *op) |
| static int | node_group_separate_invoke (bContext *C, wmOperator *UNUSED(op), const wmEvent *UNUSED(event)) |
| void | NODE_OT_group_separate (wmOperatorType *ot) |
| typedef enum eNodeGroupSeparateType eNodeGroupSeparateType |
| Enumerator | |
|---|---|
| NODE_GS_COPY | |
| NODE_GS_MOVE | |
Definition at line 565 of file node_group.c.
|
static |
Definition at line 209 of file node_group.c.
References AnimationBasePathChange::dst_basepath, MEM_freeN, and AnimationBasePathChange::src_basepath.
Referenced by node_group_make_insert_selected(), node_group_separate_selected(), and node_group_ungroup().
|
static |
The given paths will be owned by the returned instance. Both pointers are allowed to point to the same string.
Definition at line 200 of file node_group.c.
References AT, AnimationBasePathChange::dst_basepath, MEM_callocN, and AnimationBasePathChange::src_basepath.
Referenced by node_group_make_insert_selected(), node_group_separate_selected(), and node_group_ungroup().
|
static |
Definition at line 104 of file node_group.c.
References C, CTX_wm_space_node(), and SpaceNode::tree_idname.
Referenced by node_group_make_exec().
|
static |
Definition at line 728 of file node_group.c.
References INIT_MINMAX2, LISTBASE_FOREACH, max, min, minmax_v2v2_v2(), node, node_group_make_use_node(), bNodeTree::nodes, nodeToView(), and ntree.
Referenced by node_group_make_from_selected(), and node_group_make_insert_selected().
|
static |
Definition at line 147 of file node_group.c.
References C, CTX_data_main(), CTX_wm_manager(), CTX_wm_space_node(), ED_node_tree_pop(), ED_node_tree_push(), ED_preview_kill_jobs(), bNode::id, if(), NC_SCENE, ND_NODES, node_group_get_active(), node_group_idname(), NULL, OPERATOR_FINISHED, wmOperator::ptr, RNA_boolean_get(), and WM_event_add_notifier().
Referenced by NODE_OT_group_edit().
Definition at line 130 of file node_group.c.
References C, CTX_wm_space_node(), SpaceNode::edittree, node, nodeGetActive(), NULL, and STREQ.
Referenced by node_group_edit_exec(), node_group_insert_exec(), and node_group_ungroup_exec().
| const char* node_group_idname | ( | bContext * | C | ) |
Definition at line 110 of file node_group.c.
References C, CTX_wm_space_node(), ED_node_is_compositor(), ED_node_is_geometry(), ED_node_is_shader(), and ED_node_is_texture().
Referenced by node_add_group_exec(), node_group_edit_exec(), node_group_insert_exec(), node_group_make_exec(), and node_group_ungroup_exec().
|
static |
Definition at line 1083 of file node_group.c.
References C, CTX_data_main(), CTX_wm_manager(), CTX_wm_space_node(), ED_node_tree_push(), ED_preview_kill_jobs(), SpaceNode::edittree, bNode::id, bNodeTree::idname, if(), node_group_get_active(), node_group_idname(), node_group_make_insert_selected(), node_group_make_test_selected(), nodeSetActive(), ntree, ntreeUpdateTree(), OPERATOR_CANCELLED, OPERATOR_FINISHED, wmOperator::reports, snode_dag_update(), and snode_notify().
Referenced by NODE_OT_group_insert().
|
static |
Definition at line 1022 of file node_group.c.
References C, CTX_data_main(), CTX_wm_manager(), CTX_wm_space_node(), DEG_relations_tag_update(), ED_node_tree_push(), ED_preview_kill_jobs(), SpaceNode::edittree, group_ntree_idname(), bNode::id, LISTBASE_FOREACH, node, node_group_idname(), node_group_make_from_selected(), node_group_make_test_selected(), bNodeTree::nodes, nodeSetActive(), ntree, ntreeUpdateTree(), NULL, OPERATOR_CANCELLED, OPERATOR_FINISHED, wmOperator::reports, snode_dag_update(), snode_notify(), and sort_multi_input_socket_links().
Referenced by NODE_OT_group_make().
|
static |
Definition at line 990 of file node_group.c.
References C, CTX_data_main(), bNode::id, bNode::locx, bNode::locy, max, min, node_get_selected_minmax(), node_group_make_insert_selected(), nodeAddNode(), ntree, NTREE_UPDATE_NODES, ntreeAddTree(), NULL, and bNodeTree::update.
Referenced by node_group_make_exec().
|
static |
Definition at line 756 of file node_group.c.
References add_v2_v2v2(), bNodeTree::adt, animation_basepath_change_free(), animation_basepath_change_new(), BKE_animdata_transfer_by_basepath(), BLI_addtail(), BLI_remlink(), C, center, CTX_data_main(), bNode::id, bNodeTree::id, bNodeSocket::identifier, bNodeTree::links, LISTBASE_FOREACH, LISTBASE_FOREACH_MUTABLE, bNode::locx, bNode::locy, max, min, mul_v2_fl(), node, node_get_selected_minmax(), node_group_find_input_socket(), node_group_find_output_socket(), NODE_GROUP_INPUT, node_group_input_find_socket(), node_group_input_update(), node_group_make_use_node(), NODE_GROUP_OUTPUT, node_group_output_find_socket(), node_group_output_update(), node_group_update(), NODE_SELECT, node_socket_skip_reroutes(), nodeAddLink(), nodeAddStaticNode(), nodeDetachNode(), nodeRemLink(), bNodeTree::nodes, nodeSetSelected(), nodeUniqueName(), ntree, NTREE_UPDATE, NTREE_UPDATE_LINKS, NTREE_UPDATE_NODES, ntreeAddSocketInterfaceFromSocket(), ntreeFreeCache(), NULL, ptr, RNA_Node, RNA_path_from_ID_to_struct(), RNA_pointer_create(), SOCK_HIDDEN, SOCK_UNAVAIL, and bNodeTree::update.
Referenced by node_group_insert_exec(), and node_group_make_from_selected().
|
static |
Definition at line 669 of file node_group.c.
References BKE_reportf(), bNodeTree::links, LISTBASE_FOREACH, MEM_freeN, node, node_group_make_use_node(), NODE_SELECT, bNodeTree::nodes, ntree, ntreeAddTree(), ntreeFreeTree(), NULL, and RPT_WARNING.
Referenced by node_group_insert_exec(), and node_group_make_exec().
Definition at line 663 of file node_group.c.
References ELEM, node, NODE_GROUP_INPUT, NODE_GROUP_OUTPUT, and NODE_SELECT.
Referenced by node_get_selected_minmax(), node_group_make_insert_selected(), and node_group_make_test_selected().
|
static |
Definition at line 67 of file node_group.c.
References C, CTX_wm_space_node(), ED_operator_node_active(), STR_ELEM, and SpaceNode::tree_idname.
Referenced by NODE_OT_group_edit().
|
static |
Definition at line 87 of file node_group.c.
References C, CTX_wm_space_node(), ED_node_is_compositor(), ED_node_is_geometry(), ED_node_is_shader(), ED_node_is_texture(), and ED_operator_node_editable().
Referenced by NODE_OT_group_insert(), NODE_OT_group_make(), NODE_OT_group_separate(), and NODE_OT_group_ungroup().
|
static |
Definition at line 577 of file node_group.c.
References BKE_report(), C, CTX_data_main(), CTX_wm_manager(), CTX_wm_space_node(), ED_node_tree_get(), ED_node_tree_pop(), ED_preview_kill_jobs(), SpaceNode::edittree, node_group_separate_selected(), NODE_GS_COPY, NODE_GS_MOVE, SpaceNode::nodetree, ntreeUpdateTree(), OPERATOR_CANCELLED, OPERATOR_FINISHED, wmOperator::ptr, wmOperator::reports, RNA_enum_get(), RPT_WARNING, snode_dag_update(), snode_notify(), space_node_group_offset(), and type.
Referenced by NODE_OT_group_separate().
|
static |
Definition at line 622 of file node_group.c.
References BLT_I18NCONTEXT_OPERATOR_DEFAULT, C, CTX_IFACE_, NODE_GS_COPY, NODE_GS_MOVE, NULL, OPERATOR_INTERFACE, UI_popup_menu_begin(), UI_popup_menu_end(), UI_popup_menu_layout(), uiItemEnumO(), uiLayoutSetOperatorContext(), and WM_OP_EXEC_DEFAULT.
Referenced by NODE_OT_group_separate().
|
static |
Definition at line 448 of file node_group.c.
References bNodeTree::adt, animation_basepath_change_free(), animation_basepath_change_new(), BKE_animdata_transfer_by_basepath(), BKE_node_copy_store_new_pointers(), BLI_addtail(), BLI_remlink(), ELEM, bNode::flag, bNodeTree::id, LIB_ID_COPY_DEFAULT, bNodeTree::links, LISTBASE_FOREACH, LISTBASE_FOREACH_MUTABLE, bNode::locx, bNode::locy, node, NODE_GROUP_INPUT, NODE_GROUP_OUTPUT, NODE_SELECT, nodeAddLink(), nodeDetachNode(), nodeRemLink(), bNodeTree::nodes, nodeSetSelected(), nodeUniqueName(), ntree, NTREE_UPDATE_LINKS, NTREE_UPDATE_NODES, NULL, bNode::parent, ptr, RNA_Node, RNA_path_from_ID_to_struct(), RNA_pointer_create(), and bNodeTree::update.
Referenced by node_group_separate_exec().
Definition at line 219 of file node_group.c.
References animation_basepath_change_free(), animation_basepath_change_new(), BKE_animdata_transfer_by_basepath(), BKE_id_copy(), BKE_id_free(), BLI_addtail(), BLI_assert, BLI_linklist_pop(), BLI_linklist_prepend(), BLI_remlink(), ELEM, ListBase::first, bNode::id, bNodeTree::id, ListBase::last, bNodeTree::links, LISTBASE_FOREACH, LISTBASE_FOREACH_MUTABLE, bNode::locx, bNode::locy, bNodeLink::next, node, NODE_DO_OUTPUT, node_group_find_input_socket(), node_group_find_output_socket(), NODE_GROUP_INPUT, NODE_GROUP_OUTPUT, NODE_SELECT, nodeAddLink(), nodeRemoveNode(), bNodeTree::nodes, nodeUniqueName(), ntree, NTREE_UPDATE_LINKS, NTREE_UPDATE_NODES, ntreeCopyTree_ex_new_pointers(), NULL, ptr, RNA_Node, RNA_path_from_ID_to_struct(), RNA_pointer_create(), STREQ, and bNodeTree::update.
Referenced by node_group_ungroup_exec().
|
static |
Definition at line 399 of file node_group.c.
References BKE_report(), C, CTX_data_main(), CTX_wm_manager(), CTX_wm_space_node(), ED_preview_kill_jobs(), SpaceNode::edittree, bNode::id, node_group_get_active(), node_group_idname(), node_group_ungroup(), SpaceNode::nodetree, ntreeUpdateTree(), OPERATOR_CANCELLED, OPERATOR_FINISHED, wmOperator::reports, RPT_WARNING, snode_dag_update(), and snode_notify().
Referenced by NODE_OT_group_ungroup().
| void NODE_OT_group_edit | ( | wmOperatorType * | ot | ) |
Definition at line 173 of file node_group.c.
References wmOperatorType::description, wmOperatorType::exec, wmOperatorType::flag, wmOperatorType::idname, wmOperatorType::name, node_group_edit_exec(), node_group_operator_active_poll(), OPTYPE_REGISTER, OPTYPE_UNDO, ot, wmOperatorType::poll, RNA_def_boolean(), and wmOperatorType::srna.
Referenced by node_operatortypes().
| void NODE_OT_group_insert | ( | wmOperatorType * | ot | ) |
Definition at line 1117 of file node_group.c.
References wmOperatorType::description, wmOperatorType::exec, wmOperatorType::flag, wmOperatorType::idname, wmOperatorType::name, node_group_insert_exec(), node_group_operator_editable(), OPTYPE_REGISTER, OPTYPE_UNDO, ot, and wmOperatorType::poll.
Referenced by node_operatortypes().
| void NODE_OT_group_make | ( | wmOperatorType * | ot | ) |
Definition at line 1062 of file node_group.c.
References wmOperatorType::description, wmOperatorType::exec, wmOperatorType::flag, wmOperatorType::idname, wmOperatorType::name, node_group_make_exec(), node_group_operator_editable(), OPTYPE_REGISTER, OPTYPE_UNDO, ot, and wmOperatorType::poll.
Referenced by node_operatortypes().
| void NODE_OT_group_separate | ( | wmOperatorType * | ot | ) |
Definition at line 639 of file node_group.c.
References wmOperatorType::description, wmOperatorType::exec, wmOperatorType::flag, wmOperatorType::idname, wmOperatorType::invoke, wmOperatorType::name, node_group_operator_editable(), node_group_separate_exec(), node_group_separate_invoke(), node_group_separate_types, NODE_GS_COPY, OPTYPE_REGISTER, OPTYPE_UNDO, ot, wmOperatorType::poll, RNA_def_enum(), and wmOperatorType::srna.
Referenced by node_operatortypes().
| void NODE_OT_group_ungroup | ( | wmOperatorType * | ot | ) |
Definition at line 426 of file node_group.c.
References wmOperatorType::description, wmOperatorType::exec, wmOperatorType::flag, wmOperatorType::idname, wmOperatorType::name, node_group_operator_editable(), node_group_ungroup_exec(), OPTYPE_REGISTER, OPTYPE_UNDO, ot, and wmOperatorType::poll.
Referenced by node_operatortypes().
|
static |
Definition at line 571 of file node_group.c.
Referenced by NODE_OT_group_separate().