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:
authorWillian Padovani Germano <wpgermano@gmail.com>2003-06-28 11:38:21 +0400
committerWillian Padovani Germano <wpgermano@gmail.com>2003-06-28 11:38:21 +0400
commiteaf1cdd3836aa425e3dc6f1a11d4556bd7e3e876 (patch)
treefe8e701c3e3daa38749b78238858edbbbfea1f91
parent569a32a2ea3a1992eaeaa5dc0256c48e8a053fbd (diff)
- More renaming all around to follow our conventions
- Implemented partially Blender.Sys - Worked on issues related to sys, path - Took away most "debug" printfs
-rw-r--r--source/blender/python/BPY_extern.h10
-rw-r--r--source/blender/python/BPY_interface.c104
-rw-r--r--source/blender/python/api2_2x/Armature.c95
-rw-r--r--source/blender/python/api2_2x/Armature.h50
-rw-r--r--source/blender/python/api2_2x/Blender.c280
-rw-r--r--source/blender/python/api2_2x/Bone.c214
-rw-r--r--source/blender/python/api2_2x/Bone.h12
-rw-r--r--source/blender/python/api2_2x/Build.c6
-rw-r--r--source/blender/python/api2_2x/Camera.c26
-rw-r--r--source/blender/python/api2_2x/Camera.h12
-rw-r--r--source/blender/python/api2_2x/Curve.c9
-rw-r--r--source/blender/python/api2_2x/Draw.c3
-rw-r--r--source/blender/python/api2_2x/EXPP_interface.c6
-rw-r--r--source/blender/python/api2_2x/Effect.c23
-rw-r--r--source/blender/python/api2_2x/Image.c94
-rw-r--r--source/blender/python/api2_2x/Image.h6
-rw-r--r--source/blender/python/api2_2x/Ipo.c5
-rw-r--r--source/blender/python/api2_2x/Lamp.c4
-rw-r--r--source/blender/python/api2_2x/Metaball.c11
-rw-r--r--source/blender/python/api2_2x/NMesh.c168
-rw-r--r--source/blender/python/api2_2x/NMesh.h24
-rw-r--r--source/blender/python/api2_2x/Object.c249
-rw-r--r--source/blender/python/api2_2x/Object.h12
-rw-r--r--source/blender/python/api2_2x/Particle.c4
-rw-r--r--source/blender/python/api2_2x/Scene.c46
-rw-r--r--source/blender/python/api2_2x/Scene.h2
-rw-r--r--source/blender/python/api2_2x/Sys.c87
-rw-r--r--source/blender/python/api2_2x/Sys.h66
-rw-r--r--source/blender/python/api2_2x/Text.c24
-rw-r--r--source/blender/python/api2_2x/Text.h2
-rw-r--r--source/blender/python/api2_2x/Wave.c11
-rw-r--r--source/blender/python/api2_2x/Window.c4
-rw-r--r--source/blender/python/api2_2x/Window.h2
-rw-r--r--source/blender/python/api2_2x/World.c4
-rw-r--r--source/blender/python/api2_2x/World.h2
-rw-r--r--source/blender/python/api2_2x/constant.c58
-rw-r--r--source/blender/python/api2_2x/constant.h8
-rw-r--r--source/blender/python/api2_2x/doc/BGL.py22
-rw-r--r--source/blender/python/api2_2x/doc/Blender.py30
-rw-r--r--source/blender/python/api2_2x/doc/Camera.py5
-rw-r--r--source/blender/python/api2_2x/doc/Lamp.py5
-rw-r--r--source/blender/python/api2_2x/doc/Text.py5
-rw-r--r--source/blender/python/api2_2x/doc/Window.py117
-rw-r--r--source/blender/python/api2_2x/modules.h55
44 files changed, 1164 insertions, 818 deletions
diff --git a/source/blender/python/BPY_extern.h b/source/blender/python/BPY_extern.h
index 2af7edc835e..977da30139f 100644
--- a/source/blender/python/BPY_extern.h
+++ b/source/blender/python/BPY_extern.h
@@ -30,6 +30,8 @@
* ***** END GPL/BL DUAL LICENSE BLOCK *****
*/
+extern char bprogname[]; /* holds a copy of argv[0], from creator.c */
+
/* Global to control whether the global dictionary should be preserved or not
* each time a script is executed by the Python Interpreter: */
extern short EXPP_releaseGlobalDict; /* defaults to TRUE */
@@ -61,9 +63,5 @@ void BPY_copy_scriptlink(struct ScriptLink *scriptlink);
/* format importer hook */
int BPY_call_importloader(char *name);
-/* XXX The 3 functions below are implemented in Draw.c */
-/*
-int BPY_spacetext_is_pywin(struct SpaceText *st);
-void BPY_spacetext_do_pywin_draw(struct SpaceText *st);
-void BPY_spacetext_do_pywin_event(struct SpaceText *st, unsigned short event, short val);
-*/
+void init_syspath(void);
+
diff --git a/source/blender/python/BPY_interface.c b/source/blender/python/BPY_interface.c
index bf58a417c63..5a388b1ea0d 100644
--- a/source/blender/python/BPY_interface.c
+++ b/source/blender/python/BPY_interface.c
@@ -40,6 +40,8 @@
#include <MEM_guardedalloc.h>
+#include <BLI_blenlib.h> /* for BLI_last_slash() */
+
#include <BKE_global.h>
#include <BKE_main.h>
#include <BKE_text.h>
@@ -54,6 +56,8 @@
#include <DNA_text_types.h>
#include <DNA_world_types.h>
+#include <DNA_userdef_types.h> /* for U.pythondir */
+
#include "BPY_extern.h"
#include "api2_2x/EXPP_interface.h"
@@ -89,7 +93,7 @@ void DoAllScriptsFromList (ListBase * list, short event);
/*****************************************************************************/
void BPY_start_python(void)
{
- printf ("In BPY_start_python\n");
+ //printf ("In BPY_start_python\n");
/* TODO: Shouldn't "blender" be replaced by PACKAGE ?? (config.h) */
Py_SetProgramName("blender");
@@ -97,6 +101,8 @@ void BPY_start_python(void)
initBlenderApi2_2x ();
+ init_syspath();
+
return; /* We could take away all these return; ... */
}
@@ -105,18 +111,94 @@ void BPY_start_python(void)
/*****************************************************************************/
void BPY_end_python(void)
{
- printf ("In BPY_end_python\n");
+ //printf ("In BPY_end_python\n");
Py_Finalize();
return;
}
+void syspath_append(PyObject *dir)
+{
+ PyObject *mod_sys, *dict, *path;
+
+ PyErr_Clear();
+
+ mod_sys = PyImport_ImportModule("sys"); /* new ref */
+ dict = PyModule_GetDict(mod_sys); /* borrowed ref */
+ path = PyDict_GetItemString(dict, "path"); /* borrowed ref */
+
+ if (!PyList_Check(path)) return;
+
+ PyList_Append(path, dir);
+
+ if (PyErr_Occurred()) Py_FatalError("could not build sys.path");
+
+ Py_DECREF(mod_sys);
+}
+
+void init_syspath(void)
+{
+ PyObject *path;
+ PyObject *mod, *d;
+ PyObject *p;
+ char *c, *progname;
+ char execdir[FILE_MAXDIR + FILE_MAXFILE];/*defines from DNA_space_types.h*/
+
+ int n;
+
+ path = Py_BuildValue("s", bprogname);
+
+ mod = PyImport_ImportModule("Blender.sys");
+
+ if (mod) {
+ d = PyModule_GetDict(mod);
+ PyDict_SetItemString(d, "progname", path);
+ Py_DECREF(mod);
+ }
+ else
+ printf("Warning: could not set Blender.sys.progname\n");
+
+ progname = BLI_last_slash(bprogname); /* looks for the last dir separator */
+
+ c = Py_GetPath(); /* get python system path */
+ PySys_SetPath(c); /* initialize */
+
+ n = progname - bprogname;
+ if (n > 0) {
+ strncpy(execdir, bprogname, n);
+ if (execdir[n-1] == '.') n--; /*fix for when run as ./blender */
+ execdir[n] = '\0';
+
+ p = Py_BuildValue("s", execdir);
+ syspath_append(p); /* append to module search path */
+
+ /* set Blender.sys.progname */
+ }
+ else
+ printf ("Warning: could not determine argv[0] path\n");
+
+ if (U.pythondir) { /* XXX not working, U.pythondir is NULL here ?!?*/
+ /* maybe it wasn't defined yet at this point in start-up ...*/
+ p = Py_BuildValue("s", U.pythondir);
+ syspath_append(p); /* append to module search path */
+ }
+
+ /* set sys.executable to the Blender exe */
+ mod = PyImport_ImportModule("sys"); /* new ref */
+
+ if (mod) {
+ d = PyModule_GetDict(mod); /* borrowed ref */
+ PyDict_SetItemString(d, "executable", Py_BuildValue("s", bprogname));
+ Py_DECREF(mod);
+ }
+}
+
/*****************************************************************************/
/* Description: This function will return the linenumber on which an error */
/* has occurred in the Python script. */
/*****************************************************************************/
int BPY_Err_getLinenumber(void)
{
- printf ("In BPY_Err_getLinenumber\n");
+ //printf ("In BPY_Err_getLinenumber\n");
return g_script_error.lineno;
}
@@ -125,7 +207,7 @@ int BPY_Err_getLinenumber(void)
/*****************************************************************************/
const char *BPY_Err_getFilename(void)
{
- printf ("In BPY_Err_getFilename\n");
+ //printf ("In BPY_Err_getFilename\n");
return g_script_error.filename;
}
@@ -222,7 +304,7 @@ struct _object *BPY_txt_do_python(struct SpaceText* st)
{
PyObject *dict, *ret;
- printf ("\nIn BPY_txt_do_python\n");
+ //printf ("\nIn BPY_txt_do_python\n");
if (!st->text) return NULL;
@@ -290,7 +372,7 @@ struct _object *BPY_txt_do_python(struct SpaceText* st)
/*****************************************************************************/
void BPY_free_compiled_text(struct Text* text)
{
- printf ("In BPY_free_compiled_text\n");
+ //printf ("In BPY_free_compiled_text\n");
if (!text->compiled) return;
Py_DECREF((PyObject*) text->compiled);
text->compiled = NULL;
@@ -308,7 +390,7 @@ void BPY_free_compiled_text(struct Text* text)
/*****************************************************************************/
void BPY_clear_bad_scriptlinks(struct Text *byebye)
{
- printf ("In BPY_clear_bad_scriptlinks\n");
+ //printf ("In BPY_clear_bad_scriptlinks\n");
/*
BPY_clear_bad_scriptlist(getObjectList(), byebye);
BPY_clear_bad_scriptlist(getLampList(), byebye);
@@ -330,7 +412,7 @@ void BPY_clear_bad_scriptlinks(struct Text *byebye)
/*****************************************************************************/
void BPY_do_all_scripts(short event)
{
- printf ("In BPY_do_all_scripts(event=%d)\n",event);
+ /*printf ("In BPY_do_all_scripts(event=%d)\n",event);*/
DoAllScriptsFromList (&(G.main->object), event);
DoAllScriptsFromList (&(G.main->lamp), event);
@@ -357,7 +439,7 @@ void BPY_do_pyscript(struct ID *id, short event)
PyObject * dict;
PyObject * ret;
- printf ("In BPY_do_pyscript(id=%s, event=%d)\n",id->name, event);
+ /*printf ("In BPY_do_pyscript(id=%s, event=%d)\n",id->name, event);*/
scriptlink = setScriptLinks (id, event);
@@ -396,7 +478,7 @@ void BPY_do_pyscript(struct ID *id, short event)
/*****************************************************************************/
void BPY_free_scriptlink(struct ScriptLink *slink)
{
- printf ("In BPY_free_scriptlink\n");
+ //printf ("In BPY_free_scriptlink\n");
if (slink->totscript) {
if(slink->flag) MEM_freeN(slink->flag);
@@ -414,7 +496,7 @@ void BPY_copy_scriptlink(struct ScriptLink *scriptlink)
{
void *tmp;
- printf ("In BPY_copy_scriptlink\n");
+ //printf ("In BPY_copy_scriptlink\n");
if (scriptlink->totscript) {
diff --git a/source/blender/python/api2_2x/Armature.c b/source/blender/python/api2_2x/Armature.c
index 0abd4e8d777..998a36bb11e 100644
--- a/source/blender/python/api2_2x/Armature.c
+++ b/source/blender/python/api2_2x/Armature.c
@@ -42,12 +42,10 @@ static PyObject *M_Armature_New(PyObject *self, PyObject *args,
char *type_str = "Armature";
char *name_str = "ArmatureData";
static char *kwlist[] = {"type_str", "name_str", NULL};
- C_Armature *py_armature; /* for Armature Data object wrapper in Python */
+ BPy_Armature *py_armature; /* for Armature Data object wrapper in Python */
bArmature *bl_armature; /* for actual Armature Data we create in Blender */
char buf[21];
- printf ("In Armature_New()\n");
-
if (!PyArg_ParseTupleAndKeywords(args, keywords, "|ss", kwlist,
&type_str, &name_str))
return (EXPP_ReturnPyObjError (PyExc_AttributeError,
@@ -55,7 +53,7 @@ static PyObject *M_Armature_New(PyObject *self, PyObject *args,
bl_armature = add_armature(); /* first create in Blender */
if (bl_armature) /* now create the wrapper obj in Python */
- py_armature = (C_Armature *)PyObject_NEW(C_Armature, &Armature_Type);
+ py_armature = (BPy_Armature *)PyObject_NEW(BPy_Armature, &Armature_Type);
else
return (EXPP_ReturnPyObjError (PyExc_RuntimeError,
"couldn't create Armature Data in Blender"));
@@ -85,9 +83,8 @@ static PyObject *M_Armature_Get(PyObject *self, PyObject *args)
{
char *name = NULL;
bArmature *armature_iter;
- C_Armature *wanted_armature;
+ BPy_Armature *wanted_armature;
- printf ("In Armature_Get()\n");
if (!PyArg_ParseTuple(args, "|s", &name))
return (EXPP_ReturnPyObjError (PyExc_TypeError,
"expected string argument (or nothing)"));
@@ -102,7 +99,7 @@ static PyObject *M_Armature_Get(PyObject *self, PyObject *args)
while ((armature_iter) && (wanted_armature == NULL)) {
if (strcmp (name, armature_iter->id.name+2) == 0) {
- wanted_armature = (C_Armature *)PyObject_NEW(C_Armature, &Armature_Type);
+ wanted_armature = (BPy_Armature *)PyObject_NEW(BPy_Armature, &Armature_Type);
if (wanted_armature) wanted_armature->armature = armature_iter;
}
@@ -132,7 +129,7 @@ static PyObject *M_Armature_Get(PyObject *self, PyObject *args)
"couldn't create PyList"));
while (armature_iter) {
- pyobj = M_ArmatureCreatePyObject (armature_iter);
+ pyobj = Armature_CreatePyObject (armature_iter);
if (!pyobj)
return (PythonReturnErrorObject (PyExc_MemoryError,
@@ -150,15 +147,13 @@ static PyObject *M_Armature_Get(PyObject *self, PyObject *args)
}
/*****************************************************************************/
-/* Function: M_Armature_Init */
+/* Function: Armature_Init */
/*****************************************************************************/
-PyObject *M_Armature_Init (void)
+PyObject *Armature_Init (void)
{
PyObject *submodule;
PyObject *dict;
- printf ("In M_Armature_Init()\n");
-
Armature_Type.ob_type = &PyType_Type;
submodule = Py_InitModule3("Blender.Armature",
@@ -166,15 +161,15 @@ PyObject *M_Armature_Init (void)
/* Add the Bone submodule to this module */
dict = PyModule_GetDict (submodule);
- PyDict_SetItemString (dict, "Bone", M_Bone_Init());
+ PyDict_SetItemString (dict, "Bone", Bone_Init());
return (submodule);
}
/*****************************************************************************/
-/* Python C_Armature methods: */
+/* Python BPy_Armature methods: */
/*****************************************************************************/
-static PyObject *Armature_getName(C_Armature *self)
+static PyObject *Armature_getName(BPy_Armature *self)
{
PyObject *attr = PyString_FromString(self->armature->id.name+2);
@@ -186,7 +181,7 @@ static PyObject *Armature_getName(C_Armature *self)
/** Create and return a list of the root bones for this armature. */
-static PyObject *Armature_getBones(C_Armature *self)
+static PyObject *Armature_getBones(BPy_Armature *self)
{
int totbones = 0;
PyObject *listbones = NULL;
@@ -202,7 +197,7 @@ static PyObject *Armature_getBones(C_Armature *self)
listbones = PyList_New(totbones);
for (i=0; i<totbones; i++) {
/* Wrap and set to corresponding element of the list. */
- PyList_SetItem(listbones, i, M_BoneCreatePyObject(current) );
+ PyList_SetItem(listbones, i, Bone_CreatePyObject(current) );
current = current->next;
}
@@ -210,7 +205,7 @@ static PyObject *Armature_getBones(C_Armature *self)
}
-static PyObject *Armature_setName(C_Armature *self, PyObject *args)
+static PyObject *Armature_setName(BPy_Armature *self, PyObject *args)
{
char *name;
char buf[21];
@@ -228,7 +223,7 @@ static PyObject *Armature_setName(C_Armature *self, PyObject *args)
}
/*
- static PyObject *Armature_setBones(C_Armature *self, PyObject *args)
+ static PyObject *Armature_setBones(BPy_Armature *self, PyObject *args)
{
// TODO: Implement me!
printf("ERROR: Armature_setBones NOT implemented yet!\n");
@@ -239,22 +234,22 @@ static PyObject *Armature_setName(C_Armature *self, PyObject *args)
*/
/*****************************************************************************/
-/* Function: ArmatureDeAlloc */
-/* Description: This is a callback function for the C_Armature type. It is */
+/* Function: Armature_dealloc */
+/* Description: This is a callback function for the BPy_Armature type. It is */
/* the destructor function. */
/*****************************************************************************/
-static void ArmatureDeAlloc (C_Armature *self)
+static void Armature_dealloc (BPy_Armature *self)
{
PyObject_DEL (self);
}
/*****************************************************************************/
-/* Function: ArmatureGetAttr */
-/* Description: This is a callback function for the C_Armature type. It is */
-/* the function that accesses C_Armature member variables and */
+/* Function: Armature_getAttr */
+/* Description: This is a callback function for the BPy_Armature type. It is */
+/* the function that accesses BPy_Armature member variables and */
/* methods. */
/*****************************************************************************/
-static PyObject* ArmatureGetAttr (C_Armature *self, char *name)
+static PyObject* Armature_getAttr (BPy_Armature *self, char *name)
{
PyObject *attr = Py_None;
@@ -275,17 +270,17 @@ static PyObject* ArmatureGetAttr (C_Armature *self, char *name)
if (attr != Py_None) return attr; /* member attribute found, return it */
/* not an attribute, search the methods table */
- return Py_FindMethod(C_Armature_methods, (PyObject *)self, name);
+ return Py_FindMethod(BPy_Armature_methods, (PyObject *)self, name);
}
/*****************************************************************************/
-/* Function: ArmatureSetAttr */
-/* Description: This is a callback function for the C_Armature type. It is */
+/* Function: Armature_setAttr */
+/* Description: This is a callback function for the BPy_Armature type. It is */
/* the function that changes Armature Data members values. If */
/* this data is linked to a Blender Armature, it also gets */
/* updated. */
/*****************************************************************************/
-static int ArmatureSetAttr (C_Armature *self, char *name, PyObject *value)
+static int Armature_setAttr (BPy_Armature *self, char *name, PyObject *value)
{
PyObject *valtuple;
PyObject *error = NULL;
@@ -317,50 +312,48 @@ static int ArmatureSetAttr (C_Armature *self, char *name, PyObject *value)
}
/*****************************************************************************/
-/* Function: ArmaturePrint */
-/* Description: This is a callback function for the C_Armature type. It */
+/* Function: Armature_print */
+/* Description: This is a callback function for the BPy_Armature type. It */
/* builds a meaninful string to 'print' armature objects. */
/*****************************************************************************/
-static int ArmaturePrint(C_Armature *self, FILE *fp, int flags)
+static int Armature_print(BPy_Armature *self, FILE *fp, int flags)
{
fprintf(fp, "[Armature \"%s\"]", self->armature->id.name+2);
return 0;
}
/*****************************************************************************/
-/* Function: ArmatureRepr */
-/* Description: This is a callback function for the C_Armature type. It */
+/* Function: Armature_repr */
+/* Description: This is a callback function for the BPy_Armature type. It */
/* builds a meaninful string to represent armature objects. */
/*****************************************************************************/
-static PyObject *ArmatureRepr (C_Armature *self)
+static PyObject *Armature_repr (BPy_Armature *self)
{
return PyString_FromString(self->armature->id.name+2);
}
/*****************************************************************************/
-/* Function: ArmatureCmp */
-/* Description: This is a callback function for the C_Armature type. It */
+/* Function: Armature_compare */
+/* Description: This is a callback function for the BPy_Armature type. It */
/* compares the two armatures: translate comparison to the */
/* C pointers. */
/*****************************************************************************/
-static int ArmatureCmp (C_Armature *a, C_Armature *b)
+static int Armature_compare (BPy_Armature *a, BPy_Armature *b)
{
bArmature *pa = a->armature, *pb = b->armature;
return (pa == pb) ? 0:-1;
}
/*****************************************************************************/
-/* Function: M_ArmatureCreatePyObject */
+/* Function: Armature_CreatePyObject */
/* Description: This function will create a new BlenArmature from an */
/* existing Armature structure. */
/*****************************************************************************/
-PyObject* M_ArmatureCreatePyObject (struct bArmature *obj)
+PyObject* Armature_CreatePyObject (struct bArmature *obj)
{
- C_Armature * blen_armature;
-
- printf ("In M_ArmatureCreatePyObject\n");
+ BPy_Armature * blen_armature;
- blen_armature = (C_Armature*)PyObject_NEW (C_Armature, &Armature_Type);
+ blen_armature = (BPy_Armature*)PyObject_NEW (BPy_Armature, &Armature_Type);
if (blen_armature == NULL)
{
@@ -371,24 +364,24 @@ PyObject* M_ArmatureCreatePyObject (struct bArmature *obj)
}
/*****************************************************************************/
-/* Function: M_ArmatureCheckPyObject */
+/* Function: Armature_CheckPyObject */
/* Description: This function returns true when the given PyObject is of the */
/* type Armature. Otherwise it will return false. */
/*****************************************************************************/
-int M_ArmatureCheckPyObject (PyObject *py_obj)
+int Armature_CheckPyObject (PyObject *py_obj)
{
return (py_obj->ob_type == &Armature_Type);
}
/*****************************************************************************/
-/* Function: M_ArmatureFromPyObject */
+/* Function: Armature_FromPyObject */
/* Description: This function returns the Blender armature from the given */
/* PyObject. */
/*****************************************************************************/
-struct bArmature* M_ArmatureFromPyObject (PyObject *py_obj)
+struct bArmature* Armature_FromPyObject (PyObject *py_obj)
{
- C_Armature * blen_obj;
+ BPy_Armature * blen_obj;
- blen_obj = (C_Armature*)py_obj;
+ blen_obj = (BPy_Armature*)py_obj;
return (blen_obj->armature);
}
diff --git a/source/blender/python/api2_2x/Armature.h b/source/blender/python/api2_2x/Armature.h
index a035796140d..b2fa9611daf 100644
--- a/source/blender/python/api2_2x/Armature.h
+++ b/source/blender/python/api2_2x/Armature.h
@@ -54,7 +54,7 @@
static PyObject *M_Armature_New (PyObject *self, PyObject *args,
PyObject *keywords);
static PyObject *M_Armature_Get (PyObject *self, PyObject *args);
-PyObject *M_Armature_Init (void);
+PyObject *Armature_Init (void);
/*****************************************************************************/
/* The following string definitions are used for documentation strings. */
@@ -92,25 +92,25 @@ struct PyMethodDef M_Armature_methods[] = {
};
/*****************************************************************************/
-/* Python C_Armature structure definition: */
+/* Python BPy_Armature structure definition: */
/*****************************************************************************/
typedef struct {
PyObject_HEAD
bArmature *armature;
-} C_Armature;
+} BPy_Armature;
/*****************************************************************************/
-/* Python C_Armature methods declarations: */
+/* Python BPy_Armature methods declarations: */
/*****************************************************************************/
-static PyObject *Armature_getName(C_Armature *self);
-static PyObject *Armature_getBones(C_Armature *self);
-static PyObject *Armature_setName(C_Armature *self, PyObject *args);
-//static PyObject *Armature_setBones(C_Armature *self, PyObject *args);
+static PyObject *Armature_getName(BPy_Armature *self);
+static PyObject *Armature_getBones(BPy_Armature *self);
+static PyObject *Armature_setName(BPy_Armature *self, PyObject *args);
+//static PyObject *Armature_setBones(BPy_Armature *self, PyObject *args);
/*****************************************************************************/
-/* Python C_Armature methods table: */
+/* Python BPy_Armature methods table: */
/*****************************************************************************/
-static PyMethodDef C_Armature_methods[] = {
+static PyMethodDef BPy_Armature_methods[] = {
/* name, method, flags, doc */
{"getName", (PyCFunction)Armature_getName, METH_NOARGS,
"() - return Armature name"},
@@ -127,12 +127,12 @@ static PyMethodDef C_Armature_methods[] = {
/*****************************************************************************/
/* Python TypeArmature callback function prototypes: */
/*****************************************************************************/
-static void ArmatureDeAlloc (C_Armature *armature);
-static PyObject *ArmatureGetAttr (C_Armature *armature, char *name);
-static int ArmatureSetAttr (C_Armature *armature, char *name, PyObject *v);
-static int ArmatureCmp (C_Armature *a1, C_Armature *a2);
-static PyObject *ArmatureRepr (C_Armature *armature);
-static int ArmaturePrint (C_Armature *armature, FILE *fp, int flags);
+static void Armature_dealloc (BPy_Armature *armature);
+static PyObject *Armature_getAttr (BPy_Armature *armature, char *name);
+static int Armature_setAttr (BPy_Armature *armature, char *name, PyObject *v);
+static int Armature_compare (BPy_Armature *a1, BPy_Armature *a2);
+static PyObject *Armature_repr (BPy_Armature *armature);
+static int Armature_print (BPy_Armature *armature, FILE *fp, int flags);
/*****************************************************************************/
/* Python TypeArmature structure definition: */
@@ -141,16 +141,16 @@ PyTypeObject Armature_Type =
{
PyObject_HEAD_INIT(NULL)
0, /* ob_size */
- "Armature", /* tp_name */
- sizeof (C_Armature), /* tp_basicsize */
+ "Blender Armature", /* tp_name */
+ sizeof (BPy_Armature), /* tp_basicsize */
0, /* tp_itemsize */
/* methods */
- (destructor)ArmatureDeAlloc, /* tp_dealloc */
- (printfunc)ArmaturePrint, /* tp_print */
- (getattrfunc)ArmatureGetAttr, /* tp_getattr */
- (setattrfunc)ArmatureSetAttr, /* tp_setattr */
- (cmpfunc)ArmatureCmp, /* tp_compare */
- (reprfunc)ArmatureRepr, /* tp_repr */
+ (destructor)Armature_dealloc, /* tp_dealloc */
+ (printfunc)Armature_print, /* tp_print */
+ (getattrfunc)Armature_getAttr, /* tp_getattr */
+ (setattrfunc)Armature_setAttr, /* tp_setattr */
+ (cmpfunc)Armature_compare, /* tp_compare */
+ (reprfunc)Armature_repr, /* tp_repr */
0, /* tp_as_number */
0, /* tp_as_sequence */
0, /* tp_as_mapping */
@@ -158,7 +158,7 @@ PyTypeObject Armature_Type =
0,0,0,0,0,0,
0, /* tp_doc */
0,0,0,0,0,0,
- C_Armature_methods, /* tp_methods */
+ BPy_Armature_methods, /* tp_methods */
0, /* tp_members */
};
diff --git a/source/blender/python/api2_2x/Blender.c b/source/blender/python/api2_2x/Blender.c
index c9ee4d62d7e..f450fe09956 100644
--- a/source/blender/python/api2_2x/Blender.c
+++ b/source/blender/python/api2_2x/Blender.c
@@ -42,34 +42,34 @@ PyObject *g_blenderdict;
/*****************************************************************************/
PyObject *Blender_Set (PyObject *self, PyObject *args)
{
- char * name;
- PyObject * arg;
- int framenum;
-
- if (!PyArg_ParseTuple(args, "sO", &name, &arg))
- {
- /* TODO: Do we need to generate a nice error message here? */
- return (NULL);
- }
-
- if (StringEqual (name, "curframe"))
- {
- if (!PyArg_Parse(arg, "i", &framenum))
- {
- /* TODO: Do we need to generate a nice error message here? */
- return (NULL);
- }
-
- G.scene->r.cfra = framenum;
-
- update_for_newframe();
- }
- else
- {
- return (PythonReturnErrorObject (PyExc_AttributeError,
- "bad request identifier"));
- }
- return ( PythonIncRef (Py_None) );
+ char * name;
+ PyObject * arg;
+ int framenum;
+
+ if (!PyArg_ParseTuple(args, "sO", &name, &arg))
+ {
+ /* TODO: Do we need to generate a nice error message here? */
+ return (NULL);
+ }
+
+ if (StringEqual (name, "curframe"))
+ {
+ if (!PyArg_Parse(arg, "i", &framenum))
+ {
+ /* TODO: Do we need to generate a nice error message here? */
+ return (NULL);
+ }
+
+ G.scene->r.cfra = framenum;
+
+ update_for_newframe();
+ }
+ else
+ {
+ return (PythonReturnErrorObject (PyExc_AttributeError,
+ "bad request identifier"));
+ }
+ return ( PythonIncRef (Py_None) );
}
/*****************************************************************************/
@@ -78,78 +78,76 @@ PyObject *Blender_Set (PyObject *self, PyObject *args)
/*****************************************************************************/
PyObject *Blender_Get (PyObject *self, PyObject *args)
{
- PyObject * object;
- PyObject * dict;
- char * str;
+ PyObject * object;
+ PyObject * dict;
+ char * str;
- printf ("In Blender_Get()\n");
-
- if (!PyArg_ParseTuple (args, "O", &object))
- {
- /* TODO: Do we need to generate a nice error message here? */
- return (NULL);
- }
-
- if (PyString_Check (object))
- {
- str = PyString_AsString (object);
-
- if (StringEqual (str, "curframe"))
- {
- return ( PyInt_FromLong (G.scene->r.cfra) );
- }
- if (StringEqual (str, "curtime"))
- {
- return ( PyFloat_FromDouble (frame_to_float (G.scene->r.cfra) ) );
- }
- if (StringEqual (str, "staframe"))
- {
- return ( PyInt_FromLong (G.scene->r.sfra) );
- }
- if (StringEqual (str, "endframe"))
- {
- return ( PyInt_FromLong (G.scene->r.efra) );
- }
- if (StringEqual (str, "filename"))
- {
- return ( PyString_FromString (G.sce) );
- }
- /* According to the old file (opy_blender.c), the following if
- statement is a quick hack and needs some clean up. */
- if (StringEqual (str, "vrmloptions"))
- {
- dict = PyDict_New ();
-
- PyDict_SetItemString (dict, "twoside",
- PyInt_FromLong (U.vrmlflag & USERDEF_VRML_TWOSIDED));
-
- PyDict_SetItemString (dict, "layers",
- PyInt_FromLong (U.vrmlflag & USERDEF_VRML_LAYERS));
-
- PyDict_SetItemString (dict, "autoscale",
- PyInt_FromLong (U.vrmlflag & USERDEF_VRML_AUTOSCALE));
-
- return (dict);
- } /* End 'quick hack' part. */
- if (StringEqual (str, "version"))
- {
- return ( PyInt_FromLong (G.version) );
- }
- /* TODO: Do we want to display a usefull message here that the
- requested data is unknown?
- else
- {
- return (PythonReturnErrorObject (..., "message") );
- }
- */
- }
- else
- {
- return (PythonReturnErrorObject (PyExc_AttributeError,
- "expected string argument"));
- }
-
- return (PythonReturnErrorObject (PyExc_AttributeError,
+ if (!PyArg_ParseTuple (args, "O", &object))
+ {
+ /* TODO: Do we need to generate a nice error message here? */
+ return (NULL);
+ }
+
+ if (PyString_Check (object))
+ {
+ str = PyString_AsString (object);
+
+ if (StringEqual (str, "curframe"))
+ {
+ return ( PyInt_FromLong (G.scene->r.cfra) );
+ }
+ if (StringEqual (str, "curtime"))
+ {
+ return ( PyFloat_FromDouble (frame_to_float (G.scene->r.cfra) ) );
+ }
+ if (StringEqual (str, "staframe"))
+ {
+ return ( PyInt_FromLong (G.scene->r.sfra) );
+ }
+ if (StringEqual (str, "endframe"))
+ {
+ return ( PyInt_FromLong (G.scene->r.efra) );
+ }
+ if (StringEqual (str, "filename"))
+ {
+ return ( PyString_FromString (G.sce) );
+ }
+ /* According to the old file (opy_blender.c), the following if
+ statement is a quick hack and needs some clean up. */
+ if (StringEqual (str, "vrmloptions"))
+ {
+ dict = PyDict_New ();
+
+ PyDict_SetItemString (dict, "twoside",
+ PyInt_FromLong (U.vrmlflag & USERDEF_VRML_TWOSIDED));
+
+ PyDict_SetItemString (dict, "layers",
+ PyInt_FromLong (U.vrmlflag & USERDEF_VRML_LAYERS));
+
+ PyDict_SetItemString (dict, "autoscale",
+ PyInt_FromLong (U.vrmlflag & USERDEF_VRML_AUTOSCALE));
+
+ return (dict);
+ } /* End 'quick hack' part. */
+ if (StringEqual (str, "version"))
+ {
+ return ( PyInt_FromLong (G.version) );
+ }
+ /* TODO: Do we want to display a usefull message here that the
+ requested data is unknown?
+ else
+ {
+ return (PythonReturnErrorObject (..., "message") );
+ }
+ */
+ }
+ else
+ {
+ return (PythonReturnErrorObject (PyExc_AttributeError,
+ "expected string argument"));
+ }
+
+ return (PythonReturnErrorObject (PyExc_AttributeError,
"bad request identifier"));
}
@@ -160,17 +158,15 @@ PyObject *Blender_Get (PyObject *self, PyObject *args)
PyObject *Blender_Redraw(PyObject *self, PyObject *args)
{
- int wintype = SPACE_VIEW3D;
-
- printf ("In Blender_Redraw()\n");
+ int wintype = SPACE_VIEW3D;
- if (!PyArg_ParseTuple (args, "|i", &wintype))
- {
- return EXPP_ReturnPyObjError (PyExc_TypeError,
+ if (!PyArg_ParseTuple (args, "|i", &wintype))
+ {
+ return EXPP_ReturnPyObjError (PyExc_TypeError,
"expected int argument (or nothing)");
- }
+ }
- return M_Window_Redraw(self, Py_BuildValue("(i)", wintype));
+ return M_Window_Redraw(self, Py_BuildValue("(i)", wintype));
}
/*****************************************************************************/
@@ -187,15 +183,13 @@ PyObject *Blender_Redraw(PyObject *self, PyObject *args)
/*****************************************************************************/
PyObject *Blender_ReleaseGlobalDict(PyObject *self, PyObject *args)
{
- printf ("In Blender_ReleaseGlobalDict()\n");
-
- if (!PyArg_ParseTuple (args, "|i", &EXPP_releaseGlobalDict))
- {
- return EXPP_ReturnPyObjError (PyExc_TypeError,
+ if (!PyArg_ParseTuple (args, "|i", &EXPP_releaseGlobalDict))
+ {
+ return EXPP_ReturnPyObjError (PyExc_TypeError,
"expected int argument (or nothing)");
- }
+ }
- return Py_BuildValue("i", (EXPP_releaseGlobalDict?1:0));
+ return Py_BuildValue("i", (EXPP_releaseGlobalDict?1:0));
}
/*****************************************************************************/
@@ -203,33 +197,33 @@ PyObject *Blender_ReleaseGlobalDict(PyObject *self, PyObject *args)
/*****************************************************************************/
void M_Blender_Init (void)
{
- PyObject * module;
- PyObject * dict;
-
- printf ("In M_Blender_Init()\n");
- g_blenderdict = NULL;
-
- /* TODO: create a docstring for the Blender module */
- module = Py_InitModule3("Blender", Blender_methods, NULL);
-
- dict = PyModule_GetDict (module);
- g_blenderdict = dict;
- PyDict_SetItemString (dict, "Scene", Scene_Init());
- PyDict_SetItemString (dict, "Object", M_Object_Init());
- PyDict_SetItemString (dict, "Types", Types_Init());
- PyDict_SetItemString (dict, "NMesh", NMesh_Init());
- PyDict_SetItemString (dict, "Material", Material_Init());
- PyDict_SetItemString (dict, "Camera", Camera_Init());
- PyDict_SetItemString (dict, "Lamp", Lamp_Init());
- PyDict_SetItemString (dict, "Curve", M_Curve_Init());
- PyDict_SetItemString (dict, "Armature", M_Armature_Init());
- PyDict_SetItemString (dict, "Ipo", M_Ipo_Init());
- PyDict_SetItemString (dict, "Metaball", M_Metaball_Init());
- PyDict_SetItemString (dict, "Image", Image_Init());
- PyDict_SetItemString (dict, "Window", Window_Init());
- PyDict_SetItemString (dict, "Draw", Draw_Init());
- PyDict_SetItemString (dict, "BGL", BGL_Init());
- PyDict_SetItemString (dict, "Effect", M_Effect_Init());
- PyDict_SetItemString (dict, "Text", Text_Init());
- PyDict_SetItemString (dict, "World", M_World_Init());
+ PyObject * module;
+ PyObject * dict;
+
+ g_blenderdict = NULL;
+
+ /* TODO: create a docstring for the Blender module */
+ module = Py_InitModule3("Blender", Blender_methods, NULL);
+
+ dict = PyModule_GetDict (module);
+ g_blenderdict = dict;
+ PyDict_SetItemString (dict, "sys", sys_Init());
+ PyDict_SetItemString (dict, "Scene", Scene_Init());
+ PyDict_SetItemString (dict, "Object", Object_Init());
+ PyDict_SetItemString (dict, "Types", Types_Init());
+ PyDict_SetItemString (dict, "NMesh", NMesh_Init());
+ PyDict_SetItemString (dict, "Material", Material_Init());
+ PyDict_SetItemString (dict, "Camera", Camera_Init());
+ PyDict_SetItemString (dict, "Lamp", Lamp_Init());
+ PyDict_SetItemString (dict, "Curve", Curve_Init());
+ PyDict_SetItemString (dict, "Armature", Armature_Init());
+ PyDict_SetItemString (dict, "Ipo", Ipo_Init());
+ PyDict_SetItemString (dict, "Metaball", Metaball_Init());
+ PyDict_SetItemString (dict, "Image", Image_Init());
+ PyDict_SetItemString (dict, "Window", Window_Init());
+ PyDict_SetItemString (dict, "Draw", Draw_Init());
+ PyDict_SetItemString (dict, "BGL", BGL_Init());
+ PyDict_SetItemString (dict, "Effect", Effect_Init());
+ PyDict_SetItemString (dict, "Text", Text_Init());
+ PyDict_SetItemString (dict, "World", World_Init());
}
diff --git a/source/blender/python/api2_2x/Bone.c b/source/blender/python/api2_2x/Bone.c
index 80f29aaf1c0..56390b99386 100644
--- a/source/blender/python/api2_2x/Bone.c
+++ b/source/blender/python/api2_2x/Bone.c
@@ -73,32 +73,32 @@ struct PyMethodDef M_Bone_methods[] = {
};
/*****************************************************************************/
-/* Python C_Bone methods declarations: */
-/*****************************************************************************/
-static PyObject *Bone_getName(C_Bone *self);
-static PyObject *Bone_getRoll(C_Bone *self);
-static PyObject *Bone_getHead(C_Bone *self);
-static PyObject *Bone_getTail(C_Bone *self);
-static PyObject *Bone_getLoc(C_Bone *self);
-static PyObject *Bone_getSize(C_Bone *self);
-static PyObject *Bone_getQuat(C_Bone *self);
-static PyObject *Bone_getParent(C_Bone *self);
-static PyObject *Bone_hasParent(C_Bone *self);
-static PyObject *Bone_getChildren(C_Bone *self);
-static PyObject *Bone_setName(C_Bone *self, PyObject *args);
-static PyObject *Bone_setRoll(C_Bone *self, PyObject *args);
-static PyObject *Bone_setHead(C_Bone *self, PyObject *args);
-static PyObject *Bone_setTail(C_Bone *self, PyObject *args);
-static PyObject *Bone_setLoc(C_Bone *self, PyObject *args);
-static PyObject *Bone_setSize(C_Bone *self, PyObject *args);
-static PyObject *Bone_setQuat(C_Bone *self, PyObject *args);
-//static PyObject *Bone_setParent(C_Bone *self, PyObject *args);
-//static PyObject *Bone_setChildren(C_Bone *self, PyObject *args);
-
-/*****************************************************************************/
-/* Python C_Bone methods table: */
-/*****************************************************************************/
-static PyMethodDef C_Bone_methods[] = {
+/* Python BPy_Bone methods declarations: */
+/*****************************************************************************/
+static PyObject *Bone_getName(BPy_Bone *self);
+static PyObject *Bone_getRoll(BPy_Bone *self);
+static PyObject *Bone_getHead(BPy_Bone *self);
+static PyObject *Bone_getTail(BPy_Bone *self);
+static PyObject *Bone_getLoc(BPy_Bone *self);
+static PyObject *Bone_getSize(BPy_Bone *self);
+static PyObject *Bone_getQuat(BPy_Bone *self);
+static PyObject *Bone_getParent(BPy_Bone *self);
+static PyObject *Bone_hasParent(BPy_Bone *self);
+static PyObject *Bone_getChildren(BPy_Bone *self);
+static PyObject *Bone_setName(BPy_Bone *self, PyObject *args);
+static PyObject *Bone_setRoll(BPy_Bone *self, PyObject *args);
+static PyObject *Bone_setHead(BPy_Bone *self, PyObject *args);
+static PyObject *Bone_setTail(BPy_Bone *self, PyObject *args);
+static PyObject *Bone_setLoc(BPy_Bone *self, PyObject *args);
+static PyObject *Bone_setSize(BPy_Bone *self, PyObject *args);
+static PyObject *Bone_setQuat(BPy_Bone *self, PyObject *args);
+//static PyObject *Bone_setParent(BPy_Bone *self, PyObject *args);
+//static PyObject *Bone_setChildren(BPy_Bone *self, PyObject *args);
+
+/*****************************************************************************/
+/* Python BPy_Bone methods table: */
+/*****************************************************************************/
+static PyMethodDef BPy_Bone_methods[] = {
/* name, method, flags, doc */
{"getName", (PyCFunction)Bone_getName, METH_NOARGS, "() - return Bone name"},
{"getRoll", (PyCFunction)Bone_getRoll, METH_NOARGS, "() - return Bone roll"},
@@ -136,12 +136,12 @@ static PyMethodDef C_Bone_methods[] = {
/*****************************************************************************/
/* Python TypeBone callback function prototypes: */
/*****************************************************************************/
-static void BoneDeAlloc (C_Bone *bone);
-static PyObject *BoneGetAttr (C_Bone *bone, char *name);
-static int BoneSetAttr (C_Bone *bone, char *name, PyObject *v);
-static int BoneCmp (C_Bone *a1, C_Bone *a2);
-static PyObject *BoneRepr (C_Bone *bone);
-static int BonePrint (C_Bone *bone, FILE *fp, int flags);
+static void Bone_dealloc (BPy_Bone *bone);
+static PyObject *Bone_getAttr (BPy_Bone *bone, char *name);
+static int Bone_setAttr (BPy_Bone *bone, char *name, PyObject *v);
+static int Bone_compare (BPy_Bone *a1, BPy_Bone *a2);
+static PyObject *Bone_repr (BPy_Bone *bone);
+static int Bone_print (BPy_Bone *bone, FILE *fp, int flags);
/*****************************************************************************/
/* Python TypeBone structure definition: */
@@ -149,26 +149,26 @@ static int BonePrint (C_Bone *bone, FILE *fp, int flags);
PyTypeObject Bone_Type =
{
PyObject_HEAD_INIT(NULL)
- 0, /* ob_size */
- "Bone", /* tp_name */
- sizeof (C_Bone), /* tp_basicsize */
- 0, /* tp_itemsize */
+ 0, /* ob_size */
+ "Blender Bone", /* tp_name */
+ sizeof (BPy_Bone), /* tp_basicsize */
+ 0, /* tp_itemsize */
/* methods */
- (destructor)BoneDeAlloc, /* tp_dealloc */
- (printfunc)BonePrint, /* tp_print */
- (getattrfunc)BoneGetAttr, /* tp_getattr */
- (setattrfunc)BoneSetAttr, /* tp_setattr */
- (cmpfunc)BoneCmp, /* tp_compare */
- (reprfunc)BoneRepr, /* tp_repr */
- 0, /* tp_as_number */
- 0, /* tp_as_sequence */
- 0, /* tp_as_mapping */
- 0, /* tp_as_hash */
+ (destructor)Bone_dealloc, /* tp_dealloc */
+ (printfunc)Bone_print, /* tp_print */
+ (getattrfunc)Bone_getAttr, /* tp_getattr */
+ (setattrfunc)Bone_setAttr, /* tp_setattr */
+ (cmpfunc)Bone_compare, /* tp_compare */
+ (reprfunc)Bone_repr, /* tp_repr */
+ 0, /* tp_as_number */
+ 0, /* tp_as_sequence */
+ 0, /* tp_as_mapping */
+ 0, /* tp_as_hash */
0,0,0,0,0,0,
- 0, /* tp_doc */
+ 0, /* tp_doc */
0,0,0,0,0,0,
- C_Bone_methods, /* tp_methods */
- 0, /* tp_members */
+ BPy_Bone_methods, /* tp_methods */
+ 0, /* tp_members */
};
@@ -181,11 +181,9 @@ PyTypeObject Bone_Type =
static PyObject *M_Bone_New(PyObject *self, PyObject *args, PyObject *keywords)
{
char *name_str = "BoneName";
- C_Bone *py_bone = NULL; /* for Bone Data object wrapper in Python */
+ BPy_Bone *py_bone = NULL; /* for Bone Data object wrapper in Python */
Bone *bl_bone = NULL; /* for actual Bone Data we create in Blender */
- printf ("In Bone_New()\n");
-
if (!PyArg_ParseTuple(args, "|s", &name_str))
return (EXPP_ReturnPyObjError (PyExc_AttributeError,
"expected string or empty argument"));
@@ -195,7 +193,7 @@ static PyObject *M_Bone_New(PyObject *self, PyObject *args, PyObject *keywords)
strncpy(bl_bone->name,name_str,sizeof(bl_bone->name));
if (bl_bone) /* now create the wrapper obj in Python */
- py_bone = (C_Bone *)PyObject_NEW(C_Bone, &Bone_Type);
+ py_bone = (BPy_Bone *)PyObject_NEW(BPy_Bone, &Bone_Type);
else
return (EXPP_ReturnPyObjError (PyExc_RuntimeError,
"couldn't create Bone Data in Blender"));
@@ -218,16 +216,14 @@ static PyObject *M_Bone_New(PyObject *self, PyObject *args, PyObject *keywords)
/*****************************************************************************/
-/* Function: M_Bone_Init */
+/* Function: Bone_Init */
/*****************************************************************************/
-PyObject *M_Bone_Init (void)
+PyObject *Bone_Init (void)
{
PyObject *submodule;
Bone_Type.ob_type = &PyType_Type;
- printf ("In M_Bone_Init()\n");
-
submodule = Py_InitModule3("Blender.Armature.Bone",
M_Bone_methods, M_Bone_doc);
@@ -235,9 +231,9 @@ PyObject *M_Bone_Init (void)
}
/*****************************************************************************/
-/* Python C_Bone methods: */
+/* Python BPy_Bone methods: */
/*****************************************************************************/
-static PyObject *Bone_getName(C_Bone *self)
+static PyObject *Bone_getName(BPy_Bone *self)
{
PyObject *attr=NULL;
@@ -253,7 +249,7 @@ static PyObject *Bone_getName(C_Bone *self)
}
-static PyObject *Bone_getRoll(C_Bone *self)
+static PyObject *Bone_getRoll(BPy_Bone *self)
{
PyObject *attr=NULL;
@@ -269,7 +265,7 @@ static PyObject *Bone_getRoll(C_Bone *self)
}
-static PyObject *Bone_getHead(C_Bone *self)
+static PyObject *Bone_getHead(BPy_Bone *self)
{
PyObject *attr=NULL;
@@ -286,7 +282,7 @@ static PyObject *Bone_getHead(C_Bone *self)
}
-static PyObject *Bone_getTail(C_Bone *self)
+static PyObject *Bone_getTail(BPy_Bone *self)
{
PyObject *attr=NULL;
@@ -303,7 +299,7 @@ static PyObject *Bone_getTail(C_Bone *self)
}
-static PyObject *Bone_getLoc (C_Bone *self)
+static PyObject *Bone_getLoc (BPy_Bone *self)
{
PyObject *attr=NULL;
@@ -320,7 +316,7 @@ static PyObject *Bone_getLoc (C_Bone *self)
}
-static PyObject *Bone_getSize(C_Bone *self)
+static PyObject *Bone_getSize(BPy_Bone *self)
{
PyObject *attr=NULL;
@@ -337,7 +333,7 @@ static PyObject *Bone_getSize(C_Bone *self)
}
-static PyObject *Bone_getQuat(C_Bone *self)
+static PyObject *Bone_getQuat(BPy_Bone *self)
{
PyObject *attr=NULL;
@@ -354,14 +350,14 @@ static PyObject *Bone_getQuat(C_Bone *self)
}
-static PyObject *Bone_hasParent(C_Bone *self)
+static PyObject *Bone_hasParent(BPy_Bone *self)
{
if (!self->bone) (EXPP_ReturnPyObjError (PyExc_RuntimeError,
"couldn't get attribute from a NULL bone"));
/*
- return M_BoneCreatePyObject(self->bone->parent);
+ return Bone_CreatePyObject(self->bone->parent);
*/
if (self->bone->parent)
{
@@ -377,13 +373,13 @@ static PyObject *Bone_hasParent(C_Bone *self)
}
-static PyObject *Bone_getParent(C_Bone *self)
+static PyObject *Bone_getParent(BPy_Bone *self)
{
if (!self->bone) (EXPP_ReturnPyObjError (PyExc_RuntimeError,
"couldn't get attribute from a NULL bone"));
- if (self->bone->parent) return M_BoneCreatePyObject(self->bone->parent);
+ if (self->bone->parent) return Bone_CreatePyObject(self->bone->parent);
else /*(EXPP_ReturnPyObjError (PyExc_RuntimeError,
"couldn't get parent bone, because bone hasn't got a parent."));*/
{
@@ -394,7 +390,7 @@ static PyObject *Bone_getParent(C_Bone *self)
}
-static PyObject *Bone_getChildren(C_Bone *self)
+static PyObject *Bone_getChildren(BPy_Bone *self)
{
int totbones = 0;
Bone* current = NULL;
@@ -413,7 +409,7 @@ static PyObject *Bone_getChildren(C_Bone *self)
listbones = PyList_New(totbones);
for (i=0; i<totbones; i++) {
assert(current);
- PyList_SetItem(listbones, i, M_BoneCreatePyObject(current));
+ PyList_SetItem(listbones, i, Bone_CreatePyObject(current));
current = current->next;
}
@@ -421,7 +417,7 @@ static PyObject *Bone_getChildren(C_Bone *self)
}
-static PyObject *Bone_setName(C_Bone *self, PyObject *args)
+static PyObject *Bone_setName(BPy_Bone *self, PyObject *args)
{
char *name;
@@ -439,7 +435,7 @@ static PyObject *Bone_setName(C_Bone *self, PyObject *args)
}
-PyObject *Bone_setRoll(C_Bone *self, PyObject *args)
+PyObject *Bone_setRoll(BPy_Bone *self, PyObject *args)
{
float roll;
@@ -457,7 +453,7 @@ PyObject *Bone_setRoll(C_Bone *self, PyObject *args)
}
-static PyObject *Bone_setHead(C_Bone *self, PyObject *args)
+static PyObject *Bone_setHead(BPy_Bone *self, PyObject *args)
{
float f1,f2,f3;
@@ -477,7 +473,7 @@ static PyObject *Bone_setHead(C_Bone *self, PyObject *args)
}
-static PyObject *Bone_setTail(C_Bone *self, PyObject *args)
+static PyObject *Bone_setTail(BPy_Bone *self, PyObject *args)
{
float f1,f2,f3;
@@ -497,7 +493,7 @@ static PyObject *Bone_setTail(C_Bone *self, PyObject *args)
}
-static PyObject *Bone_setLoc(C_Bone *self, PyObject *args)
+static PyObject *Bone_setLoc(BPy_Bone *self, PyObject *args)
{
float f1,f2,f3;
@@ -517,7 +513,7 @@ static PyObject *Bone_setLoc(C_Bone *self, PyObject *args)
}
-static PyObject *Bone_setSize(C_Bone *self, PyObject *args)
+static PyObject *Bone_setSize(BPy_Bone *self, PyObject *args)
{
float f1,f2,f3;
@@ -537,7 +533,7 @@ static PyObject *Bone_setSize(C_Bone *self, PyObject *args)
}
-static PyObject *Bone_setQuat(C_Bone *self, PyObject *args)
+static PyObject *Bone_setQuat(BPy_Bone *self, PyObject *args)
{
float f1,f2,f3,f4;
@@ -559,22 +555,22 @@ static PyObject *Bone_setQuat(C_Bone *self, PyObject *args)
/*****************************************************************************/
-/* Function: BoneDeAlloc */
-/* Description: This is a callback function for the C_Bone type. It is */
+/* Function: Bone_dealloc */
+/* Description: This is a callback function for the BPy_Bone type. It is */
/* the destructor function. */
/*****************************************************************************/
-static void BoneDeAlloc (C_Bone *self)
+static void Bone_dealloc (BPy_Bone *self)
{
PyObject_DEL (self);
}
/*****************************************************************************/
-/* Function: BoneGetAttr */
-/* Description: This is a callback function for the C_Bone type. It is */
-/* the function that accesses C_Bone member variables and */
+/* Function: Bone_getAttr */
+/* Description: This is a callback function for the BPy_Bone type. It is */
+/* the function that accesses BPy_Bone member variables and */
/* methods. */
/*****************************************************************************/
-static PyObject* BoneGetAttr (C_Bone *self, char *name)
+static PyObject* Bone_getAttr (BPy_Bone *self, char *name)
{
PyObject *attr = Py_None;
@@ -611,16 +607,16 @@ static PyObject* BoneGetAttr (C_Bone *self, char *name)
if (attr != Py_None) return attr; /* member attribute found, return it */
/* not an attribute, search the methods table */
- return Py_FindMethod(C_Bone_methods, (PyObject *)self, name);
+ return Py_FindMethod(BPy_Bone_methods, (PyObject *)self, name);
}
/*****************************************************************************/
-/* Function: BoneSetAttr */
-/* Description: This is a callback function for the C_Bone type. It is the */
+/* Function: Bone_setAttr */
+/* Description: This is a callback function for the BPy_Bone type. It is the */
/* function that changes Bone Data members values. If this */
/* data is linked to a Blender Bone, it also gets updated. */
/*****************************************************************************/
-static int BoneSetAttr (C_Bone *self, char *name, PyObject *value)
+static int Bone_setAttr (BPy_Bone *self, char *name, PyObject *value)
{
PyObject *valtuple;
PyObject *error = NULL;
@@ -650,11 +646,11 @@ static int BoneSetAttr (C_Bone *self, char *name, PyObject *value)
}
/*****************************************************************************/
-/* Function: BonePrint */
-/* Description: This is a callback function for the C_Bone type. It */
+/* Function: Bone_print */
+/* Description: This is a callback function for the BPy_Bone type. It */
/* builds a meaninful string to 'print' bone objects. */
/*****************************************************************************/
-static int BonePrint(C_Bone *self, FILE *fp, int flags)
+static int Bone_print(BPy_Bone *self, FILE *fp, int flags)
{
if (self->bone) fprintf(fp, "[Bone \"%s\"]", self->bone->name);
else fprintf(fp, "[Bone NULL]");
@@ -662,23 +658,23 @@ static int BonePrint(C_Bone *self, FILE *fp, int flags)
}
/*****************************************************************************/
-/* Function: BoneRepr */
-/* Description: This is a callback function for the C_Bone type. It */
+/* Function: Bone_repr */
+/* Description: This is a callback function for the BPy_Bone type. It */
/* builds a meaninful string to represent bone objects. */
/*****************************************************************************/
-static PyObject *BoneRepr (C_Bone *self)
+static PyObject *Bone_repr (BPy_Bone *self)
{
if (self->bone) return PyString_FromString(self->bone->name);
else return PyString_FromString("NULL");
}
/**************************************************************************/
-/* Function: BoneCmp */
-/* Description: This is a callback function for the C_Bone type. It */
+/* Function: Bone_compare */
+/* Description: This is a callback function for the BPy_Bone type. It */
/* compares the two bones: translate comparison to the */
/* C pointers. */
/**************************************************************************/
-static int BoneCmp (C_Bone *a, C_Bone *b)
+static int Bone_compare (BPy_Bone *a, BPy_Bone *b)
{
Bone *pa = a->bone, *pb = b->bone;
return (pa == pb) ? 0:-1;
@@ -688,17 +684,15 @@ static int BoneCmp (C_Bone *a, C_Bone *b)
/*****************************************************************************/
-/* Function: M_BoneCreatePyObject */
+/* Function: Bone_CreatePyObject */
/* Description: This function will create a new BlenBone from an existing */
/* Bone structure. */
/*****************************************************************************/
-PyObject* M_BoneCreatePyObject (struct Bone *obj)
+PyObject* Bone_CreatePyObject (struct Bone *obj)
{
- C_Bone * blen_bone;
-
- printf (" In M_BoneCreatePyObject\n");
+ BPy_Bone * blen_bone;
- blen_bone = (C_Bone*)PyObject_NEW (C_Bone, &Bone_Type);
+ blen_bone = (BPy_Bone*)PyObject_NEW (BPy_Bone, &Bone_Type);
if (blen_bone == NULL)
{
@@ -709,24 +703,24 @@ PyObject* M_BoneCreatePyObject (struct Bone *obj)
}
/*****************************************************************************/
-/* Function: M_BoneCheckPyObject */
+/* Function: Bone_CheckPyObject */
/* Description: This function returns true when the given PyObject is of the */
/* type Bone. Otherwise it will return false. */
/*****************************************************************************/
-int M_BoneCheckPyObject (PyObject *py_obj)
+int Bone_CheckPyObject (PyObject *py_obj)
{
return (py_obj->ob_type == &Bone_Type);
}
/*****************************************************************************/
-/* Function: M_BoneFromPyObject */
+/* Function: Bone_FromPyObject */
/* Description: This function returns the Blender bone from the given */
/* PyObject. */
/*****************************************************************************/
-struct Bone* M_BoneFromPyObject (PyObject *py_obj)
+struct Bone* Bone_FromPyObject (PyObject *py_obj)
{
- C_Bone * blen_obj;
+ BPy_Bone * blen_obj;
- blen_obj = (C_Bone*)py_obj;
+ blen_obj = (BPy_Bone*)py_obj;
return (blen_obj->bone);
}
diff --git a/source/blender/python/api2_2x/Bone.h b/source/blender/python/api2_2x/Bone.h
index ec71a8f33df..762733b47fc 100644
--- a/source/blender/python/api2_2x/Bone.h
+++ b/source/blender/python/api2_2x/Bone.h
@@ -37,18 +37,18 @@
#include <DNA_armature_types.h>
/** Bone module initialization function. */
-PyObject *M_Bone_Init (void);
+PyObject *Bone_Init (void);
-/** Python C_Bone structure definition. */
+/** Python BPy_Bone structure definition. */
typedef struct {
PyObject_HEAD
Bone *bone;
-} C_Bone;
+} BPy_Bone;
-PyObject* M_BoneCreatePyObject (struct Bone *obj);
-int M_BoneCheckPyObject (PyObject *py_obj);
-Bone* M_BoneFromPyObject (PyObject *py_obj);
+PyObject* Bone_CreatePyObject (struct Bone *obj);
+int Bone_CheckPyObject (PyObject *py_obj);
+Bone* Bone_FromPyObject (PyObject *py_obj);
#endif
diff --git a/source/blender/python/api2_2x/Build.c b/source/blender/python/api2_2x/Build.c
index 9224aca763c..5dc275e5451 100644
--- a/source/blender/python/api2_2x/Build.c
+++ b/source/blender/python/api2_2x/Build.c
@@ -152,12 +152,12 @@ struct PyMethodDef M_Build_methods[] = {
};
/*****************************************************************************/
-/* Function: M_Build_Init */
+/* Function: Build_Init */
/*****************************************************************************/
-PyObject *M_Build_Init (void)
+PyObject *Build_Init (void)
{
PyObject *submodule;
- printf ("In M_Build_Init()\n");
+
Build_Type.ob_type = &PyType_Type;
submodule = Py_InitModule3("Blender.Build",M_Build_methods,M_Build_doc );
return (submodule);
diff --git a/source/blender/python/api2_2x/Camera.c b/source/blender/python/api2_2x/Camera.c
index c1b3fc05c66..24dc7b5df42 100644
--- a/source/blender/python/api2_2x/Camera.c
+++ b/source/blender/python/api2_2x/Camera.c
@@ -49,12 +49,12 @@ PyTypeObject Camera_Type =
sizeof (BPy_Camera), /* tp_basicsize */
0, /* tp_itemsize */
/* methods */
- (destructor)Camera_DeAlloc, /* tp_dealloc */
- (printfunc)Camera_Print, /* tp_print */
- (getattrfunc)Camera_GetAttr, /* tp_getattr */
- (setattrfunc)Camera_SetAttr, /* tp_setattr */
- (cmpfunc)Camera_Compare, /* tp_compare */
- (reprfunc)Camera_Repr, /* tp_repr */
+ (destructor)Camera_dealloc, /* tp_dealloc */
+ (printfunc)Camera_print, /* tp_print */
+ (getattrfunc)Camera_getAttr, /* tp_getattr */
+ (setattrfunc)Camera_setAttr, /* tp_setattr */
+ (cmpfunc)Camera_compare, /* tp_compare */
+ (reprfunc)Camera_repr, /* tp_repr */
0, /* tp_as_number */
0, /* tp_as_sequence */
0, /* tp_as_mapping */
@@ -183,8 +183,6 @@ PyObject *Camera_Init (void)
{
PyObject *submodule;
- printf ("In M_Camera_Init()\n");
-
Camera_Type.ob_type = &PyType_Type;
submodule = Py_InitModule3("Blender.Camera",
@@ -470,12 +468,12 @@ static PyObject *Camera_setDrawSize(BPy_Camera *self, PyObject *args)
return Py_None;
}
-static void Camera_DeAlloc (BPy_Camera *self)
+static void Camera_dealloc (BPy_Camera *self)
{
PyObject_DEL (self);
}
-static PyObject *Camera_GetAttr (BPy_Camera *self, char *name)
+static PyObject *Camera_getAttr (BPy_Camera *self, char *name)
{
PyObject *attr = Py_None;
@@ -520,7 +518,7 @@ static PyObject *Camera_GetAttr (BPy_Camera *self, char *name)
return Py_FindMethod(BPy_Camera_methods, (PyObject *)self, name);
}
-static int Camera_SetAttr (BPy_Camera *self, char *name, PyObject *value)
+static int Camera_setAttr (BPy_Camera *self, char *name, PyObject *value)
{
PyObject *valtuple;
PyObject *error = NULL;
@@ -579,19 +577,19 @@ static int Camera_SetAttr (BPy_Camera *self, char *name, PyObject *value)
return 0; /* normal exit */
}
-static int Camera_Compare (BPy_Camera *a, BPy_Camera *b)
+static int Camera_compare (BPy_Camera *a, BPy_Camera *b)
{
Camera *pa = a->camera, *pb = b->camera;
return (pa == pb) ? 0:-1;
}
-static int Camera_Print(BPy_Camera *self, FILE *fp, int flags)
+static int Camera_print(BPy_Camera *self, FILE *fp, int flags)
{
fprintf(fp, "[Camera \"%s\"]", self->camera->id.name+2);
return 0;
}
-static PyObject *Camera_Repr (BPy_Camera *self)
+static PyObject *Camera_repr (BPy_Camera *self)
{
return PyString_FromString(self->camera->id.name+2);
}
diff --git a/source/blender/python/api2_2x/Camera.h b/source/blender/python/api2_2x/Camera.h
index d2257f6d28b..ead55e01277 100644
--- a/source/blender/python/api2_2x/Camera.h
+++ b/source/blender/python/api2_2x/Camera.h
@@ -173,12 +173,12 @@ static PyMethodDef BPy_Camera_methods[] = {
/*****************************************************************************/
/* Python Camera_Type callback function prototypes: */
/*****************************************************************************/
-static void Camera_DeAlloc (BPy_Camera *self);
-static int Camera_Print (BPy_Camera *self, FILE *fp, int flags);
-static int Camera_SetAttr (BPy_Camera *self, char *name, PyObject *v);
-static int Camera_Compare (BPy_Camera *a, BPy_Camera *b);
-static PyObject *Camera_GetAttr (BPy_Camera *self, char *name);
-static PyObject *Camera_Repr (BPy_Camera *self);
+static void Camera_dealloc (BPy_Camera *self);
+static int Camera_print (BPy_Camera *self, FILE *fp, int flags);
+static int Camera_setAttr (BPy_Camera *self, char *name, PyObject *v);
+static int Camera_compare (BPy_Camera *a, BPy_Camera *b);
+static PyObject *Camera_getAttr (BPy_Camera *self, char *name);
+static PyObject *Camera_repr (BPy_Camera *self);
#endif /* EXPP_CAMERA_H */
diff --git a/source/blender/python/api2_2x/Curve.c b/source/blender/python/api2_2x/Curve.c
index 35aec11d03a..9f1b37a648b 100644
--- a/source/blender/python/api2_2x/Curve.c
+++ b/source/blender/python/api2_2x/Curve.c
@@ -43,7 +43,6 @@ static PyObject *M_Curve_New(PyObject *self, PyObject *args)
BPy_Curve *pycurve; /* for Curve Data object wrapper in Python */
Curve *blcurve = 0; /* for actual Curve Data we create in Blender */
- printf ("In Curve_New()\n");
if (!PyArg_ParseTuple(args, "|s", &name))
return (EXPP_ReturnPyObjError (PyExc_AttributeError,
"expected string argument or no argument"));
@@ -81,7 +80,6 @@ static PyObject *M_Curve_Get(PyObject *self, PyObject *args)
Curve *curv_iter;
BPy_Curve *wanted_curv;
- printf ("In Curve_Get()\n");
if (!PyArg_ParseTuple(args, "|s", &name))//expects nothing or a string
return (EXPP_ReturnPyObjError (PyExc_AttributeError,
"expected string argument"));
@@ -133,12 +131,11 @@ BPy_Curve *found_cur=(BPy_Curve*)PyObject_NEW(BPy_Curve,&Curve_Type);
}
/*****************************************************************************/
-/* Function: M_Curve_Init */
+/* Function: Curve_Init */
/*****************************************************************************/
-PyObject *M_Curve_Init (void)
+PyObject *Curve_Init (void)
{
PyObject *submodule;
- printf ("In M_Curve_Init()\n");
Curve_Type.ob_type = &PyType_Type;
@@ -677,8 +674,6 @@ PyObject* CurveCreatePyObject (struct Curve *curve)
{
BPy_Curve * blen_object;
- printf ("In CurveCreatePyObject\n");
-
blen_object = (BPy_Curve*)PyObject_NEW (BPy_Curve, &Curve_Type);
if (blen_object == NULL)
diff --git a/source/blender/python/api2_2x/Draw.c b/source/blender/python/api2_2x/Draw.c
index df6f5fbf432..8febbed4db4 100644
--- a/source/blender/python/api2_2x/Draw.c
+++ b/source/blender/python/api2_2x/Draw.c
@@ -283,7 +283,6 @@ static PyObject *Method_Draw (PyObject *self, PyObject *args)
{
/*@ If forced drawing is disable queue a redraw event instead */
if (EXPP_disable_force_draw) {
- printf ("\nEXPP_disable_force_draw\n");
scrarea_queue_winredraw(curarea);
return EXPP_incr_ret (Py_None);
}
@@ -656,8 +655,6 @@ PyObject *Draw_Init (void)
{
PyObject *submodule, *dict;
- printf("In M_Draw_Init()\n");
-
Button_Type.ob_type = &PyType_Type;
submodule = Py_InitModule3("Blender.Draw", Draw_methods, Draw_doc);
diff --git a/source/blender/python/api2_2x/EXPP_interface.c b/source/blender/python/api2_2x/EXPP_interface.c
index d987af6c004..d386bffcd48 100644
--- a/source/blender/python/api2_2x/EXPP_interface.c
+++ b/source/blender/python/api2_2x/EXPP_interface.c
@@ -49,7 +49,7 @@
void initBlenderApi2_2x (void)
{
- printf ("initBlenderApi2_2x\n");
+ //printf ("initBlenderApi2_2x\n");
g_blenderdict = NULL;
M_Blender_Init ();
}
@@ -73,7 +73,7 @@ ScriptLink * setScriptLinks(ID *id, short event)
int obj_id;
obj_id = MAKE_ID2 (id->name[0], id->name[1]);
- printf ("In setScriptLinks (id=%s, event=%d)\n",id->name, event);
+ //printf ("In setScriptLinks (id=%s, event=%d)\n",id->name, event);
switch (obj_id)
{
@@ -83,7 +83,7 @@ ScriptLink * setScriptLinks(ID *id, short event)
{
return NULL;
}
- link = M_ObjectCreatePyObject (object);
+ link = Object_CreatePyObject (object);
scriptlink = &(object->scriptlink);
break;
case ID_LA:
diff --git a/source/blender/python/api2_2x/Effect.c b/source/blender/python/api2_2x/Effect.c
index 60ee4af814a..6e881d56e21 100644
--- a/source/blender/python/api2_2x/Effect.c
+++ b/source/blender/python/api2_2x/Effect.c
@@ -148,24 +148,25 @@ PyObject * effectlist = PyList_New (0);
}
/*****************************************************************************/
-/* Function: M_Effect_Init */
+/* Function: Effect_Init */
/*****************************************************************************/
-PyObject *M_Build_Init (void);
-PyObject *M_Wave_Init (void);
-PyObject *M_Particle_Init (void);
+PyObject *Build_Init (void);
+PyObject *Wave_Init (void);
+PyObject *Particle_Init (void);
-PyObject *M_Effect_Init (void)
+PyObject *Effect_Init (void)
{
PyObject *submodule, *dict;
- printf ("In M_Effect_Init()\n");
+
Effect_Type.ob_type = &PyType_Type;
- submodule = Py_InitModule3("Blender.Effect",M_Effect_methods, 0 );
+
+ submodule = Py_InitModule3("Blender.Effect",M_Effect_methods, 0 );
dict = PyModule_GetDict (submodule);
- PyDict_SetItemString (dict, "Wave", M_Wave_Init());
- PyDict_SetItemString (dict, "Build", M_Build_Init());
- PyDict_SetItemString (dict, "Particle", M_Particle_Init());
+ PyDict_SetItemString (dict, "Wave", Wave_Init());
+ PyDict_SetItemString (dict, "Build", Build_Init());
+ PyDict_SetItemString (dict, "Particle", Particle_Init());
return (submodule);
}
@@ -297,8 +298,6 @@ PyObject* EffectCreatePyObject (struct Effect *effect)
{
BPy_Effect * blen_object;
- printf ("In EffectCreatePyObject\n");
-
blen_object = (BPy_Effect*)PyObject_NEW (BPy_Effect, &Effect_Type);
if (blen_object == NULL)
diff --git a/source/blender/python/api2_2x/Image.c b/source/blender/python/api2_2x/Image.c
index e88d887412a..6a73e655624 100644
--- a/source/blender/python/api2_2x/Image.c
+++ b/source/blender/python/api2_2x/Image.c
@@ -40,7 +40,7 @@
#include "Image.h"
/*****************************************************************************/
-/* Python C_Image defaults: */
+/* Python BPy_Image defaults: */
/*****************************************************************************/
#define EXPP_IMAGE_REP 1
#define EXPP_IMAGE_REP_MIN 1
@@ -124,11 +124,11 @@ static PyObject *M_Image_Get(PyObject *self, PyObject *args)
if (name) { /* (name) - Search image by name */
- C_Image *wanted_image = NULL;
+ BPy_Image *wanted_image = NULL;
while ((img_iter) && (wanted_image == NULL)) {
if (strcmp (name, img_iter->id.name+2) == 0) {
- wanted_image = (C_Image *)PyObject_NEW(C_Image, &Image_Type);
+ wanted_image = (BPy_Image *)PyObject_NEW(BPy_Image, &Image_Type);
if (wanted_image) wanted_image->image = img_iter;
}
img_iter = img_iter->id.next;
@@ -181,13 +181,13 @@ static PyObject *M_Image_Load(PyObject *self, PyObject *args)
{
char *fname;
Image *img_ptr;
- C_Image *img;
+ BPy_Image *img;
if (!PyArg_ParseTuple(args, "s", &fname))
return (EXPP_ReturnPyObjError (PyExc_TypeError,
"expected string argument"));
- img = (C_Image *)PyObject_NEW(C_Image, &Image_Type);
+ img = (BPy_Image *)PyObject_NEW(BPy_Image, &Image_Type);
if (!img)
return (EXPP_ReturnPyObjError (PyExc_MemoryError,
@@ -222,18 +222,18 @@ PyObject *Image_Init (void)
/************************/
/*****************************************************************************/
-/* Python C_Image methods declarations: */
+/* Python BPy_Image methods declarations: */
/*****************************************************************************/
-static PyObject *Image_getName(C_Image *self);
-static PyObject *Image_getFilename(C_Image *self);
-static PyObject *Image_setName(C_Image *self, PyObject *args);
-static PyObject *Image_setXRep(C_Image *self, PyObject *args);
-static PyObject *Image_setYRep(C_Image *self, PyObject *args);
+static PyObject *Image_getName(BPy_Image *self);
+static PyObject *Image_getFilename(BPy_Image *self);
+static PyObject *Image_setName(BPy_Image *self, PyObject *args);
+static PyObject *Image_setXRep(BPy_Image *self, PyObject *args);
+static PyObject *Image_setYRep(BPy_Image *self, PyObject *args);
/*****************************************************************************/
-/* Python C_Image methods table: */
+/* Python BPy_Image methods table: */
/*****************************************************************************/
-static PyMethodDef C_Image_methods[] = {
+static PyMethodDef BPy_Image_methods[] = {
/* name, method, flags, doc */
{"getName", (PyCFunction)Image_getName, METH_NOARGS,
"() - Return Image Data name"},
@@ -249,14 +249,14 @@ static PyMethodDef C_Image_methods[] = {
};
/*****************************************************************************/
-/* Python Image_Type callback function prototypes: */
+/* Python Image_Type callback function prototypes: */
/*****************************************************************************/
-static void Image_Dealloc (C_Image *self);
-static int Image_SetAttr (C_Image *self, char *name, PyObject *v);
-static int Image_Compare (C_Image *a, C_Image *b);
-static int Image_Print (C_Image *self, FILE *fp, int flags);
-static PyObject *Image_GetAttr (C_Image *self, char *name);
-static PyObject *Image_Repr (C_Image *self);
+static void Image_Dealloc (BPy_Image *self);
+static int Image_SetAttr (BPy_Image *self, char *name, PyObject *v);
+static int Image_Compare (BPy_Image *a, BPy_Image *b);
+static int Image_Print (BPy_Image *self, FILE *fp, int flags);
+static PyObject *Image_GetAttr (BPy_Image *self, char *name);
+static PyObject *Image_Repr (BPy_Image *self);
/*****************************************************************************/
/* Python Image_Type structure definition: */
@@ -265,8 +265,8 @@ PyTypeObject Image_Type =
{
PyObject_HEAD_INIT(NULL)
0, /* ob_size */
- "Image", /* tp_name */
- sizeof (C_Image), /* tp_basicsize */
+ "Blender Image", /* tp_name */
+ sizeof (BPy_Image), /* tp_basicsize */
0, /* tp_itemsize */
/* methods */
(destructor)Image_Dealloc, /* tp_dealloc */
@@ -282,34 +282,34 @@ PyTypeObject Image_Type =
0,0,0,0,0,0,
0, /* tp_doc */
0,0,0,0,0,0,
- C_Image_methods, /* tp_methods */
+ BPy_Image_methods, /* tp_methods */
0, /* tp_members */
};
/*****************************************************************************/
/* Function: ImageDealloc */
-/* Description: This is a callback function for the C_Image type. It is */
+/* Description: This is a callback function for the BPy_Image type. It is */
/* the destructor function. */
/*****************************************************************************/
-static void Image_Dealloc (C_Image *self)
+static void Image_Dealloc (BPy_Image *self)
{
PyObject_DEL (self);
}
/*****************************************************************************/
/* Function: Image_CreatePyObject */
-/* Description: This function will create a new C_Image from an existing */
+/* Description: This function will create a new BPy_Image from an existing */
/* Blender image structure. */
/*****************************************************************************/
PyObject *Image_CreatePyObject (Image *image)
{
- C_Image *py_img;
+ BPy_Image *py_img;
- py_img = (C_Image *)PyObject_NEW (C_Image, &Image_Type);
+ py_img = (BPy_Image *)PyObject_NEW (BPy_Image, &Image_Type);
if (!py_img)
return EXPP_ReturnPyObjError (PyExc_MemoryError,
- "couldn't create C_Image object");
+ "couldn't create BPy_Image object");
py_img->image = image;
@@ -327,9 +327,9 @@ int Image_CheckPyObject (PyObject *pyobj)
}
/*****************************************************************************/
-/* Python C_Image methods: */
+/* Python BPy_Image methods: */
/*****************************************************************************/
-static PyObject *Image_getName(C_Image *self)
+static PyObject *Image_getName(BPy_Image *self)
{
PyObject *attr = PyString_FromString(self->image->id.name+2);
@@ -339,7 +339,7 @@ static PyObject *Image_getName(C_Image *self)
"couldn't get Image.name attribute"));
}
-static PyObject *Image_getFilename(C_Image *self)
+static PyObject *Image_getFilename(BPy_Image *self)
{
PyObject *attr = PyString_FromString(self->image->name);
@@ -349,7 +349,7 @@ static PyObject *Image_getFilename(C_Image *self)
"couldn't get Image.filename attribute"));
}
-static PyObject *Image_setName(C_Image *self, PyObject *args)
+static PyObject *Image_setName(BPy_Image *self, PyObject *args)
{
char *name;
char buf[21];
@@ -366,7 +366,7 @@ static PyObject *Image_setName(C_Image *self, PyObject *args)
return Py_None;
}
-static PyObject *Image_setXRep(C_Image *self, PyObject *args)
+static PyObject *Image_setXRep(BPy_Image *self, PyObject *args)
{
short value;
@@ -384,7 +384,7 @@ static PyObject *Image_setXRep(C_Image *self, PyObject *args)
return Py_None;
}
-static PyObject *Image_setYRep(C_Image *self, PyObject *args)
+static PyObject *Image_setYRep(BPy_Image *self, PyObject *args)
{
short value;
@@ -404,11 +404,11 @@ static PyObject *Image_setYRep(C_Image *self, PyObject *args)
/*****************************************************************************/
/* Function: Image_GetAttr */
-/* Description: This is a callback function for the C_Image type. It is */
-/* the function that accesses C_Image member variables and */
+/* Description: This is a callback function for the BPy_Image type. It is */
+/* the function that accesses BPy_Image member variables and */
/* methods. */
/*****************************************************************************/
-static PyObject *Image_GetAttr (C_Image *self, char *name)
+static PyObject *Image_GetAttr (BPy_Image *self, char *name)
{
PyObject *attr = Py_None;
@@ -432,16 +432,16 @@ static PyObject *Image_GetAttr (C_Image *self, char *name)
if (attr != Py_None) return attr; /* attribute found, return its value */
/* not an attribute, search the methods table */
- return Py_FindMethod(C_Image_methods, (PyObject *)self, name);
+ return Py_FindMethod(BPy_Image_methods, (PyObject *)self, name);
}
/*****************************************************************************/
/* Function: Image_SetAttr */
-/* Description: This is a callback function for the C_Image type. It is the */
+/* Description: This is a callback function for the BPy_Image type. It is the*/
/* function that changes Image Data members values. If this */
/* data is linked to a Blender Image, it also gets updated. */
/*****************************************************************************/
-static int Image_SetAttr (C_Image *self, char *name, PyObject *value)
+static int Image_SetAttr (BPy_Image *self, char *name, PyObject *value)
{
PyObject *valtuple;
PyObject *error = NULL;
@@ -480,13 +480,13 @@ static int Image_SetAttr (C_Image *self, char *name, PyObject *value)
/*****************************************************************************/
/* Function: Image_Compare */
-/* Description: This is a callback function for the C_Image type. It */
+/* Description: This is a callback function for the BPy_Image type. It */
/* compares two Image_Type objects. Only the "==" and "!=" */
/* comparisons are meaninful. Returns 0 for equality and -1 if */
/* they don't point to the same Blender Image struct. */
/* In Python it becomes 1 if they are equal, 0 otherwise. */
/*****************************************************************************/
-static int Image_Compare (C_Image *a, C_Image *b)
+static int Image_Compare (BPy_Image *a, BPy_Image *b)
{
Image *pa = a->image, *pb = b->image;
return (pa == pb) ? 0:-1;
@@ -494,10 +494,10 @@ static int Image_Compare (C_Image *a, C_Image *b)
/*****************************************************************************/
/* Function: Image_Print */
-/* Description: This is a callback function for the C_Image type. It */
+/* Description: This is a callback function for the BPy_Image type. It */
/* builds a meaninful string to 'print' image objects. */
/*****************************************************************************/
-static int Image_Print(C_Image *self, FILE *fp, int flags)
+static int Image_Print(BPy_Image *self, FILE *fp, int flags)
{
fprintf(fp, "[Image \"%s\"]", self->image->id.name+2);
return 0;
@@ -505,10 +505,10 @@ static int Image_Print(C_Image *self, FILE *fp, int flags)
/*****************************************************************************/
/* Function: Image_Repr */
-/* Description: This is a callback function for the C_Image type. It */
+/* Description: This is a callback function for the BPy_Image type. It */
/* builds a meaninful string to represent image objects. */
/*****************************************************************************/
-static PyObject *Image_Repr (C_Image *self)
+static PyObject *Image_Repr (BPy_Image *self)
{
return PyString_FromString(self->image->id.name+2);
}
diff --git a/source/blender/python/api2_2x/Image.h b/source/blender/python/api2_2x/Image.h
index 08104875f7a..163eba90eb1 100644
--- a/source/blender/python/api2_2x/Image.h
+++ b/source/blender/python/api2_2x/Image.h
@@ -37,17 +37,17 @@
/*****************************************************************************/
-/* Python C_Image structure definition */
+/* Python BPy_Image structure definition */
/*****************************************************************************/
typedef struct {
PyObject_HEAD
Image *image;
-} C_Image;
+} BPy_Image;
extern PyTypeObject Image_Type; /* The Image PyType Object */
-#define C_Image_Check(v) ((v)->ob_type == &Image_Type) /* for type checking */
+#define BPy_Image_Check(v) ((v)->ob_type == &Image_Type)/*for type checking*/
/*****************************************************************************/
/* Module Blender.Image - public functions */
diff --git a/source/blender/python/api2_2x/Ipo.c b/source/blender/python/api2_2x/Ipo.c
index 40a673f88fc..d082f10f05b 100644
--- a/source/blender/python/api2_2x/Ipo.c
+++ b/source/blender/python/api2_2x/Ipo.c
@@ -132,15 +132,14 @@ static PyObject *M_Ipo_Get(PyObject *self, PyObject *args)
}
/*****************************************************************************/
-/* Function: M_Ipo_Init */
+/* Function: Ipo_Init */
/*****************************************************************************/
-PyObject *M_Ipo_Init (void)
+PyObject *Ipo_Init (void)
{
PyObject *submodule;
Ipo_Type.ob_type = &PyType_Type;
- printf ("In M_Ipo_Init()\n");
submodule = Py_InitModule3("Blender.Ipo", M_Ipo_methods, M_Ipo_doc);
return (submodule);
diff --git a/source/blender/python/api2_2x/Lamp.c b/source/blender/python/api2_2x/Lamp.c
index 4018871a242..ad023352644 100644
--- a/source/blender/python/api2_2x/Lamp.c
+++ b/source/blender/python/api2_2x/Lamp.c
@@ -188,7 +188,7 @@ static PyObject *M_Lamp_TypesDict (void)
PyObject *Types = M_constant_New();
if (Types) {
- C_constant *c = (C_constant *)Types;
+ BPy_constant *c = (BPy_constant *)Types;
constant_insert (c, "Lamp", PyInt_FromLong (EXPP_LAMP_TYPE_LAMP));
constant_insert (c, "Sun", PyInt_FromLong (EXPP_LAMP_TYPE_SUN));
@@ -205,7 +205,7 @@ static PyObject *M_Lamp_ModesDict (void)
PyObject *Modes = M_constant_New();
if (Modes) {
- C_constant *c = (C_constant *)Modes;
+ BPy_constant *c = (BPy_constant *)Modes;
constant_insert (c, "Shadows", PyInt_FromLong (EXPP_LAMP_MODE_SHADOWS));
constant_insert (c, "Halo", PyInt_FromLong (EXPP_LAMP_MODE_HALO));
diff --git a/source/blender/python/api2_2x/Metaball.c b/source/blender/python/api2_2x/Metaball.c
index 0a679f8ef1a..04e4ad413bc 100644
--- a/source/blender/python/api2_2x/Metaball.c
+++ b/source/blender/python/api2_2x/Metaball.c
@@ -73,7 +73,6 @@ static PyObject *M_Metaball_New(PyObject *self, PyObject *args)
if (!PyArg_ParseTuple(args, "|s", &name))
return (EXPP_ReturnPyObjError (PyExc_TypeError,
"expected string argument (or nothing)"));
- printf ("In MetaBall_New()\n");
blmball = add_mball(); /* first create the MetaBall Data in Blender */
@@ -159,15 +158,15 @@ static PyObject *M_Metaball_Get(PyObject *self, PyObject *args)
}
-/*******************************************************************************/
-/* Function: M_Metaball_Init */
-/*******************************************************************************/
-PyObject *M_Metaball_Init (void)
+/******************************************************************************/
+/* Function: Metaball_Init */
+/******************************************************************************/
+PyObject *Metaball_Init (void)
{
PyObject *submodule;
Metaball_Type.ob_type = &PyType_Type;
- printf ("In M_Metaball_Init()\n");
+
submodule = Py_InitModule3("Blender.Metaball",
M_Metaball_methods, M_Metaball_doc);
diff --git a/source/blender/python/api2_2x/NMesh.c b/source/blender/python/api2_2x/NMesh.c
index 9e1639e9afc..b2626c916c0 100644
--- a/source/blender/python/api2_2x/NMesh.c
+++ b/source/blender/python/api2_2x/NMesh.c
@@ -49,9 +49,9 @@ static void NMCol_dealloc(PyObject *self)
PyObject_DEL(self); /* XXX PyObject_Del ?*/
}
-static C_NMCol *newcol (char r, char g, char b, char a)
+static BPy_NMCol *newcol (char r, char g, char b, char a)
{
- C_NMCol *mc = (C_NMCol *) PyObject_NEW (C_NMCol, &NMCol_Type);
+ BPy_NMCol *mc = (BPy_NMCol *) PyObject_NEW (BPy_NMCol, &NMCol_Type);
mc->r= r;
mc->g= g;
@@ -73,7 +73,7 @@ static PyObject *M_NMesh_Col(PyObject *self, PyObject *args)
static PyObject *NMCol_getattr(PyObject *self, char *name)
{
- C_NMCol *mc = (C_NMCol *)self;
+ BPy_NMCol *mc = (BPy_NMCol *)self;
if (strcmp(name, "r") == 0) return Py_BuildValue("i", mc->r);
else if (strcmp(name, "g") == 0) return Py_BuildValue("i", mc->g);
@@ -85,7 +85,7 @@ static PyObject *NMCol_getattr(PyObject *self, char *name)
static int NMCol_setattr(PyObject *self, char *name, PyObject *v)
{
- C_NMCol *mc = (C_NMCol *)self;
+ BPy_NMCol *mc = (BPy_NMCol *)self;
short ival;
if(!PyArg_Parse(v, "h", &ival)) return -1;
@@ -101,7 +101,7 @@ static int NMCol_setattr(PyObject *self, char *name, PyObject *v)
return 0;
}
-PyObject *NMCol_repr(C_NMCol *self)
+PyObject *NMCol_repr(BPy_NMCol *self)
{
static char s[256];
sprintf (s, "[NMCol - <%d, %d, %d, %d>]", self->r, self->g, self->b, self->a);
@@ -113,7 +113,7 @@ PyTypeObject NMCol_Type =
PyObject_HEAD_INIT(NULL)
0, /* ob_size */
"NMCol", /* tp_name */
- sizeof(C_NMCol), /* tp_basicsize */
+ sizeof(BPy_NMCol), /* tp_basicsize */
0, /* tp_itemsize */
/* methods */
(destructor) NMCol_dealloc, /* tp_dealloc */
@@ -137,7 +137,7 @@ PyTypeObject NMCol_Type =
/*****************************/
static void NMFace_dealloc (PyObject *self)
{
- C_NMFace *mf = (C_NMFace *)self;
+ BPy_NMFace *mf = (BPy_NMFace *)self;
Py_DECREF(mf->v);
Py_DECREF(mf->uv);
@@ -146,9 +146,9 @@ static void NMFace_dealloc (PyObject *self)
PyObject_DEL(self);
}
-static C_NMFace *new_NMFace(PyObject *vertexlist)
+static BPy_NMFace *new_NMFace(PyObject *vertexlist)
{
- C_NMFace *mf = PyObject_NEW (C_NMFace, &NMFace_Type);
+ BPy_NMFace *mf = PyObject_NEW (BPy_NMFace, &NMFace_Type);
mf->v = vertexlist;
mf->uv = PyList_New(0);
@@ -180,7 +180,7 @@ static PyObject *M_NMesh_Face(PyObject *self, PyObject *args)
static PyObject *NMFace_append(PyObject *self, PyObject *args)
{
PyObject *vert;
- C_NMFace *f = (C_NMFace *)self;
+ BPy_NMFace *f = (BPy_NMFace *)self;
if (!PyArg_ParseTuple(args, "O!", &NMVert_Type, &vert))
return EXPP_ReturnPyObjError (PyExc_TypeError,
@@ -202,7 +202,7 @@ static struct PyMethodDef NMFace_methods[] =
static PyObject *NMFace_getattr(PyObject *self, char *name)
{
- C_NMFace *mf = (C_NMFace *)self;
+ BPy_NMFace *mf = (BPy_NMFace *)self;
if(strcmp(name, "v") == 0)
return Py_BuildValue("O", mf->v);
@@ -236,7 +236,7 @@ static PyObject *NMFace_getattr(PyObject *self, char *name)
static int NMFace_setattr(PyObject *self, char *name, PyObject *v)
{
- C_NMFace *mf = (C_NMFace *)self;
+ BPy_NMFace *mf = (BPy_NMFace *)self;
short ival;
if (strcmp(name, "v") == 0) {
@@ -308,7 +308,7 @@ static int NMFace_setattr(PyObject *self, char *name, PyObject *v)
return 0;
}
- mf->image = ((C_Image *)pyimg)->image;
+ mf->image = ((BPy_Image *)pyimg)->image;
return 0;
}
@@ -321,17 +321,17 @@ static PyObject *NMFace_repr (PyObject *self)
return PyString_FromString("[NMFace]");
}
-static int NMFace_len(C_NMFace *self)
+static int NMFace_len(BPy_NMFace *self)
{
return PySequence_Length(self->v);
}
-static PyObject *NMFace_item(C_NMFace *self, int i)
+static PyObject *NMFace_item(BPy_NMFace *self, int i)
{
return PySequence_GetItem(self->v, i); // new ref
}
-static PyObject *NMFace_slice(C_NMFace *self, int begin, int end)
+static PyObject *NMFace_slice(BPy_NMFace *self, int begin, int end)
{
return PyList_GetSlice(self->v, begin, end); // new ref
}
@@ -352,7 +352,7 @@ PyTypeObject NMFace_Type =
PyObject_HEAD_INIT(NULL)
0, /*ob_size*/
"NMFace", /*tp_name*/
- sizeof(C_NMFace), /*tp_basicsize*/
+ sizeof(BPy_NMFace), /*tp_basicsize*/
0, /*tp_itemsize*/
/* methods */
(destructor) NMFace_dealloc, /*tp_dealloc*/
@@ -367,9 +367,9 @@ PyTypeObject NMFace_Type =
0, /*tp_hash*/
};
-static C_NMVert *newvert(float *co)
+static BPy_NMVert *newvert(float *co)
{
- C_NMVert *mv = PyObject_NEW(C_NMVert, &NMVert_Type);
+ BPy_NMVert *mv = PyObject_NEW(BPy_NMVert, &NMVert_Type);
mv->co[0] = co[0]; mv->co[1] = co[1]; mv->co[2] = co[2];
@@ -397,7 +397,7 @@ static void NMVert_dealloc(PyObject *self)
static PyObject *NMVert_getattr(PyObject *self, char *name)
{
- C_NMVert *mv = (C_NMVert *)self;
+ BPy_NMVert *mv = (BPy_NMVert *)self;
if (!strcmp(name, "co") || !strcmp(name, "loc"))
return newVectorObject(mv->co, 3);
@@ -411,7 +411,7 @@ static PyObject *NMVert_getattr(PyObject *self, char *name)
static int NMVert_setattr(PyObject *self, char *name, PyObject *v)
{
- C_NMVert *mv = (C_NMVert *)self;
+ BPy_NMVert *mv = (BPy_NMVert *)self;
int i;
if (strcmp(name,"index") == 0) {
@@ -431,12 +431,12 @@ static int NMVert_setattr(PyObject *self, char *name, PyObject *v)
return EXPP_ReturnIntError (PyExc_AttributeError, name);
}
-static int NMVert_len(C_NMVert *self)
+static int NMVert_len(BPy_NMVert *self)
{
return 3;
}
-static PyObject *NMVert_item(C_NMVert *self, int i)
+static PyObject *NMVert_item(BPy_NMVert *self, int i)
{
if (i < 0 || i >= 3)
return EXPP_ReturnPyObjError (PyExc_IndexError,
@@ -445,7 +445,7 @@ static PyObject *NMVert_item(C_NMVert *self, int i)
return Py_BuildValue("f", self->co[i]);
}
-static PyObject *NMVert_slice(C_NMVert *self, int begin, int end)
+static PyObject *NMVert_slice(BPy_NMVert *self, int begin, int end)
{
PyObject *list;
int count;
@@ -462,7 +462,7 @@ static PyObject *NMVert_slice(C_NMVert *self, int begin, int end)
return list;
}
-static int NMVert_ass_item(C_NMVert *self, int i, PyObject *ob)
+static int NMVert_ass_item(BPy_NMVert *self, int i, PyObject *ob)
{
if (i < 0 || i >= 3)
return EXPP_ReturnIntError (PyExc_IndexError,
@@ -477,7 +477,7 @@ static int NMVert_ass_item(C_NMVert *self, int i, PyObject *ob)
return 0;
}
-static int NMVert_ass_slice(C_NMVert *self, int begin, int end, PyObject *seq)
+static int NMVert_ass_slice(BPy_NMVert *self, int begin, int end, PyObject *seq)
{
int count;
@@ -523,7 +523,7 @@ PyTypeObject NMVert_Type =
PyObject_HEAD_INIT(NULL)
0, /*ob_size*/
"NMVert", /*tp_name*/
- sizeof(C_NMVert), /*tp_basicsize*/
+ sizeof(BPy_NMVert), /*tp_basicsize*/
0, /*tp_itemsize*/
/* methods */
(destructor) NMVert_dealloc, /*tp_dealloc*/
@@ -538,7 +538,7 @@ PyTypeObject NMVert_Type =
static void NMesh_dealloc(PyObject *self)
{
- C_NMesh *me = (C_NMesh *)self;
+ BPy_NMesh *me = (BPy_NMesh *)self;
Py_DECREF(me->name);
Py_DECREF(me->verts);
@@ -549,7 +549,7 @@ static void NMesh_dealloc(PyObject *self)
static PyObject *NMesh_getSelectedFaces(PyObject *self, PyObject *args)
{
- C_NMesh *nm = (C_NMesh *)self;
+ BPy_NMesh *nm = (BPy_NMesh *)self;
Mesh *me = nm->mesh;
int flag = 0;
@@ -581,15 +581,15 @@ static PyObject *NMesh_getSelectedFaces(PyObject *self, PyObject *args)
static PyObject *NMesh_getActiveFace(PyObject *self, PyObject *args)
{
- if (((C_NMesh *)self)->sel_face < 0)
+ if (((BPy_NMesh *)self)->sel_face < 0)
return EXPP_incr_ret(Py_None);
- return Py_BuildValue("i", ((C_NMesh *)self)->sel_face);
+ return Py_BuildValue("i", ((BPy_NMesh *)self)->sel_face);
}
static PyObject *NMesh_hasVertexUV(PyObject *self, PyObject *args)
{
- C_NMesh *me = (C_NMesh *)self;
+ BPy_NMesh *me = (BPy_NMesh *)self;
int flag;
if (args) {
@@ -607,7 +607,7 @@ static PyObject *NMesh_hasVertexUV(PyObject *self, PyObject *args)
static PyObject *NMesh_hasFaceUV(PyObject *self, PyObject *args)
{
- C_NMesh *me = (C_NMesh *)self;
+ BPy_NMesh *me = (BPy_NMesh *)self;
int flag = -1;
if (!PyArg_ParseTuple(args, "|i", &flag))
@@ -633,7 +633,7 @@ static PyObject *NMesh_hasFaceUV(PyObject *self, PyObject *args)
static PyObject *NMesh_hasVertexColours(PyObject *self, PyObject *args)
{
- C_NMesh *me= (C_NMesh *)self;
+ BPy_NMesh *me= (BPy_NMesh *)self;
int flag = -1;
if (!PyArg_ParseTuple(args, "|i", &flag))
@@ -659,7 +659,7 @@ static PyObject *NMesh_hasVertexColours(PyObject *self, PyObject *args)
static PyObject *NMesh_update(PyObject *self, PyObject *args)
{
- C_NMesh *nmesh = (C_NMesh *)self;
+ BPy_NMesh *nmesh = (BPy_NMesh *)self;
Mesh *mesh = nmesh->mesh;
if (mesh) {
@@ -696,7 +696,7 @@ static PyObject *NMesh_getVertexInfluences(PyObject *self, PyObject *args)
PyObject* influence_list = NULL;
/* Get a reference to the mesh object wrapped in here. */
- Mesh *me = ((C_NMesh*)self)->mesh;
+ Mesh *me = ((BPy_NMesh*)self)->mesh;
/* Parse the parameters: only on integer (vertex index) */
if (!PyArg_ParseTuple(args, "i", &index))
@@ -741,7 +741,7 @@ static PyObject *NMesh_getVertexInfluences(PyObject *self, PyObject *args)
return influence_list; /* No need to incref it */
}
-Mesh *Mesh_fromNMesh(C_NMesh *nmesh)
+Mesh *Mesh_fromNMesh(BPy_NMesh *nmesh)
{
Mesh *mesh = NULL;
mesh = add_mesh(); /* us == 1, should we zero it for all added objs ? */
@@ -758,7 +758,7 @@ Mesh *Mesh_fromNMesh(C_NMesh *nmesh)
PyObject *NMesh_link(PyObject *self, PyObject *args)
{/*
- C_Object *bl_obj;
+ BPy_Object *bl_obj;
if (!PyArg_ParseTuple(args, "O!", &Object_Type, &bl_obj))
return EXPP_ReturnPyErrorObj (PyExc_TypeError,
@@ -786,7 +786,7 @@ static struct PyMethodDef NMesh_methods[] =
static PyObject *NMesh_getattr(PyObject *self, char *name)
{
- C_NMesh *me = (C_NMesh *)self;
+ BPy_NMesh *me = (BPy_NMesh *)self;
if (strcmp(name, "name") == 0)
return EXPP_incr_ret(me->name);
@@ -817,7 +817,7 @@ static PyObject *NMesh_getattr(PyObject *self, char *name)
static int NMesh_setattr(PyObject *self, char *name, PyObject *v)
{
- C_NMesh *me = (C_NMesh *)self;
+ BPy_NMesh *me = (BPy_NMesh *)self;
if (!strcmp(name, "verts") || !strcmp(name, "faces") ||
!strcmp(name, "materials")) {
@@ -853,7 +853,7 @@ PyTypeObject NMesh_Type =
PyObject_HEAD_INIT(NULL)
0, /*ob_size*/
"NMesh", /*tp_name*/
- sizeof(C_NMesh), /*tp_basicsize*/
+ sizeof(BPy_NMesh), /*tp_basicsize*/
0, /*tp_itemsize*/
/* methods */
(destructor) NMesh_dealloc, /*tp_dealloc*/
@@ -862,10 +862,10 @@ PyTypeObject NMesh_Type =
(setattrfunc) NMesh_setattr, /*tp_setattr*/
};
-static C_NMFace *nmface_from_data(C_NMesh *mesh, int vidxs[4],
+static BPy_NMFace *nmface_from_data(BPy_NMesh *mesh, int vidxs[4],
char mat_nr, char flag, TFace *tface, MCol *col)
{
- C_NMFace *newf = PyObject_NEW (C_NMFace, &NMFace_Type);
+ BPy_NMFace *newf = PyObject_NEW (BPy_NMFace, &NMFace_Type);
int i, len;
if (vidxs[3]) len = 4;
@@ -916,7 +916,7 @@ static C_NMFace *nmface_from_data(C_NMesh *mesh, int vidxs[4],
return newf;
}
-static C_NMFace *nmface_from_shortdata(C_NMesh *mesh,
+static BPy_NMFace *nmface_from_shortdata(BPy_NMesh *mesh,
MFace *face, TFace *tface, MCol *col)
{
int vidxs[4];
@@ -928,7 +928,7 @@ static C_NMFace *nmface_from_shortdata(C_NMesh *mesh,
return nmface_from_data(mesh, vidxs, face->mat_nr, face->flag, tface, col);
}
-static C_NMFace *nmface_from_intdata(C_NMesh *mesh,
+static BPy_NMFace *nmface_from_intdata(BPy_NMesh *mesh,
MFaceInt *face, TFace *tface, MCol *col)
{
int vidxs[4];
@@ -940,10 +940,10 @@ static C_NMFace *nmface_from_intdata(C_NMesh *mesh,
return nmface_from_data(mesh, vidxs, face->mat_nr, face->flag, tface, col);
}
-static C_NMVert *nmvert_from_data(C_NMesh *me,
+static BPy_NMVert *nmvert_from_data(BPy_NMesh *me,
MVert *vert, MSticky *st, float *co, int idx)
{
- C_NMVert *mv = PyObject_NEW(C_NMVert, &NMVert_Type);
+ BPy_NMVert *mv = PyObject_NEW(BPy_NMVert, &NMVert_Type);
mv->co[0] = co[0]; mv->co[1] = co[1]; mv->co[2] = co[2];
@@ -982,7 +982,7 @@ static int get_active_faceindex(Mesh *me)
static PyObject *new_NMesh_internal(Mesh *oldmesh,
DispListMesh *dlm, float *extverts)
{
- C_NMesh *me = PyObject_NEW (C_NMesh, &NMesh_Type);
+ BPy_NMesh *me = PyObject_NEW (BPy_NMesh, &NMesh_Type);
me->flags = 0;
if (!oldmesh) {
@@ -1125,12 +1125,12 @@ static PyObject *M_NMesh_GetRawFromObject(PyObject *self, PyObject *args)
else
nmesh = new_NMesh(me);
}
- ((C_NMesh *) nmesh)->mesh = 0; // hack: to mark that (deformed) mesh is readonly,
+ ((BPy_NMesh *) nmesh)->mesh = 0; // hack: to mark that (deformed) mesh is readonly,
// so the update function will not try to write it.
return nmesh;
}
-static void mvert_from_data(MVert *mv, MSticky *st, C_NMVert *from)
+static void mvert_from_data(MVert *mv, MSticky *st, BPy_NMVert *from)
{
mv->co[0] = from->co[0]; mv->co[1] = from->co[1]; mv->co[2] = from->co[2];
@@ -1151,7 +1151,7 @@ static void mvert_from_data(MVert *mv, MSticky *st, C_NMVert *from)
* RGBA/BRGA confusion, it just works, but will never work with
* a restructured Blender */
-static void assign_perFaceColors(TFace *tf, C_NMFace *from)
+static void assign_perFaceColors(TFace *tf, BPy_NMFace *from)
{
MCol *col;
int i;
@@ -1164,8 +1164,8 @@ static void assign_perFaceColors(TFace *tf, C_NMFace *from)
if(len > 4) len = 4;
for (i = 0; i < len; i++, col++) {
- C_NMCol *mc = (C_NMCol *)PySequence_GetItem(from->col, i);
- if(!C_NMCol_Check(mc)) {
+ BPy_NMCol *mc = (BPy_NMCol *)PySequence_GetItem(from->col, i);
+ if(!BPy_NMCol_Check(mc)) {
Py_DECREF(mc);
continue;
}
@@ -1180,7 +1180,7 @@ static void assign_perFaceColors(TFace *tf, C_NMFace *from)
}
}
-static int assignFaceUV(TFace *tf, C_NMFace *nmface)
+static int assignFaceUV(TFace *tf, BPy_NMFace *nmface)
{
PyObject *fuv, *tmp;
int i;
@@ -1210,29 +1210,29 @@ static int assignFaceUV(TFace *tf, C_NMFace *nmface)
return 1;
}
-static void mface_from_data(MFace *mf, TFace *tf, MCol *col, C_NMFace *from)
+static void mface_from_data(MFace *mf, TFace *tf, MCol *col, BPy_NMFace *from)
{
- C_NMVert *nmv;
+ BPy_NMVert *nmv;
int i = PyList_Size(from->v);
if(i >= 1) {
- nmv = (C_NMVert *)PyList_GetItem(from->v, 0);
- if (C_NMVert_Check(nmv) && nmv->index != -1) mf->v1 = nmv->index;
+ nmv = (BPy_NMVert *)PyList_GetItem(from->v, 0);
+ if (BPy_NMVert_Check(nmv) && nmv->index != -1) mf->v1 = nmv->index;
else mf->v1 = 0;
}
if(i >= 2) {
- nmv = (C_NMVert *)PyList_GetItem(from->v, 1);
- if (C_NMVert_Check(nmv) && nmv->index != -1) mf->v2 = nmv->index;
+ nmv = (BPy_NMVert *)PyList_GetItem(from->v, 1);
+ if (BPy_NMVert_Check(nmv) && nmv->index != -1) mf->v2 = nmv->index;
else mf->v2 = 0;
}
if(i >= 3) {
- nmv = (C_NMVert *)PyList_GetItem(from->v, 2);
- if (C_NMVert_Check(nmv) && nmv->index != -1) mf->v3 = nmv->index;
+ nmv = (BPy_NMVert *)PyList_GetItem(from->v, 2);
+ if (BPy_NMVert_Check(nmv) && nmv->index != -1) mf->v3 = nmv->index;
else mf->v3= 0;
}
if(i >= 4) {
- nmv = (C_NMVert *)PyList_GetItem(from->v, 3);
- if (C_NMVert_Check(nmv) && nmv->index != -1) mf->v4 = nmv->index;
+ nmv = (BPy_NMVert *)PyList_GetItem(from->v, 3);
+ if (BPy_NMVert_Check(nmv) && nmv->index != -1) mf->v4 = nmv->index;
else mf->v4= 0;
}
@@ -1264,8 +1264,8 @@ static void mface_from_data(MFace *mf, TFace *tf, MCol *col, C_NMFace *from)
if(len > 4) len = 4;
for (i = 0; i < len; i++, col++) {
- C_NMCol *mc = (C_NMCol *) PySequence_GetItem(from->col, i);
- if(!C_NMCol_Check(mc)) {
+ BPy_NMCol *mc = (BPy_NMCol *) PySequence_GetItem(from->col, i);
+ if(!BPy_NMCol_Check(mc)) {
Py_DECREF(mc);
continue;
}
@@ -1281,15 +1281,15 @@ static void mface_from_data(MFace *mf, TFace *tf, MCol *col, C_NMFace *from)
}
/* check for a valid UV sequence */
-static int check_validFaceUV(C_NMesh *nmesh)
+static int check_validFaceUV(BPy_NMesh *nmesh)
{
PyObject *faces;
- C_NMFace *nmface;
+ BPy_NMFace *nmface;
int i, n;
faces = nmesh->faces;
for (i = 0; i < PySequence_Length(faces); i++) {
- nmface = (C_NMFace *)PyList_GetItem(faces, i);
+ nmface = (BPy_NMFace *)PyList_GetItem(faces, i);
n = PySequence_Length(nmface->uv);
if (n != PySequence_Length(nmface->v))
{
@@ -1315,7 +1315,7 @@ static int unlink_existingMeshData(Mesh *mesh)
return 1;
}
-Material **nmesh_updateMaterials(C_NMesh *nmesh)
+Material **nmesh_updateMaterials(BPy_NMesh *nmesh)
{
Material **matlist;
Mesh *mesh = nmesh->mesh;
@@ -1338,7 +1338,7 @@ Material **nmesh_updateMaterials(C_NMesh *nmesh)
return matlist;
}
-PyObject *NMesh_assignMaterials_toObject(C_NMesh *nmesh, Object *ob)
+PyObject *NMesh_assignMaterials_toObject(BPy_NMesh *nmesh, Object *ob)
{
BPy_Material *pymat;
Material *ma;
@@ -1370,7 +1370,7 @@ PyObject *NMesh_assignMaterials_toObject(C_NMesh *nmesh, Object *ob)
return EXPP_incr_ret (Py_None);
}
-static int convert_NMeshToMesh (Mesh *mesh, C_NMesh *nmesh)
+static int convert_NMeshToMesh (Mesh *mesh, BPy_NMesh *nmesh)
{
MFace *newmf;
TFace *newtf;
@@ -1425,12 +1425,12 @@ static int convert_NMeshToMesh (Mesh *mesh, C_NMesh *nmesh)
* index. - Zr
*/
for (i = 0; i < mesh->totface; i++) {
- C_NMFace *mf = (C_NMFace *)PySequence_GetItem(nmesh->faces, i);
+ BPy_NMFace *mf = (BPy_NMFace *)PySequence_GetItem(nmesh->faces, i);
j = PySequence_Length(mf->v);
while (j--) {
- C_NMVert *mv = (C_NMVert *)PySequence_GetItem(mf->v, j);
- if (C_NMVert_Check(mv)) mv->index = -1;
+ BPy_NMVert *mv = (BPy_NMVert *)PySequence_GetItem(mf->v, j);
+ if (BPy_NMVert_Check(mv)) mv->index = -1;
Py_DECREF(mv);
}
@@ -1438,7 +1438,7 @@ static int convert_NMeshToMesh (Mesh *mesh, C_NMesh *nmesh)
}
for (i = 0; i < mesh->totvert; i++) {
- C_NMVert *mv = (C_NMVert *)PySequence_GetItem(nmesh->verts, i);
+ BPy_NMVert *mv = (BPy_NMVert *)PySequence_GetItem(nmesh->verts, i);
mv->index = i;
Py_DECREF(mv);
}
@@ -1447,7 +1447,7 @@ static int convert_NMeshToMesh (Mesh *mesh, C_NMesh *nmesh)
newst = mesh->msticky;
for (i = 0; i < mesh->totvert; i++) {
PyObject *mv = PySequence_GetItem (nmesh->verts, i);
- mvert_from_data(newmv, newst, (C_NMVert *)mv);
+ mvert_from_data(newmv, newst, (BPy_NMVert *)mv);
Py_DECREF(mv);
newmv++;
@@ -1466,7 +1466,7 @@ static int convert_NMeshToMesh (Mesh *mesh, C_NMesh *nmesh)
newtf = mesh->tface;
for (i = 0; i<mesh->totface; i++) {
PyObject *mf = PySequence_GetItem(nmesh->faces, i);
- mface_from_data(newmf, newtf, newmc, (C_NMFace *) mf);
+ mface_from_data(newmf, newtf, newmc, (BPy_NMFace *) mf);
Py_DECREF(mf);
newtf++;
@@ -1482,7 +1482,7 @@ static int convert_NMeshToMesh (Mesh *mesh, C_NMesh *nmesh)
for (i = 0; i < mesh->totface; i++) {
PyObject *mf = PySequence_GetItem(nmesh->faces, i);
- mface_from_data(newmf, 0, newmc, (C_NMFace *) mf);
+ mface_from_data(newmf, 0, newmc, (BPy_NMFace *) mf);
Py_DECREF(mf);
newmf++;
@@ -1497,7 +1497,7 @@ static PyObject *M_NMesh_PutRaw(PyObject *self, PyObject *args)
char *name = NULL;
Mesh *mesh = NULL;
Object *ob = NULL;
- C_NMesh *nmesh;
+ BPy_NMesh *nmesh;
int recalc_normals = 1;
if (!PyArg_ParseTuple(args, "O!|si",
@@ -1608,7 +1608,7 @@ static PyObject *M_NMesh_FaceModesDict (void)
PyObject *FM = M_constant_New();
if (FM) {
- C_constant *d = (C_constant *)FM;
+ BPy_constant *d = (BPy_constant *)FM;
constant_insert(d, "BILLBOARD", PyInt_FromLong(TF_BILLBOARD2));
constant_insert(d, "ALL", PyInt_FromLong(0xffff));
@@ -1633,7 +1633,7 @@ static PyObject *M_NMesh_FaceFlagsDict (void)
PyObject *FF = M_constant_New();
if (FF) {
- C_constant *d = (C_constant *)FF;
+ BPy_constant *d = (BPy_constant *)FF;
EXPP_ADDCONST(d, SELECT);
EXPP_ADDCONST(d, HIDE);
@@ -1648,7 +1648,7 @@ static PyObject *M_NMesh_FaceTranspModesDict (void)
PyObject *FTM = M_constant_New();
if (FTM) {
- C_constant *d = (C_constant *)FTM;
+ BPy_constant *d = (BPy_constant *)FTM;
EXPP_ADDCONST(d, SOLID);
EXPP_ADDCONST(d, ADD);
@@ -1698,7 +1698,7 @@ int NMesh_CheckPyObject (PyObject *pyobj)
Mesh *NMesh_FromPyObject (PyObject *pyobj)
{
if (pyobj->ob_type == &NMesh_Type)
- return Mesh_fromNMesh ((C_NMesh *)pyobj);
+ return Mesh_fromNMesh ((BPy_NMesh *)pyobj);
return NULL;
}
diff --git a/source/blender/python/api2_2x/NMesh.h b/source/blender/python/api2_2x/NMesh.h
index 252265b0354..fe84fab9969 100644
--- a/source/blender/python/api2_2x/NMesh.h
+++ b/source/blender/python/api2_2x/NMesh.h
@@ -81,10 +81,10 @@ static PyObject *g_nmeshmodule = NULL;
/* Type checking for EXPP PyTypes */
-#define C_NMesh_Check(v) ((v)->ob_type == &NMesh_Type)
-#define C_NMFace_Check(v) ((v)->ob_type == &NMFace_Type)
-#define C_NMVert_Check(v) ((v)->ob_type == &NMVert_Type)
-#define C_NMCol_Check(v) ((v)->ob_type == &NMCol_Type)
+#define BPy_NMesh_Check(v) ((v)->ob_type == &NMesh_Type)
+#define BPy_NMFace_Check(v) ((v)->ob_type == &NMFace_Type)
+#define BPy_NMVert_Check(v) ((v)->ob_type == &NMVert_Type)
+#define BPy_NMCol_Check(v) ((v)->ob_type == &NMCol_Type)
static char M_NMesh_doc[] =
"The Blender.NMesh module";
@@ -164,7 +164,7 @@ typedef struct {
PyObject_HEAD
unsigned char r, g, b, a;
-} C_NMCol; /* an NMesh color: [r,g,b,a] */
+} BPy_NMCol; /* an NMesh color: [r,g,b,a] */
typedef struct {
PyObject_VAR_HEAD
@@ -173,7 +173,7 @@ typedef struct {
float uvco[3];
int index;
-} C_NMVert; /* an NMesh vertex */
+} BPy_NMVert; /* an NMesh vertex */
typedef struct {
PyObject_HEAD
@@ -186,7 +186,7 @@ typedef struct {
Image *image;
char mat_nr, smooth;
-} C_NMFace; /* an NMesh face */
+} BPy_NMFace; /* an NMesh face */
typedef struct {
PyObject_HEAD
@@ -202,17 +202,17 @@ typedef struct {
#define NMESH_HASVERTUV 1<<1
#define NMESH_HASFACEUV 1<<2
-} C_NMesh;
+} BPy_NMesh;
/* PROTOS */
extern void test_object_materials(ID *id); /* declared in BKE_material.h */
static int unlink_existingMeshData(Mesh *mesh);
-static int convert_NMeshToMesh(Mesh *mesh, C_NMesh *nmesh);
+static int convert_NMeshToMesh(Mesh *mesh, BPy_NMesh *nmesh);
void mesh_update(Mesh *mesh);
PyObject *new_NMesh(Mesh *oldmesh);
-Mesh *Mesh_fromNMesh(C_NMesh *nmesh);
-PyObject *NMesh_assignMaterials_toObject(C_NMesh *nmesh, Object *ob);
-Material **nmesh_updateMaterials(C_NMesh *nmesh);
+Mesh *Mesh_fromNMesh(BPy_NMesh *nmesh);
+PyObject *NMesh_assignMaterials_toObject(BPy_NMesh *nmesh, Object *ob);
+Material **nmesh_updateMaterials(BPy_NMesh *nmesh);
Material **newMaterialList_fromPyList (PyObject *list);
void mesh_update(Mesh *mesh);
diff --git a/source/blender/python/api2_2x/Object.c b/source/blender/python/api2_2x/Object.c
index 45aec29e662..171d1cc92dc 100644
--- a/source/blender/python/api2_2x/Object.c
+++ b/source/blender/python/api2_2x/Object.c
@@ -76,37 +76,37 @@ struct PyMethodDef M_Object_methods[] = {
};
/*****************************************************************************/
-/* Python C_Object methods declarations: */
+/* Python BPy_Object methods declarations: */
/*****************************************************************************/
-static PyObject *Object_clrParent (C_Object *self, PyObject *args);
-static PyObject *Object_getData (C_Object *self);
-static PyObject *Object_getDeformData (C_Object *self);
-static PyObject *Object_getDeltaLocation (C_Object *self);
-static PyObject *Object_getDrawMode (C_Object *self);
-static PyObject *Object_getDrawType (C_Object *self);
-static PyObject *Object_getEuler (C_Object *self);
-static PyObject *Object_getInverseMatrix (C_Object *self);
-static PyObject *Object_getLocation (C_Object *self, PyObject *args);
-static PyObject *Object_getMaterials (C_Object *self);
-static PyObject *Object_getMatrix (C_Object *self);
-static PyObject *Object_getParent (C_Object *self);
-static PyObject *Object_getTracked (C_Object *self);
-static PyObject *Object_getType (C_Object *self);
-static PyObject *Object_link (C_Object *self, PyObject *args);
-static PyObject *Object_makeParent (C_Object *self, PyObject *args);
-static PyObject *Object_materialUsage (C_Object *self, PyObject *args);
-static PyObject *Object_setDeltaLocation (C_Object *self, PyObject *args);
-static PyObject *Object_setDrawMode (C_Object *self, PyObject *args);
-static PyObject *Object_setDrawType (C_Object *self, PyObject *args);
-static PyObject *Object_setEuler (C_Object *self, PyObject *args);
-static PyObject *Object_setLocation (C_Object *self, PyObject *args);
-static PyObject *Object_setMaterials (C_Object *self, PyObject *args);
-static PyObject *Object_shareFrom (C_Object *self, PyObject *args);
+static PyObject *Object_clrParent (BPy_Object *self, PyObject *args);
+static PyObject *Object_getData (BPy_Object *self);
+static PyObject *Object_getDeformData (BPy_Object *self);
+static PyObject *Object_getDeltaLocation (BPy_Object *self);
+static PyObject *Object_getDrawMode (BPy_Object *self);
+static PyObject *Object_getDrawType (BPy_Object *self);
+static PyObject *Object_getEuler (BPy_Object *self);
+static PyObject *Object_getInverseMatrix (BPy_Object *self);
+static PyObject *Object_getLocation (BPy_Object *self, PyObject *args);
+static PyObject *Object_getMaterials (BPy_Object *self);
+static PyObject *Object_getMatrix (BPy_Object *self);
+static PyObject *Object_getParent (BPy_Object *self);
+static PyObject *Object_getTracked (BPy_Object *self);
+static PyObject *Object_getType (BPy_Object *self);
+static PyObject *Object_link (BPy_Object *self, PyObject *args);
+static PyObject *Object_makeParent (BPy_Object *self, PyObject *args);
+static PyObject *Object_materialUsage (BPy_Object *self, PyObject *args);
+static PyObject *Object_setDeltaLocation (BPy_Object *self, PyObject *args);
+static PyObject *Object_setDrawMode (BPy_Object *self, PyObject *args);
+static PyObject *Object_setDrawType (BPy_Object *self, PyObject *args);
+static PyObject *Object_setEuler (BPy_Object *self, PyObject *args);
+static PyObject *Object_setLocation (BPy_Object *self, PyObject *args);
+static PyObject *Object_setMaterials (BPy_Object *self, PyObject *args);
+static PyObject *Object_shareFrom (BPy_Object *self, PyObject *args);
/*****************************************************************************/
-/* Python C_Object methods table: */
+/* Python BPy_Object methods table: */
/*****************************************************************************/
-static PyMethodDef C_Object_methods[] = {
+static PyMethodDef BPy_Object_methods[] = {
/* name, method, flags, doc */
{"clrParent", (PyCFunction)Object_clrParent, METH_VARARGS,
"Clears parent object. Optionally specify:\n\
@@ -182,11 +182,12 @@ works only if self and the object specified are of the same type."},
/*****************************************************************************/
/* PythonTypeObject callback function prototypes */
/*****************************************************************************/
-static void ObjectDeAlloc (C_Object *obj);
-static int ObjectPrint (C_Object *obj, FILE *fp, int flags);
-static PyObject* ObjectGetAttr (C_Object *obj, char *name);
-static int ObjectSetAttr (C_Object *obj, char *name, PyObject *v);
-static PyObject* ObjectRepr (C_Object *obj);
+static void Object_dealloc (BPy_Object *obj);
+static int Object_print (BPy_Object *obj, FILE *fp, int flags);
+static PyObject* Object_getAttr (BPy_Object *obj, char *name);
+static int Object_setAttr (BPy_Object *obj, char *name, PyObject *v);
+static PyObject* Object_repr (BPy_Object *obj);
+static int Object_compare (BPy_Object *a, BPy_Object *b);
/*****************************************************************************/
/* Python TypeObject structure definition. */
@@ -195,16 +196,16 @@ PyTypeObject Object_Type =
{
PyObject_HEAD_INIT(NULL)
0, /* ob_size */
- "Object", /* tp_name */
- sizeof (C_Object), /* tp_basicsize */
+ "Blender Object", /* tp_name */
+ sizeof (BPy_Object), /* tp_basicsize */
0, /* tp_itemsize */
/* methods */
- (destructor)ObjectDeAlloc, /* tp_dealloc */
- (printfunc)ObjectPrint, /* tp_print */
- (getattrfunc)ObjectGetAttr, /* tp_getattr */
- (setattrfunc)ObjectSetAttr, /* tp_setattr */
- 0, /* tp_compare */
- (reprfunc)ObjectRepr, /* tp_repr */
+ (destructor)Object_dealloc, /* tp_dealloc */
+ (printfunc)Object_print, /* tp_print */
+ (getattrfunc)Object_getAttr, /* tp_getattr */
+ (setattrfunc)Object_setAttr, /* tp_setattr */
+ (cmpfunc)Object_compare, /* tp_compare */
+ (reprfunc)Object_repr, /* tp_repr */
0, /* tp_as_number */
0, /* tp_as_sequence */
0, /* tp_as_mapping */
@@ -212,7 +213,7 @@ PyTypeObject Object_Type =
0,0,0,0,0,0,
0, /* tp_doc */
0,0,0,0,0,0,
- C_Object_methods, /* tp_methods */
+ BPy_Object_methods, /* tp_methods */
0, /* tp_members */
};
@@ -223,13 +224,11 @@ PyTypeObject Object_Type =
PyObject *M_Object_New(PyObject *self, PyObject *args)
{
struct Object * object;
- C_Object * blen_object;
+ BPy_Object * blen_object;
int type;
char * str_type;
char * name = NULL;
- printf ("In Object_New()\n");
-
if (!PyArg_ParseTuple(args, "s|s", &str_type, &name))
{
PythonReturnErrorObject (PyExc_TypeError,
@@ -365,7 +364,7 @@ PyObject *M_Object_New(PyObject *self, PyObject *args)
G.totobj++;
/* Create a Python object from it. */
- blen_object = (C_Object*)PyObject_NEW (C_Object, &Object_Type);
+ blen_object = (BPy_Object*)PyObject_NEW (BPy_Object, &Object_Type);
blen_object->object = object;
blen_object->data = NULL;
blen_object->parent = NULL;
@@ -382,13 +381,11 @@ PyObject *M_Object_Get(PyObject *self, PyObject *args)
struct Object * object;
char * name = NULL;
- printf ("In Object_Get()\n");
-
PyArg_ParseTuple(args, "|s", &name);
if (name != NULL)
{
- C_Object * blen_object;
+ BPy_Object * blen_object;
object = GetObjectByName (name);
@@ -398,7 +395,7 @@ PyObject *M_Object_Get(PyObject *self, PyObject *args)
return (PythonReturnErrorObject (PyExc_AttributeError,
"Unknown object specified."));
}
- blen_object = (C_Object*)PyObject_NEW (C_Object, &Object_Type);
+ blen_object = (BPy_Object*)PyObject_NEW (BPy_Object, &Object_Type);
blen_object->object = object;
blen_object->parent = NULL;
blen_object->data = NULL;
@@ -446,7 +443,7 @@ PyObject *M_Object_Get(PyObject *self, PyObject *args)
/*****************************************************************************/
static PyObject *M_Object_GetSelected (PyObject *self, PyObject *args)
{
- C_Object * blen_object;
+ BPy_Object * blen_object;
PyObject * list;
Base * base_iter;
@@ -458,7 +455,7 @@ static PyObject *M_Object_GetSelected (PyObject *self, PyObject *args)
(G.scene->basact->lay & G.vd->lay)))
{
/* Active object is first in the list. */
- blen_object = (C_Object*)PyObject_NEW (C_Object, &Object_Type);
+ blen_object = (BPy_Object*)PyObject_NEW (BPy_Object, &Object_Type);
if (blen_object == NULL)
{
Py_DECREF (list);
@@ -477,7 +474,7 @@ static PyObject *M_Object_GetSelected (PyObject *self, PyObject *args)
(base_iter->lay & G.vd->lay)) &&
(base_iter != G.scene->basact))
{
- blen_object = (C_Object*)PyObject_NEW (C_Object, &Object_Type);
+ blen_object = (BPy_Object*)PyObject_NEW (BPy_Object, &Object_Type);
if (blen_object == NULL)
{
Py_DECREF (list);
@@ -496,23 +493,21 @@ static PyObject *M_Object_GetSelected (PyObject *self, PyObject *args)
/*****************************************************************************/
/* Function: initObject */
/*****************************************************************************/
-PyObject *M_Object_Init (void)
+PyObject *Object_Init (void)
{
PyObject * module;
- printf ("In initObject()\n");
-
Object_Type.ob_type = &PyType_Type;
- module = Py_InitModule3("Object", M_Object_methods, M_Object_doc);
+ module = Py_InitModule3("Blender.Object", M_Object_methods, M_Object_doc);
return (module);
}
/*****************************************************************************/
-/* Python C_Object methods: */
+/* Python BPy_Object methods: */
/*****************************************************************************/
-static PyObject *Object_clrParent (C_Object *self, PyObject *args)
+static PyObject *Object_clrParent (BPy_Object *self, PyObject *args)
{
int mode=0;
int fast=0;
@@ -541,7 +536,7 @@ static PyObject *Object_clrParent (C_Object *self, PyObject *args)
return (Py_None);
}
-static PyObject *Object_getData (C_Object *self)
+static PyObject *Object_getData (BPy_Object *self)
{
PyObject * data_object;
//# int obj_id;
@@ -569,7 +564,7 @@ static PyObject *Object_getData (C_Object *self)
switch (self->object->type)//#obj_id)
{
case OB_ARMATURE://#ID_AR:
- data_object = M_ArmatureCreatePyObject (self->object->data);
+ data_object = Armature_CreatePyObject (self->object->data);
break;
case OB_CAMERA://#ID_CA:
data_object = Camera_CreatePyObject (self->object->data);
@@ -591,7 +586,7 @@ static PyObject *Object_getData (C_Object *self)
data_object = NMesh_CreatePyObject (self->object->data);
break;
case ID_OB:
- data_object = M_ObjectCreatePyObject (self->object->data);
+ data_object = Object_CreatePyObject (self->object->data);
break;
case ID_SCE:
break;
@@ -615,13 +610,13 @@ static PyObject *Object_getData (C_Object *self)
}
}
-static PyObject *Object_getDeformData (C_Object *self)
+static PyObject *Object_getDeformData (BPy_Object *self)
{
return (PythonReturnErrorObject (PyExc_NotImplementedError,
"getDeformData: not yet implemented"));
}
-static PyObject *Object_getDeltaLocation (C_Object *self)
+static PyObject *Object_getDeltaLocation (BPy_Object *self)
{
PyObject *attr = Py_BuildValue ("fff",
self->object->dloc[0],
@@ -634,7 +629,7 @@ static PyObject *Object_getDeltaLocation (C_Object *self)
"couldn't get Object.dloc attributes"));
}
-static PyObject *Object_getDrawMode (C_Object *self)
+static PyObject *Object_getDrawMode (BPy_Object *self)
{
PyObject *attr = Py_BuildValue ("b", self->object->dtx);
@@ -644,7 +639,7 @@ static PyObject *Object_getDrawMode (C_Object *self)
"couldn't get Object.drawMode attribute"));
}
-static PyObject *Object_getDrawType (C_Object *self)
+static PyObject *Object_getDrawType (BPy_Object *self)
{
PyObject *attr = Py_BuildValue ("b", self->object->dt);
@@ -654,7 +649,7 @@ static PyObject *Object_getDrawType (C_Object *self)
"couldn't get Object.drawType attribute"));
}
-static PyObject *Object_getEuler (C_Object *self)
+static PyObject *Object_getEuler (BPy_Object *self)
{
PyObject *attr = Py_BuildValue ("fff",
self->object->drot[0],
@@ -667,7 +662,7 @@ static PyObject *Object_getEuler (C_Object *self)
"couldn't get Object.drot attributes"));
}
-static PyObject *Object_getInverseMatrix (C_Object *self)
+static PyObject *Object_getInverseMatrix (BPy_Object *self)
{
Object * ob;
float inverse[4][4];
@@ -678,7 +673,7 @@ static PyObject *Object_getInverseMatrix (C_Object *self)
return (newMatrixObject (inverse));
}
-static PyObject *Object_getLocation (C_Object *self, PyObject *args)
+static PyObject *Object_getLocation (BPy_Object *self, PyObject *args)
{
PyObject *attr = Py_BuildValue ("fff",
self->object->loc[0],
@@ -691,14 +686,14 @@ static PyObject *Object_getLocation (C_Object *self, PyObject *args)
"couldn't get Object.loc attributes"));
}
-static PyObject *Object_getMaterials (C_Object *self)
+static PyObject *Object_getMaterials (BPy_Object *self)
{
/* TODO: Implement when the Material module is implemented. */
return (PythonReturnErrorObject (PyExc_NotImplementedError,
"getMaterials: not yet implemented"));
}
-static PyObject *Object_getMatrix (C_Object *self)
+static PyObject *Object_getMatrix (BPy_Object *self)
{
Object * ob;
@@ -707,7 +702,7 @@ static PyObject *Object_getMatrix (C_Object *self)
return (newMatrixObject (ob->obmat));
}
-static PyObject *Object_getParent (C_Object *self)
+static PyObject *Object_getParent (BPy_Object *self)
{
PyObject *attr;
@@ -721,11 +716,11 @@ static PyObject *Object_getParent (C_Object *self)
{
return (EXPP_incr_ret (Py_None));
}
- attr = M_ObjectCreatePyObject (self->object->parent);
+ attr = Object_CreatePyObject (self->object->parent);
if (attr)
{
- self->parent = (struct C_Object*)attr;
+ self->parent = (struct BPy_Object*)attr;
return (attr);
}
@@ -733,7 +728,7 @@ static PyObject *Object_getParent (C_Object *self)
"couldn't get Object.parent attribute"));
}
-static PyObject *Object_getTracked (C_Object *self)
+static PyObject *Object_getTracked (BPy_Object *self)
{
PyObject *attr;
@@ -744,11 +739,11 @@ static PyObject *Object_getTracked (C_Object *self)
}
/* TODO: what if self->object->track==NULL? Should we return Py_None? */
- attr = M_ObjectCreatePyObject (self->object->track);
+ attr = Object_CreatePyObject (self->object->track);
if (attr)
{
- self->track = (struct C_Object*)attr;
+ self->track = (struct BPy_Object*)attr;
return (attr);
}
@@ -756,7 +751,7 @@ static PyObject *Object_getTracked (C_Object *self)
"couldn't get Object.track attribute"));
}
-static PyObject *Object_getType (C_Object *self)
+static PyObject *Object_getType (BPy_Object *self)
{
switch (self->object->type)
{
@@ -776,7 +771,7 @@ static PyObject *Object_getType (C_Object *self)
}
}
-static PyObject *Object_link (C_Object *self, PyObject *args)
+static PyObject *Object_link (BPy_Object *self, PyObject *args)
{
PyObject * py_data;
ID * id;
@@ -844,11 +839,11 @@ static PyObject *Object_link (C_Object *self, PyObject *args)
return (Py_None);
}
-static PyObject *Object_makeParent (C_Object *self, PyObject *args)
+static PyObject *Object_makeParent (BPy_Object *self, PyObject *args)
{
PyObject * list;
PyObject * py_child;
- C_Object * py_obj_child;
+ BPy_Object * py_obj_child;
Object * child;
Object * parent;
int noninverse;
@@ -872,8 +867,8 @@ static PyObject *Object_makeParent (C_Object *self, PyObject *args)
{
child = NULL;
py_child = PySequence_GetItem (list, i);
- if (M_ObjectCheckPyObject (py_child))
- child = (Object*) M_ObjectFromPyObject (py_child);
+ if (Object_CheckPyObject (py_child))
+ child = (Object*) Object_FromPyObject (py_child);
if (child == NULL)
{
@@ -889,8 +884,8 @@ static PyObject *Object_makeParent (C_Object *self, PyObject *args)
}
child->partype = PAROBJECT;
child->parent = parent;
- py_obj_child = (C_Object *) py_child;
- py_obj_child->parent = (struct C_Object *)self;
+ py_obj_child = (BPy_Object *) py_child;
+ py_obj_child->parent = (struct BPy_Object *)self;
if (noninverse == 1)
{
/* Parent inverse = unity */
@@ -915,13 +910,13 @@ static PyObject *Object_makeParent (C_Object *self, PyObject *args)
return (Py_None);
}
-static PyObject *Object_materialUsage (C_Object *self, PyObject *args)
+static PyObject *Object_materialUsage (BPy_Object *self, PyObject *args)
{
return (PythonReturnErrorObject (PyExc_NotImplementedError,
"materialUsage: not yet implemented"));
}
-static PyObject *Object_setDeltaLocation (C_Object *self, PyObject *args)
+static PyObject *Object_setDeltaLocation (BPy_Object *self, PyObject *args)
{
float dloc1;
float dloc2;
@@ -941,7 +936,7 @@ static PyObject *Object_setDeltaLocation (C_Object *self, PyObject *args)
return (Py_None);
}
-static PyObject *Object_setDrawMode (C_Object *self, PyObject *args)
+static PyObject *Object_setDrawMode (BPy_Object *self, PyObject *args)
{
char dt;
@@ -956,7 +951,7 @@ static PyObject *Object_setDrawMode (C_Object *self, PyObject *args)
return (Py_None);
}
-static PyObject *Object_setDrawType (C_Object *self, PyObject *args)
+static PyObject *Object_setDrawType (BPy_Object *self, PyObject *args)
{
char dtx;
@@ -971,7 +966,7 @@ static PyObject *Object_setDrawType (C_Object *self, PyObject *args)
return (Py_None);
}
-static PyObject *Object_setEuler (C_Object *self, PyObject *args)
+static PyObject *Object_setEuler (BPy_Object *self, PyObject *args)
{
float drot1;
float drot2;
@@ -991,7 +986,7 @@ static PyObject *Object_setEuler (C_Object *self, PyObject *args)
return (Py_None);
}
-static PyObject *Object_setLocation (C_Object *self, PyObject *args)
+static PyObject *Object_setLocation (BPy_Object *self, PyObject *args)
{
float loc1;
float loc2;
@@ -1011,7 +1006,7 @@ static PyObject *Object_setLocation (C_Object *self, PyObject *args)
return (Py_None);
}
-static PyObject *Object_setMaterials (C_Object *self, PyObject *args)
+static PyObject *Object_setMaterials (BPy_Object *self, PyObject *args)
{
#if 0
PyObject * list;
@@ -1075,9 +1070,9 @@ static PyObject *Object_setMaterials (C_Object *self, PyObject *args)
"setMaterials: not yet implemented"));
}
-static PyObject *Object_shareFrom (C_Object *self, PyObject *args)
+static PyObject *Object_shareFrom (BPy_Object *self, PyObject *args)
{
- C_Object * object;
+ BPy_Object * object;
ID * id;
ID * oldid;
@@ -1087,7 +1082,7 @@ static PyObject *Object_shareFrom (C_Object *self, PyObject *args)
"expected an object argument");
return (NULL);
}
- if (!M_ObjectCheckPyObject ((PyObject*)object))
+ if (!Object_CheckPyObject ((PyObject*)object))
{
PythonReturnErrorObject (PyExc_TypeError,
"argument 1 is not of type 'Object'");
@@ -1135,17 +1130,15 @@ static PyObject *Object_shareFrom (C_Object *self, PyObject *args)
}
/*****************************************************************************/
-/* Function: M_ObjectCreatePyObject */
+/* Function: Object_CreatePyObject */
/* Description: This function will create a new BlenObject from an existing */
/* Object structure. */
/*****************************************************************************/
-PyObject* M_ObjectCreatePyObject (struct Object *obj)
+PyObject* Object_CreatePyObject (struct Object *obj)
{
- C_Object * blen_object;
+ BPy_Object * blen_object;
- printf ("In M_ObjectCreatePyObject\n");
-
- blen_object = (C_Object*)PyObject_NEW (C_Object, &Object_Type);
+ blen_object = (BPy_Object*)PyObject_NEW (BPy_Object, &Object_Type);
if (blen_object == NULL)
{
@@ -1156,45 +1149,45 @@ PyObject* M_ObjectCreatePyObject (struct Object *obj)
}
/*****************************************************************************/
-/* Function: M_ObjectCheckPyObject */
+/* Function: Object_CheckPyObject */
/* Description: This function returns true when the given PyObject is of the */
/* type Object. Otherwise it will return false. */
/*****************************************************************************/
-int M_ObjectCheckPyObject (PyObject *py_obj)
+int Object_CheckPyObject (PyObject *py_obj)
{
return (py_obj->ob_type == &Object_Type);
}
/*****************************************************************************/
-/* Function: M_ObjectFromPyObject */
+/* Function: Object_FromPyObject */
/* Description: This function returns the Blender object from the given */
/* PyObject. */
/*****************************************************************************/
-struct Object* M_ObjectFromPyObject (PyObject *py_obj)
+struct Object* Object_FromPyObject (PyObject *py_obj)
{
- C_Object * blen_obj;
+ BPy_Object * blen_obj;
- blen_obj = (C_Object*)py_obj;
+ blen_obj = (BPy_Object*)py_obj;
return (blen_obj->object);
}
/*****************************************************************************/
-/* Function: ObjectDeAlloc */
+/* Function: Object_dealloc */
/* Description: This is a callback function for the BlenObject type. It is */
/* the destructor function. */
/*****************************************************************************/
-static void ObjectDeAlloc (C_Object *obj)
+static void Object_dealloc (BPy_Object *obj)
{
PyObject_DEL (obj);
}
/*****************************************************************************/
-/* Function: ObjectGetAttr */
+/* Function: Object_getAttr */
/* Description: This is a callback function for the BlenObject type. It is */
/* the function that retrieves any value from Blender and */
/* passes it to Python. */
/*****************************************************************************/
-static PyObject* ObjectGetAttr (C_Object *obj, char *name)
+static PyObject* Object_getAttr (BPy_Object *obj, char *name)
{
struct Object * object;
struct Ika * ika;
@@ -1277,9 +1270,9 @@ static PyObject* ObjectGetAttr (C_Object *obj, char *name)
if (StringEqual (name, "Layer"))
return (PyInt_FromLong(object->lay));
if (StringEqual (name, "parent"))
- return (M_ObjectCreatePyObject (object->parent));
+ return (Object_CreatePyObject (object->parent));
if (StringEqual (name, "track"))
- return (M_ObjectCreatePyObject (object->track));
+ return (Object_CreatePyObject (object->track));
if (StringEqual (name, "data"))
return (Object_getData (obj));
if (StringEqual (name, "ipo"))
@@ -1302,16 +1295,16 @@ static PyObject* ObjectGetAttr (C_Object *obj, char *name)
return (Py_BuildValue ("b", object->dtx));
/* not an attribute, search the methods table */
- return Py_FindMethod(C_Object_methods, (PyObject *)obj, name);
+ return Py_FindMethod(BPy_Object_methods, (PyObject *)obj, name);
}
/*****************************************************************************/
-/* Function: ObjectSetAttr */
+/* Function: Object_setAttr */
/* Description: This is a callback function for the BlenObject type. It is */
/* the function that retrieves any value from Python and sets */
/* it accordingly in Blender. */
/*****************************************************************************/
-static int ObjectSetAttr (C_Object *obj, char *name, PyObject *value)
+static int Object_setAttr (BPy_Object *obj, char *name, PyObject *value)
{
struct Object * object;
struct Ika * ika;
@@ -1469,22 +1462,36 @@ static int ObjectSetAttr (C_Object *obj, char *name, PyObject *value)
}
/*****************************************************************************/
-/* Function: ObjectPrint */
-/* Description: This is a callback function for the C_Object type. It */
+/* Function: Object_compare */
+/* Description: This is a callback function for the BPy_Object type. It */
+/* compares two Object_Type objects. Only the "==" and "!=" */
+/* comparisons are meaninful. Returns 0 for equality and -1 if */
+/* they don't point to the same Blender Object struct. */
+/* In Python it becomes 1 if they are equal, 0 otherwise. */
+/*****************************************************************************/
+static int Object_compare (BPy_Object *a, BPy_Object *b)
+{
+ Object *pa = a->object, *pb = b->object;
+ return (pa == pb) ? 0:-1;
+}
+
+/*****************************************************************************/
+/* Function: Object_print */
+/* Description: This is a callback function for the BPy_Object type. It */
/* builds a meaninful string to 'print' object objects. */
/*****************************************************************************/
-static int ObjectPrint(C_Object *self, FILE *fp, int flags)
+static int Object_print(BPy_Object *self, FILE *fp, int flags)
{
fprintf(fp, "[Object \"%s\"]", self->object->id.name+2);
return 0;
}
/*****************************************************************************/
-/* Function: ObjectRepr */
-/* Description: This is a callback function for the C_Object type. It */
+/* Function: Object_repr */
+/* Description: This is a callback function for the BPy_Object type. It */
/* builds a meaninful string to represent object objects. */
/*****************************************************************************/
-static PyObject *ObjectRepr (C_Object *self)
+static PyObject *Object_repr (BPy_Object *self)
{
return PyString_FromString(self->object->id.name+2);
}
diff --git a/source/blender/python/api2_2x/Object.h b/source/blender/python/api2_2x/Object.h
index b64977c17be..604ac4b6a3c 100644
--- a/source/blender/python/api2_2x/Object.h
+++ b/source/blender/python/api2_2x/Object.h
@@ -60,13 +60,13 @@
/* The Object PyType Object defined in Object.c */
extern PyTypeObject Object_Type;
-#define C_Object_Check(v) \
+#define BPy_Object_Check(v) \
((v)->ob_type == &Object_Type) /* for type checking */
/*****************************************************************************/
-/* Python C_Object structure definition. */
+/* Python BPy_Object structure definition. */
/*****************************************************************************/
-struct C_Object;
+struct BPy_Object;
typedef struct {
PyObject_HEAD
@@ -78,11 +78,11 @@ typedef struct {
/* points to the parent object. This is only set when there's a valid */
/* PyObject (already created at some point). */
- struct C_Object * parent;
+ struct BPy_Object * parent;
/* points to the object that is tracking this object. This is only set */
/* when there's a valid PyObject (already created at some point). */
- struct C_Object * track;
-} C_Object;
+ struct BPy_Object * track;
+} BPy_Object;
#endif /* EXPP_OBJECT_H */
diff --git a/source/blender/python/api2_2x/Particle.c b/source/blender/python/api2_2x/Particle.c
index 29beaa98eab..f438eb5ad3f 100644
--- a/source/blender/python/api2_2x/Particle.c
+++ b/source/blender/python/api2_2x/Particle.c
@@ -254,9 +254,9 @@ PyObject *M_Particle_Get(PyObject *self, PyObject *args)
}
/*****************************************************************************/
-/* Function: M_Particle_Init */
+/* Function: Particle_Init */
/*****************************************************************************/
-PyObject *M_Particle_Init (void)
+PyObject *Particle_Init (void)
{
PyObject *submodule;
Particle_Type.ob_type = &PyType_Type;
diff --git a/source/blender/python/api2_2x/Scene.c b/source/blender/python/api2_2x/Scene.c
index 201233ea298..72516fc02a3 100644
--- a/source/blender/python/api2_2x/Scene.c
+++ b/source/blender/python/api2_2x/Scene.c
@@ -162,12 +162,12 @@ static PyMethodDef BPy_Scene_methods[] = {
/*****************************************************************************/
/* Python Scene_Type callback function prototypes: */
/*****************************************************************************/
-static void Scene_DeAlloc (BPy_Scene *self);
-static int Scene_Print (BPy_Scene *self, FILE *fp, int flags);
-static int Scene_SetAttr (BPy_Scene *self, char *name, PyObject *v);
-static int Scene_Compare (BPy_Scene *a, BPy_Scene *b);
-static PyObject *Scene_GetAttr (BPy_Scene *self, char *name);
-static PyObject *Scene_Repr (BPy_Scene *self);
+static void Scene_dealloc (BPy_Scene *self);
+static int Scene_print (BPy_Scene *self, FILE *fp, int flags);
+static int Scene_setAttr (BPy_Scene *self, char *name, PyObject *v);
+static int Scene_compare (BPy_Scene *a, BPy_Scene *b);
+static PyObject *Scene_getAttr (BPy_Scene *self, char *name);
+static PyObject *Scene_repr (BPy_Scene *self);
/*****************************************************************************/
/* Python Scene_Type structure definition: */
@@ -180,12 +180,12 @@ PyTypeObject Scene_Type =
sizeof (BPy_Scene), /* tp_basicsize */
0, /* tp_itemsize */
/* methods */
- (destructor)Scene_DeAlloc, /* tp_dealloc */
- (printfunc)Scene_Print, /* tp_print */
- (getattrfunc)Scene_GetAttr, /* tp_getattr */
- (setattrfunc)Scene_SetAttr, /* tp_setattr */
- (cmpfunc)Scene_Compare, /* tp_compare */
- (reprfunc)Scene_Repr, /* tp_repr */
+ (destructor)Scene_dealloc, /* tp_dealloc */
+ (printfunc)Scene_print, /* tp_print */
+ (getattrfunc)Scene_getAttr, /* tp_getattr */
+ (setattrfunc)Scene_setAttr, /* tp_setattr */
+ (cmpfunc)Scene_compare, /* tp_compare */
+ (reprfunc)Scene_repr, /* tp_repr */
0, /* tp_as_number */
0, /* tp_as_sequence */
0, /* tp_as_mapping */
@@ -204,8 +204,6 @@ static PyObject *M_Scene_New(PyObject *self, PyObject *args, PyObject *kword)
PyObject *pyscene; /* for the Scene object wrapper in Python */
Scene *blscene; /* for the actual Scene we create in Blender */
- printf ("In Scene_New()\n");
-
if (!PyArg_ParseTupleAndKeywords(args, kword, "|s", kw, &name))
return (EXPP_ReturnPyObjError (PyExc_AttributeError,
"expected a string or an empty argument list"));
@@ -315,8 +313,6 @@ PyObject *Scene_Init (void)
{
PyObject *submodule;
- printf ("In M_Scene_Init()\n");
-
Scene_Type.ob_type = &PyType_Type;
submodule = Py_InitModule3("Blender.Scene",
@@ -464,7 +460,7 @@ static PyObject *Scene_update (BPy_Scene *self)
static PyObject *Scene_link (BPy_Scene *self, PyObject *args)
{
Scene *scene = self->scene;
- C_Object *bpy_obj; /* XXX Change to BPy or whatever is chosen */
+ BPy_Object *bpy_obj; /* XXX Change to BPy or whatever is chosen */
if (!scene)
return EXPP_ReturnPyObjError (PyExc_RuntimeError,
@@ -511,7 +507,7 @@ static PyObject *Scene_link (BPy_Scene *self, PyObject *args)
static PyObject *Scene_unlink (BPy_Scene *self, PyObject *args)
{
- C_Object *bpy_obj = NULL;
+ BPy_Object *bpy_obj = NULL;
Object *object;
Scene *scene = self->scene;
Base *base;
@@ -638,7 +634,7 @@ static PyObject *Scene_getCurrentCamera (BPy_Scene *self)
static PyObject *Scene_setCurrentCamera (BPy_Scene *self, PyObject *args)
{
Object *object;
- C_Object *cam_obj;
+ BPy_Object *cam_obj;
Scene *scene = self->scene;
if (!scene)
@@ -663,12 +659,12 @@ static PyObject *Scene_setCurrentCamera (BPy_Scene *self, PyObject *args)
return Py_None;
}
-static void Scene_DeAlloc (BPy_Scene *self)
+static void Scene_dealloc (BPy_Scene *self)
{
PyObject_DEL (self);
}
-static PyObject *Scene_GetAttr (BPy_Scene *self, char *name)
+static PyObject *Scene_getAttr (BPy_Scene *self, char *name)
{
PyObject *attr = Py_None;
@@ -689,7 +685,7 @@ static PyObject *Scene_GetAttr (BPy_Scene *self, char *name)
return Py_FindMethod(BPy_Scene_methods, (PyObject *)self, name);
}
-static int Scene_SetAttr (BPy_Scene *self, char *name, PyObject *value)
+static int Scene_setAttr (BPy_Scene *self, char *name, PyObject *value)
{
PyObject *valtuple;
PyObject *error = NULL;
@@ -728,19 +724,19 @@ static int Scene_SetAttr (BPy_Scene *self, char *name, PyObject *value)
return 0; /* normal exit */
}
-static int Scene_Compare (BPy_Scene *a, BPy_Scene *b)
+static int Scene_compare (BPy_Scene *a, BPy_Scene *b)
{
Scene *pa = a->scene, *pb = b->scene;
return (pa == pb) ? 0:-1;
}
-static int Scene_Print(BPy_Scene *self, FILE *fp, int flags)
+static int Scene_print(BPy_Scene *self, FILE *fp, int flags)
{
fprintf(fp, "[Scene \"%s\"]", self->scene->id.name+2);
return 0;
}
-static PyObject *Scene_Repr (BPy_Scene *self)
+static PyObject *Scene_repr (BPy_Scene *self)
{
return PyString_FromString(self->scene->id.name+2);
}
diff --git a/source/blender/python/api2_2x/Scene.h b/source/blender/python/api2_2x/Scene.h
index 4f3df06f1ed..ccb25a1dc51 100644
--- a/source/blender/python/api2_2x/Scene.h
+++ b/source/blender/python/api2_2x/Scene.h
@@ -57,7 +57,7 @@ typedef struct {
/* Python Scene_Type helper functions needed by Blender (the Init function) */
/* and Object modules. */
/*****************************************************************************/
-PyObject *M_Scene_Init (void);
+PyObject *Scene_Init (void);
PyObject *Scene_CreatePyObject (Scene *cam);
Scene *Scene_FromPyObject (PyObject *pyobj);
int Scene_CheckPyObject (PyObject *pyobj);
diff --git a/source/blender/python/api2_2x/Sys.c b/source/blender/python/api2_2x/Sys.c
new file mode 100644
index 00000000000..e093b51f471
--- /dev/null
+++ b/source/blender/python/api2_2x/Sys.c
@@ -0,0 +1,87 @@
+/*
+ *
+ * ***** BEGIN GPL/BL DUAL LICENSE BLOCK *****
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version. The Blender
+ * Foundation also sells licenses for use in proprietary software under
+ * the Blender License. See http://www.blender.org/BL/ for information
+ * about this.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software Foundation,
+ * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ *
+ * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV.
+ * All rights reserved.
+ *
+ * This is a new part of Blender.
+ *
+ * Contributor(s): Willian P. Germano
+ *
+ * ***** END GPL/BL DUAL LICENSE BLOCK *****
+*/
+
+#include "Sys.h"
+
+static PyObject *g_sysmodule = Py_None; /* pointer to Blender.sys module */
+
+PyObject *sys_Init (void)
+{
+ PyObject *submodule, *dict, *sep;
+
+ submodule = Py_InitModule3("Blender.sys", M_sys_methods, M_sys_doc);
+
+ g_sysmodule = submodule;
+
+ dict = PyModule_GetDict(submodule);
+
+#ifdef WIN32
+ sep = Py_BuildValue("s", "\\");
+#else
+ sep = Py_BuildValue("s", "/");
+#endif
+
+ if (sep) {
+ Py_INCREF(sep);
+ PyDict_SetItemString(dict, "dirsep" , sep);
+ PyDict_SetItemString(dict, "sep" , sep);
+ }
+
+ return submodule;
+}
+
+static PyObject *M_sys_dirname (PyObject *self, PyObject *args)
+{
+ PyObject *c;
+
+ char *name, dirname[256];
+ char sep;
+ int n;
+
+ if (!PyArg_ParseTuple(args, "s", &name))
+ return EXPP_ReturnPyObjError (PyExc_TypeError,
+ "expected string argument");
+
+ c = PyObject_GetAttrString (g_sysmodule, "dirsep");
+ sep = PyString_AsString(c)[0];
+ Py_DECREF(c);
+
+ n = strrchr(name, sep) - name;
+ if (n > 255) {
+ PyErr_SetString(PyExc_RuntimeError, "path too long");
+ return 0;
+ }
+
+ strncpy(dirname, name, n);
+ dirname[n] = 0;
+
+ return Py_BuildValue("s", dirname);
+}
diff --git a/source/blender/python/api2_2x/Sys.h b/source/blender/python/api2_2x/Sys.h
new file mode 100644
index 00000000000..8ecb9046f33
--- /dev/null
+++ b/source/blender/python/api2_2x/Sys.h
@@ -0,0 +1,66 @@
+/*
+ *
+ * ***** BEGIN GPL/BL DUAL LICENSE BLOCK *****
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version. The Blender
+ * Foundation also sells licenses for use in proprietary software under
+ * the Blender License. See http://www.blender.org/BL/ for information
+ * about this.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software Foundation,
+ * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ *
+ * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV.
+ * All rights reserved.
+ *
+ * This is a new part of Blender.
+ *
+ * Contributor(s): Willian P. Germano
+ *
+ * ***** END GPL/BL DUAL LICENSE BLOCK *****
+*/
+
+#ifndef EXPP_sys_H
+#define EXPP_sys_H
+
+#include <Python.h>
+#include <BLI_blenlib.h> /* for BLI_last_slash() */
+#include "gen_utils.h"
+#include "modules.h"
+
+/*****************************************************************************/
+/* Python API function prototypes for the sys module. */
+/*****************************************************************************/
+static PyObject *M_sys_dirname (PyObject *self, PyObject *args);
+
+/*****************************************************************************/
+/* The following string definitions are used for documentation strings. */
+/* In Python these will be written to the console when doing a */
+/* Blender.sys.__doc__ */
+/*****************************************************************************/
+static char M_sys_doc[] =
+"The Blender.sys submodule\n\
+\n\
+This is a minimal sys module kept for compatibility. It may also still be\n\
+useful for users without full Python installations.\n";
+
+static char M_sys_dirname_doc[] = "";
+
+/*****************************************************************************/
+/* Python method structure definition for Blender.sys module: */
+/*****************************************************************************/
+struct PyMethodDef M_sys_methods[] = {
+ {"dirname", M_sys_dirname, METH_VARARGS, M_sys_dirname_doc},
+ {NULL, NULL, 0, NULL}
+};
+
+#endif /* EXPP_sys_H */
diff --git a/source/blender/python/api2_2x/Text.c b/source/blender/python/api2_2x/Text.c
index bdb15899b95..b08da585c2e 100644
--- a/source/blender/python/api2_2x/Text.c
+++ b/source/blender/python/api2_2x/Text.c
@@ -400,9 +400,8 @@ static void Text_dealloc (BPy_Text *self)
static PyObject *Text_getAttr (BPy_Text *self, char *name)
{
PyObject *attr = Py_None;
- Text *text = self->text;
- if (!text || !Text_IsLinked(text))
+ if (!self->text || !Text_IsLinked(self))
return EXPP_ReturnPyObjError (PyExc_RuntimeError,
"Text was already deleted!");
@@ -439,9 +438,8 @@ static int Text_setAttr (BPy_Text *self, char *name, PyObject *value)
{
PyObject *valtuple;
PyObject *error = NULL;
- Text *text = self->text;
- if (!text || !Text_IsLinked(text))
+ if (!self->text || !Text_IsLinked(self))
return EXPP_ReturnIntError (PyExc_RuntimeError,
"Text was already deleted!");
@@ -494,7 +492,7 @@ static int Text_compare (BPy_Text *a, BPy_Text *b)
/*****************************************************************************/
static int Text_print(BPy_Text *self, FILE *fp, int flags)
{
- if (self->text && Text_IsLinked(self->text))
+ if (self->text && Text_IsLinked(self))
fprintf(fp, "[Text \"%s\"]", self->text->id.name+2);
else
fprintf(fp, "[Text <deleted>]");
@@ -509,23 +507,25 @@ static int Text_print(BPy_Text *self, FILE *fp, int flags)
/*****************************************************************************/
static PyObject *Text_repr (BPy_Text *self)
{
- if (self->text && Text_IsLinked(self->text))
+ if (self->text && Text_IsLinked(self))
return PyString_FromString(self->text->id.name+2);
else
return PyString_FromString("<deleted>");
}
-/* internal function to confirm if a Text wasn't unlinked */
-static int Text_IsLinked(Text *text)
+/* Internal function to confirm if a Text wasn't unlinked.
+ * This is necessary because without it, if a script writer
+ * referenced an already unlinked Text obj, Blender would crash. */
+static int Text_IsLinked(BPy_Text *self)
{
Text *txt_iter = G.main->text.first;
while (txt_iter) {
- if (text == txt_iter) return 1;
+ if (self->text == txt_iter) return 1; /* ok, still linked */
+
txt_iter = txt_iter->id.next;
}
-
+/* uh-oh, it was already deleted */
+ self->text = NULL; /* so we invalidate the pointer */
return 0;
}
-
-
diff --git a/source/blender/python/api2_2x/Text.h b/source/blender/python/api2_2x/Text.h
index d902c48c4f4..b2ce00c1253 100644
--- a/source/blender/python/api2_2x/Text.h
+++ b/source/blender/python/api2_2x/Text.h
@@ -178,6 +178,6 @@ PyTypeObject Text_Type =
0, /* tp_members */
};
-static int Text_IsLinked(Text *text);
+static int Text_IsLinked(BPy_Text *self);
#endif /* EXPP_TEXT_H */
diff --git a/source/blender/python/api2_2x/Wave.c b/source/blender/python/api2_2x/Wave.c
index ab2e5639c23..f967ed0d08d 100644
--- a/source/blender/python/api2_2x/Wave.c
+++ b/source/blender/python/api2_2x/Wave.c
@@ -166,8 +166,6 @@ int type = EFF_WAVE;
BPy_Effect *pyeffect;
Effect *bleffect = 0;
- printf ("In Effect_New()\n");
-
bleffect = add_effect(type);
if (bleffect == NULL)
return (EXPP_ReturnPyObjError (PyExc_RuntimeError,
@@ -198,7 +196,7 @@ PyObject *M_Wave_Get(PyObject *self, PyObject *args)
Effect *eff;
BPy_Wave *wanted_eff;
int num,i;
- printf ("In Effect_Get()\n");
+
if (!PyArg_ParseTuple(args, "si", &name, &num ))
return(EXPP_ReturnPyObjError(PyExc_AttributeError,\
"expected string int argument"));
@@ -237,12 +235,12 @@ PyObject *M_Wave_Get(PyObject *self, PyObject *args)
}
/*****************************************************************************/
-/* Function: M_Wave_Init */
+/* Function: Wave_Init */
/*****************************************************************************/
-PyObject *M_Wave_Init (void)
+PyObject *Wave_Init (void)
{
PyObject *submodule;
- printf ("In M_Wave_Init()\n");
+
Wave_Type.ob_type = &PyType_Type;
submodule = Py_InitModule3("Blender.Wave",M_Wave_methods, M_Wave_doc);
return (submodule);
@@ -548,7 +546,6 @@ PyObject* WaveCreatePyObject (struct Effect *wave)
{
BPy_Wave * blen_object;
- printf ("In WaveCreatePyObject\n");
blen_object = (BPy_Wave*)PyObject_NEW (BPy_Wave, &Wave_Type);
diff --git a/source/blender/python/api2_2x/Window.c b/source/blender/python/api2_2x/Window.c
index 24387b61557..6a7bba3f851 100644
--- a/source/blender/python/api2_2x/Window.c
+++ b/source/blender/python/api2_2x/Window.c
@@ -175,7 +175,7 @@ static PyObject *M_Window_ImageSelector(PyObject *self, PyObject *args)
static PyObject *M_Window_DrawProgressBar(PyObject *self, PyObject *args)
{
float done;
- char *info = 0;
+ char *info = NULL;
int retval;
if(!PyArg_ParseTuple(args, "fs", &done, &info))
@@ -194,8 +194,6 @@ PyObject *Window_Init (void)
{
PyObject *submodule, *Types;
- printf ("In M_Window_Init()\n");
-
submodule = Py_InitModule3("Blender.Window", M_Window_methods, M_Window_doc);
Types = Py_BuildValue("{s:h,s:h,s:h,s:h,s:h,s:h,s:h,s:h,s:h,s:h,s:h,s:h,s:h}",
diff --git a/source/blender/python/api2_2x/Window.h b/source/blender/python/api2_2x/Window.h
index 758dd7f6996..c2831457019 100644
--- a/source/blender/python/api2_2x/Window.h
+++ b/source/blender/python/api2_2x/Window.h
@@ -107,7 +107,7 @@ def my_function(filename):\n\
Blender.Window.ImageSelector(my_function, 'LOAD IMAGE')\n";
char M_Window_DrawProgressBar_doc[] =
-"(done, text) - Draw a progressbar.\n\
+"(done, text) - Draw a progress bar.\n\
'done' is a float value <= 1.0, 'text' contains info about what is\n\
currently being done.";
diff --git a/source/blender/python/api2_2x/World.c b/source/blender/python/api2_2x/World.c
index 2ffb3ebef5c..84d82a2fe70 100644
--- a/source/blender/python/api2_2x/World.c
+++ b/source/blender/python/api2_2x/World.c
@@ -209,12 +209,10 @@ static PyObject *M_World_Get(PyObject *self, PyObject *args)
* \return PyObject*: The initialized submodule.
*/
-PyObject *M_World_Init (void)
+PyObject *World_Init (void)
{
PyObject *submodule;
- printf ("In M_World_Init()\n");
-
World_Type.ob_type = &PyType_Type;
submodule = Py_InitModule3("Blender.World",
diff --git a/source/blender/python/api2_2x/World.h b/source/blender/python/api2_2x/World.h
index 6063e0a27ad..6e5c16f5f14 100644
--- a/source/blender/python/api2_2x/World.h
+++ b/source/blender/python/api2_2x/World.h
@@ -175,7 +175,7 @@ static PyMethodDef BPy_World_methods[] = {
/* Python World_Type helper functions needed by Blender (the Init function) */
/* and Object modules. */
/*****************************************************************************/
-PyObject *M_World_Init (void);
+PyObject *World_Init (void);
PyObject *World_CreatePyObject (World *cam);
World *World_FromPyObject (PyObject *pyobj);
int World_CheckPyObject (PyObject *pyobj);
diff --git a/source/blender/python/api2_2x/constant.c b/source/blender/python/api2_2x/constant.c
index 16dad732a48..208d17777db 100644
--- a/source/blender/python/api2_2x/constant.c
+++ b/source/blender/python/api2_2x/constant.c
@@ -37,12 +37,12 @@
/*****************************************************************************/
/* Python constant_Type callback function prototypes: */
/*****************************************************************************/
-static void constantDeAlloc (C_constant *cam);
-static PyObject *constantGetAttr (C_constant *cam, char *name);
-static PyObject *constantRepr (C_constant *cam);
-static int constantLength(C_constant *self);
-static PyObject *constantSubscript(C_constant *self, PyObject *key);
-static int constantAssSubscript(C_constant *self, PyObject *who,
+static void constant_dealloc (BPy_constant *cam);
+static PyObject *constant_getAttr (BPy_constant *cam, char *name);
+static PyObject *constant_repr (BPy_constant *cam);
+static int constantLength(BPy_constant *self);
+static PyObject *constantSubscript(BPy_constant *self, PyObject *key);
+static int constantAssSubscript(BPy_constant *self, PyObject *who,
PyObject *cares);
/*****************************************************************************/
@@ -62,16 +62,16 @@ PyTypeObject constant_Type =
{
PyObject_HEAD_INIT(NULL)
0, /* ob_size */
- "constant", /* tp_name */
- sizeof (C_constant), /* tp_basicsize */
+ "Blender constant", /* tp_name */
+ sizeof (BPy_constant), /* tp_basicsize */
0, /* tp_itemsize */
/* methods */
- (destructor)constantDeAlloc, /* tp_dealloc */
+ (destructor)constant_dealloc, /* tp_dealloc */
0, /* tp_print */
- (getattrfunc)constantGetAttr, /* tp_getattr */
+ (getattrfunc)constant_getAttr, /* tp_getattr */
0, /* tp_setattr */
0, /* tp_compare */
- (reprfunc)constantRepr, /* tp_repr */
+ (reprfunc)constant_repr, /* tp_repr */
0, /* tp_as_number */
0, /* tp_as_sequence */
&constantAsMapping, /* tp_as_mapping */
@@ -95,13 +95,11 @@ PyObject *M_constant_New(void) /* can't be static, we call it in other files */
static PyObject *new_const(void)
{ /* this is the static one */
- C_constant *constant;
+ BPy_constant *constant;
constant_Type.ob_type = &PyType_Type;
- printf ("In constant_New()\n");
-
- constant = (C_constant *)PyObject_NEW(C_constant, &constant_Type);
+ constant = (BPy_constant *)PyObject_NEW(BPy_constant, &constant_Type);
if (constant == NULL)
return (PythonReturnErrorObject (PyExc_MemoryError,
@@ -115,31 +113,31 @@ static PyObject *new_const(void)
}
/*****************************************************************************/
-/* Python C_constant methods: */
+/* Python BPy_constant methods: */
/*****************************************************************************/
-int constant_insert (C_constant *self, char *name, PyObject *value)
+int constant_insert (BPy_constant *self, char *name, PyObject *value)
{
return PyDict_SetItemString (self->dict, name, value);
}
/*****************************************************************************/
-/* Function: constantDeAlloc */
-/* Description: This is a callback function for the C_constant type. It is */
+/* Function: constant_dealloc */
+/* Description: This is a callback function for the BPy_constant type. It is */
/* the destructor function. */
/*****************************************************************************/
-static void constantDeAlloc (C_constant *self)
+static void constant_dealloc (BPy_constant *self)
{
Py_DECREF(self->dict);
PyObject_DEL (self);
}
/*****************************************************************************/
-/* Function: constantGetAttr */
-/* Description: This is a callback function for the C_constant type. It is */
-/* the function that accesses C_constant member variables and */
+/* Function: constant_getAttr */
+/* Description: This is a callback function for the BPy_constant type. It is */
+/* the function that accesses BPy_constant member variables and */
/* methods. */
/*****************************************************************************/
-static PyObject *constantGetAttr (C_constant *self, char *name)
+static PyObject *constant_getAttr (BPy_constant *self, char *name)
{
if (self->dict)
{
@@ -166,12 +164,12 @@ static PyObject *constantGetAttr (C_constant *self, char *name)
/* These functions provide code to access constant objects as */
/* mappings. */
/*****************************************************************************/
-static int constantLength(C_constant *self)
+static int constantLength(BPy_constant *self)
{
return 0;
}
-static PyObject *constantSubscript(C_constant *self, PyObject *key)
+static PyObject *constantSubscript(BPy_constant *self, PyObject *key)
{
if (self->dict) {
PyObject *v = PyDict_GetItem(self->dict, key);
@@ -185,7 +183,7 @@ static PyObject *constantSubscript(C_constant *self, PyObject *key)
return NULL;
}
-static int constantAssSubscript(C_constant *self, PyObject *who,
+static int constantAssSubscript(BPy_constant *self, PyObject *who,
PyObject *cares)
{
/* no user assignments allowed */
@@ -193,11 +191,11 @@ static int constantAssSubscript(C_constant *self, PyObject *who,
}
/*****************************************************************************/
-/* Function: constantRepr */
-/* Description: This is a callback function for the C_constant type. It */
+/* Function: constant_repr */
+/* Description: This is a callback function for the BPy_constant type. It */
/* builds a meaninful string to represent constant objects. */
/*****************************************************************************/
-static PyObject *constantRepr (C_constant *self)
+static PyObject *constant_repr (BPy_constant *self)
{
PyObject *repr = PyObject_Repr(self->dict);
return repr;
diff --git a/source/blender/python/api2_2x/constant.h b/source/blender/python/api2_2x/constant.h
index 8d70c5051a0..3f95f11dd2b 100644
--- a/source/blender/python/api2_2x/constant.h
+++ b/source/blender/python/api2_2x/constant.h
@@ -46,17 +46,17 @@
PyObject *M_constant_New (void);
/*****************************************************************************/
-/* Python C_constant structure definition: */
+/* Python BPy_constant structure definition: */
/*****************************************************************************/
typedef struct {
PyObject_HEAD
PyObject *dict;
-} C_constant;
+} BPy_constant;
/*****************************************************************************/
-/* Python C_constant methods declarations: */
+/* Python BPy_constant methods declarations: */
/*****************************************************************************/
-int constant_insert(C_constant *self, char *name, PyObject *value);
+int constant_insert(BPy_constant *self, char *name, PyObject *value);
#endif /* EXPP_constant_H */
diff --git a/source/blender/python/api2_2x/doc/BGL.py b/source/blender/python/api2_2x/doc/BGL.py
index 9a18be921f3..b5f56c0c5d0 100644
--- a/source/blender/python/api2_2x/doc/BGL.py
+++ b/source/blender/python/api2_2x/doc/BGL.py
@@ -1,18 +1,26 @@
# Blender.BGL module (OpenGL wrapper)
"""
+The Blender.BGL submodule (the OpenGL wrapper).
+
The Blender.BGL submodule
+=========================
This module wraps OpenGL constants and functions, making them available from
-within Blender Python. The complete list can be retrieved from the module
-itself, by listing its contents: dir(Blender.BGL). There are too many to be
-documented here, but a simple search on the net can point to more than enough
-material to teach OpenGL programming, from books to many collections of
-tutorials. The I{red book}: "OpenGL Programming Guide", is a very good
-resource, even for newcomers.
+within Blender Python.
+
+The complete list can be retrieved from the module itself, by listing its
+contents: dir(Blender.BGL). There are too many to be documented here, but
+a simple search on the net can point to more than enough material to teach
+OpenGL programming, from books to many collections of tutorials.
+
+The "red book": "I{OpenGL Programming Guide: The Official Guide to Learning
+OpenGL}" and the online NeHe tutorials are two of the best resources.
+
@see: U{www.opengl.org}
Example::
+
import Blender
from Blender.BGL import *
from Blender import Draw
@@ -44,7 +52,7 @@ Example::
Draw.Redraw(1) # make changes visible.
#
def ev(evt, val): # this is a callback for Draw.Register()
- global R,G,B,A # it handles input events
+ global R,G,B,A # ... it handles input events
if evt == Draw.ESCKEY or evt == Draw.QKEY:
Draw.Exit() # this quits the script
elif evt == Draw.LEFTMOUSE: R = 1 - R
diff --git a/source/blender/python/api2_2x/doc/Blender.py b/source/blender/python/api2_2x/doc/Blender.py
index b2f96de066a..0ece60bdb50 100644
--- a/source/blender/python/api2_2x/doc/Blender.py
+++ b/source/blender/python/api2_2x/doc/Blender.py
@@ -7,16 +7,30 @@
# Blender.py Camera.py Lamp.py BGL.py etc.
"""
-Here goes the Introduction to Blender Python
+This is the main Blender module.
+
+Blender Python
+==============
+
+ Submodules:
+ -----------
+
+ - L{Camera}
+ - L{Lamp}
+ - L{BGL}
+ - L{Window}
+ - L{Text}
+
+ Introduction:
+ -------------
+ - What scripting is, why have it
+ - What Python is, links
+ - More about what scripting can give us
+ - Overview of the Blender Python modules
+ - Links to Blender, Blender Python, later: script lists
-Let's see::
- - What scripting is, why have it
- - What Python is, links
- - More about what scripting can give us
- - Overview of the Blender Python modules
- - Links to Blender, Blender Python, later: script lists
@author: The Blender Python Team
-@requires: Blender 2.28 or newer, Python 2.? (2.0, 2.1, 2.2 ???) or newer
+@requires: Blender 2.28 or newer.
@version: 0.1
@see: U{www.blender.org<http://www.blender.org>}
@see: U{projects.blender.org<http://projects.blender.org>}
diff --git a/source/blender/python/api2_2x/doc/Camera.py b/source/blender/python/api2_2x/doc/Camera.py
index adeee5aa731..59e8857dd93 100644
--- a/source/blender/python/api2_2x/doc/Camera.py
+++ b/source/blender/python/api2_2x/doc/Camera.py
@@ -1,7 +1,10 @@
# Blender.Camera module and the Camera PyType object
"""
-The Blender.Camera submodule
+The Blender.Camera submodule.
+
+Camera Data
+===========
This module provides access to B{Camera Data} objects in Blender.
diff --git a/source/blender/python/api2_2x/doc/Lamp.py b/source/blender/python/api2_2x/doc/Lamp.py
index 190a20ead47..35290d54a75 100644
--- a/source/blender/python/api2_2x/doc/Lamp.py
+++ b/source/blender/python/api2_2x/doc/Lamp.py
@@ -1,7 +1,10 @@
# Blender.Lamp module and the Lamp PyType object
"""
-The Blender.Lamp submodule
+The Blender.Lamp submodule.
+
+Lamp Data
+=========
This module provides control over B{Lamp Data} objects in Blender.
diff --git a/source/blender/python/api2_2x/doc/Text.py b/source/blender/python/api2_2x/doc/Text.py
index 54694b722c4..480bd0599ab 100644
--- a/source/blender/python/api2_2x/doc/Text.py
+++ b/source/blender/python/api2_2x/doc/Text.py
@@ -1,7 +1,10 @@
# Blender.Text module and the Text PyType object
"""
-The Blender.Text submodule
+The Blender.Text submodule.
+
+Text Objects
+============
This module provides access to B{Text} objects in Blender.
diff --git a/source/blender/python/api2_2x/doc/Window.py b/source/blender/python/api2_2x/doc/Window.py
new file mode 100644
index 00000000000..b659221aa65
--- /dev/null
+++ b/source/blender/python/api2_2x/doc/Window.py
@@ -0,0 +1,117 @@
+# Blender.Window module and the Window PyType object
+
+"""
+The Blender.Window submodule.
+
+Window
+======
+
+This module provides access to B{Window} functions in Blender.
+
+Example:
+--------
+
+FileSelector::
+
+ import Blender
+ from Blender import Window
+ #
+ def my_callback(filename): # callback for the FileSelector
+ print "You chose the file:", filename # do something with the chosen file
+ #
+ Window.FileSelector (my_callback, "Choose one!")
+
+Example:
+--------
+
+DrawProgressBar::
+
+ import Blender
+ from Blender.Window import DrawProgressBar
+ #
+ # substitute the bogus_*() function calls for your own, of course.
+ #
+ DrawProgressBar (0.0, "Importing data ...")
+ bogus_importData()
+ DrawProgressBar (0.3, "Building something")
+ bogus_build()
+ DrawProgressBar (0.8, "Updating Blender")
+ bogus_update()
+ DrawProgressBar (1.0, "Finished")
+ #
+ # another example:
+ #
+ number = 1
+ while number < 20:
+ file = filename + "00%d" % number
+ DrawProgressBar (number / 20.0, "Loading texture: %s" % file)
+ Blender.Image.Load(file)
+ number += 1
+
+ DrawProgressBar (1.0, "Finished loading")
+
+"""
+
+def Redraw ():
+ """
+ Force a redraw of a specific Window Type (see Window.Types).
+ """
+
+def RedrawAll ():
+ """
+ Redraw all windows.
+ """
+
+def QRedrawAll ():
+ """
+ Redraw all windows by queue event.
+ """
+
+def FileSelector (callback, title = 'SELECT FILE'):
+ """
+ Open the file selector window in Blender. After the user selects a filename,
+ it is passed as parameter to the function callback given to FileSelector().
+ Example::
+ import Blender
+ #
+ def my_function(filename):
+ print 'The selected file was:', filename
+ #
+ Blender.Window.FileSelector (my_function, 'SAVE FILE')
+ @type callback: function that accepts a string: f(str)
+ @param callback: The function that must be provided to FileSelector() and
+ will receive the selected filename as parameter.
+ @type title: string
+ @param title: The string that appears in the button to confirm the selection
+ and return from the file selection window.
+ """
+
+def ImageSelector (callback, title = 'SELECT IMAGE'):
+ """
+ Open the image selector window in Blender. After the user selects a filename,
+ it is passed as parameter to the function callback given to ImageSelector().
+ Example::
+ import Blender
+ #
+ def my_function(imagename):
+ print 'The selected image was:', imagename
+ #
+ Blender.Window.ImageSelector (my_function, 'LOAD IMAGE')
+ @type callback: function that accepts a string: f(str)
+ @param callback: The function that must be provided to ImageSelector() and
+ will receive the selected filename as parameter.
+ @type title: string
+ @param title: The string that appears in the button to confirm the selection
+ and return from the image selection window.
+ """
+
+def DrawProgressBar (done, text):
+ """
+ Draw a progress bar in the upper right corner of the screen. To cancel it
+ prematurely, users can press the "Esc" key.
+ @type done: float
+ @param done: A float in [0, 1] that tells the advance in the progress
+ bar.
+ @type text: string
+ @param text: Info about what is currently being done "behind the scenes".
+ """
diff --git a/source/blender/python/api2_2x/modules.h b/source/blender/python/api2_2x/modules.h
index df096863952..bae6d0e9cf8 100644
--- a/source/blender/python/api2_2x/modules.h
+++ b/source/blender/python/api2_2x/modules.h
@@ -56,13 +56,16 @@ extern PyObject *g_blenderdict;
/* Module Init functions and Data Object helper functions (used by the */
/* Object module to work with its .data field for the various Data objs */
/*****************************************************************************/
-void M_Blender_Init (void);
+void M_Blender_Init (void);
+
+/* sys */
+PyObject * sys_Init (void);
/* Object itself */
-PyObject * M_Object_Init (void);
-PyObject * M_ObjectCreatePyObject (struct Object *obj);
-int M_ObjectCheckPyObject (PyObject *py_obj);
-struct Object * M_ObjectFromPyObject (PyObject *py_obj);
+PyObject * Object_Init (void);
+PyObject * Object_CreatePyObject (struct Object *obj);
+Object * Object_FromPyObject (PyObject *py_obj);
+int Object_CheckPyObject (PyObject *py_obj);
/* Scene */
PyObject * Scene_Init (void);
@@ -95,34 +98,34 @@ Lamp * Lamp_FromPyObject (PyObject *pyobj);
int Lamp_CheckPyObject (PyObject *pyobj);
/* Curve Data */
-PyObject * M_Curve_Init (void);
-PyObject * CurveCreatePyObject (struct Curve *curve);
-struct Curve * CurveFromPyObject (PyObject *py_obj);
-int CurveCheckPyObject (PyObject *py_obj);
+PyObject * Curve_Init (void);
+PyObject * CurveCreatePyObject (struct Curve *curve);
+Curve * CurveFromPyObject (PyObject *py_obj);
+int CurveCheckPyObject (PyObject *py_obj);
/* Armature Data */
-PyObject * M_Armature_Init (void);
-PyObject * M_ArmatureCreatePyObject (bArmature *armature);
-bArmature* M_ArmatureFromPyObject (PyObject *py_obj);
-int M_ArmatureCheckPyObject (PyObject *py_obj);
+PyObject * Armature_Init (void);
+PyObject * Armature_CreatePyObject (bArmature *armature);
+bArmature * Armature_FromPyObject (PyObject *py_obj);
+int Armature_CheckPyObject (PyObject *py_obj);
/* Ipo Data */
-PyObject * M_Ipo_Init (void);
-PyObject * Ipo_CreatePyObject (struct Ipo *ipo);
-struct Ipo * Ipo_FromPyObject (PyObject *py_obj);
-int Ipo_CheckPyObject (PyObject *py_obj);
+PyObject * Ipo_Init (void);
+PyObject * Ipo_CreatePyObject (struct Ipo *ipo);
+Ipo * Ipo_FromPyObject (PyObject *py_obj);
+int Ipo_CheckPyObject (PyObject *py_obj);
/* Metaball Data */
-PyObject * M_Metaball_Init (void);
-PyObject * Metaball_CreatePyObject (MetaBall *metaball);
-struct MetaBall * Metaball_FromPyObject (PyObject *py_obj);
-int Metaball_CheckPyObject (PyObject *py_obj);
+PyObject * Metaball_Init (void);
+PyObject * Metaball_CreatePyObject (MetaBall *metaball);
+MetaBall * Metaball_FromPyObject (PyObject *py_obj);
+int Metaball_CheckPyObject (PyObject *py_obj);
/* Particle Effects Data */
-PyObject * M_Effect_Init (void);
-PyObject * Effect_CreatePyObject (struct Effect *effect);
-struct Effect * Effect_FromPyObject (PyObject *py_obj);
-int Effect_CheckPyObject (PyObject *py_obj);
+PyObject * Effect_Init (void);
+PyObject * Effect_CreatePyObject (struct Effect *effect);
+Effect * Effect_FromPyObject (PyObject *py_obj);
+int Effect_CheckPyObject (PyObject *py_obj);
/* Image */
PyObject * Image_Init (void);
@@ -137,6 +140,6 @@ PyObject * Text_CreatePyObject (Text *txt);
PyObject * Window_Init (void);
PyObject * Draw_Init (void);
PyObject * BGL_Init (void);
-PyObject * M_World_Init (void);
+PyObject * World_Init (void);
#endif /* EXPP_modules_h */