Blender V4.3
node_group.cc File Reference
#include <cstdlib>
#include "MEM_guardedalloc.h"
#include "DNA_anim_types.h"
#include "DNA_node_types.h"
#include "BLI_linklist.h"
#include "BLI_listbase.h"
#include "BLI_map.hh"
#include "BLI_math_vector_types.hh"
#include "BLI_rand.hh"
#include "BLI_set.hh"
#include "BLI_string.h"
#include "BLI_vector.hh"
#include "BLT_translation.hh"
#include "BKE_action.hh"
#include "BKE_animsys.h"
#include "BKE_context.hh"
#include "BKE_lib_id.hh"
#include "BKE_main.hh"
#include "BKE_node_runtime.hh"
#include "BKE_node_tree_update.hh"
#include "BKE_report.hh"
#include "ANIM_action.hh"
#include "DEG_depsgraph_build.hh"
#include "ED_node.hh"
#include "ED_node_preview.hh"
#include "ED_render.hh"
#include "ED_screen.hh"
#include "RNA_access.hh"
#include "RNA_define.hh"
#include "RNA_path.hh"
#include "RNA_prototypes.hh"
#include "WM_api.hh"
#include "WM_types.hh"
#include "UI_resources.hh"
#include "NOD_common.h"
#include "NOD_composite.hh"
#include "NOD_geometry.hh"
#include "NOD_shader.h"
#include "NOD_socket.hh"
#include "NOD_texture.h"
#include "node_intern.hh"

Go to the source code of this file.

Namespaces

namespace  blender
 
namespace  blender::ed
 
namespace  blender::ed::space_node
 

Functions

Local Utilities
static bool blender::ed::space_node::node_group_operator_active_poll (bContext *C)
 
static bool blender::ed::space_node::node_group_operator_editable (bContext *C)
 
static const char * blender::ed::space_node::group_ntree_idname (bContext *C)
 
const char * blender::ed::space_node::node_group_idname (bContext *C)
 
static bNodeblender::ed::space_node::node_group_get_active (bContext *C, const char *node_idname)
 
static void blender::ed::space_node::remap_pairing (bNodeTree &dst_tree, Span< bNode * > nodes, const Map< int32_t, int32_t > &identifier_map)
 
Edit Group Operator
static int blender::ed::space_node::node_group_edit_exec (bContext *C, wmOperator *op)
 
void blender::ed::space_node::NODE_OT_group_edit (wmOperatorType *ot)
 
Ungroup Operator
static AnimationBasePathChangeblender::ed::space_node::animation_basepath_change_new (const StringRef src_basepath, const StringRef dst_basepath)
 
static void blender::ed::space_node::animation_basepath_change_free (AnimationBasePathChange *basepath_change)
 
static void blender::ed::space_node::update_nested_node_refs_after_ungroup (bNodeTree &ntree, const bNodeTree &ngroup, const bNode &gnode, const Map< int32_t, int32_t > &node_identifier_map)
 
static void blender::ed::space_node::node_group_ungroup (Main *bmain, bNodeTree *ntree, bNode *gnode)
 
static int blender::ed::space_node::node_group_ungroup_exec (bContext *C, wmOperator *)
 
void blender::ed::space_node::NODE_OT_group_ungroup (wmOperatorType *ot)
 
Make Group Operator
static VectorSet< bNode * > blender::ed::space_node::get_nodes_to_group (bNodeTree &node_tree, bNode *group_node)
 
static bool blender::ed::space_node::node_group_make_test_selected (bNodeTree &ntree, const VectorSet< bNode * > &nodes_to_group, const char *ntree_idname, ReportList &reports)
 
static void blender::ed::space_node::get_min_max_of_nodes (const Span< bNode * > nodes, const bool use_size, float2 &min, float2 &max)
 
static const bNodeSocketblender::ed::space_node::find_socket_to_use_for_interface (const bNodeTree &node_tree, const bNodeSocket &socket)
 
static bool blender::ed::space_node::prefer_node_for_interface_name (const bNode &node)
 
static bNodeTreeInterfaceSocketblender::ed::space_node::add_interface_from_socket (const bNodeTree &original_tree, bNodeTree &tree_for_interface, const bNodeSocket &socket)
 
static void blender::ed::space_node::update_nested_node_refs_after_moving_nodes_into_group (bNodeTree &ntree, bNodeTree &group, bNode &gnode, const Map< int32_t, int32_t > &node_identifier_map)
 
static void blender::ed::space_node::node_group_make_insert_selected (const bContext &C, bNodeTree &ntree, bNode *gnode, const VectorSet< bNode * > &nodes_to_move)
 
static bNodeblender::ed::space_node::node_group_make_from_nodes (const bContext &C, bNodeTree &ntree, const VectorSet< bNode * > &nodes_to_group, const char *ntype, const char *ntreetype)
 
static int blender::ed::space_node::node_group_make_exec (bContext *C, wmOperator *op)
 
void blender::ed::space_node::NODE_OT_group_make (wmOperatorType *ot)
 
Group Insert Operator
static int blender::ed::space_node::node_group_insert_exec (bContext *C, wmOperator *op)
 
void blender::ed::space_node::NODE_OT_group_insert (wmOperatorType *ot)
 
Set Default Group Width Operator
static bool blender::ed::space_node::node_default_group_width_set_poll (bContext *C)
 
static int blender::ed::space_node::node_default_group_width_set_exec (bContext *C, wmOperator *)
 
void blender::ed::space_node::NODE_OT_default_group_width_set (wmOperatorType *ot)
 

Separate Operator

enum  blender::ed::space_node::eNodeGroupSeparateType { blender::ed::space_node::NODE_GS_COPY , blender::ed::space_node::NODE_GS_MOVE }
 
static const EnumPropertyItem blender::ed::space_node::node_group_separate_types []
 
static bool blender::ed::space_node::node_group_separate_selected (Main &bmain, bNodeTree &ntree, bNodeTree &ngroup, const float2 &offset, const bool make_copy)
 
static int blender::ed::space_node::node_group_separate_exec (bContext *C, wmOperator *op)
 
static int blender::ed::space_node::node_group_separate_invoke (bContext *C, wmOperator *, const wmEvent *)
 
void blender::ed::space_node::NODE_OT_group_separate (wmOperatorType *ot)