]> git.saurik.com Git - wxWidgets.git/blobdiff - wxPython/src/mac/aui_wrap.cpp
protect gs_allThreads with a mutex (modified patch 1518719)
[wxWidgets.git] / wxPython / src / mac / aui_wrap.cpp
index 1459975239723d064f9bd1f75731715f8444db59..556cdbe27dc4e4b522859038d69aaa709a58ebb4 100644 (file)
@@ -2858,6 +2858,9 @@ SWIG_AsVal_bool (PyObject *obj, bool *val)
   }
 }
 
+SWIGINTERN void delete_wxDockInfo(wxDockInfo *self){}
+SWIGINTERN void delete_wxDockUIPart(wxDockUIPart *self){}
+SWIGINTERN void delete_wxPaneButton(wxPaneButton *self){}
 
 SWIGINTERN int 
 SWIG_AsVal_unsigned_SS_long (PyObject* obj, unsigned long* val)
@@ -2897,7 +2900,7 @@ SWIG_From_size_t  (size_t value)
 }
 
 
-// A wxDocArt lcass that knows how to forward virtuals to Python methods  
+// A wxDocArt class that knows how to forward virtuals to Python methods  
 class wxPyDockArt :  public wxDefaultDockArt
 {
     wxPyDockArt() : wxDefaultDockArt() {}
@@ -2910,6 +2913,7 @@ class wxPyDockArt :  public wxDefaultDockArt
     DEC_PYCALLBACK__INTCOLOUR(SetColour);
 
     virtual void DrawSash(wxDC& dc,
+                          wxWindow* window,
                           int orientation,
                           const wxRect& rect)
     {
@@ -2917,18 +2921,20 @@ class wxPyDockArt :  public wxDefaultDockArt
         wxPyBlock_t blocked = wxPyBeginBlockThreads();
         if ((found = wxPyCBH_findCallback(m_myInst, "DrawSash"))) {
             PyObject* odc = wxPyMake_wxObject(&dc, false);
+            PyObject* owin = wxPyMake_wxObject(window, false);
             PyObject* orect = wxPyConstructObject((void*)&rect, wxT("wxRect"), 0);
-            wxPyCBH_callCallback(m_myInst, Py_BuildValue("(OiO)",
-                                                         odc, orientation, orect));
+            wxPyCBH_callCallback(m_myInst, Py_BuildValue("(OOiO)",
+                                                         odc, owin, orientation, orect));
             Py_DECREF(odc);
             Py_DECREF(orect);
         }
         wxPyEndBlockThreads(blocked);
         if (! found)
-            wxDefaultDockArt::DrawSash(dc, orientation, rect);
+            wxDefaultDockArt::DrawSash(dc, window, orientation, rect);
     }
 
     virtual void DrawBackground(wxDC& dc,
+                          wxWindow* window,
                           int orientation,
                           const wxRect& rect)
     {
@@ -2936,18 +2942,20 @@ class wxPyDockArt :  public wxDefaultDockArt
         wxPyBlock_t blocked = wxPyBeginBlockThreads();
         if ((found = wxPyCBH_findCallback(m_myInst, "DrawBackground"))) {
             PyObject* odc = wxPyMake_wxObject(&dc, false);
+            PyObject* owin = wxPyMake_wxObject(window, false);
             PyObject* orect = wxPyConstructObject((void*)&rect, wxT("wxRect"), 0);
-            wxPyCBH_callCallback(m_myInst, Py_BuildValue("(OiO)",
-                                                         odc, orientation, orect));
+            wxPyCBH_callCallback(m_myInst, Py_BuildValue("(OOiO)",
+                                                         odc, owin, orientation, orect));
             Py_DECREF(odc);
             Py_DECREF(orect);
         }
         wxPyEndBlockThreads(blocked);
         if (! found)
-            wxDefaultDockArt::DrawBackground(dc, orientation, rect);
+            wxDefaultDockArt::DrawBackground(dc, window, orientation, rect);
     }
 
     virtual void DrawCaption(wxDC& dc,
+                          wxWindow* window,
                           const wxString& text,
                           const wxRect& rect,
                           wxPaneInfo& pane)
@@ -2956,11 +2964,12 @@ class wxPyDockArt :  public wxDefaultDockArt
         wxPyBlock_t blocked = wxPyBeginBlockThreads();
         if ((found = wxPyCBH_findCallback(m_myInst, "DrawCaption"))) {
             PyObject* odc = wxPyMake_wxObject(&dc, false);
+            PyObject* owin = wxPyMake_wxObject(window, false);
             PyObject* otext = wx2PyString(text);
             PyObject* orect = wxPyConstructObject((void*)&rect, wxT("wxRect"), 0);
             PyObject* opane = wxPyConstructObject((void*)&pane, wxT("wxPaneInfo"), 0);
-            wxPyCBH_callCallback(m_myInst, Py_BuildValue("(OOOO)",
-                                                         odc, otext, orect, opane));
+            wxPyCBH_callCallback(m_myInst, Py_BuildValue("(OOOOO)",
+                                                         odc, owin, otext, orect, opane));
             Py_DECREF(odc);
             Py_DECREF(otext);
             Py_DECREF(orect);
@@ -2968,10 +2977,11 @@ class wxPyDockArt :  public wxDefaultDockArt
        }
         wxPyEndBlockThreads(blocked);
         if (! found)
-            wxDefaultDockArt::DrawCaption(dc, text, rect, pane);
+            wxDefaultDockArt::DrawCaption(dc, window, text, rect, pane);
     }
 
     virtual void DrawGripper(wxDC& dc,
+                          wxWindow* window,
                           const wxRect& rect,
                           wxPaneInfo& pane)
     {
@@ -2979,19 +2989,21 @@ class wxPyDockArt :  public wxDefaultDockArt
         wxPyBlock_t blocked = wxPyBeginBlockThreads();
         if ((found = wxPyCBH_findCallback(m_myInst, "DrawGripper"))) {
             PyObject* odc = wxPyMake_wxObject(&dc, false);
+            PyObject* owin = wxPyMake_wxObject(window, false);
             PyObject* orect = wxPyConstructObject((void*)&rect, wxT("wxRect"), 0);
             PyObject* opane = wxPyConstructObject((void*)&pane, wxT("wxPaneInfo"), 0);
-            wxPyCBH_callCallback(m_myInst, Py_BuildValue("(OOO)", odc, orect, opane));
+            wxPyCBH_callCallback(m_myInst, Py_BuildValue("(OOOO)", odc, owin, orect, opane));
             Py_DECREF(odc);
             Py_DECREF(orect);
             Py_DECREF(opane);
         }
         wxPyEndBlockThreads(blocked);
         if (! found)
-            wxDefaultDockArt::DrawGripper(dc, rect, pane);
+            wxDefaultDockArt::DrawGripper(dc, window, rect, pane);
     }
 
     virtual void DrawBorder(wxDC& dc,
+                          wxWindow* window,
                           const wxRect& rect,
                           wxPaneInfo& pane)
     {
@@ -2999,6 +3011,7 @@ class wxPyDockArt :  public wxDefaultDockArt
         wxPyBlock_t blocked = wxPyBeginBlockThreads();
         if ((found = wxPyCBH_findCallback(m_myInst, "DrawBorder"))) {
             PyObject* odc = wxPyMake_wxObject(&dc, false);
+            PyObject* owin = wxPyMake_wxObject(window, false);
             PyObject* orect = wxPyConstructObject((void*)&rect, wxT("wxRect"), 0);
             PyObject* opane = wxPyConstructObject((void*)&pane, wxT("wxPaneInfo"), 0);
             wxPyCBH_callCallback(m_myInst, Py_BuildValue("(OOO)", odc, orect, opane));
@@ -3008,10 +3021,11 @@ class wxPyDockArt :  public wxDefaultDockArt
        }
         wxPyEndBlockThreads(blocked);
         if (! found)
-            wxDefaultDockArt::DrawBorder(dc, rect, pane);
+            wxDefaultDockArt::DrawBorder(dc, window, rect, pane);
     }
 
     virtual void DrawPaneButton(wxDC& dc,
+                          wxWindow* window,
                           int button,
                           int button_state,
                           const wxRect& rect,
@@ -3021,10 +3035,11 @@ class wxPyDockArt :  public wxDefaultDockArt
         wxPyBlock_t blocked = wxPyBeginBlockThreads();
         if ((found = wxPyCBH_findCallback(m_myInst, "DrawPaneButton"))) {
             PyObject* odc = wxPyMake_wxObject(&dc, false);
+            PyObject* owin = wxPyMake_wxObject(window, false);
             PyObject* orect = wxPyConstructObject((void*)&rect, wxT("wxRect"), 0);
             PyObject* opane = wxPyConstructObject((void*)&pane, wxT("wxPaneInfo"), 0);
-            wxPyCBH_callCallback(m_myInst, Py_BuildValue("(OiIOO)",
-                                                         odc, button, button_state,
+            wxPyCBH_callCallback(m_myInst, Py_BuildValue("(OOiIOO)",
+                                                         odc, owin, button, button_state,
                                                          orect, opane));
             Py_DECREF(odc);
             Py_DECREF(orect);
@@ -3032,7 +3047,7 @@ class wxPyDockArt :  public wxDefaultDockArt
         }
         wxPyEndBlockThreads(blocked);
         if (! found)
-            wxDefaultDockArt::DrawPaneButton(dc, button, button_state, rect, pane);
+            wxDefaultDockArt::DrawPaneButton(dc, window, button, button_state, rect, pane);
     }
 
     PYPRIVATE;
@@ -9168,6 +9183,34 @@ fail:
 }
 
 
+SWIGINTERN PyObject *_wrap_delete_DockInfo(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxDockInfo *arg1 = (wxDockInfo *) 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  PyObject *swig_obj[1] ;
+  
+  if (!args) SWIG_fail;
+  swig_obj[0] = args;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxDockInfo, SWIG_POINTER_DISOWN |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_DockInfo" "', expected argument " "1"" of type '" "wxDockInfo *""'"); 
+  }
+  arg1 = reinterpret_cast< wxDockInfo * >(argp1);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    delete_wxDockInfo(arg1);
+    
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
 SWIGINTERN PyObject *DockInfo_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *obj;
   if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL;
@@ -9605,6 +9648,34 @@ fail:
 }
 
 
+SWIGINTERN PyObject *_wrap_delete_DockUIPart(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxDockUIPart *arg1 = (wxDockUIPart *) 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  PyObject *swig_obj[1] ;
+  
+  if (!args) SWIG_fail;
+  swig_obj[0] = args;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxDockUIPart, SWIG_POINTER_DISOWN |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_DockUIPart" "', expected argument " "1"" of type '" "wxDockUIPart *""'"); 
+  }
+  arg1 = reinterpret_cast< wxDockUIPart * >(argp1);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    delete_wxDockUIPart(arg1);
+    
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
 SWIGINTERN PyObject *DockUIPart_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *obj;
   if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL;
@@ -9665,6 +9736,34 @@ fail:
 }
 
 
+SWIGINTERN PyObject *_wrap_delete_PaneButton(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
+  PyObject *resultobj = 0;
+  wxPaneButton *arg1 = (wxPaneButton *) 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  PyObject *swig_obj[1] ;
+  
+  if (!args) SWIG_fail;
+  swig_obj[0] = args;
+  res1 = SWIG_ConvertPtr(swig_obj[0], &argp1,SWIGTYPE_p_wxPaneButton, SWIG_POINTER_DISOWN |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "delete_PaneButton" "', expected argument " "1"" of type '" "wxPaneButton *""'"); 
+  }
+  arg1 = reinterpret_cast< wxPaneButton * >(argp1);
+  {
+    PyThreadState* __tstate = wxPyBeginAllowThreads();
+    delete_wxPaneButton(arg1);
+    
+    wxPyEndAllowThreads(__tstate);
+    if (PyErr_Occurred()) SWIG_fail;
+  }
+  resultobj = SWIG_Py_Void();
+  return resultobj;
+fail:
+  return NULL;
+}
+
+
 SWIGINTERN PyObject *PaneButton_swigregister(PyObject *SWIGUNUSEDPARM(self), PyObject *args) {
   PyObject *obj;
   if (!SWIG_Python_UnpackTuple(args,(char*)"swigregister", 1, 1,&obj)) return NULL;
@@ -10052,24 +10151,28 @@ SWIGINTERN PyObject *_wrap_DockArt_DrawSash(PyObject *SWIGUNUSEDPARM(self), PyOb
   PyObject *resultobj = 0;
   wxDockArt *arg1 = (wxDockArt *) 0 ;
   wxDC *arg2 = 0 ;
-  int arg3 ;
-  wxRect *arg4 = 0 ;
+  wxWindow *arg3 = (wxWindow *) 0 ;
+  int arg4 ;
+  wxRect *arg5 = 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   void *argp2 = 0 ;
   int res2 = 0 ;
-  int val3 ;
-  int ecode3 = 0 ;
-  wxRect temp4 ;
+  void *argp3 = 0 ;
+  int res3 = 0 ;
+  int val4 ;
+  int ecode4 = 0 ;
+  wxRect temp5 ;
   PyObject * obj0 = 0 ;
   PyObject * obj1 = 0 ;
   PyObject * obj2 = 0 ;
   PyObject * obj3 = 0 ;
+  PyObject * obj4 = 0 ;
   char *  kwnames[] = {
-    (char *) "self",(char *) "dc",(char *) "orientation",(char *) "rect", NULL 
+    (char *) "self",(char *) "dc",(char *) "window",(char *) "orientation",(char *) "rect", NULL 
   };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOO:DockArt_DrawSash",kwnames,&obj0,&obj1,&obj2,&obj3)) SWIG_fail;
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOO:DockArt_DrawSash",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4)) SWIG_fail;
   res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxDockArt, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
     SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "DockArt_DrawSash" "', expected argument " "1"" of type '" "wxDockArt *""'"); 
@@ -10083,18 +10186,23 @@ SWIGINTERN PyObject *_wrap_DockArt_DrawSash(PyObject *SWIGUNUSEDPARM(self), PyOb
     SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "DockArt_DrawSash" "', expected argument " "2"" of type '" "wxDC &""'"); 
   }
   arg2 = reinterpret_cast< wxDC * >(argp2);
-  ecode3 = SWIG_AsVal_int(obj2, &val3);
-  if (!SWIG_IsOK(ecode3)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "DockArt_DrawSash" "', expected argument " "3"" of type '" "int""'");
+  res3 = SWIG_ConvertPtr(obj2, &argp3,SWIGTYPE_p_wxWindow, 0 |  0 );
+  if (!SWIG_IsOK(res3)) {
+    SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "DockArt_DrawSash" "', expected argument " "3"" of type '" "wxWindow *""'"); 
+  }
+  arg3 = reinterpret_cast< wxWindow * >(argp3);
+  ecode4 = SWIG_AsVal_int(obj3, &val4);
+  if (!SWIG_IsOK(ecode4)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "DockArt_DrawSash" "', expected argument " "4"" of type '" "int""'");
   } 
-  arg3 = static_cast< int >(val3);
+  arg4 = static_cast< int >(val4);
   {
-    arg4 = &temp4;
-    if ( ! wxRect_helper(obj3, &arg4)) SWIG_fail;
+    arg5 = &temp5;
+    if ( ! wxRect_helper(obj4, &arg5)) SWIG_fail;
   }
   {
     PyThreadState* __tstate = wxPyBeginAllowThreads();
-    (arg1)->DrawSash(*arg2,arg3,(wxRect const &)*arg4);
+    (arg1)->DrawSash(*arg2,arg3,arg4,(wxRect const &)*arg5);
     wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
@@ -10109,24 +10217,28 @@ SWIGINTERN PyObject *_wrap_DockArt_DrawBackground(PyObject *SWIGUNUSEDPARM(self)
   PyObject *resultobj = 0;
   wxDockArt *arg1 = (wxDockArt *) 0 ;
   wxDC *arg2 = 0 ;
-  int arg3 ;
-  wxRect *arg4 = 0 ;
+  wxWindow *arg3 = (wxWindow *) 0 ;
+  int arg4 ;
+  wxRect *arg5 = 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   void *argp2 = 0 ;
   int res2 = 0 ;
-  int val3 ;
-  int ecode3 = 0 ;
-  wxRect temp4 ;
+  void *argp3 = 0 ;
+  int res3 = 0 ;
+  int val4 ;
+  int ecode4 = 0 ;
+  wxRect temp5 ;
   PyObject * obj0 = 0 ;
   PyObject * obj1 = 0 ;
   PyObject * obj2 = 0 ;
   PyObject * obj3 = 0 ;
+  PyObject * obj4 = 0 ;
   char *  kwnames[] = {
-    (char *) "self",(char *) "dc",(char *) "orientation",(char *) "rect", NULL 
+    (char *) "self",(char *) "dc",(char *) "window",(char *) "orientation",(char *) "rect", NULL 
   };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOO:DockArt_DrawBackground",kwnames,&obj0,&obj1,&obj2,&obj3)) SWIG_fail;
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOO:DockArt_DrawBackground",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4)) SWIG_fail;
   res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxDockArt, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
     SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "DockArt_DrawBackground" "', expected argument " "1"" of type '" "wxDockArt *""'"); 
@@ -10140,18 +10252,23 @@ SWIGINTERN PyObject *_wrap_DockArt_DrawBackground(PyObject *SWIGUNUSEDPARM(self)
     SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "DockArt_DrawBackground" "', expected argument " "2"" of type '" "wxDC &""'"); 
   }
   arg2 = reinterpret_cast< wxDC * >(argp2);
-  ecode3 = SWIG_AsVal_int(obj2, &val3);
-  if (!SWIG_IsOK(ecode3)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "DockArt_DrawBackground" "', expected argument " "3"" of type '" "int""'");
+  res3 = SWIG_ConvertPtr(obj2, &argp3,SWIGTYPE_p_wxWindow, 0 |  0 );
+  if (!SWIG_IsOK(res3)) {
+    SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "DockArt_DrawBackground" "', expected argument " "3"" of type '" "wxWindow *""'"); 
+  }
+  arg3 = reinterpret_cast< wxWindow * >(argp3);
+  ecode4 = SWIG_AsVal_int(obj3, &val4);
+  if (!SWIG_IsOK(ecode4)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "DockArt_DrawBackground" "', expected argument " "4"" of type '" "int""'");
   } 
-  arg3 = static_cast< int >(val3);
+  arg4 = static_cast< int >(val4);
   {
-    arg4 = &temp4;
-    if ( ! wxRect_helper(obj3, &arg4)) SWIG_fail;
+    arg5 = &temp5;
+    if ( ! wxRect_helper(obj4, &arg5)) SWIG_fail;
   }
   {
     PyThreadState* __tstate = wxPyBeginAllowThreads();
-    (arg1)->DrawBackground(*arg2,arg3,(wxRect const &)*arg4);
+    (arg1)->DrawBackground(*arg2,arg3,arg4,(wxRect const &)*arg5);
     wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
@@ -10166,27 +10283,31 @@ SWIGINTERN PyObject *_wrap_DockArt_DrawCaption(PyObject *SWIGUNUSEDPARM(self), P
   PyObject *resultobj = 0;
   wxDockArt *arg1 = (wxDockArt *) 0 ;
   wxDC *arg2 = 0 ;
-  wxString *arg3 = 0 ;
-  wxRect *arg4 = 0 ;
-  wxPaneInfo *arg5 = 0 ;
+  wxWindow *arg3 = (wxWindow *) 0 ;
+  wxString *arg4 = 0 ;
+  wxRect *arg5 = 0 ;
+  wxPaneInfo *arg6 = 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   void *argp2 = 0 ;
   int res2 = 0 ;
-  bool temp3 = false ;
-  wxRect temp4 ;
-  void *argp5 = 0 ;
-  int res5 = 0 ;
+  void *argp3 = 0 ;
+  int res3 = 0 ;
+  bool temp4 = false ;
+  wxRect temp5 ;
+  void *argp6 = 0 ;
+  int res6 = 0 ;
   PyObject * obj0 = 0 ;
   PyObject * obj1 = 0 ;
   PyObject * obj2 = 0 ;
   PyObject * obj3 = 0 ;
   PyObject * obj4 = 0 ;
+  PyObject * obj5 = 0 ;
   char *  kwnames[] = {
-    (char *) "self",(char *) "dc",(char *) "text",(char *) "rect",(char *) "pane", NULL 
+    (char *) "self",(char *) "dc",(char *) "window",(char *) "text",(char *) "rect",(char *) "pane", NULL 
   };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOO:DockArt_DrawCaption",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4)) SWIG_fail;
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOOO:DockArt_DrawCaption",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5)) SWIG_fail;
   res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxDockArt, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
     SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "DockArt_DrawCaption" "', expected argument " "1"" of type '" "wxDockArt *""'"); 
@@ -10200,39 +10321,44 @@ SWIGINTERN PyObject *_wrap_DockArt_DrawCaption(PyObject *SWIGUNUSEDPARM(self), P
     SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "DockArt_DrawCaption" "', expected argument " "2"" of type '" "wxDC &""'"); 
   }
   arg2 = reinterpret_cast< wxDC * >(argp2);
+  res3 = SWIG_ConvertPtr(obj2, &argp3,SWIGTYPE_p_wxWindow, 0 |  0 );
+  if (!SWIG_IsOK(res3)) {
+    SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "DockArt_DrawCaption" "', expected argument " "3"" of type '" "wxWindow *""'"); 
+  }
+  arg3 = reinterpret_cast< wxWindow * >(argp3);
   {
-    arg3 = wxString_in_helper(obj2);
-    if (arg3 == NULL) SWIG_fail;
-    temp3 = true;
+    arg4 = wxString_in_helper(obj3);
+    if (arg4 == NULL) SWIG_fail;
+    temp4 = true;
   }
   {
-    arg4 = &temp4;
-    if ( ! wxRect_helper(obj3, &arg4)) SWIG_fail;
+    arg5 = &temp5;
+    if ( ! wxRect_helper(obj4, &arg5)) SWIG_fail;
   }
-  res5 = SWIG_ConvertPtr(obj4, &argp5, SWIGTYPE_p_wxPaneInfo,  0 );
-  if (!SWIG_IsOK(res5)) {
-    SWIG_exception_fail(SWIG_ArgError(res5), "in method '" "DockArt_DrawCaption" "', expected argument " "5"" of type '" "wxPaneInfo &""'"); 
+  res6 = SWIG_ConvertPtr(obj5, &argp6, SWIGTYPE_p_wxPaneInfo,  0 );
+  if (!SWIG_IsOK(res6)) {
+    SWIG_exception_fail(SWIG_ArgError(res6), "in method '" "DockArt_DrawCaption" "', expected argument " "6"" of type '" "wxPaneInfo &""'"); 
   }
-  if (!argp5) {
-    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "DockArt_DrawCaption" "', expected argument " "5"" of type '" "wxPaneInfo &""'"); 
+  if (!argp6) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "DockArt_DrawCaption" "', expected argument " "6"" of type '" "wxPaneInfo &""'"); 
   }
-  arg5 = reinterpret_cast< wxPaneInfo * >(argp5);
+  arg6 = reinterpret_cast< wxPaneInfo * >(argp6);
   {
     PyThreadState* __tstate = wxPyBeginAllowThreads();
-    (arg1)->DrawCaption(*arg2,(wxString const &)*arg3,(wxRect const &)*arg4,*arg5);
+    (arg1)->DrawCaption(*arg2,arg3,(wxString const &)*arg4,(wxRect const &)*arg5,*arg6);
     wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
   resultobj = SWIG_Py_Void();
   {
-    if (temp3)
-    delete arg3;
+    if (temp4)
+    delete arg4;
   }
   return resultobj;
 fail:
   {
-    if (temp3)
-    delete arg3;
+    if (temp4)
+    delete arg4;
   }
   return NULL;
 }
@@ -10242,24 +10368,28 @@ SWIGINTERN PyObject *_wrap_DockArt_DrawGripper(PyObject *SWIGUNUSEDPARM(self), P
   PyObject *resultobj = 0;
   wxDockArt *arg1 = (wxDockArt *) 0 ;
   wxDC *arg2 = 0 ;
-  wxRect *arg3 = 0 ;
-  wxPaneInfo *arg4 = 0 ;
+  wxWindow *arg3 = (wxWindow *) 0 ;
+  wxRect *arg4 = 0 ;
+  wxPaneInfo *arg5 = 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   void *argp2 = 0 ;
   int res2 = 0 ;
-  wxRect temp3 ;
-  void *argp4 = 0 ;
-  int res4 = 0 ;
+  void *argp3 = 0 ;
+  int res3 = 0 ;
+  wxRect temp4 ;
+  void *argp5 = 0 ;
+  int res5 = 0 ;
   PyObject * obj0 = 0 ;
   PyObject * obj1 = 0 ;
   PyObject * obj2 = 0 ;
   PyObject * obj3 = 0 ;
+  PyObject * obj4 = 0 ;
   char *  kwnames[] = {
-    (char *) "self",(char *) "dc",(char *) "rect",(char *) "pane", NULL 
+    (char *) "self",(char *) "dc",(char *) "window",(char *) "rect",(char *) "pane", NULL 
   };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOO:DockArt_DrawGripper",kwnames,&obj0,&obj1,&obj2,&obj3)) SWIG_fail;
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOO:DockArt_DrawGripper",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4)) SWIG_fail;
   res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxDockArt, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
     SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "DockArt_DrawGripper" "', expected argument " "1"" of type '" "wxDockArt *""'"); 
@@ -10273,21 +10403,26 @@ SWIGINTERN PyObject *_wrap_DockArt_DrawGripper(PyObject *SWIGUNUSEDPARM(self), P
     SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "DockArt_DrawGripper" "', expected argument " "2"" of type '" "wxDC &""'"); 
   }
   arg2 = reinterpret_cast< wxDC * >(argp2);
+  res3 = SWIG_ConvertPtr(obj2, &argp3,SWIGTYPE_p_wxWindow, 0 |  0 );
+  if (!SWIG_IsOK(res3)) {
+    SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "DockArt_DrawGripper" "', expected argument " "3"" of type '" "wxWindow *""'"); 
+  }
+  arg3 = reinterpret_cast< wxWindow * >(argp3);
   {
-    arg3 = &temp3;
-    if ( ! wxRect_helper(obj2, &arg3)) SWIG_fail;
+    arg4 = &temp4;
+    if ( ! wxRect_helper(obj3, &arg4)) SWIG_fail;
   }
-  res4 = SWIG_ConvertPtr(obj3, &argp4, SWIGTYPE_p_wxPaneInfo,  0 );
-  if (!SWIG_IsOK(res4)) {
-    SWIG_exception_fail(SWIG_ArgError(res4), "in method '" "DockArt_DrawGripper" "', expected argument " "4"" of type '" "wxPaneInfo &""'"); 
+  res5 = SWIG_ConvertPtr(obj4, &argp5, SWIGTYPE_p_wxPaneInfo,  0 );
+  if (!SWIG_IsOK(res5)) {
+    SWIG_exception_fail(SWIG_ArgError(res5), "in method '" "DockArt_DrawGripper" "', expected argument " "5"" of type '" "wxPaneInfo &""'"); 
   }
-  if (!argp4) {
-    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "DockArt_DrawGripper" "', expected argument " "4"" of type '" "wxPaneInfo &""'"); 
+  if (!argp5) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "DockArt_DrawGripper" "', expected argument " "5"" of type '" "wxPaneInfo &""'"); 
   }
-  arg4 = reinterpret_cast< wxPaneInfo * >(argp4);
+  arg5 = reinterpret_cast< wxPaneInfo * >(argp5);
   {
     PyThreadState* __tstate = wxPyBeginAllowThreads();
-    (arg1)->DrawGripper(*arg2,(wxRect const &)*arg3,*arg4);
+    (arg1)->DrawGripper(*arg2,arg3,(wxRect const &)*arg4,*arg5);
     wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
@@ -10302,24 +10437,28 @@ SWIGINTERN PyObject *_wrap_DockArt_DrawBorder(PyObject *SWIGUNUSEDPARM(self), Py
   PyObject *resultobj = 0;
   wxDockArt *arg1 = (wxDockArt *) 0 ;
   wxDC *arg2 = 0 ;
-  wxRect *arg3 = 0 ;
-  wxPaneInfo *arg4 = 0 ;
+  wxWindow *arg3 = (wxWindow *) 0 ;
+  wxRect *arg4 = 0 ;
+  wxPaneInfo *arg5 = 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   void *argp2 = 0 ;
   int res2 = 0 ;
-  wxRect temp3 ;
-  void *argp4 = 0 ;
-  int res4 = 0 ;
+  void *argp3 = 0 ;
+  int res3 = 0 ;
+  wxRect temp4 ;
+  void *argp5 = 0 ;
+  int res5 = 0 ;
   PyObject * obj0 = 0 ;
   PyObject * obj1 = 0 ;
   PyObject * obj2 = 0 ;
   PyObject * obj3 = 0 ;
+  PyObject * obj4 = 0 ;
   char *  kwnames[] = {
-    (char *) "self",(char *) "dc",(char *) "rect",(char *) "pane", NULL 
+    (char *) "self",(char *) "dc",(char *) "window",(char *) "rect",(char *) "pane", NULL 
   };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOO:DockArt_DrawBorder",kwnames,&obj0,&obj1,&obj2,&obj3)) SWIG_fail;
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOO:DockArt_DrawBorder",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4)) SWIG_fail;
   res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxDockArt, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
     SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "DockArt_DrawBorder" "', expected argument " "1"" of type '" "wxDockArt *""'"); 
@@ -10333,21 +10472,26 @@ SWIGINTERN PyObject *_wrap_DockArt_DrawBorder(PyObject *SWIGUNUSEDPARM(self), Py
     SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "DockArt_DrawBorder" "', expected argument " "2"" of type '" "wxDC &""'"); 
   }
   arg2 = reinterpret_cast< wxDC * >(argp2);
+  res3 = SWIG_ConvertPtr(obj2, &argp3,SWIGTYPE_p_wxWindow, 0 |  0 );
+  if (!SWIG_IsOK(res3)) {
+    SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "DockArt_DrawBorder" "', expected argument " "3"" of type '" "wxWindow *""'"); 
+  }
+  arg3 = reinterpret_cast< wxWindow * >(argp3);
   {
-    arg3 = &temp3;
-    if ( ! wxRect_helper(obj2, &arg3)) SWIG_fail;
+    arg4 = &temp4;
+    if ( ! wxRect_helper(obj3, &arg4)) SWIG_fail;
   }
-  res4 = SWIG_ConvertPtr(obj3, &argp4, SWIGTYPE_p_wxPaneInfo,  0 );
-  if (!SWIG_IsOK(res4)) {
-    SWIG_exception_fail(SWIG_ArgError(res4), "in method '" "DockArt_DrawBorder" "', expected argument " "4"" of type '" "wxPaneInfo &""'"); 
+  res5 = SWIG_ConvertPtr(obj4, &argp5, SWIGTYPE_p_wxPaneInfo,  0 );
+  if (!SWIG_IsOK(res5)) {
+    SWIG_exception_fail(SWIG_ArgError(res5), "in method '" "DockArt_DrawBorder" "', expected argument " "5"" of type '" "wxPaneInfo &""'"); 
   }
-  if (!argp4) {
-    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "DockArt_DrawBorder" "', expected argument " "4"" of type '" "wxPaneInfo &""'"); 
+  if (!argp5) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "DockArt_DrawBorder" "', expected argument " "5"" of type '" "wxPaneInfo &""'"); 
   }
-  arg4 = reinterpret_cast< wxPaneInfo * >(argp4);
+  arg5 = reinterpret_cast< wxPaneInfo * >(argp5);
   {
     PyThreadState* __tstate = wxPyBeginAllowThreads();
-    (arg1)->DrawBorder(*arg2,(wxRect const &)*arg3,*arg4);
+    (arg1)->DrawBorder(*arg2,arg3,(wxRect const &)*arg4,*arg5);
     wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
@@ -10362,32 +10506,36 @@ SWIGINTERN PyObject *_wrap_DockArt_DrawPaneButton(PyObject *SWIGUNUSEDPARM(self)
   PyObject *resultobj = 0;
   wxDockArt *arg1 = (wxDockArt *) 0 ;
   wxDC *arg2 = 0 ;
-  int arg3 ;
+  wxWindow *arg3 = (wxWindow *) 0 ;
   int arg4 ;
-  wxRect *arg5 = 0 ;
-  wxPaneInfo *arg6 = 0 ;
+  int arg5 ;
+  wxRect *arg6 = 0 ;
+  wxPaneInfo *arg7 = 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   void *argp2 = 0 ;
   int res2 = 0 ;
-  int val3 ;
-  int ecode3 = 0 ;
+  void *argp3 = 0 ;
+  int res3 = 0 ;
   int val4 ;
   int ecode4 = 0 ;
-  wxRect temp5 ;
-  void *argp6 = 0 ;
-  int res6 = 0 ;
+  int val5 ;
+  int ecode5 = 0 ;
+  wxRect temp6 ;
+  void *argp7 = 0 ;
+  int res7 = 0 ;
   PyObject * obj0 = 0 ;
   PyObject * obj1 = 0 ;
   PyObject * obj2 = 0 ;
   PyObject * obj3 = 0 ;
   PyObject * obj4 = 0 ;
   PyObject * obj5 = 0 ;
+  PyObject * obj6 = 0 ;
   char *  kwnames[] = {
-    (char *) "self",(char *) "dc",(char *) "button",(char *) "button_state",(char *) "rect",(char *) "pane", NULL 
+    (char *) "self",(char *) "dc",(char *) "window",(char *) "button",(char *) "button_state",(char *) "rect",(char *) "pane", NULL 
   };
   
-  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOOO:DockArt_DrawPaneButton",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5)) SWIG_fail;
+  if (!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOOOOOO:DockArt_DrawPaneButton",kwnames,&obj0,&obj1,&obj2,&obj3,&obj4,&obj5,&obj6)) SWIG_fail;
   res1 = SWIG_ConvertPtr(obj0, &argp1,SWIGTYPE_p_wxDockArt, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
     SWIG_exception_fail(SWIG_ArgError(res1), "in method '" "DockArt_DrawPaneButton" "', expected argument " "1"" of type '" "wxDockArt *""'"); 
@@ -10401,31 +10549,36 @@ SWIGINTERN PyObject *_wrap_DockArt_DrawPaneButton(PyObject *SWIGUNUSEDPARM(self)
     SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "DockArt_DrawPaneButton" "', expected argument " "2"" of type '" "wxDC &""'"); 
   }
   arg2 = reinterpret_cast< wxDC * >(argp2);
-  ecode3 = SWIG_AsVal_int(obj2, &val3);
-  if (!SWIG_IsOK(ecode3)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode3), "in method '" "DockArt_DrawPaneButton" "', expected argument " "3"" of type '" "int""'");
-  } 
-  arg3 = static_cast< int >(val3);
+  res3 = SWIG_ConvertPtr(obj2, &argp3,SWIGTYPE_p_wxWindow, 0 |  0 );
+  if (!SWIG_IsOK(res3)) {
+    SWIG_exception_fail(SWIG_ArgError(res3), "in method '" "DockArt_DrawPaneButton" "', expected argument " "3"" of type '" "wxWindow *""'"); 
+  }
+  arg3 = reinterpret_cast< wxWindow * >(argp3);
   ecode4 = SWIG_AsVal_int(obj3, &val4);
   if (!SWIG_IsOK(ecode4)) {
     SWIG_exception_fail(SWIG_ArgError(ecode4), "in method '" "DockArt_DrawPaneButton" "', expected argument " "4"" of type '" "int""'");
   } 
   arg4 = static_cast< int >(val4);
+  ecode5 = SWIG_AsVal_int(obj4, &val5);
+  if (!SWIG_IsOK(ecode5)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode5), "in method '" "DockArt_DrawPaneButton" "', expected argument " "5"" of type '" "int""'");
+  } 
+  arg5 = static_cast< int >(val5);
   {
-    arg5 = &temp5;
-    if ( ! wxRect_helper(obj4, &arg5)) SWIG_fail;
+    arg6 = &temp6;
+    if ( ! wxRect_helper(obj5, &arg6)) SWIG_fail;
   }
-  res6 = SWIG_ConvertPtr(obj5, &argp6, SWIGTYPE_p_wxPaneInfo,  0 );
-  if (!SWIG_IsOK(res6)) {
-    SWIG_exception_fail(SWIG_ArgError(res6), "in method '" "DockArt_DrawPaneButton" "', expected argument " "6"" of type '" "wxPaneInfo &""'"); 
+  res7 = SWIG_ConvertPtr(obj6, &argp7, SWIGTYPE_p_wxPaneInfo,  0 );
+  if (!SWIG_IsOK(res7)) {
+    SWIG_exception_fail(SWIG_ArgError(res7), "in method '" "DockArt_DrawPaneButton" "', expected argument " "7"" of type '" "wxPaneInfo &""'"); 
   }
-  if (!argp6) {
-    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "DockArt_DrawPaneButton" "', expected argument " "6"" of type '" "wxPaneInfo &""'"); 
+  if (!argp7) {
+    SWIG_exception_fail(SWIG_ValueError, "invalid null reference " "in method '" "DockArt_DrawPaneButton" "', expected argument " "7"" of type '" "wxPaneInfo &""'"); 
   }
-  arg6 = reinterpret_cast< wxPaneInfo * >(argp6);
+  arg7 = reinterpret_cast< wxPaneInfo * >(argp7);
   {
     PyThreadState* __tstate = wxPyBeginAllowThreads();
-    (arg1)->DrawPaneButton(*arg2,arg3,arg4,(wxRect const &)*arg5,*arg6);
+    (arg1)->DrawPaneButton(*arg2,arg3,arg4,arg5,(wxRect const &)*arg6,*arg7);
     wxPyEndAllowThreads(__tstate);
     if (PyErr_Occurred()) SWIG_fail;
   }
@@ -13225,6 +13378,7 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"DockInfo_toolbar_get", (PyCFunction)_wrap_DockInfo_toolbar_get, METH_O, NULL},
         { (char *)"DockInfo_fixed_set", _wrap_DockInfo_fixed_set, METH_VARARGS, NULL},
         { (char *)"DockInfo_fixed_get", (PyCFunction)_wrap_DockInfo_fixed_get, METH_O, NULL},
+        { (char *)"delete_DockInfo", (PyCFunction)_wrap_delete_DockInfo, METH_O, NULL},
         { (char *)"DockInfo_swigregister", DockInfo_swigregister, METH_VARARGS, NULL},
         { (char *)"DockInfo_swiginit", DockInfo_swiginit, METH_VARARGS, NULL},
         { (char *)"DockUIPart_type_set", _wrap_DockUIPart_type_set, METH_VARARGS, NULL},
@@ -13243,9 +13397,11 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"DockUIPart_sizer_item_get", (PyCFunction)_wrap_DockUIPart_sizer_item_get, METH_O, NULL},
         { (char *)"DockUIPart_rect_set", _wrap_DockUIPart_rect_set, METH_VARARGS, NULL},
         { (char *)"DockUIPart_rect_get", (PyCFunction)_wrap_DockUIPart_rect_get, METH_O, NULL},
+        { (char *)"delete_DockUIPart", (PyCFunction)_wrap_delete_DockUIPart, METH_O, NULL},
         { (char *)"DockUIPart_swigregister", DockUIPart_swigregister, METH_VARARGS, NULL},
         { (char *)"PaneButton_button_id_set", _wrap_PaneButton_button_id_set, METH_VARARGS, NULL},
         { (char *)"PaneButton_button_id_get", (PyCFunction)_wrap_PaneButton_button_id_get, METH_O, NULL},
+        { (char *)"delete_PaneButton", (PyCFunction)_wrap_delete_PaneButton, METH_O, NULL},
         { (char *)"PaneButton_swigregister", PaneButton_swigregister, METH_VARARGS, NULL},
         { (char *)"delete_DockArt", (PyCFunction)_wrap_delete_DockArt, METH_O, NULL},
         { (char *)"DockArt_GetMetric", (PyCFunction) _wrap_DockArt_GetMetric, METH_VARARGS | METH_KEYWORDS, NULL},