diff options
author | Campbell Barton <ideasman42@gmail.com> | 2009-04-12 13:56:30 +0400 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2009-04-12 13:56:30 +0400 |
commit | 5b306b7541bfc60342b70bcc55456d5c453a294a (patch) | |
tree | 267232e135a123f3f75051a9732a9ab35370d769 /source/gameengine/Expressions/PyObjectPlus.cpp | |
parent | 55d2b184ec1b2c1adfe182ead937cedae1a8208d (diff) |
BGE Python API
added defines PY_SET_ATTR_FAIL, PY_SET_ATTR_MISSING and PY_SET_ATTR_SUCCESS
This is useful when objects that have user defined attributes (GameObject and Scene)
When calling setattr on the parent, a return value of PY_SET_ATTR_FAIL means the attribute exists but failed to be set, so don't set the custom attribute.
Diffstat (limited to 'source/gameengine/Expressions/PyObjectPlus.cpp')
-rw-r--r-- | source/gameengine/Expressions/PyObjectPlus.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/source/gameengine/Expressions/PyObjectPlus.cpp b/source/gameengine/Expressions/PyObjectPlus.cpp index 4526f8f649b..33335ebef3e 100644 --- a/source/gameengine/Expressions/PyObjectPlus.cpp +++ b/source/gameengine/Expressions/PyObjectPlus.cpp @@ -137,7 +137,7 @@ int PyObjectPlus::py_setattro(PyObject *attr, PyObject* value) //return PyObject::py_setattro(attr,value); //cerr << "Unknown attribute" << endl; PyErr_SetString(PyExc_AttributeError, "attribute cant be set"); - return 1; + return PY_SET_ATTR_MISSING; } PyObject *PyObjectPlus::py_get_attrdef(void *self, const PyAttributeDef *attrdef) @@ -699,13 +699,13 @@ int PyObjectPlus::py_setattro_self(const PyAttributeDef attrlist[], void *self, attrdef->m_type == KX_PYATTRIBUTE_TYPE_DUMMY) { PyErr_SetString(PyExc_AttributeError, "property is read-only"); - return 1; + return PY_SET_ATTR_FAIL; } return py_set_attrdef(self, attrdef, value); } } - return -1; + return PY_SET_ATTR_MISSING; } #endif |