[Bf-blender-cvs] [a89ef76] master: Fix for own mistake: arc diff swallowed a commit somehow, breaking compilation.
Lukas Tönne
noreply at git.blender.org
Sun Mar 2 17:10:30 CET 2014
Commit: a89ef76136b8a529e1a4755a8b411da93ed81651
Author: Lukas Tönne
Date: Sun Mar 2 17:04:24 2014 +0100
https://developer.blender.org/rBa89ef76136b8a529e1a4755a8b411da93ed81651
Fix for own mistake: arc diff swallowed a commit somehow, breaking
compilation.
===================================================================
M source/blender/blenkernel/BKE_node.h
M source/blender/makesdna/DNA_node_types.h
M source/blender/nodes/intern/node_socket.c
M source/blender/nodes/intern/node_util.c
M source/blender/nodes/shader/nodes/node_shader_tex_wave.c
===================================================================
diff --git a/source/blender/blenkernel/BKE_node.h b/source/blender/blenkernel/BKE_node.h
index d37e16e..59ea921 100644
--- a/source/blender/blenkernel/BKE_node.h
+++ b/source/blender/blenkernel/BKE_node.h
@@ -101,8 +101,6 @@ typedef struct bNodeSocketTemplate {
float min, max;
int subtype; /* would use PropertySubType but this is a bad level include to use RNA */
int flag;
- /* optional: allowed inputs for internal links */
- const bool *internal_links;
/* after this line is used internal only */
struct bNodeSocket *sock; /* used to hold verified socket */
diff --git a/source/blender/makesdna/DNA_node_types.h b/source/blender/makesdna/DNA_node_types.h
index c21cdfa..cd9595d 100644
--- a/source/blender/makesdna/DNA_node_types.h
+++ b/source/blender/makesdna/DNA_node_types.h
@@ -128,9 +128,6 @@ typedef struct bNodeSocket {
/* XXX deprecated, socket input values are stored in default_value now. kept for forward compatibility */
bNodeStack ns DNA_DEPRECATED; /* custom data for inputs, only UI writes in this */
-
- /* optional: allowed inputs for internal links */
- const bool *internal_links;
} bNodeSocket;
/* sock->type */
@@ -161,7 +158,8 @@ typedef enum eNodeSocketFlag {
// SOCK_INTERNAL = 32, /* DEPRECATED group socket should not be exposed */
SOCK_COLLAPSED = 64, /* socket collapsed in UI */
SOCK_HIDE_VALUE = 128, /* hide socket value, if it gets auto default */
- SOCK_AUTO_HIDDEN__DEPRECATED = 256 /* socket hidden automatically, to distinguish from manually hidden */
+ SOCK_AUTO_HIDDEN__DEPRECATED = 256, /* socket hidden automatically, to distinguish from manually hidden */
+ SOCK_NO_INTERNAL_LINK = 512
} eNodeSocketFlag;
/* limit data in bNode to what we want to see saved? */
diff --git a/source/blender/nodes/intern/node_socket.c b/source/blender/nodes/intern/node_socket.c
index b791f6f..b30658f 100644
--- a/source/blender/nodes/intern/node_socket.c
+++ b/source/blender/nodes/intern/node_socket.c
@@ -56,7 +56,6 @@ struct bNodeSocket *node_add_socket_from_template(struct bNodeTree *ntree, struc
bNodeSocket *sock = nodeAddStaticSocket(ntree, node, in_out, stemp->type, stemp->subtype, stemp->identifier, stemp->name);
sock->flag |= stemp->flag;
- sock->internal_links = stemp->internal_links;
/* initialize default_value */
switch (stemp->type) {
@@ -118,7 +117,6 @@ static bNodeSocket *verify_socket_template(bNodeTree *ntree, bNode *node, int in
sock->type = stemp->type;
sock->limit = (stemp->limit == 0 ? 0xFFF : stemp->limit);
sock->flag |= stemp->flag;
- sock->internal_links = stemp->internal_links;
BLI_remlink(socklist, sock);
diff --git a/source/blender/nodes/intern/node_util.c b/source/blender/nodes/intern/node_util.c
index 8fb455c..d3bde0a 100644
--- a/source/blender/nodes/intern/node_util.c
+++ b/source/blender/nodes/intern/node_util.c
@@ -183,7 +183,6 @@ static int node_datatype_priority(eNodeSocketDatatype from, eNodeSocketDatatype
/* select a suitable input socket for an output */
static bNodeSocket *select_internal_link_input(bNode *node, bNodeSocket *output)
{
- const bool *allowed_inputs = output->internal_links;
bNodeSocket *selected = NULL, *input;
int i;
int sel_priority = -1;
@@ -195,9 +194,9 @@ static bNodeSocket *select_internal_link_input(bNode *node, bNodeSocket *output)
bool preferred;
if (nodeSocketIsHidden(input) || /* ignore hidden sockets */
- (allowed_inputs && !allowed_inputs[i]) || /* ignore if input is not allowed */
+ input->flag & SOCK_NO_INTERNAL_LINK || /* ignore if input is not allowed for internal connections */
priority < 0 || /* ignore incompatible types */
- (priority < sel_priority)) /* ignore if we already found a higher priority input */
+ priority < sel_priority) /* ignore if we already found a higher priority input */
continue;
/* determine if this input is preferred over the currently selected */
@@ -234,7 +233,7 @@ void node_update_internal_links_default(bNodeTree *ntree, bNode *node)
output = link->fromsock;
if (link->fromnode != node || output->link)
continue;
- if (nodeSocketIsHidden(output))
+ if (nodeSocketIsHidden(output) || output->flag & SOCK_NO_INTERNAL_LINK)
continue;
output->link = link; /* not really used, just for tagging handled sockets */
diff --git a/source/blender/nodes/shader/nodes/node_shader_tex_wave.c b/source/blender/nodes/shader/nodes/node_shader_tex_wave.c
index a052817..e502f7d 100644
--- a/source/blender/nodes/shader/nodes/node_shader_tex_wave.c
+++ b/source/blender/nodes/shader/nodes/node_shader_tex_wave.c
@@ -41,8 +41,8 @@ static bNodeSocketTemplate sh_node_tex_wave_in[] = {
const bool internal_links[5] = {0,0,0,0,0};
static bNodeSocketTemplate sh_node_tex_wave_out[] = {
- { SOCK_RGBA, 0, N_("Color"), 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, PROP_NONE, 0, internal_links},
- { SOCK_FLOAT, 0, N_("Fac"), 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, PROP_FACTOR, 0, internal_links},
+ { SOCK_RGBA, 0, N_("Color"), 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, PROP_NONE, SOCK_NO_INTERNAL_LINK},
+ { SOCK_FLOAT, 0, N_("Fac"), 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, PROP_FACTOR, SOCK_NO_INTERNAL_LINK},
{ -1, 0, "" }
};
More information about the Bf-blender-cvs
mailing list