[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [34242] trunk/blender: - bpy.data.lamps. new() now takes a type argument since lamp type also sets class type this avoids needing to use ugly lamp .type_recast() after changing type.
Campbell Barton
ideasman42 at gmail.com
Tue Jan 11 03:30:03 CET 2011
Revision: 34242
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=34242
Author: campbellbarton
Date: 2011-01-11 02:30:01 +0000 (Tue, 11 Jan 2011)
Log Message:
-----------
- bpy.data.lamps.new() now takes a type argument since lamp type also sets class type this avoids needing to use ugly lamp.type_recast() after changing type.
- default vertex color layer name was UTTex when added from python.
Modified Paths:
--------------
trunk/blender/release/scripts/op/io_scene_3ds/import_3ds.py
trunk/blender/release/scripts/templates/background_job.py
trunk/blender/source/blender/makesrna/RNA_enum_types.h
trunk/blender/source/blender/makesrna/intern/rna_lamp.c
trunk/blender/source/blender/makesrna/intern/rna_main_api.c
trunk/blender/source/blender/makesrna/intern/rna_mesh.c
trunk/blender/source/blender/python/intern/bpy_rna.c
Modified: trunk/blender/release/scripts/op/io_scene_3ds/import_3ds.py
===================================================================
--- trunk/blender/release/scripts/op/io_scene_3ds/import_3ds.py 2011-01-11 00:39:59 UTC (rev 34241)
+++ trunk/blender/release/scripts/op/io_scene_3ds/import_3ds.py 2011-01-11 02:30:01 UTC (rev 34242)
@@ -529,13 +529,10 @@
new_chunk.bytes_read += STRUCT_SIZE_3FLOAT
# no lamp in dict that would be confusing
- ob = bpy.data.objects.new("Lamp", bpy.data.lamps.new("Lamp"))
- SCN.objects.link(ob)
+ contextLamp[1] = bpy.data.lamps.new("Lamp", 'POINT')
+ contextLamp[0] = ob = bpy.data.objects.new("Lamp", contextLamp[1])
- contextLamp[1]= ob.data
-# contextLamp[1]= bpy.data.lamps.new()
- contextLamp[0]= ob
-# contextLamp[0]= SCN_OBJECTS.new(contextLamp[1])
+ SCN.objects.link(ob)
importedObjects.append(contextLamp[0])
#print 'number of faces: ', num_faces
Modified: trunk/blender/release/scripts/templates/background_job.py
===================================================================
--- trunk/blender/release/scripts/templates/background_job.py 2011-01-11 00:39:59 UTC (rev 34241)
+++ trunk/blender/release/scripts/templates/background_job.py 2011-01-11 02:30:01 UTC (rev 34242)
@@ -34,7 +34,7 @@
cam_ob.location = 0.0, 0.0, 10.0
# Lamp
- lamp_data = bpy.data.lamps.new("MyLamp")
+ lamp_data = bpy.data.lamps.new("MyLamp", 'POINT')
lamp_ob = bpy.data.objects.new(name="MyCam", object_data=lamp_data)
scene.objects.link(lamp_ob)
lamp_ob.location = 2.0, 2.0, 5.0
Modified: trunk/blender/source/blender/makesrna/RNA_enum_types.h
===================================================================
--- trunk/blender/source/blender/makesrna/RNA_enum_types.h 2011-01-11 00:39:59 UTC (rev 34241)
+++ trunk/blender/source/blender/makesrna/RNA_enum_types.h 2011-01-11 02:30:01 UTC (rev 34242)
@@ -75,6 +75,8 @@
extern EnumPropertyItem texture_type_items[];
+extern EnumPropertyItem lamp_type_items[];
+
extern EnumPropertyItem unpack_method_items[];
extern EnumPropertyItem object_type_items[];
Modified: trunk/blender/source/blender/makesrna/intern/rna_lamp.c
===================================================================
--- trunk/blender/source/blender/makesrna/intern/rna_lamp.c 2011-01-11 00:39:59 UTC (rev 34241)
+++ trunk/blender/source/blender/makesrna/intern/rna_lamp.c 2011-01-11 02:30:01 UTC (rev 34242)
@@ -144,6 +144,14 @@
#else
+EnumPropertyItem lamp_type_items[] = {
+ {LA_LOCAL, "POINT", 0, "Point", "Omnidirectional point light source"},
+ {LA_SUN, "SUN", 0, "Sun", "Constant direction parallel ray light source"},
+ {LA_SPOT, "SPOT", 0, "Spot", "Directional cone light source"},
+ {LA_HEMI, "HEMI", 0, "Hemi", "180 degree constant light source"},
+ {LA_AREA, "AREA", 0, "Area", "Directional area light source"},
+ {0, NULL, 0, NULL, NULL}};
+
static void rna_def_lamp_mtex(BlenderRNA *brna)
{
StructRNA *srna;
@@ -326,21 +334,13 @@
StructRNA *srna;
PropertyRNA *prop;
- static EnumPropertyItem prop_type_items[] = {
- {LA_LOCAL, "POINT", 0, "Point", "Omnidirectional point light source"},
- {LA_SUN, "SUN", 0, "Sun", "Constant direction parallel ray light source"},
- {LA_SPOT, "SPOT", 0, "Spot", "Directional cone light source"},
- {LA_HEMI, "HEMI", 0, "Hemi", "180 degree constant light source"},
- {LA_AREA, "AREA", 0, "Area", "Directional area light source"},
- {0, NULL, 0, NULL, NULL}};
-
srna= RNA_def_struct(brna, "Lamp", "ID");
RNA_def_struct_refine_func(srna, "rna_Lamp_refine");
RNA_def_struct_ui_text(srna, "Lamp", "Lamp datablock for lighting a scene");
RNA_def_struct_ui_icon(srna, ICON_LAMP_DATA);
prop= RNA_def_property(srna, "type", PROP_ENUM, PROP_NONE);
- RNA_def_property_enum_items(prop, prop_type_items);
+ RNA_def_property_enum_items(prop, lamp_type_items);
RNA_def_property_ui_text(prop, "Type", "Type of Lamp");
RNA_def_property_update(prop, 0, "rna_Lamp_draw_update");
Modified: trunk/blender/source/blender/makesrna/intern/rna_main_api.c
===================================================================
--- trunk/blender/source/blender/makesrna/intern/rna_main_api.c 2011-01-11 00:39:59 UTC (rev 34241)
+++ trunk/blender/source/blender/makesrna/intern/rna_main_api.c 2011-01-11 02:30:01 UTC (rev 34242)
@@ -236,9 +236,10 @@
/* XXX python now has invalid pointer? */
}
-Lamp *rna_Main_lamps_new(Main *bmain, const char *name)
+Lamp *rna_Main_lamps_new(Main *bmain, const char *name, int type)
{
Lamp *lamp= add_lamp(name);
+ lamp->type= type;
id_us_min(&lamp->id);
return lamp;
}
@@ -716,6 +717,8 @@
RNA_def_function_ui_description(func, "Add a new lamp to the main database");
parm= RNA_def_string(func, "name", "Lamp", 0, "", "New name for the datablock.");
RNA_def_property_flag(parm, PROP_REQUIRED);
+ parm= RNA_def_enum(func, "type", lamp_type_items, 0, "Type", "The type of texture to add");
+ RNA_def_property_flag(parm, PROP_REQUIRED);
/* return type */
parm= RNA_def_pointer(func, "lamp", "Lamp", "", "New lamp datablock.");
RNA_def_function_return(func, parm);
Modified: trunk/blender/source/blender/makesrna/intern/rna_mesh.c
===================================================================
--- trunk/blender/source/blender/makesrna/intern/rna_mesh.c 2011-01-11 00:39:59 UTC (rev 34241)
+++ trunk/blender/source/blender/makesrna/intern/rna_mesh.c 2011-01-11 02:30:01 UTC (rev 34242)
@@ -1727,7 +1727,7 @@
func= RNA_def_function(srna, "new", "rna_Mesh_vertex_color_new");
RNA_def_function_flag(func, FUNC_USE_CONTEXT);
RNA_def_function_ui_description(func, "Add a vertex color layer to Mesh.");
- RNA_def_string(func, "name", "UVTex", 0, "", "UV Texture name.");
+ RNA_def_string(func, "name", "Col", 0, "", "Vertex color name.");
parm= RNA_def_pointer(func, "layer", "MeshColorLayer", "", "The newly created layer.");
RNA_def_function_return(func, parm);
Modified: trunk/blender/source/blender/python/intern/bpy_rna.c
===================================================================
--- trunk/blender/source/blender/python/intern/bpy_rna.c 2011-01-11 00:39:59 UTC (rev 34241)
+++ trunk/blender/source/blender/python/intern/bpy_rna.c 2011-01-11 02:30:01 UTC (rev 34242)
@@ -1312,12 +1312,10 @@
static int pyrna_py_to_prop_array_index(BPy_PropertyArrayRNA *self, int index, PyObject *value)
{
int ret = 0;
- int totdim;
PointerRNA *ptr= &self->ptr;
PropertyRNA *prop= self->prop;
- int type = RNA_property_type(prop);
- totdim= RNA_property_array_dimension(ptr, prop, NULL);
+ const int totdim= RNA_property_array_dimension(ptr, prop, NULL);
if (totdim > 1) {
/* char error_str[512]; */
@@ -1328,7 +1326,7 @@
}
else {
/* see if we can coorce into a python type - PropertyType */
- switch (type) {
+ switch (RNA_property_type(prop)) {
case PROP_BOOLEAN:
{
int param = PyLong_AsLong( value );
More information about the Bf-blender-cvs
mailing list