Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJacques Guignot <guignot@wanadoo.fr>2003-07-09 16:25:27 +0400
committerJacques Guignot <guignot@wanadoo.fr>2003-07-09 16:25:27 +0400
commit6fe633aef368d71f007a6f3a96930e1654c9b50b (patch)
tree2a3eb21e0995dd7fa504b8bd8029068c74263bc9
parentda913434dbcf80a2eaa51084a4e3b395fe3784eb (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.c8
-rw-r--r--source/blender/python/api2_2x/Object.c9
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"));