diff options
author | Campbell Barton <ideasman42@gmail.com> | 2010-01-10 02:44:01 +0300 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2010-01-10 02:44:01 +0300 |
commit | 08c9ecb3b043322f34e55f335f76dc2657c187ef (patch) | |
tree | 8dc0954f4bd0ca83c76afa407aa7b5ffb1e9de38 /source/blender/python/intern | |
parent | 99b713e8b0fc7a395515c32616b47b8209dcd0c2 (diff) |
RNA/Py API
change how data is added. eg.
bpy.data.add_mesh(name) --> bpy.data.meshes.new(name)
bpy.data.remove_lamp(lamp) --> bpy.data.lamps.remove(lamp)
image and texture stil use add_* funcs
Diffstat (limited to 'source/blender/python/intern')
-rw-r--r-- | source/blender/python/intern/bpy_rna.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/source/blender/python/intern/bpy_rna.c b/source/blender/python/intern/bpy_rna.c index 34e4599f463..ace638914dc 100644 --- a/source/blender/python/intern/bpy_rna.c +++ b/source/blender/python/intern/bpy_rna.c @@ -1,3 +1,4 @@ + /** * $Id$ * @@ -2005,6 +2006,16 @@ static PyObject *pyrna_prop_getattro( BPy_PropertyRNA *self, PyObject *pyname ) } } } + else { + /* annoying exception, maybe we need to have different types for this... */ + if((strcmp(name, "__getitem__")==0 || strcmp(name, "__setitem__")==0) && + (RNA_property_type(self->prop) != PROP_COLLECTION) && + RNA_property_array_check(&self->ptr, self->prop)==0 + ) { + PyErr_SetString(PyExc_AttributeError, "PropertyRNA - no __getitem__ support for this type"); + return NULL; + } + } /* The error raised here will be displayed */ return PyObject_GenericGetAttr((PyObject *)self, pyname); |