]> git.saurik.com Git - wxWidgets.git/blobdiff - wxPython/contrib/ogl/ogl.i
In GetPath(), don't append separator if there's already one at the end
[wxWidgets.git] / wxPython / contrib / ogl / ogl.i
index bdae01992f281cda8eb0ac4ee0a2038055e6adab..0d66d6528229743e2c7931b81aad69206d9422b5 100644 (file)
@@ -221,7 +221,7 @@ PyObject*  wxPyMake_wxShapeEvtHandler(wxShapeEvtHandler* source) {
         // already be a pointer to a Python object that we can use
         // in the OOR data.
         wxShapeEvtHandler* seh = (wxShapeEvtHandler*)source;
-        wxPyClientData* data = (wxPyClientData*)seh->GetClientObject();
+        wxPyOORClientData* data = (wxPyOORClientData*)seh->GetClientObject();
         if (data) {
             target = data->m_obj;
             Py_INCREF(target);
@@ -230,11 +230,30 @@ PyObject*  wxPyMake_wxShapeEvtHandler(wxShapeEvtHandler* source) {
     if (! target) {
         target = wxPyMake_wxObject2(source, FALSE);
         if (target != Py_None)
-            ((wxShapeEvtHandler*)source)->SetClientObject(new wxPyClientData(target));
+            ((wxShapeEvtHandler*)source)->SetClientObject(new wxPyOORClientData(target));
     }
     return target;
 }
 
+//---------------------------------------------------------------------------
+
+PyObject* wxPy_ConvertShapeList(wxListBase* list, const char* className) {
+    PyObject*   pyList;
+    PyObject*   pyObj;
+    wxObject*   wxObj;
+    wxNode*     node = list->First();
+
+    wxPyBeginBlockThreads();
+    pyList = PyList_New(0);
+    while (node) {
+        wxObj = node->Data();
+        pyObj = wxPyMake_wxShapeEvtHandler((wxShapeEvtHandler*)wxObj);
+        PyList_Append(pyList, pyObj);
+        node = node->Next();
+    }
+    wxPyEndBlockThreads();
+    return pyList;
+}
 
 
 //---------------------------------------------------------------------------