[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [52633] trunk/blender/source/blender/nodes /intern/node_socket.c: Fix normal compositing/ shader node not showing normal widget.
Brecht Van Lommel
brechtvanlommel at pandora.be
Wed Nov 28 14:20:46 CET 2012
Revision: 52633
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=52633
Author: blendix
Date: 2012-11-28 13:20:45 +0000 (Wed, 28 Nov 2012)
Log Message:
-----------
Fix normal compositing/shader node not showing normal widget.
It would actually show after save and reload, the subtype and min/max were
not properly initialized for node output sockets.
Modified Paths:
--------------
trunk/blender/source/blender/nodes/intern/node_socket.c
Modified: trunk/blender/source/blender/nodes/intern/node_socket.c
===================================================================
--- trunk/blender/source/blender/nodes/intern/node_socket.c 2012-11-28 09:49:26 UTC (rev 52632)
+++ trunk/blender/source/blender/nodes/intern/node_socket.c 2012-11-28 13:20:45 UTC (rev 52633)
@@ -473,6 +473,35 @@
}
}
+static void node_socket_set_minmax_subtype(bNodeSocket *sock, struct bNodeSocketTemplate *stemp)
+{
+ switch (sock->type) {
+ case SOCK_FLOAT:
+ {
+ bNodeSocketValueFloat *dval= sock->default_value;
+ dval->min = stemp->min;
+ dval->max = stemp->max;
+ dval->subtype = stemp->subtype;
+ break;
+ }
+ case SOCK_INT:
+ {
+ bNodeSocketValueInt *dval= sock->default_value;
+ dval->min = stemp->min;
+ dval->max = stemp->max;
+ dval->subtype = stemp->subtype;
+ break;
+ }
+ case SOCK_VECTOR:
+ {
+ bNodeSocketValueVector *dval= sock->default_value;
+ dval->min = stemp->min;
+ dval->max = stemp->max;
+ dval->subtype = stemp->subtype;
+ break;
+ }
+ }
+}
struct bNodeSocket *node_add_input_from_template(struct bNodeTree *ntree, struct bNode *node, struct bNodeSocketTemplate *stemp)
{
@@ -512,6 +541,7 @@
struct bNodeSocket *node_add_output_from_template(struct bNodeTree *ntree, struct bNode *node, struct bNodeSocketTemplate *stemp)
{
bNodeSocket *sock = nodeAddSocket(ntree, node, SOCK_OUT, stemp->name, stemp->type);
+ node_socket_set_minmax_subtype(sock, stemp);
return sock;
}
@@ -532,32 +562,7 @@
/* Copy the property range and subtype parameters in case the template changed.
* NOT copying the actual value here, only button behavior changes!
*/
- switch (sock->type) {
- case SOCK_FLOAT:
- {
- bNodeSocketValueFloat *dval= sock->default_value;
- dval->min = stemp->min;
- dval->max = stemp->max;
- dval->subtype = stemp->subtype;
- break;
- }
- case SOCK_INT:
- {
- bNodeSocketValueInt *dval= sock->default_value;
- dval->min = stemp->min;
- dval->max = stemp->max;
- dval->subtype = stemp->subtype;
- break;
- }
- case SOCK_VECTOR:
- {
- bNodeSocketValueVector *dval= sock->default_value;
- dval->min = stemp->min;
- dval->max = stemp->max;
- dval->subtype = stemp->subtype;
- break;
- }
- }
+ node_socket_set_minmax_subtype(sock, stemp);
BLI_remlink(socklist, sock);
More information about the Bf-blender-cvs
mailing list