diff options
author | Julian Eisel <julian@blender.org> | 2020-03-26 23:03:42 +0300 |
---|---|---|
committer | Julian Eisel <julian@blender.org> | 2020-03-26 23:18:45 +0300 |
commit | c94b6209861ca7cc3985b53474feed7d94c0221a (patch) | |
tree | 752054f0dca1338cda5cf8ad4f6d18573fcca3b9 /source/blender/nodes/intern/node_socket.c | |
parent | 357ed79cb93f9d655501a828c6cddd68282de62d (diff) | |
parent | afb1a64ccb81b7ed792f64151986f40f53af8da5 (diff) |
Merge branch 'master' into wm-drag-drop-rewrite
Diffstat (limited to 'source/blender/nodes/intern/node_socket.c')
-rw-r--r-- | source/blender/nodes/intern/node_socket.c | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/source/blender/nodes/intern/node_socket.c b/source/blender/nodes/intern/node_socket.c index 3485bd41660..199b469781d 100644 --- a/source/blender/nodes/intern/node_socket.c +++ b/source/blender/nodes/intern/node_socket.c @@ -27,8 +27,8 @@ #include "BLI_listbase.h" #include "BLI_math.h" -#include "BLI_utildefines.h" #include "BLI_string.h" +#include "BLI_utildefines.h" #include "BKE_node.h" @@ -106,7 +106,6 @@ static bNodeSocket *verify_socket_template( if (sock->type != stemp->type) { nodeModifySocketType(ntree, node, sock, stemp->type, stemp->subtype); } - sock->limit = (stemp->limit == 0 ? (in_out == SOCK_IN ? 1 : 0xFFF) : stemp->limit); sock->flag |= stemp->flag; } else { @@ -276,6 +275,11 @@ void node_socket_copy_default_value(bNodeSocket *to, const bNodeSocket *from) } node_socket_init_default_value(to); + /* use label instead of name if it has been set */ + if (from->label[0] != '\0') { + BLI_strncpy(to->name, from->label, NODE_MAXSTR); + } + switch (from->typeinfo->type) { case SOCK_FLOAT: { bNodeSocketValueFloat *toval = to->default_value; @@ -398,6 +402,7 @@ static bNodeSocketType *make_standard_socket_type(int type, int subtype) StructRNA *srna; stype = MEM_callocN(sizeof(bNodeSocketType), "node socket C type"); + stype->free_self = (void (*)(bNodeSocketType * stype)) MEM_freeN; BLI_strncpy(stype->idname, socket_idname, sizeof(stype->idname)); /* set the RNA type @@ -424,6 +429,10 @@ static bNodeSocketType *make_standard_socket_type(int type, int subtype) stype->interface_from_socket = standard_node_socket_interface_from_socket; stype->interface_verify_socket = standard_node_socket_interface_verify_socket; + stype->use_link_limits_of_type = true; + stype->input_link_limit = 1; + stype->output_link_limit = 0xFFF; + return stype; } @@ -436,6 +445,7 @@ static bNodeSocketType *make_socket_type_virtual(void) StructRNA *srna; stype = MEM_callocN(sizeof(bNodeSocketType), "node socket C type"); + stype->free_self = (void (*)(bNodeSocketType * stype)) MEM_freeN; BLI_strncpy(stype->idname, socket_idname, sizeof(stype->idname)); /* set the RNA type @@ -450,6 +460,10 @@ static bNodeSocketType *make_socket_type_virtual(void) ED_init_node_socket_type_virtual(stype); + stype->use_link_limits_of_type = true; + stype->input_link_limit = 1; + stype->output_link_limit = 1; + return stype; } |