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:
authorKester Maddock <Christopher.Maddock.1@uni.massey.ac.nz>2004-06-04 07:00:13 +0400
committerKester Maddock <Christopher.Maddock.1@uni.massey.ac.nz>2004-06-04 07:00:13 +0400
commit44f45894c2fca8f7e0b7bbfff0e50f24e6c993a5 (patch)
tree740e361ce3f2fb47885348bed9b0ff5cd537a9ad /source/gameengine/Expressions
parent4ff321d50773166712a611233437c7b19183087c (diff)
Miscellaneous Fixes:
Add Python Mapping method to CListValue Fix Bernoulli bool distribution python method for random actuator Fix Python IpoActuator methods setProperty and force acts local Make data objects private Better sort method for polygon materials - much easier to understand
Diffstat (limited to 'source/gameengine/Expressions')
-rw-r--r--source/gameengine/Expressions/ListValue.cpp17
1 files changed, 14 insertions, 3 deletions
diff --git a/source/gameengine/Expressions/ListValue.cpp b/source/gameengine/Expressions/ListValue.cpp
index 6984e5663db..3ee8a5a3501 100644
--- a/source/gameengine/Expressions/ListValue.cpp
+++ b/source/gameengine/Expressions/ListValue.cpp
@@ -28,8 +28,6 @@ int listvalue_bufferlen(PyObject* list)
return ( ((CListValue*)list)->GetCount());
}
-
-
PyObject* listvalue_buffer_item(PyObject* list,int index)
{
if (index >= 0 && index < ((CListValue*) list)->GetCount())
@@ -45,6 +43,19 @@ PyObject* listvalue_buffer_item(PyObject* list,int index)
return NULL;
}
+PyObject* listvalue_mapping_subscript(PyObject* list,PyObject* pyindex)
+{
+ if (PyString_Check(pyindex))
+ {
+ STR_String index(PyString_AsString(pyindex));
+ CValue *item = ((CListValue*) list)->FindValue(index);
+ if (item)
+ return (PyObject*) item;
+
+ }
+ Py_Error(PyExc_IndexError, "Python ListIndex out of range");
+ Py_Return;
+}
/* just slice it into a python list... */
@@ -157,7 +168,7 @@ static PySequenceMethods listvalue_as_sequence = {
/* Is this one used ? */
static PyMappingMethods instance_as_mapping = {
(inquiry)listvalue_bufferlen, /*mp_length*/
- 0,//(binaryfunc)instance_subscript, /*mp_subscript*/
+ (binaryfunc)listvalue_mapping_subscript, /*mp_subscript*/
0,//(objobjargproc)instance_ass_subscript, /*mp_ass_subscript*/
};