[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [33048] trunk/blender/source/blender/ makesrna/intern/rna_nodetree.c: Patch [#21942] Node links access by Andrey Izrantsev (bdancer) Thanks!

Thomas Dinges dingto at gmx.de
Sat Nov 13 23:38:33 CET 2010


Revision: 33048
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=33048
Author:   dingto
Date:     2010-11-13 23:38:33 +0100 (Sat, 13 Nov 2010)

Log Message:
-----------
Patch [#21942] Node links access by Andrey Izrantsev (bdancer) Thanks!

This adds Node Link Acces in RNA. 

Modified Paths:
--------------
    trunk/blender/source/blender/makesrna/intern/rna_nodetree.c

Modified: trunk/blender/source/blender/makesrna/intern/rna_nodetree.c
===================================================================
--- trunk/blender/source/blender/makesrna/intern/rna_nodetree.c	2010-11-13 13:47:33 UTC (rev 33047)
+++ trunk/blender/source/blender/makesrna/intern/rna_nodetree.c	2010-11-13 22:38:33 UTC (rev 33048)
@@ -2287,6 +2287,37 @@
 	RNA_def_property_ui_text(prop, "Outputs", "");
 }
 
+static void rna_def_node_link(BlenderRNA *brna)
+{
+	StructRNA *srna;
+	PropertyRNA *prop;
+	
+	srna = RNA_def_struct(brna, "NodeLink", NULL);
+	RNA_def_struct_ui_text(srna, "NodeLink", "Link between nodes in a node tree");
+	RNA_def_struct_sdna(srna, "bNodeLink");
+	RNA_def_struct_ui_icon(srna, ICON_NODE);
+
+	prop = RNA_def_property(srna, "from_node", PROP_POINTER, PROP_NONE);
+	RNA_def_property_pointer_sdna(prop, NULL, "fromnode");
+	RNA_def_property_struct_type(prop, "Node");
+	RNA_def_property_ui_text(prop, "From node", "");
+
+	prop = RNA_def_property(srna, "to_node", PROP_POINTER, PROP_NONE);
+	RNA_def_property_pointer_sdna(prop, NULL, "tonode");
+	RNA_def_property_struct_type(prop, "Node");
+	RNA_def_property_ui_text(prop, "To node", "");
+
+	prop = RNA_def_property(srna, "from_socket", PROP_POINTER, PROP_NONE);
+	RNA_def_property_pointer_sdna(prop, NULL, "fromsock");
+	RNA_def_property_struct_type(prop, "NodeSocket");
+	RNA_def_property_ui_text(prop, "From socket", "");
+
+	prop = RNA_def_property(srna, "to_socket", PROP_POINTER, PROP_NONE);
+	RNA_def_property_pointer_sdna(prop, NULL, "tosock");
+	RNA_def_property_struct_type(prop, "NodeSocket");
+	RNA_def_property_ui_text(prop, "To socket", "");
+}
+
 static void rna_def_nodetree(BlenderRNA *brna)
 {
 	StructRNA *srna;
@@ -2305,6 +2336,12 @@
 	RNA_def_property_collection_sdna(prop, NULL, "nodes", NULL);
 	RNA_def_property_struct_type(prop, "Node");
 	RNA_def_property_ui_text(prop, "Nodes", "");
+
+	/* NodeLinks Collection */
+	prop = RNA_def_property(srna, "links", PROP_COLLECTION, PROP_NONE);
+	RNA_def_property_collection_sdna(prop, NULL, "links", NULL);
+	RNA_def_property_struct_type(prop, "NodeLink");
+	RNA_def_property_ui_text(prop, "Links", "");
 	
 	/* Grease Pencil */
 	prop= RNA_def_property(srna, "grease_pencil", PROP_POINTER, PROP_NONE);
@@ -2331,6 +2368,7 @@
 	rna_def_node_socket_vector(brna);
 	rna_def_node_socket_rgba(brna);
 	rna_def_node(brna);
+	rna_def_node_link(brna);
 	rna_def_shader_node(brna);
 	rna_def_compositor_node(brna);
 	rna_def_texture_node(brna);





More information about the Bf-blender-cvs mailing list