X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/2f4e928794167715f19a3021d62b7c4f77611694..4e1c35f810f574af79e649fa37171dfa7fc775ee:/wxPython/contrib/ogl/oglbasic.i diff --git a/wxPython/contrib/ogl/oglbasic.i b/wxPython/contrib/ogl/oglbasic.i index 7e982eeb31..8fd19b783b 100644 --- a/wxPython/contrib/ogl/oglbasic.i +++ b/wxPython/contrib/ogl/oglbasic.i @@ -99,7 +99,7 @@ public: %addmethods { void Destroy() { delete self; } } %addmethods { void _setOORInfo(PyObject* _self) { - self->SetClientObject(new wxPyClientData(_self)); + self->SetClientObject(new wxPyOORClientData(_self)); } } @@ -179,7 +179,7 @@ public: %addmethods { PyObject* GetChildren() { wxList& list = self->GetChildren(); - return wxPy_ConvertList(&list, "wxPyShape"); + return wxPy_ConvertShapeList(&list, "wxPyShape"); } } @@ -223,7 +223,7 @@ public: %addmethods { PyObject* GetLines() { wxList& list = self->GetLines(); - return wxPy_ConvertList(&list, "wxPyLineShape"); + return wxPy_ConvertShapeList(&list, "wxPyLineShape"); } } @@ -240,25 +240,17 @@ public: // void SetClientData(wxObject *client_data); // wxObject *GetClientData(); - %addmethods { - void SetClientData(PyObject* userData) { - wxPyUserData* data = NULL; - if (userData) - data = new wxPyUserData(userData); - self->SetClientData(data); - } - PyObject* GetClientData() { - wxPyUserData* data = (wxPyUserData*)self->GetClientData(); - if (data) { - Py_INCREF(data->m_obj); - return data->m_obj; - } else { - Py_INCREF(Py_None); - return Py_None; - } - } - } + // The real client data methods are being used for OOR, so just fake it. + %pragma(python) addtoclass = " + def SetClientData(self, data): + self.clientData = data + def GetClientData(self): + if hasattr(self, 'clientData'): + return self.clientData + else: + return None +" void Show(bool show); bool IsShown();