[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [10943] trunk/blender/source/blender/ python/api2_2x: Python PyMethodDef supports single argument methods (METH_O ) but was using METH_VARARGS everywhere and getting the single args from the tuple .
Campbell Barton
cbarton at metavr.com
Sat Jun 16 14:24:41 CEST 2007
Revision: 10943
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=10943
Author: campbellbarton
Date: 2007-06-16 14:24:41 +0200 (Sat, 16 Jun 2007)
Log Message:
-----------
Python PyMethodDef supports single argument methods (METH_O) but was using METH_VARARGS everywhere and getting the single args from the tuple.
Use METH_O where applicable.
Modified Paths:
--------------
trunk/blender/source/blender/python/api2_2x/Blender.c
trunk/blender/source/blender/python/api2_2x/Camera.c
trunk/blender/source/blender/python/api2_2x/Constraint.c
trunk/blender/source/blender/python/api2_2x/CurNurb.c
trunk/blender/source/blender/python/api2_2x/Draw.c
trunk/blender/source/blender/python/api2_2x/Font.c
trunk/blender/source/blender/python/api2_2x/Geometry.c
trunk/blender/source/blender/python/api2_2x/Group.c
trunk/blender/source/blender/python/api2_2x/IDProp.c
trunk/blender/source/blender/python/api2_2x/Image.c
trunk/blender/source/blender/python/api2_2x/Ipo.c
trunk/blender/source/blender/python/api2_2x/Ipocurve.c
trunk/blender/source/blender/python/api2_2x/Ipocurve.h
trunk/blender/source/blender/python/api2_2x/Lamp.c
trunk/blender/source/blender/python/api2_2x/Library.c
trunk/blender/source/blender/python/api2_2x/Material.c
trunk/blender/source/blender/python/api2_2x/Mathutils.c
trunk/blender/source/blender/python/api2_2x/Mathutils.h
trunk/blender/source/blender/python/api2_2x/Mesh.c
trunk/blender/source/blender/python/api2_2x/Metaball.c
trunk/blender/source/blender/python/api2_2x/Object.c
trunk/blender/source/blender/python/api2_2x/Scene.c
trunk/blender/source/blender/python/api2_2x/Text3d.c
trunk/blender/source/blender/python/api2_2x/World.c
trunk/blender/source/blender/python/api2_2x/bpy_data.c
trunk/blender/source/blender/python/api2_2x/gen_utils.c
trunk/blender/source/blender/python/api2_2x/gen_utils.h
trunk/blender/source/blender/python/api2_2x/logic.c
Modified: trunk/blender/source/blender/python/api2_2x/Blender.c
===================================================================
--- trunk/blender/source/blender/python/api2_2x/Blender.c 2007-06-16 04:20:19 UTC (rev 10942)
+++ trunk/blender/source/blender/python/api2_2x/Blender.c 2007-06-16 12:24:41 UTC (rev 10943)
@@ -99,16 +99,16 @@
/* Python API function prototypes for the Blender module. */
/**********************************************************/
static PyObject *Blender_Set( PyObject * self, PyObject * args );
-static PyObject *Blender_Get( PyObject * self, PyObject * args );
+static PyObject *Blender_Get( PyObject * self, PyObject * value );
static PyObject *Blender_Redraw( PyObject * self, PyObject * args );
static PyObject *Blender_Quit( PyObject * self );
static PyObject *Blender_Load( PyObject * self, PyObject * args );
static PyObject *Blender_Save( PyObject * self, PyObject * args );
-static PyObject *Blender_Run( PyObject * self, PyObject * args );
-static PyObject *Blender_ShowHelp( PyObject * self, PyObject * args );
+static PyObject *Blender_Run( PyObject * self, PyObject * value );
+static PyObject *Blender_ShowHelp( PyObject * self, PyObject * script );
static PyObject *Blender_UpdateMenus( PyObject * self);
static PyObject *Blender_PackAll( PyObject * self);
-static PyObject *Blender_UnpackAll( PyObject * self, PyObject * args);
+static PyObject *Blender_UnpackAll( PyObject * self, PyObject * value);
static PyObject *Blender_CountPackedFiles( PyObject * self );
extern PyObject *Text3d_Init( void ); /* missing in some include */
@@ -199,16 +199,16 @@
/*****************************************************************************/
static struct PyMethodDef Blender_methods[] = {
{"Set", Blender_Set, METH_VARARGS, Blender_Set_doc},
- {"Get", Blender_Get, METH_VARARGS, Blender_Get_doc},
+ {"Get", Blender_Get, METH_O, Blender_Get_doc},
{"Redraw", Blender_Redraw, METH_VARARGS, Blender_Redraw_doc},
{"Quit", ( PyCFunction ) Blender_Quit, METH_NOARGS, Blender_Quit_doc},
{"Load", Blender_Load, METH_VARARGS, Blender_Load_doc},
{"Save", Blender_Save, METH_VARARGS, Blender_Save_doc},
- {"Run", Blender_Run, METH_VARARGS, Blender_Run_doc},
- {"ShowHelp", Blender_ShowHelp, METH_VARARGS, Blender_ShowHelp_doc},
+ {"Run", Blender_Run, METH_O, Blender_Run_doc},
+ {"ShowHelp", Blender_ShowHelp, METH_O, Blender_ShowHelp_doc},
{"CountPackedFiles", ( PyCFunction ) Blender_CountPackedFiles, METH_NOARGS, Blender_CountPackedFiles_doc},
{"PackAll", ( PyCFunction ) Blender_PackAll, METH_NOARGS, Blender_PackAll_doc},
- {"UnpackAll", Blender_UnpackAll, METH_VARARGS, Blender_UnpackAll_doc},
+ {"UnpackAll", Blender_UnpackAll, METH_O, Blender_UnpackAll_doc},
{"UpdateMenus", ( PyCFunction ) Blender_UpdateMenus, METH_NOARGS,
Blender_UpdateMenus_doc},
{NULL, NULL, 0, NULL}
@@ -288,12 +288,12 @@
/* Function: Blender_Get */
/* Python equivalent: Blender.Get */
/*****************************************************************************/
-static PyObject *Blender_Get( PyObject * self, PyObject * args )
+static PyObject *Blender_Get( PyObject * self, PyObject * value )
{
PyObject *ret = NULL;
- char *str = NULL;
+ char *str = PyString_AsString(value);
- if( !PyArg_ParseTuple( args, "s", &str ) )
+ if( !str )
return EXPP_ReturnPyObjError (PyExc_TypeError,
"expected string argument");
@@ -712,14 +712,13 @@
Py_RETURN_NONE;
}
-static PyObject *Blender_ShowHelp(PyObject *self, PyObject *args)
+static PyObject *Blender_ShowHelp(PyObject *self, PyObject *script)
{
- PyObject *script = NULL;
char hspath[FILE_MAXDIR + FILE_MAXFILE]; /* path to help_browser.py */
char *sdir = bpy_gethome(1);
PyObject *rkeyd = NULL, *arglist = NULL;
- if (!PyArg_ParseTuple(args, "O!", &PyString_Type, &script))
+ if (!PyString_Check(script))
return EXPP_ReturnPyObjError(PyExc_TypeError,
"expected a script filename as argument");
@@ -759,14 +758,14 @@
Py_RETURN_NONE;
}
-static PyObject *Blender_Run(PyObject *self, PyObject *args)
+static PyObject *Blender_Run(PyObject *self, PyObject *value)
{
- char *fname = NULL;
+ char *fname = PyString_AsString(value);
Text *text = NULL;
int is_blender_text = 0;
Script *script = NULL;
- if (!PyArg_ParseTuple(args, "s", &fname))
+ if (!fname)
return EXPP_ReturnPyObjError(PyExc_TypeError,
"expected a filename or a Blender Text name as argument");
@@ -848,10 +847,12 @@
/* Function: Blender_UnpackAll */
/* Python equivalent: Blender.UnpackAll */
/*****************************************************************************/
-static PyObject *Blender_UnpackAll( PyObject * self, PyObject *args)
+static PyObject *Blender_UnpackAll( PyObject * self, PyObject *value)
{
- int mode;
- PyArg_ParseTuple( args, "i", &mode );
+ int mode = PyInt_AsLong(value);
+
+ if (mode==-1)
+ return EXPP_ReturnPyObjError( PyExc_ValueError, "expected an int Blender.UnpackModes");
unpackAll(mode);
Py_RETURN_NONE;
}
Modified: trunk/blender/source/blender/python/api2_2x/Camera.c
===================================================================
--- trunk/blender/source/blender/python/api2_2x/Camera.c 2007-06-16 04:20:19 UTC (rev 10942)
+++ trunk/blender/source/blender/python/api2_2x/Camera.c 2007-06-16 12:24:41 UTC (rev 10943)
@@ -129,7 +129,7 @@
static PyObject *Camera_oldsetClipEnd( BPy_Camera * self, PyObject * args );
static PyObject *Camera_oldsetDrawSize( BPy_Camera * self, PyObject * args );
static PyObject *Camera_oldsetScale( BPy_Camera * self, PyObject * args );
-static PyObject *Camera_oldgetScriptLinks( BPy_Camera * self, PyObject * args );
+static PyObject *Camera_oldgetScriptLinks( BPy_Camera * self, PyObject * value );
static PyObject *Camera_addScriptLink( BPy_Camera * self, PyObject * args );
static PyObject *Camera_oldclearIpo( BPy_Camera * self );
static PyObject *Camera_clearScriptLinks( BPy_Camera * self, PyObject * args );
@@ -169,21 +169,21 @@
"( Camera IPO type ) - Inserts a key into IPO"},
{"setName", ( PyCFunction ) GenericLib_setName_with_method, METH_VARARGS,
"(s) - Set Camera Data name"},
- {"setType", ( PyCFunction ) Camera_oldsetType, METH_VARARGS,
+ {"setType", ( PyCFunction ) Camera_oldsetType, METH_O,
"(s) - Set Camera type, which can be 'persp' or 'ortho'"},
{"setMode", ( PyCFunction ) Camera_oldsetMode, METH_VARARGS,
"(<s<,s>>) - Set Camera mode flag(s): 'showLimits' and 'showMist'"},
- {"setLens", ( PyCFunction ) Camera_oldsetLens, METH_VARARGS,
+ {"setLens", ( PyCFunction ) Camera_oldsetLens, METH_O,
"(f) - Set *perpective* Camera lens value"},
- {"setScale", ( PyCFunction ) Camera_oldsetScale, METH_VARARGS,
+ {"setScale", ( PyCFunction ) Camera_oldsetScale, METH_O,
"(f) - Set *ortho* Camera scale value"},
- {"setClipStart", ( PyCFunction ) Camera_oldsetClipStart, METH_VARARGS,
+ {"setClipStart", ( PyCFunction ) Camera_oldsetClipStart, METH_O,
"(f) - Set Camera clip start value"},
- {"setClipEnd", ( PyCFunction ) Camera_oldsetClipEnd, METH_VARARGS,
+ {"setClipEnd", ( PyCFunction ) Camera_oldsetClipEnd, METH_O,
"(f) - Set Camera clip end value"},
- {"setDrawSize", ( PyCFunction ) Camera_oldsetDrawSize, METH_VARARGS,
+ {"setDrawSize", ( PyCFunction ) Camera_oldsetDrawSize, METH_O,
"(f) - Set Camera draw size value"},
- {"getScriptLinks", ( PyCFunction ) Camera_oldgetScriptLinks, METH_VARARGS,
+ {"getScriptLinks", ( PyCFunction ) Camera_oldgetScriptLinks, METH_O,
"(eventname) - Get a list of this camera's scriptlinks (Text names) "
"of the given type\n"
"(eventname) - string: FrameChanged, Redraw or Render."},
@@ -462,11 +462,11 @@
return EXPP_incr_ret_False(); /* no ipo found */
}
-static PyObject *Camera_oldsetType( BPy_Camera * self, PyObject * args )
+static PyObject *Camera_oldsetType( BPy_Camera * self, PyObject * value )
{
- char *type;
+ char *type = PyString_AsString(value);
- if( !PyArg_ParseTuple( args, "s", &type ) )
+ if(!value)
return EXPP_ReturnPyObjError( PyExc_TypeError,
"expected string argument" );
@@ -516,75 +516,75 @@
Py_RETURN_NONE;
}
-static PyObject *Camera_oldsetLens( BPy_Camera * self, PyObject * args )
+static PyObject *Camera_oldsetLens( BPy_Camera * self, PyObject * value )
{
- float value;
+ float param = PyFloat_AsDouble(value);
- if( !PyArg_ParseTuple( args, "f", &value ) )
+ if( !PyFloat_Check(value) )
return EXPP_ReturnPyObjError( PyExc_TypeError,
"expected float argument" );
- self->camera->lens = EXPP_ClampFloat( value,
+ self->camera->lens = EXPP_ClampFloat( param,
EXPP_CAM_LENS_MIN,
EXPP_CAM_LENS_MAX );
Py_RETURN_NONE;
}
-static PyObject *Camera_oldsetScale( BPy_Camera * self, PyObject * args )
+static PyObject *Camera_oldsetScale( BPy_Camera * self, PyObject * value )
{
- float value;
+ float param = PyFloat_AsDouble(value);
- if( !PyArg_ParseTuple( args, "f", &value ) )
+ if( !PyFloat_Check(value) )
return EXPP_ReturnPyObjError( PyExc_TypeError,
"expected float argument" );
- self->camera->ortho_scale = EXPP_ClampFloat( value,
+ self->camera->ortho_scale = EXPP_ClampFloat( param,
EXPP_CAM_SCALE_MIN,
EXPP_CAM_SCALE_MAX );
Py_RETURN_NONE;
}
-static PyObject *Camera_oldsetClipStart( BPy_Camera * self, PyObject * args )
+static PyObject *Camera_oldsetClipStart( BPy_Camera * self, PyObject * value )
{
- float value;
+ float param = PyFloat_AsDouble(value);
- if( !PyArg_ParseTuple( args, "f", &value ) )
+ if( !PyFloat_Check(value) )
return EXPP_ReturnPyObjError( PyExc_TypeError,
"expected float argument" );
- self->camera->clipsta = EXPP_ClampFloat( value,
+ self->camera->clipsta = EXPP_ClampFloat( param,
EXPP_CAM_CLIPSTART_MIN,
EXPP_CAM_CLIPSTART_MAX );
Py_RETURN_NONE;
}
-static PyObject *Camera_oldsetClipEnd( BPy_Camera * self, PyObject * args )
+static PyObject *Camera_oldsetClipEnd( BPy_Camera * self, PyObject * value )
{
- float value;
+ float param = PyFloat_AsDouble(value);
- if( !PyArg_ParseTuple( args, "f", &value ) )
+ if( !PyFloat_Check(value) )
return EXPP_ReturnPyObjError( PyExc_TypeError,
"expected float argument" );
- self->camera->clipend = EXPP_ClampFloat( value,
+ self->camera->clipend = EXPP_ClampFloat( param,
EXPP_CAM_CLIPEND_MIN,
EXPP_CAM_CLIPEND_MAX );
Py_RETURN_NONE;
}
-static PyObject *Camera_oldsetDrawSize( BPy_Camera * self, PyObject * args )
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-blender-cvs
mailing list