// the helper needs to know more about the type.
wxList* wxPy_wxListHelper(PyObject* pyList, char* className) {
- bool doSave = wxPyRestoreThread();
+ wxPyTState* state = wxPyBeginBlockThreads();
if (!PyList_Check(pyList)) {
PyErr_SetString(PyExc_TypeError, "Expected a list object.");
- wxPySaveThread(doSave);
+ wxPyEndBlockThreads(state);
return NULL;
}
int count = PyList_Size(pyList);
wxList* list = new wxList;
if (! list) {
PyErr_SetString(PyExc_MemoryError, "Unable to allocate wxList object");
- wxPySaveThread(doSave);
+ wxPyEndBlockThreads(state);
return NULL;
}
for (int x=0; x<count; x++) {
char errmsg[1024];
sprintf(errmsg, "Type error, expected list of %s objects", className);
PyErr_SetString(PyExc_TypeError, errmsg);
- wxPySaveThread(doSave);
+ wxPyEndBlockThreads(state);
return NULL;
}
list->Append(wxo);
}
- wxPySaveThread(doSave);
+ wxPyEndBlockThreads(state);
return list;
}
//---------------------------------------------------------------------------
wxList* wxPy_wxRealPoint_ListHelper(PyObject* pyList) {
- bool doSave = wxPyRestoreThread();
+ wxPyTState* state = wxPyBeginBlockThreads();
if (!PyList_Check(pyList)) {
PyErr_SetString(PyExc_TypeError, "Expected a list object.");
- wxPySaveThread(doSave);
+ wxPyEndBlockThreads(state);
return NULL;
}
int count = PyList_Size(pyList);
wxList* list = new wxList;
if (! list) {
PyErr_SetString(PyExc_MemoryError, "Unable to allocate wxList object");
- wxPySaveThread(doSave);
+ wxPyEndBlockThreads(state);
return NULL;
}
for (int x=0; x<count; x++) {
wxRealPoint* wxo = NULL;
if (SWIG_GetPtrObj(pyo, (void **)&wxo, "_wxRealPoint_p")) {
PyErr_SetString(PyExc_TypeError, "Type error, expected list of wxRealPoint objects or 2-tuples");
- wxPySaveThread(doSave);
+ wxPyEndBlockThreads(state);
return NULL;
}
list->Append((wxObject*) new wxRealPoint(*wxo));
}
}
- wxPySaveThread(doSave);
+ wxPyEndBlockThreads(state);
return list;
}
wxClassInfo::CleanUpClasses();
wxClassInfo::InitializeClasses();
+ wxPyPtrTypeMap_Add("wxControlPoint", "wxPyControlPoint");
+ wxPyPtrTypeMap_Add("wxShapeCanvas", "wxPyShapeCanvas");
+ wxPyPtrTypeMap_Add("wxShapeEvtHandler", "wxPyShapeEvtHandler");
+ wxPyPtrTypeMap_Add("wxShape", "wxPyShape");
+ wxPyPtrTypeMap_Add("wxRectangleShape", "wxPyRectangleShape");
+ wxPyPtrTypeMap_Add("wxDrawnShape", "wxPyDrawnShape");
+ wxPyPtrTypeMap_Add("wxCompositeShape", "wxPyCompositeShape");
+ wxPyPtrTypeMap_Add("wxDividedShape", "wxPyDividedShape");
+ wxPyPtrTypeMap_Add("wxDivisionShape", "wxPyDivisionShape");
+ wxPyPtrTypeMap_Add("wxEllipseShape", "wxPyEllipseShape");
+ wxPyPtrTypeMap_Add("wxCircleShape", "wxPyCircleShape");
+ wxPyPtrTypeMap_Add("wxLineShape", "wxPyLineShape");
+ wxPyPtrTypeMap_Add("wxPolygonShape", "wxPyPolygonShape");
+ wxPyPtrTypeMap_Add("wxTextShape", "wxPyTextShape");
+
%}
//----------------------------------------------------------------------