Blender  V3.3
Functions
versioning_common.h File Reference

Go to the source code of this file.

Functions

struct ARegiondo_versions_add_region_if_not_found (struct ListBase *regionbase, int region_type, const char *name, int link_after_region_type)
 
IDdo_versions_rename_id (Main *bmain, short id_type, const char *name_src, const char *name_dst)
 
void version_node_socket_name (struct bNodeTree *ntree, int node_type, const char *old_name, const char *new_name)
 
void version_node_input_socket_name (struct bNodeTree *ntree, int node_type, const char *old_name, const char *new_name)
 
void version_node_output_socket_name (struct bNodeTree *ntree, int node_type, const char *old_name, const char *new_name)
 
void version_node_socket_index_animdata (Main *bmain, int node_tree_type, int node_type, int socket_index_orig, int socket_index_offset, int total_number_of_sockets)
 
void version_node_id (struct bNodeTree *ntree, int node_type, const char *new_name)
 
void version_node_socket_id_delim (bNodeSocket *socket)
 
struct bNodeSocketversion_node_add_socket_if_not_exist (struct bNodeTree *ntree, struct bNode *node, eNodeSocketInOut in_out, int type, int subtype, const char *identifier, const char *name)
 
void version_socket_update_is_used (bNodeTree *ntree)
 
ARegiondo_versions_add_region (int regiontype, const char *name)
 

Function Documentation

◆ do_versions_add_region()

ARegion* do_versions_add_region ( int  regiontype,
const char *  name 
)

◆ do_versions_add_region_if_not_found()

struct ARegion* do_versions_add_region_if_not_found ( struct ListBase regionbase,
int  region_type,
const char *  name,
int  link_after_region_type 
)

◆ do_versions_rename_id()

ID* do_versions_rename_id ( Main bmain,
short  id_type,
const char *  name_src,
const char *  name_dst 
)

◆ version_node_add_socket_if_not_exist()

struct bNodeSocket* version_node_add_socket_if_not_exist ( struct bNodeTree ntree,
struct bNode node,
eNodeSocketInOut  in_out,
int  type,
int  subtype,
const char *  identifier,
const char *  name 
)

Definition at line 148 of file versioning_common.cc.

References node, nodeAddStaticSocket(), nodeFindSocket(), ntree, and type.

Referenced by blo_do_versions_300().

◆ version_node_id()

void version_node_id ( struct bNodeTree ntree,
int  node_type,
const char *  new_name 
)

Replace the ID name of all nodes in the tree with the given type with the new name.

Definition at line 163 of file versioning_common.cc.

References LISTBASE_FOREACH, node, bNodeTree::nodes, ntree, and STREQ.

Referenced by blo_do_versions_300().

◆ version_node_input_socket_name()

void version_node_input_socket_name ( struct bNodeTree ntree,
int  node_type,
const char *  old_name,
const char *  new_name 
)

◆ version_node_output_socket_name()

void version_node_output_socket_name ( struct bNodeTree ntree,
int  node_type,
const char *  old_name,
const char *  new_name 
)

◆ version_node_socket_id_delim()

void version_node_socket_id_delim ( bNodeSocket socket)

Convert SocketName.001 unique name format to SocketName_001. Previously both were used.

Definition at line 90 of file versioning_common.cc.

References blender::StringRef::drop_known_prefix(), bNodeSocket::identifier, blender::StringRefBase::is_empty(), bNodeSocket::name, blender::StringRefBase::size(), and blender::StringRefBase::startswith().

Referenced by version_node_tree_socket_id_delim().

◆ version_node_socket_index_animdata()

void version_node_socket_index_animdata ( Main bmain,
int  node_tree_type,
int  node_type,
int  socket_index_orig,
int  socket_index_offset,
int  total_number_of_sockets 
)

Adjust animation data for newly added node sockets.

Node sockets are addressed by their index (in their RNA path, and thus FCurves/drivers), and thus when a new node is added in the middle of the list, existing animation data needs to be adjusted.

Since this is about animation data, it only concerns input sockets.

Parameters
node_tree_typeNode tree type that has these nodes, for example NTREE_SHADER.
node_typeNode type to adjust, for example SH_NODE_BSDF_PRINCIPLED.
socket_index_origThe original index of the moved socket; when socket 4 moved to 6, pass 4 here.
socket_index_offsetThe offset of the nodes, so when socket 4 moved to 6, pass 2 here.
total_number_of_socketsThe total number of sockets in the node.

Definition at line 174 of file versioning_common.cc.

References BKE_animdata_fix_paths_rename_all_ex(), BLI_sprintfN(), BLI_str_escape(), FOREACH_NODETREE_BEGIN, FOREACH_NODETREE_END, LISTBASE_FOREACH, MEM_freeN, MEM_mallocN, node, bNodeTree::nodes, ntree, and bNodeTree::type.

Referenced by do_versions_after_linking_290(), and do_versions_after_linking_300().

◆ version_node_socket_name()

void version_node_socket_name ( struct bNodeTree ntree,
int  node_type,
const char *  old_name,
const char *  new_name 
)

◆ version_socket_update_is_used()

void version_socket_update_is_used ( bNodeTree ntree)