]> git.saurik.com Git - wxWidgets.git/blobdiff - wxPython/contrib/ogl/gtk/ogl_wrap.cpp
prevent a reference leak when OOR objects are created
[wxWidgets.git] / wxPython / contrib / ogl / gtk / ogl_wrap.cpp
index aaffa6f8dabf2278393709740e0643df65d3077b..82dd9528191bfee90aa753adbb017c59b2966396 100644 (file)
@@ -740,7 +740,7 @@ wxList* wxPy_wxRealPoint_ListHelper(PyObject* pyList) {
 
 //---------------------------------------------------------------------------
 
-PyObject*  wxPyMake_wxShapeEvtHandler(wxShapeEvtHandler* source) {
+PyObject*  wxPyMake_wxShapeEvtHandler(wxShapeEvtHandler* source, bool setThisOwn) {
     PyObject* target = NULL;
 
     if (source && wxIsKindOf(source, wxShapeEvtHandler)) {
@@ -755,7 +755,7 @@ PyObject*  wxPyMake_wxShapeEvtHandler(wxShapeEvtHandler* source) {
         }
     }
     if (! target) {
-        target = wxPyMake_wxObject2(source, FALSE);
+        target = wxPyMake_wxObject2(source, setThisOwn, false);
         if (target != Py_None)
             ((wxShapeEvtHandler*)source)->SetClientObject(new wxPyOORClientData(target));
     }
@@ -796,7 +796,7 @@ PyObject* wxPy_ConvertShapeList(wxListBase* listbase) {
     pyList = PyList_New(0);
     while (node) {
         wxObj = node->GetData();
-        pyObj = wxPyMake_wxShapeEvtHandler((wxShapeEvtHandler*)wxObj);
+        pyObj = wxPyMake_wxShapeEvtHandler((wxShapeEvtHandler*)wxObj, false);
         PyList_Append(pyList, pyObj);
         node = node->GetNext();
     }
@@ -1999,7 +1999,7 @@ static PyObject *_wrap_new_PyShapeEvtHandler(PyObject *self, PyObject *args, PyO
         if (PyErr_Occurred()) SWIG_fail;
     }
     {
-        resultobj = wxPyMake_wxShapeEvtHandler(result); 
+        resultobj = wxPyMake_wxShapeEvtHandler(result, 1); 
     }
     return resultobj;
     fail:
@@ -2115,7 +2115,7 @@ static PyObject *_wrap_PyShapeEvtHandler_GetShape(PyObject *self, PyObject *args
         if (PyErr_Occurred()) SWIG_fail;
     }
     {
-        resultobj = wxPyMake_wxShapeEvtHandler(result); 
+        resultobj = wxPyMake_wxShapeEvtHandler(result, 0); 
     }
     return resultobj;
     fail:
@@ -2172,7 +2172,7 @@ static PyObject *_wrap_PyShapeEvtHandler_GetPreviousHandler(PyObject *self, PyOb
         if (PyErr_Occurred()) SWIG_fail;
     }
     {
-        resultobj = wxPyMake_wxShapeEvtHandler(result); 
+        resultobj = wxPyMake_wxShapeEvtHandler(result, 0); 
     }
     return resultobj;
     fail:
@@ -2200,7 +2200,7 @@ static PyObject *_wrap_PyShapeEvtHandler_CreateNewCopy(PyObject *self, PyObject
         if (PyErr_Occurred()) SWIG_fail;
     }
     {
-        resultobj = wxPyMake_wxShapeEvtHandler(result); 
+        resultobj = wxPyMake_wxShapeEvtHandler(result, 0); 
     }
     return resultobj;
     fail:
@@ -3442,7 +3442,7 @@ static PyObject *_wrap_new_PyShape(PyObject *self, PyObject *args, PyObject *kwa
         if (PyErr_Occurred()) SWIG_fail;
     }
     {
-        resultobj = wxPyMake_wxShapeEvtHandler(result); 
+        resultobj = wxPyMake_wxShapeEvtHandler(result, 1); 
     }
     return resultobj;
     fail:
@@ -3637,7 +3637,7 @@ static PyObject *_wrap_PyShape_GetCanvas(PyObject *self, PyObject *args, PyObjec
         if (PyErr_Occurred()) SWIG_fail;
     }
     {
-        resultobj = wxPyMake_wxObject(result); 
+        resultobj = wxPyMake_wxObject(result, 0); 
     }
     return resultobj;
     fail:
@@ -3897,7 +3897,7 @@ static PyObject *_wrap_PyShape_GetParent(PyObject *self, PyObject *args, PyObjec
         if (PyErr_Occurred()) SWIG_fail;
     }
     {
-        resultobj = wxPyMake_wxShapeEvtHandler(result); 
+        resultobj = wxPyMake_wxShapeEvtHandler(result, 0); 
     }
     return resultobj;
     fail:
@@ -3954,7 +3954,7 @@ static PyObject *_wrap_PyShape_GetTopAncestor(PyObject *self, PyObject *args, Py
         if (PyErr_Occurred()) SWIG_fail;
     }
     {
-        resultobj = wxPyMake_wxShapeEvtHandler(result); 
+        resultobj = wxPyMake_wxShapeEvtHandler(result, 0); 
     }
     return resultobj;
     fail:
@@ -4171,7 +4171,7 @@ static PyObject *_wrap_PyShape_GetEventHandler(PyObject *self, PyObject *args, P
         if (PyErr_Occurred()) SWIG_fail;
     }
     {
-        resultobj = wxPyMake_wxShapeEvtHandler(result); 
+        resultobj = wxPyMake_wxShapeEvtHandler(result, 0); 
     }
     return resultobj;
     fail:
@@ -6543,7 +6543,7 @@ static PyObject *_wrap_PyShape_FindRegion(PyObject *self, PyObject *args, PyObje
         if (PyErr_Occurred()) SWIG_fail;
     }
     {
-        resultobj = wxPyMake_wxShapeEvtHandler(result); 
+        resultobj = wxPyMake_wxShapeEvtHandler(result, 0); 
     }
     {
         PyObject *o = PyInt_FromLong((long) (*arg3));
@@ -7686,7 +7686,7 @@ static PyObject *_wrap_PyShape_CreateNewCopy(PyObject *self, PyObject *args, PyO
         if (PyErr_Occurred()) SWIG_fail;
     }
     {
-        resultobj = wxPyMake_wxShapeEvtHandler(result); 
+        resultobj = wxPyMake_wxShapeEvtHandler(result, 0); 
     }
     return resultobj;
     fail:
@@ -9235,7 +9235,7 @@ static PyObject *_wrap_new_PseudoMetaFile(PyObject *self, PyObject *args, PyObje
         if (PyErr_Occurred()) SWIG_fail;
     }
     {
-        resultobj = wxPyMake_wxObject(result); 
+        resultobj = wxPyMake_wxObject(result, 1); 
     }
     return resultobj;
     fail:
@@ -10252,18 +10252,17 @@ static PyObject *_wrap_PseudoMetaFile_DrawLines(PyObject *self, PyObject *args,
     wxPoint *arg3 = (wxPoint *) 0 ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
-    PyObject * obj2 = 0 ;
     char *kwnames[] = {
-        (char *) "self",(char *) "PCOUNT",(char *) "points", NULL 
+        (char *) "self",(char *) "points", NULL 
     };
     
-    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOO:PseudoMetaFile_DrawLines",kwnames,&obj0,&obj1,&obj2)) goto fail;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:PseudoMetaFile_DrawLines",kwnames,&obj0,&obj1)) goto fail;
     if ((SWIG_ConvertPtr(obj0,(void **)(&arg1),SWIGTYPE_p_wxPseudoMetaFile,
     SWIG_POINTER_EXCEPTION | 0)) == -1) SWIG_fail;
-    arg2 = (int) SWIG_AsInt(obj1); 
-    if (PyErr_Occurred()) SWIG_fail;
-    if ((SWIG_ConvertPtr(obj2,(void **)(&arg3),SWIGTYPE_p_wxPoint,
-    SWIG_POINTER_EXCEPTION | 0)) == -1) SWIG_fail;
+    {
+        arg3 = wxPoint_LIST_helper(obj1, &arg2);
+        if (arg3 == NULL) SWIG_fail;
+    }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
         (arg1)->DrawLines(arg2,arg3);
@@ -10272,8 +10271,14 @@ static PyObject *_wrap_PseudoMetaFile_DrawLines(PyObject *self, PyObject *args,
         if (PyErr_Occurred()) SWIG_fail;
     }
     Py_INCREF(Py_None); resultobj = Py_None;
+    {
+        if (arg3) delete [] arg3;
+    }
     return resultobj;
     fail:
+    {
+        if (arg3) delete [] arg3;
+    }
     return NULL;
 }
 
@@ -10287,20 +10292,19 @@ static PyObject *_wrap_PseudoMetaFile_DrawPolygon(PyObject *self, PyObject *args
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     PyObject * obj2 = 0 ;
-    PyObject * obj3 = 0 ;
     char *kwnames[] = {
-        (char *) "self",(char *) "PCOUNT",(char *) "points",(char *) "flags", NULL 
+        (char *) "self",(char *) "points",(char *) "flags", NULL 
     };
     
-    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOO|O:PseudoMetaFile_DrawPolygon",kwnames,&obj0,&obj1,&obj2,&obj3)) goto fail;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO|O:PseudoMetaFile_DrawPolygon",kwnames,&obj0,&obj1,&obj2)) goto fail;
     if ((SWIG_ConvertPtr(obj0,(void **)(&arg1),SWIGTYPE_p_wxPseudoMetaFile,
     SWIG_POINTER_EXCEPTION | 0)) == -1) SWIG_fail;
-    arg2 = (int) SWIG_AsInt(obj1); 
-    if (PyErr_Occurred()) SWIG_fail;
-    if ((SWIG_ConvertPtr(obj2,(void **)(&arg3),SWIGTYPE_p_wxPoint,
-    SWIG_POINTER_EXCEPTION | 0)) == -1) SWIG_fail;
-    if (obj3) {
-        arg4 = (int) SWIG_AsInt(obj3); 
+    {
+        arg3 = wxPoint_LIST_helper(obj1, &arg2);
+        if (arg3 == NULL) SWIG_fail;
+    }
+    if (obj2) {
+        arg4 = (int) SWIG_AsInt(obj2); 
         if (PyErr_Occurred()) SWIG_fail;
     }
     {
@@ -10311,8 +10315,14 @@ static PyObject *_wrap_PseudoMetaFile_DrawPolygon(PyObject *self, PyObject *args
         if (PyErr_Occurred()) SWIG_fail;
     }
     Py_INCREF(Py_None); resultobj = Py_None;
+    {
+        if (arg3) delete [] arg3;
+    }
     return resultobj;
     fail:
+    {
+        if (arg3) delete [] arg3;
+    }
     return NULL;
 }
 
@@ -10324,18 +10334,17 @@ static PyObject *_wrap_PseudoMetaFile_DrawSpline(PyObject *self, PyObject *args,
     wxPoint *arg3 = (wxPoint *) 0 ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
-    PyObject * obj2 = 0 ;
     char *kwnames[] = {
-        (char *) "self",(char *) "PCOUNT",(char *) "points", NULL 
+        (char *) "self",(char *) "points", NULL 
     };
     
-    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOO:PseudoMetaFile_DrawSpline",kwnames,&obj0,&obj1,&obj2)) goto fail;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:PseudoMetaFile_DrawSpline",kwnames,&obj0,&obj1)) goto fail;
     if ((SWIG_ConvertPtr(obj0,(void **)(&arg1),SWIGTYPE_p_wxPseudoMetaFile,
     SWIG_POINTER_EXCEPTION | 0)) == -1) SWIG_fail;
-    arg2 = (int) SWIG_AsInt(obj1); 
-    if (PyErr_Occurred()) SWIG_fail;
-    if ((SWIG_ConvertPtr(obj2,(void **)(&arg3),SWIGTYPE_p_wxPoint,
-    SWIG_POINTER_EXCEPTION | 0)) == -1) SWIG_fail;
+    {
+        arg3 = wxPoint_LIST_helper(obj1, &arg2);
+        if (arg3 == NULL) SWIG_fail;
+    }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
         (arg1)->DrawSpline(arg2,arg3);
@@ -10344,8 +10353,14 @@ static PyObject *_wrap_PseudoMetaFile_DrawSpline(PyObject *self, PyObject *args,
         if (PyErr_Occurred()) SWIG_fail;
     }
     Py_INCREF(Py_None); resultobj = Py_None;
+    {
+        if (arg3) delete [] arg3;
+    }
     return resultobj;
     fail:
+    {
+        if (arg3) delete [] arg3;
+    }
     return NULL;
 }
 
@@ -14986,18 +15001,17 @@ static PyObject *_wrap_PyDrawnShape_DrawLines(PyObject *self, PyObject *args, Py
     wxPoint *arg3 = (wxPoint *) 0 ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
-    PyObject * obj2 = 0 ;
     char *kwnames[] = {
-        (char *) "self",(char *) "PCOUNT",(char *) "points", NULL 
+        (char *) "self",(char *) "points", NULL 
     };
     
-    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOO:PyDrawnShape_DrawLines",kwnames,&obj0,&obj1,&obj2)) goto fail;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:PyDrawnShape_DrawLines",kwnames,&obj0,&obj1)) goto fail;
     if ((SWIG_ConvertPtr(obj0,(void **)(&arg1),SWIGTYPE_p_wxPyDrawnShape,
     SWIG_POINTER_EXCEPTION | 0)) == -1) SWIG_fail;
-    arg2 = (int) SWIG_AsInt(obj1); 
-    if (PyErr_Occurred()) SWIG_fail;
-    if ((SWIG_ConvertPtr(obj2,(void **)(&arg3),SWIGTYPE_p_wxPoint,
-    SWIG_POINTER_EXCEPTION | 0)) == -1) SWIG_fail;
+    {
+        arg3 = wxPoint_LIST_helper(obj1, &arg2);
+        if (arg3 == NULL) SWIG_fail;
+    }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
         (arg1)->DrawLines(arg2,arg3);
@@ -15006,8 +15020,14 @@ static PyObject *_wrap_PyDrawnShape_DrawLines(PyObject *self, PyObject *args, Py
         if (PyErr_Occurred()) SWIG_fail;
     }
     Py_INCREF(Py_None); resultobj = Py_None;
+    {
+        if (arg3) delete [] arg3;
+    }
     return resultobj;
     fail:
+    {
+        if (arg3) delete [] arg3;
+    }
     return NULL;
 }
 
@@ -15053,20 +15073,19 @@ static PyObject *_wrap_PyDrawnShape_DrawPolygon(PyObject *self, PyObject *args,
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     PyObject * obj2 = 0 ;
-    PyObject * obj3 = 0 ;
     char *kwnames[] = {
-        (char *) "self",(char *) "PCOUNT",(char *) "points",(char *) "flags", NULL 
+        (char *) "self",(char *) "points",(char *) "flags", NULL 
     };
     
-    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOO|O:PyDrawnShape_DrawPolygon",kwnames,&obj0,&obj1,&obj2,&obj3)) goto fail;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO|O:PyDrawnShape_DrawPolygon",kwnames,&obj0,&obj1,&obj2)) goto fail;
     if ((SWIG_ConvertPtr(obj0,(void **)(&arg1),SWIGTYPE_p_wxPyDrawnShape,
     SWIG_POINTER_EXCEPTION | 0)) == -1) SWIG_fail;
-    arg2 = (int) SWIG_AsInt(obj1); 
-    if (PyErr_Occurred()) SWIG_fail;
-    if ((SWIG_ConvertPtr(obj2,(void **)(&arg3),SWIGTYPE_p_wxPoint,
-    SWIG_POINTER_EXCEPTION | 0)) == -1) SWIG_fail;
-    if (obj3) {
-        arg4 = (int) SWIG_AsInt(obj3); 
+    {
+        arg3 = wxPoint_LIST_helper(obj1, &arg2);
+        if (arg3 == NULL) SWIG_fail;
+    }
+    if (obj2) {
+        arg4 = (int) SWIG_AsInt(obj2); 
         if (PyErr_Occurred()) SWIG_fail;
     }
     {
@@ -15077,8 +15096,14 @@ static PyObject *_wrap_PyDrawnShape_DrawPolygon(PyObject *self, PyObject *args,
         if (PyErr_Occurred()) SWIG_fail;
     }
     Py_INCREF(Py_None); resultobj = Py_None;
+    {
+        if (arg3) delete [] arg3;
+    }
     return resultobj;
     fail:
+    {
+        if (arg3) delete [] arg3;
+    }
     return NULL;
 }
 
@@ -15158,18 +15183,17 @@ static PyObject *_wrap_PyDrawnShape_DrawSpline(PyObject *self, PyObject *args, P
     wxPoint *arg3 = (wxPoint *) 0 ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
-    PyObject * obj2 = 0 ;
     char *kwnames[] = {
-        (char *) "self",(char *) "PCOUNT",(char *) "points", NULL 
+        (char *) "self",(char *) "points", NULL 
     };
     
-    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOO:PyDrawnShape_DrawSpline",kwnames,&obj0,&obj1,&obj2)) goto fail;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:PyDrawnShape_DrawSpline",kwnames,&obj0,&obj1)) goto fail;
     if ((SWIG_ConvertPtr(obj0,(void **)(&arg1),SWIGTYPE_p_wxPyDrawnShape,
     SWIG_POINTER_EXCEPTION | 0)) == -1) SWIG_fail;
-    arg2 = (int) SWIG_AsInt(obj1); 
-    if (PyErr_Occurred()) SWIG_fail;
-    if ((SWIG_ConvertPtr(obj2,(void **)(&arg3),SWIGTYPE_p_wxPoint,
-    SWIG_POINTER_EXCEPTION | 0)) == -1) SWIG_fail;
+    {
+        arg3 = wxPoint_LIST_helper(obj1, &arg2);
+        if (arg3 == NULL) SWIG_fail;
+    }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
         (arg1)->DrawSpline(arg2,arg3);
@@ -15178,8 +15202,14 @@ static PyObject *_wrap_PyDrawnShape_DrawSpline(PyObject *self, PyObject *args, P
         if (PyErr_Occurred()) SWIG_fail;
     }
     Py_INCREF(Py_None); resultobj = Py_None;
+    {
+        if (arg3) delete [] arg3;
+    }
     return resultobj;
     fail:
+    {
+        if (arg3) delete [] arg3;
+    }
     return NULL;
 }
 
@@ -17002,7 +17032,7 @@ static PyObject *_wrap_new_OGLConstraint(PyObject *self, PyObject *args, PyObjec
         if (PyErr_Occurred()) SWIG_fail;
     }
     {
-        resultobj = wxPyMake_wxObject(result); 
+        resultobj = wxPyMake_wxObject(result, 1); 
     }
     return resultobj;
     fail:
@@ -17226,7 +17256,7 @@ static PyObject *_wrap_PyCompositeShape_AddConstraint(PyObject *self, PyObject *
         if (PyErr_Occurred()) SWIG_fail;
     }
     {
-        resultobj = wxPyMake_wxObject(result); 
+        resultobj = wxPyMake_wxObject(result, 0); 
     }
     return resultobj;
     fail:
@@ -17265,7 +17295,7 @@ static PyObject *_wrap_PyCompositeShape_AddConstrainedShapes(PyObject *self, PyO
         if (PyErr_Occurred()) SWIG_fail;
     }
     {
-        resultobj = wxPyMake_wxObject(result); 
+        resultobj = wxPyMake_wxObject(result, 0); 
     }
     return resultobj;
     fail:
@@ -17305,7 +17335,7 @@ static PyObject *_wrap_PyCompositeShape_AddSimpleConstraint(PyObject *self, PyOb
         if (PyErr_Occurred()) SWIG_fail;
     }
     {
-        resultobj = wxPyMake_wxObject(result); 
+        resultobj = wxPyMake_wxObject(result, 0); 
     }
     return resultobj;
     fail:
@@ -17448,7 +17478,7 @@ static PyObject *_wrap_PyCompositeShape_FindContainerImage(PyObject *self, PyObj
         if (PyErr_Occurred()) SWIG_fail;
     }
     {
-        resultobj = wxPyMake_wxShapeEvtHandler(result); 
+        resultobj = wxPyMake_wxShapeEvtHandler(result, 0); 
     }
     return resultobj;
     fail:
@@ -20145,7 +20175,7 @@ static PyObject *_wrap_new_PyDivisionShape(PyObject *self, PyObject *args, PyObj
         if (PyErr_Occurred()) SWIG_fail;
     }
     {
-        resultobj = wxPyMake_wxShapeEvtHandler(result); 
+        resultobj = wxPyMake_wxShapeEvtHandler(result, 1); 
     }
     return resultobj;
     fail:
@@ -20394,7 +20424,7 @@ static PyObject *_wrap_PyDivisionShape_GetBottomSide(PyObject *self, PyObject *a
         if (PyErr_Occurred()) SWIG_fail;
     }
     {
-        resultobj = wxPyMake_wxShapeEvtHandler(result); 
+        resultobj = wxPyMake_wxShapeEvtHandler(result, 0); 
     }
     return resultobj;
     fail:
@@ -20448,7 +20478,7 @@ static PyObject *_wrap_PyDivisionShape_GetLeftSide(PyObject *self, PyObject *arg
         if (PyErr_Occurred()) SWIG_fail;
     }
     {
-        resultobj = wxPyMake_wxShapeEvtHandler(result); 
+        resultobj = wxPyMake_wxShapeEvtHandler(result, 0); 
     }
     return resultobj;
     fail:
@@ -20534,7 +20564,7 @@ static PyObject *_wrap_PyDivisionShape_GetRightSide(PyObject *self, PyObject *ar
         if (PyErr_Occurred()) SWIG_fail;
     }
     {
-        resultobj = wxPyMake_wxShapeEvtHandler(result); 
+        resultobj = wxPyMake_wxShapeEvtHandler(result, 0); 
     }
     return resultobj;
     fail:
@@ -20562,7 +20592,7 @@ static PyObject *_wrap_PyDivisionShape_GetTopSide(PyObject *self, PyObject *args
         if (PyErr_Occurred()) SWIG_fail;
     }
     {
-        resultobj = wxPyMake_wxShapeEvtHandler(result); 
+        resultobj = wxPyMake_wxShapeEvtHandler(result, 0); 
     }
     return resultobj;
     fail:
@@ -24756,7 +24786,7 @@ static PyObject *_wrap_new_ArrowHead(PyObject *self, PyObject *args, PyObject *k
         if (PyErr_Occurred()) SWIG_fail;
     }
     {
-        resultobj = wxPyMake_wxObject(result); 
+        resultobj = wxPyMake_wxObject(result, 1); 
     }
     {
         if (temp5)
@@ -25092,7 +25122,7 @@ static PyObject *_wrap_ArrowHead_GetMetaFile(PyObject *self, PyObject *args, PyO
         if (PyErr_Occurred()) SWIG_fail;
     }
     {
-        resultobj = wxPyMake_wxObject(result); 
+        resultobj = wxPyMake_wxObject(result, 0); 
     }
     return resultobj;
     fail:
@@ -25789,7 +25819,7 @@ static PyObject *_wrap_PyLineShape_FindArrowHeadId(PyObject *self, PyObject *arg
         if (PyErr_Occurred()) SWIG_fail;
     }
     {
-        resultobj = wxPyMake_wxObject(result); 
+        resultobj = wxPyMake_wxObject(result, 0); 
     }
     return resultobj;
     fail:
@@ -25829,7 +25859,7 @@ static PyObject *_wrap_PyLineShape_FindArrowHead(PyObject *self, PyObject *args,
         if (PyErr_Occurred()) SWIG_fail;
     }
     {
-        resultobj = wxPyMake_wxObject(result); 
+        resultobj = wxPyMake_wxObject(result, 0); 
     }
     {
         if (temp3)
@@ -26130,7 +26160,7 @@ static PyObject *_wrap_PyLineShape_GetFrom(PyObject *self, PyObject *args, PyObj
         if (PyErr_Occurred()) SWIG_fail;
     }
     {
-        resultobj = wxPyMake_wxShapeEvtHandler(result); 
+        resultobj = wxPyMake_wxShapeEvtHandler(result, 0); 
     }
     return resultobj;
     fail:
@@ -26231,7 +26261,7 @@ static PyObject *_wrap_PyLineShape_GetTo(PyObject *self, PyObject *args, PyObjec
         if (PyErr_Occurred()) SWIG_fail;
     }
     {
-        resultobj = wxPyMake_wxShapeEvtHandler(result); 
+        resultobj = wxPyMake_wxShapeEvtHandler(result, 0); 
     }
     return resultobj;
     fail:
@@ -30943,7 +30973,7 @@ static PyObject *_wrap_new_Diagram(PyObject *self, PyObject *args, PyObject *kwa
         if (PyErr_Occurred()) SWIG_fail;
     }
     {
-        resultobj = wxPyMake_wxObject(result); 
+        resultobj = wxPyMake_wxObject(result, 1); 
     }
     return resultobj;
     fail:
@@ -31119,7 +31149,7 @@ static PyObject *_wrap_Diagram_FindShape(PyObject *self, PyObject *args, PyObjec
         if (PyErr_Occurred()) SWIG_fail;
     }
     {
-        resultobj = wxPyMake_wxShapeEvtHandler(result); 
+        resultobj = wxPyMake_wxShapeEvtHandler(result, 0); 
     }
     return resultobj;
     fail:
@@ -31147,7 +31177,7 @@ static PyObject *_wrap_Diagram_GetCanvas(PyObject *self, PyObject *args, PyObjec
         if (PyErr_Occurred()) SWIG_fail;
     }
     {
-        resultobj = wxPyMake_wxObject(result); 
+        resultobj = wxPyMake_wxObject(result, 0); 
     }
     return resultobj;
     fail:
@@ -31754,6 +31784,7 @@ static PyObject *_wrap_new_PyShapeCanvas(PyObject *self, PyObject *args, PyObjec
         }
     }
     {
+        if (!wxPyCheckForApp()) SWIG_fail;
         PyThreadState* __tstate = wxPyBeginAllowThreads();
         result = (wxPyShapeCanvas *)new wxPyShapeCanvas(arg1,arg2,(wxPoint const &)*arg3,(wxSize const &)*arg4,arg5,(wxString const &)*arg6);
         
@@ -31761,7 +31792,7 @@ static PyObject *_wrap_new_PyShapeCanvas(PyObject *self, PyObject *args, PyObjec
         if (PyErr_Occurred()) SWIG_fail;
     }
     {
-        resultobj = wxPyMake_wxObject(result); 
+        resultobj = wxPyMake_wxObject(result, 1); 
     }
     {
         if (temp6)
@@ -31886,7 +31917,7 @@ static PyObject *_wrap_PyShapeCanvas_FindShape(PyObject *self, PyObject *args, P
         if (PyErr_Occurred()) SWIG_fail;
     }
     {
-        resultobj = wxPyMake_wxShapeEvtHandler(result); 
+        resultobj = wxPyMake_wxShapeEvtHandler(result, 0); 
     }
     {
         PyObject *o = PyInt_FromLong((long) (*arg4));
@@ -31933,7 +31964,7 @@ static PyObject *_wrap_PyShapeCanvas_FindFirstSensitiveShape(PyObject *self, PyO
         if (PyErr_Occurred()) SWIG_fail;
     }
     {
-        resultobj = wxPyMake_wxShapeEvtHandler(result); 
+        resultobj = wxPyMake_wxShapeEvtHandler(result, 0); 
     }
     {
         PyObject *o = PyInt_FromLong((long) (*arg4));
@@ -31965,7 +31996,7 @@ static PyObject *_wrap_PyShapeCanvas_GetDiagram(PyObject *self, PyObject *args,
         if (PyErr_Occurred()) SWIG_fail;
     }
     {
-        resultobj = wxPyMake_wxObject(result); 
+        resultobj = wxPyMake_wxObject(result, 0); 
     }
     return resultobj;
     fail:
@@ -32506,6 +32537,7 @@ static PyObject *_wrap_OGLInitialize(PyObject *self, PyObject *args, PyObject *k
     
     if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)":OGLInitialize",kwnames)) goto fail;
     {
+        if (!wxPyCheckForApp()) SWIG_fail;
         PyThreadState* __tstate = wxPyBeginAllowThreads();
         wxOGLInitialize();
         
@@ -32527,6 +32559,7 @@ static PyObject *_wrap_OGLCleanUp(PyObject *self, PyObject *args, PyObject *kwar
     
     if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)":OGLCleanUp",kwnames)) goto fail;
     {
+        if (!wxPyCheckForApp()) SWIG_fail;
         PyThreadState* __tstate = wxPyBeginAllowThreads();
         wxOGLCleanUp();