[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [31570] trunk/blender: Fix/ addition for recent RNA collections active index changes -

Matt Ebb matt at mke3.net
Wed Aug 25 09:03:35 CEST 2010


Revision: 31570
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=31570
Author:   broken
Date:     2010-08-25 09:03:35 +0200 (Wed, 25 Aug 2010)

Log Message:
-----------
Fix/addition for recent RNA collections active index changes -
added scene render layers.active property and updated UI file

Modified Paths:
--------------
    trunk/blender/release/scripts/ui/properties_render.py
    trunk/blender/source/blender/makesrna/intern/rna_scene.c

Modified: trunk/blender/release/scripts/ui/properties_render.py
===================================================================
--- trunk/blender/release/scripts/ui/properties_render.py	2010-08-25 06:50:21 UTC (rev 31569)
+++ trunk/blender/release/scripts/ui/properties_render.py	2010-08-25 07:03:35 UTC (rev 31570)
@@ -84,7 +84,7 @@
         col.operator("scene.render_layer_add", icon='ZOOMIN', text="")
         col.operator("scene.render_layer_remove", icon='ZOOMOUT', text="")
 
-        rl = rd.layers[rd.active_layer_index]
+        rl = rd.layers.active
 
         if rl:
             layout.prop(rl, "name")

Modified: trunk/blender/source/blender/makesrna/intern/rna_scene.c
===================================================================
--- trunk/blender/source/blender/makesrna/intern/rna_scene.c	2010-08-25 06:50:21 UTC (rev 31569)
+++ trunk/blender/source/blender/makesrna/intern/rna_scene.c	2010-08-25 07:03:35 UTC (rev 31570)
@@ -644,6 +644,22 @@
 	*max= MAX2(0, *max);
 }
 
+static PointerRNA rna_RenderSettings_active_layer_get(PointerRNA *ptr)
+{
+	RenderData *rd= (RenderData*)ptr->data;
+	SceneRenderLayer *srl = BLI_findlink(&rd->layers, rd->actlay);
+	
+	return rna_pointer_inherit_refine(ptr, &RNA_SceneRenderLayer, srl);
+}
+
+static void rna_RenderSettings_active_layer_set(PointerRNA *ptr, PointerRNA value)
+{
+	RenderData *rd= (RenderData*)ptr->data;
+	SceneRenderLayer *srl= (SceneRenderLayer*)value.data;
+	
+	rd->actlay = BLI_findindex(&rd->layers, srl);
+}
+
 static void rna_RenderSettings_engine_set(PointerRNA *ptr, int value)
 {
 	RenderData *rd= (RenderData*)ptr->data;
@@ -1817,7 +1833,7 @@
 	PropertyRNA *prop;
 
 	// FunctionRNA *func;
-	// PropertyRNA *parm;
+	// PropertyRNA *parm; 
 
 	RNA_def_property_srna(cprop, "RenderLayers");
 	srna= RNA_def_struct(brna, "RenderLayers", NULL);
@@ -1830,7 +1846,13 @@
 	RNA_def_property_ui_text(prop, "Active Layer Index", "Active index in render layer array");
 	RNA_def_property_update(prop, NC_SCENE|ND_RENDER_OPTIONS, NULL);
 	
-	/* todo - active*/
+	prop= RNA_def_property(srna, "active", PROP_POINTER, PROP_UNSIGNED);
+	RNA_def_property_struct_type(prop, "SceneRenderLayer");
+	RNA_def_property_pointer_funcs(prop, "rna_RenderSettings_active_layer_get", "rna_RenderSettings_active_layer_set", NULL, NULL);
+	RNA_def_property_flag(prop, PROP_EDITABLE);
+	RNA_def_property_ui_text(prop, "Active Render Layer", "Active Render Layer");
+	RNA_def_property_update(prop, NC_SCENE|ND_RENDER_OPTIONS, NULL);
+
 }
 
 static void rna_def_scene_render_data(BlenderRNA *brna)





More information about the Bf-blender-cvs mailing list