From afec4049626690e91e75dc88f3b9097a21f9c168 Mon Sep 17 00:00:00 2001 From: Benoit Bolsee Date: Fri, 27 Mar 2009 22:11:30 +0000 Subject: [PATCH] BGE API Cleanup: GameActuator (patch from Andre) --- source/gameengine/Ketsji/KX_GameActuator.cpp | 35 +++++++++++++++----- source/gameengine/Ketsji/KX_GameActuator.h | 4 +++ source/gameengine/PyDoc/KX_GameActuator.py | 7 ++++ 3 files changed, 37 insertions(+), 9 deletions(-) diff --git a/source/gameengine/Ketsji/KX_GameActuator.cpp b/source/gameengine/Ketsji/KX_GameActuator.cpp index 3c0695b5952..6799ac7269c 100644 --- a/source/gameengine/Ketsji/KX_GameActuator.cpp +++ b/source/gameengine/Ketsji/KX_GameActuator.cpp @@ -241,21 +241,44 @@ PyParentObject KX_GameActuator::Parents[] = PyMethodDef KX_GameActuator::Methods[] = { + // Deprecated -----> {"getFile", (PyCFunction) KX_GameActuator::sPyGetFile, METH_VARARGS, (PY_METHODCHAR)GetFile_doc}, {"setFile", (PyCFunction) KX_GameActuator::sPySetFile, METH_VARARGS, (PY_METHODCHAR)SetFile_doc}, + // <----- {NULL,NULL} //Sentinel }; PyAttributeDef KX_GameActuator::Attributes[] = { + KX_PYATTRIBUTE_STRING_RW("file",0,100,false,KX_GameActuator,m_filename), { NULL } //Sentinel }; +PyObject* +KX_GameActuator::_getattr(const char *attr) +{ + PyObject* object = _getattr_self(Attributes, this, attr); + if (object != NULL) + return object; + _getattr_up(SCA_IActuator); +} + +int KX_GameActuator::_setattr(const char *attr, PyObject *value) +{ + int ret = _setattr_self(Attributes, this, attr, value); + if (ret >= 0) + return ret; + return SCA_IActuator::_setattr(attr, value); +} + + +// Deprecated -----> /* getFile */ const char KX_GameActuator::GetFile_doc[] = "getFile()\n" "get the name of the file to start.\n"; PyObject* KX_GameActuator::PyGetFile(PyObject* self, PyObject* args, PyObject* kwds) { + ShowDeprecationWarning("getFile()", "the file property"); return PyString_FromString(m_filename); } @@ -266,6 +289,8 @@ const char KX_GameActuator::SetFile_doc[] = PyObject* KX_GameActuator::PySetFile(PyObject* self, PyObject* args, PyObject* kwds) { char* new_file; + + ShowDeprecationWarning("setFile()", "the file property"); if (!PyArg_ParseTuple(args, "s", &new_file)) { @@ -277,12 +302,4 @@ PyObject* KX_GameActuator::PySetFile(PyObject* self, PyObject* args, PyObject* k Py_RETURN_NONE; } - - - -PyObject* KX_GameActuator::_getattr(const char *attr) -{ - _getattr_up(SCA_IActuator); -} - - +// <----- diff --git a/source/gameengine/Ketsji/KX_GameActuator.h b/source/gameengine/Ketsji/KX_GameActuator.h index 856fa0c24e9..ad638254c31 100644 --- a/source/gameengine/Ketsji/KX_GameActuator.h +++ b/source/gameengine/Ketsji/KX_GameActuator.h @@ -78,8 +78,12 @@ protected: /* --------------------------------------------------------------------- */ virtual PyObject* _getattr(const char *attr); + virtual int _setattr(const char *attr, PyObject *value); + + // Deprecated functions -----> KX_PYMETHOD_DOC(KX_GameActuator,GetFile); KX_PYMETHOD_DOC(KX_GameActuator,SetFile); + // <----- }; /* end of class KX_GameActuator */ diff --git a/source/gameengine/PyDoc/KX_GameActuator.py b/source/gameengine/PyDoc/KX_GameActuator.py index b916b3b5617..fc5bd6005fc 100644 --- a/source/gameengine/PyDoc/KX_GameActuator.py +++ b/source/gameengine/PyDoc/KX_GameActuator.py @@ -5,15 +5,22 @@ from SCA_IActuator import * class KX_GameActuator(SCA_IActuator): """ The game actuator loads a new .blend file, restarts the current .blend file or quits the game. + + Properties: + + @ivar file: the new .blend file to load + @type file: string. """ def getFile(): """ + DEPRECATED: use the file property Returns the filename of the new .blend file to load. @rtype: string """ def setFile(filename): """ + DEPRECATED: use the file property Sets the new .blend file to load. @param filename: The file name this actuator will load.