BPython: bug fixes / patches from trackers
(excuse me for not committing earlier) Patches by Ken Hughes (thanks for all bug fixes!): 1) Setting a scene's MapOld and MapNew values in python does nothing: bug #2566 submitted by Dominic Agoro-Ombaka (dmao): https://projects.blender.org/tracker/?func=detail&aid=2566&group_id=9&atid=125 patch #2571: https://projects.blender.org/tracker/index.php?func=detail&aid=2571&group_id=9&atid=127 2) Calling the file selector after setting the progress bar crashes Blender: bug #2418 submitted by Alessandro Garosi (brandano): https://projects.blender.org/tracker/?func=detail&aid=2418&group_id=9&atid=125 patch #2568: https://projects.blender.org/tracker/index.php?func=detail&aid=2568&group_id=9&atid=127 3) Menus always generate same event when canceled: bug #2429 submitted by Campbell Barton: https://projects.blender.org/tracker/?func=detail&aid=2429&group_id=9&atid=125 patch #2579: https://projects.blender.org/tracker/?func=detail&aid=2579&group_id=9&atid=127 4) Add a vertex to a mesh with groups using a script and then edit that mesh hangs blender: bug #2211 reported by German Alonso Tamayo (servivo): https://projects.blender.org/tracker/index.php?func=detail&aid=2211&group_id=9&atid=125 patch #2580 #https://projects.blender.org/tracker/index.php?func=detail&aid=2580&group_id=9&atid=127 About bug #2033, I'm still looking at it, committing a small fix now. ===== Patches by Campbell Barton (thanks!): #2482: BGL pydocs fix broken links https://projects.blender.org/tracker/index.php?func=detail&aid=2482&group_id=9&atid=127 #2426: Large text in Draw.Text and Draw.GetStreingWidth https://projects.blender.org/tracker/index.php?func=detail&aid=2462&group_id=9&atid=127 #2521: scene.getActiveObject() https://projects.blender.org/tracker/index.php?func=detail&aid=2521&group_id=9&atid=127 #2523: NMesh.GetNames() https://projects.blender.org/tracker/index.php?func=detail&aid=2523&group_id=9&atid=127 - docs also updated
This commit is contained in:
@@ -25,7 +25,8 @@
|
||||
*
|
||||
* This is a new part of Blender.
|
||||
*
|
||||
* Contributor(s): Willian P. Germano, Jacques Guignot, Joseph Gilbert
|
||||
* Contributor(s): Willian P. Germano, Jacques Guignot, Joseph Gilbert,
|
||||
* Campbell Barton.
|
||||
*
|
||||
* ***** END GPL/BL DUAL LICENSE BLOCK *****
|
||||
*/
|
||||
@@ -102,6 +103,7 @@ static PyObject *Scene_update( BPy_Scene * self, PyObject * args );
|
||||
static PyObject *Scene_link( BPy_Scene * self, PyObject * args );
|
||||
static PyObject *Scene_unlink( BPy_Scene * self, PyObject * args );
|
||||
static PyObject *Scene_getChildren( BPy_Scene * self );
|
||||
static PyObject *Scene_getActiveObject(BPy_Scene *self);
|
||||
static PyObject *Scene_getCurrentCamera( BPy_Scene * self );
|
||||
static PyObject *Scene_setCurrentCamera( BPy_Scene * self, PyObject * args );
|
||||
static PyObject *Scene_getRenderingContext( BPy_Scene * self );
|
||||
@@ -125,9 +127,9 @@ static PyMethodDef BPy_Scene_methods[] = {
|
||||
{"setName", ( PyCFunction ) Scene_setName, METH_VARARGS,
|
||||
"(str) - Change Scene name"},
|
||||
{"getLayers", ( PyCFunction ) Scene_getLayers, METH_NOARGS,
|
||||
"() - Return a list of layers int indices which are set in this Scene "},
|
||||
"() - Return a list of layers int indices which are set in this scene "},
|
||||
{"setLayers", ( PyCFunction ) Scene_setLayers, METH_VARARGS,
|
||||
"(layers) - Change layers which are set in this Scene\n"
|
||||
"(layers) - Change layers which are set in this scene\n"
|
||||
"(layers) - list of integers in the range [1, 20]."},
|
||||
{"copy", ( PyCFunction ) Scene_copy, METH_VARARGS,
|
||||
"(duplicate_objects = 1) - Return a copy of this scene\n"
|
||||
@@ -145,7 +147,9 @@ static PyMethodDef BPy_Scene_methods[] = {
|
||||
{"unlink", ( PyCFunction ) Scene_unlink, METH_VARARGS,
|
||||
"(obj) - Unlink Object obj from this scene"},
|
||||
{"getChildren", ( PyCFunction ) Scene_getChildren, METH_NOARGS,
|
||||
"() - Return list of all objects linked to scene self"},
|
||||
"() - Return list of all objects linked to this scene"},
|
||||
{"getActiveObject", (PyCFunction)Scene_getActiveObject, METH_NOARGS,
|
||||
"() - Return this scene's active object"},
|
||||
{"getCurrentCamera", ( PyCFunction ) Scene_getCurrentCamera,
|
||||
METH_NOARGS,
|
||||
"() - Return current active Camera"},
|
||||
@@ -839,6 +843,36 @@ static PyObject *Scene_getChildren( BPy_Scene * self )
|
||||
return pylist;
|
||||
}
|
||||
|
||||
//-----------------------Scene.getActiveObject()------------------------
|
||||
static PyObject *Scene_getActiveObject(BPy_Scene *self)
|
||||
{
|
||||
Scene *scene = self->scene;
|
||||
PyObject *pyob;
|
||||
Object *ob;
|
||||
|
||||
if (!scene)
|
||||
return EXPP_ReturnPyObjError(PyExc_RuntimeError,
|
||||
"Blender Scene was deleted!");
|
||||
|
||||
ob = ((scene->basact) ? (scene->basact->object) : 0);
|
||||
|
||||
if (ob) {
|
||||
PyObject *arg = Py_BuildValue("(s)", ob->id.name+2);
|
||||
|
||||
pyob = M_Object_Get(Py_None, arg);
|
||||
|
||||
Py_DECREF(arg);
|
||||
|
||||
if (!pyob)
|
||||
return EXPP_ReturnPyObjError(PyExc_MemoryError,
|
||||
"couldn't create new object wrapper!");
|
||||
|
||||
return pyob;
|
||||
}
|
||||
|
||||
return EXPP_incr_ret(Py_None); /* no active object */
|
||||
}
|
||||
|
||||
//-----------------------Scene.getCurrentCamera()------------------------
|
||||
static PyObject *Scene_getCurrentCamera( BPy_Scene * self )
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user