diff options
author | Jacques Guignot <guignot@wanadoo.fr> | 2003-07-09 16:25:27 +0400 |
---|---|---|
committer | Jacques Guignot <guignot@wanadoo.fr> | 2003-07-09 16:25:27 +0400 |
commit | 6fe633aef368d71f007a6f3a96930e1654c9b50b (patch) | |
tree | 2a3eb21e0995dd7fa504b8bd8029068c74263bc9 | |
parent | da913434dbcf80a2eaa51084a4e3b395fe3784eb (diff) |
added what needed to link a curve to an object (modification of Object_link
added 2 functions Curve_CheckPyObject and Curve_FromPyObject
that I had forgotten
-rw-r--r-- | source/blender/python/api2_2x/Curve.c | 8 | ||||
-rw-r--r-- | source/blender/python/api2_2x/Object.c | 9 |
2 files changed, 17 insertions, 0 deletions
diff --git a/source/blender/python/api2_2x/Curve.c b/source/blender/python/api2_2x/Curve.c index 38ae90746fe..5c4d671e8af 100644 --- a/source/blender/python/api2_2x/Curve.c +++ b/source/blender/python/api2_2x/Curve.c @@ -143,6 +143,14 @@ PyObject *Curve_Init (void) return (submodule); } +int Curve_CheckPyObject (PyObject *pyobj) +{ + return (pyobj->ob_type == &Curve_Type); +} +Curve *Curve_FromPyObject (PyObject *pyobj) +{ + return ((BPy_Curve *)pyobj)->curve; +} /*****************************************************************************/ /* Python BPy_Curve methods: */ /* gives access to */ diff --git a/source/blender/python/api2_2x/Object.c b/source/blender/python/api2_2x/Object.c index ec5fd12b770..718bed0a2dd 100644 --- a/source/blender/python/api2_2x/Object.c +++ b/source/blender/python/api2_2x/Object.c @@ -828,6 +828,8 @@ static PyObject *Object_link (BPy_Object *self, PyObject *args) data = (void *)Camera_FromPyObject (py_data); if (Lamp_CheckPyObject (py_data)) data = (void *)Lamp_FromPyObject (py_data); + if (Curve_CheckPyObject (py_data)) + data = (void *)Curve_FromPyObject (py_data); /* TODO: add the (N)Mesh check and from functions here when finished. */ oldid = (ID*) self->object->data; @@ -857,6 +859,13 @@ static PyObject *Object_link (BPy_Object *self, PyObject *args) "The 'link' object is incompatible with the base object")); } break; + case ID_CU: + if (self->object->type != OB_CURVE) + { + return (PythonReturnErrorObject (PyExc_AttributeError, + "The 'link' object is incompatible with the base object")); + } + break; default: return (PythonReturnErrorObject (PyExc_AttributeError, "Linking this object type is not supported")); |