Commit: 0791ab863aceb5fc73430f28b5ed197760e7e131
Author: Jacques Lucke
Date: Mon Mar 2 12:44:45 2020 +0100
Branches: builtin-simulation-nodes
https://developer.blender.org/rB0791ab863aceb5fc73430f28b5ed197760e7e131
give sockets a default display shape
===================================================================
M source/blender/blenkernel/BKE_node.h
M source/blender/blenkernel/intern/node.c
M source/blender/nodes/intern/node_socket.c
===================================================================
diff --git a/source/blender/blenkernel/BKE_node.h
b/source/blender/blenkernel/BKE_node.h
index 0e4ccef71a1..be04e04d07f 100644
--- a/source/blender/blenkernel/BKE_node.h
+++ b/source/blender/blenkernel/BKE_node.h
@@ -145,6 +145,7 @@ typedef struct bNodeSocketType {
/* for standard socket types in C */
int type, subtype;
+ int display_shape_default;
/* Callback to free the socket type. */
void (*free_self)(struct bNodeSocketType *stype);
diff --git a/source/blender/blenkernel/intern/node.c
b/source/blender/blenkernel/intern/node.c
index 2ce0f5cb902..a8026cac972 100644
--- a/source/blender/blenkernel/intern/node.c
+++ b/source/blender/blenkernel/intern/node.c
@@ -217,6 +217,7 @@ static void node_socket_set_typeinfo(bNodeTree *ntree,
/* deprecated integer type */
sock->type = typeinfo->type;
+ sock->display_shape = typeinfo->display_shape_default;
if (sock->default_value == NULL) {
/* initialize the default_value pointer used by standard socket types */
diff --git a/source/blender/nodes/intern/node_socket.c
b/source/blender/nodes/intern/node_socket.c
index 6c3e4d1c0f8..2e7c0e7c525 100644
--- a/source/blender/nodes/intern/node_socket.c
+++ b/source/blender/nodes/intern/node_socket.c
@@ -433,6 +433,20 @@ static bNodeSocketType *make_standard_socket_type(int
type, int subtype)
return stype;
}
+static bNodeSocketType *make_socket_type_effector(int type)
+{
+ bNodeSocketType *stype = make_standard_socket_type(type, PROP_NONE);
+ stype->display_shape_default = SOCK_DISPLAY_SHAPE_DIAMOND;
+ return stype;
+}
+
+static bNodeSocketType *make_socket_type_control_flow(int type)
+{
+ bNodeSocketType *stype = make_standard_socket_type(type, PROP_NONE);
+ stype->display_shape_default = SOCK_DISPLAY_SHAPE_SQUARE;
+ return stype;
+}
+
static bNodeSocketType *make_socket_type_virtual(void)
{
extern void ED_init_node_socket_type_virtual(bNodeSocketType *);
@@ -492,11 +506,11 @@ void register_standard_node_socket_types(void)
nodeRegisterSocketType(make_standard_socket_type(SOCK_SHADER, PROP_NONE));
- nodeRegisterSocketType(make_standard_socket_type(SOCK_EMITTERS, PROP_NONE));
- nodeRegisterSocketType(make_standard_socket_type(SOCK_EVENTS, PROP_NONE));
- nodeRegisterSocketType(make_standard_socket_type(SOCK_FORCES, PROP_NONE));
+ nodeRegisterSocketType(make_socket_type_effector(SOCK_EMITTERS));
+ nodeRegisterSocketType(make_socket_type_effector(SOCK_EVENTS));
+ nodeRegisterSocketType(make_socket_type_effector(SOCK_FORCES));
- nodeRegisterSocketType(make_standard_socket_type(SOCK_CONTROL_FLOW,
PROP_NONE));
+ nodeRegisterSocketType(make_socket_type_control_flow(SOCK_CONTROL_FLOW));
nodeRegisterSocketType(make_socket_type_virtual());
}
_______________________________________________
Bf-blender-cvs mailing list
[email protected]
https://lists.blender.org/mailman/listinfo/bf-blender-cvs