]> git.saurik.com Git - wxWidgets.git/blobdiff - wxPython/src/msw/controls_wrap.cpp
Gave wxWindow.GetHandle something to do on wxMac, although it won't
[wxWidgets.git] / wxPython / src / msw / controls_wrap.cpp
index 879c171f09449209026f196619436b7f7a529098..fd0b693e0431d3682f82a2cd4ef5eac30eb0668c 100644 (file)
@@ -424,6 +424,24 @@ PyObject *wxListBox_GetSelections(wxListBox *self){
           }
           return tup;
       }
+void wxListBox_SetItemForegroundColour(wxListBox *self,int item,wxColour const &c){
+            #ifdef __WXMSW__
+                 if (self->GetWindowStyle() & wxLB_OWNERDRAW)
+                     self->GetItem(item)->SetTextColour(c);
+            #endif
+        }
+void wxListBox_SetItemBackgroundColour(wxListBox *self,int item,wxColour const &c){
+            #ifdef __WXMSW__
+                 if (self->GetWindowStyle() & wxLB_OWNERDRAW)
+                     self->GetItem(item)->SetBackgroundColour(c);
+            #endif
+        }
+void wxListBox_SetItemFont(wxListBox *self,int item,wxFont const &f){
+            #ifdef __WXMSW__
+                 if (self->GetWindowStyle() & wxLB_OWNERDRAW)
+                     self->GetItem(item)->SetFont(f);
+            #endif
+        }
  static const wxString wxPyTextCtrlNameStr(wxTextCtrlNameStr); 
 
 static PyObject* t_output_helper(PyObject* target, PyObject* o) {
@@ -2271,6 +2289,7 @@ static PyObject *_wrap_new_Choice(PyObject *self, PyObject *args, PyObject *kwar
     wxChoice *result;
     wxPoint temp3 ;
     wxSize temp4 ;
+    bool temp5 = False ;
     bool temp8 = False ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
@@ -2309,6 +2328,7 @@ static PyObject *_wrap_new_Choice(PyObject *self, PyObject *args, PyObject *kwar
                 SWIG_fail;
             }
             arg5 = new wxArrayString;
+            temp5 = True;
             int i, len=PySequence_Length(obj4);
             for (i=0; i<len; i++) {
                 PyObject* item = PySequence_GetItem(obj4, i);
@@ -2351,7 +2371,7 @@ static PyObject *_wrap_new_Choice(PyObject *self, PyObject *args, PyObject *kwar
     }
     resultobj = SWIG_NewPointerObj((void *) result, SWIGTYPE_p_wxChoice, 1);
     {
-        if (arg5) delete arg5;
+        if (temp5) delete arg5;
     }
     {
         if (temp8)
@@ -2360,7 +2380,7 @@ static PyObject *_wrap_new_Choice(PyObject *self, PyObject *args, PyObject *kwar
     return resultobj;
     fail:
     {
-        if (arg5) delete arg5;
+        if (temp5) delete arg5;
     }
     {
         if (temp8)
@@ -2411,6 +2431,7 @@ static PyObject *_wrap_Choice_Create(PyObject *self, PyObject *args, PyObject *k
     bool result;
     wxPoint temp4 ;
     wxSize temp5 ;
+    bool temp6 = False ;
     bool temp9 = False ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
@@ -2451,6 +2472,7 @@ static PyObject *_wrap_Choice_Create(PyObject *self, PyObject *args, PyObject *k
                 SWIG_fail;
             }
             arg6 = new wxArrayString;
+            temp6 = True;
             int i, len=PySequence_Length(obj5);
             for (i=0; i<len; i++) {
                 PyObject* item = PySequence_GetItem(obj5, i);
@@ -2493,7 +2515,7 @@ static PyObject *_wrap_Choice_Create(PyObject *self, PyObject *args, PyObject *k
     }
     resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
     {
-        if (arg6) delete arg6;
+        if (temp6) delete arg6;
     }
     {
         if (temp9)
@@ -2502,7 +2524,7 @@ static PyObject *_wrap_Choice_Create(PyObject *self, PyObject *args, PyObject *k
     return resultobj;
     fail:
     {
-        if (arg6) delete arg6;
+        if (temp6) delete arg6;
     }
     {
         if (temp9)
@@ -2733,6 +2755,7 @@ static PyObject *_wrap_new_ComboBox(PyObject *self, PyObject *args, PyObject *kw
     bool temp3 = False ;
     wxPoint temp4 ;
     wxSize temp5 ;
+    bool temp6 = False ;
     bool temp9 = False ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
@@ -2779,6 +2802,7 @@ static PyObject *_wrap_new_ComboBox(PyObject *self, PyObject *args, PyObject *kw
                 SWIG_fail;
             }
             arg6 = new wxArrayString;
+            temp6 = True;
             int i, len=PySequence_Length(obj5);
             for (i=0; i<len; i++) {
                 PyObject* item = PySequence_GetItem(obj5, i);
@@ -2825,7 +2849,7 @@ static PyObject *_wrap_new_ComboBox(PyObject *self, PyObject *args, PyObject *kw
         delete arg3;
     }
     {
-        if (arg6) delete arg6;
+        if (temp6) delete arg6;
     }
     {
         if (temp9)
@@ -2838,7 +2862,7 @@ static PyObject *_wrap_new_ComboBox(PyObject *self, PyObject *args, PyObject *kw
         delete arg3;
     }
     {
-        if (arg6) delete arg6;
+        if (temp6) delete arg6;
     }
     {
         if (temp9)
@@ -2892,6 +2916,7 @@ static PyObject *_wrap_ComboBox_Create(PyObject *self, PyObject *args, PyObject
     bool temp4 = False ;
     wxPoint temp5 ;
     wxSize temp6 ;
+    bool temp7 = False ;
     bool temp10 = False ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
@@ -2940,6 +2965,7 @@ static PyObject *_wrap_ComboBox_Create(PyObject *self, PyObject *args, PyObject
                 SWIG_fail;
             }
             arg7 = new wxArrayString;
+            temp7 = True;
             int i, len=PySequence_Length(obj6);
             for (i=0; i<len; i++) {
                 PyObject* item = PySequence_GetItem(obj6, i);
@@ -2986,7 +3012,7 @@ static PyObject *_wrap_ComboBox_Create(PyObject *self, PyObject *args, PyObject
         delete arg4;
     }
     {
-        if (arg7) delete arg7;
+        if (temp7) delete arg7;
     }
     {
         if (temp10)
@@ -2999,7 +3025,7 @@ static PyObject *_wrap_ComboBox_Create(PyObject *self, PyObject *args, PyObject
         delete arg4;
     }
     {
-        if (arg7) delete arg7;
+        if (temp7) delete arg7;
     }
     {
         if (temp10)
@@ -4996,6 +5022,7 @@ static PyObject *_wrap_new_ListBox(PyObject *self, PyObject *args, PyObject *kwa
     wxListBox *result;
     wxPoint temp3 ;
     wxSize temp4 ;
+    bool temp5 = False ;
     bool temp8 = False ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
@@ -5034,6 +5061,7 @@ static PyObject *_wrap_new_ListBox(PyObject *self, PyObject *args, PyObject *kwa
                 SWIG_fail;
             }
             arg5 = new wxArrayString;
+            temp5 = True;
             int i, len=PySequence_Length(obj4);
             for (i=0; i<len; i++) {
                 PyObject* item = PySequence_GetItem(obj4, i);
@@ -5076,7 +5104,7 @@ static PyObject *_wrap_new_ListBox(PyObject *self, PyObject *args, PyObject *kwa
     }
     resultobj = SWIG_NewPointerObj((void *) result, SWIGTYPE_p_wxListBox, 1);
     {
-        if (arg5) delete arg5;
+        if (temp5) delete arg5;
     }
     {
         if (temp8)
@@ -5085,7 +5113,7 @@ static PyObject *_wrap_new_ListBox(PyObject *self, PyObject *args, PyObject *kwa
     return resultobj;
     fail:
     {
-        if (arg5) delete arg5;
+        if (temp5) delete arg5;
     }
     {
         if (temp8)
@@ -5136,6 +5164,7 @@ static PyObject *_wrap_ListBox_Create(PyObject *self, PyObject *args, PyObject *
     bool result;
     wxPoint temp4 ;
     wxSize temp5 ;
+    bool temp6 = False ;
     bool temp9 = False ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
@@ -5176,6 +5205,7 @@ static PyObject *_wrap_ListBox_Create(PyObject *self, PyObject *args, PyObject *
                 SWIG_fail;
             }
             arg6 = new wxArrayString;
+            temp6 = True;
             int i, len=PySequence_Length(obj5);
             for (i=0; i<len; i++) {
                 PyObject* item = PySequence_GetItem(obj5, i);
@@ -5218,7 +5248,7 @@ static PyObject *_wrap_ListBox_Create(PyObject *self, PyObject *args, PyObject *
     }
     resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
     {
-        if (arg6) delete arg6;
+        if (temp6) delete arg6;
     }
     {
         if (temp9)
@@ -5227,7 +5257,7 @@ static PyObject *_wrap_ListBox_Create(PyObject *self, PyObject *args, PyObject *
     return resultobj;
     fail:
     {
-        if (arg6) delete arg6;
+        if (temp6) delete arg6;
     }
     {
         if (temp9)
@@ -5293,6 +5323,7 @@ static PyObject *_wrap_ListBox_InsertItems(PyObject *self, PyObject *args, PyObj
     wxListBox *arg1 = (wxListBox *) 0 ;
     wxArrayString *arg2 = 0 ;
     int arg3 ;
+    bool temp2 = False ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     PyObject * obj2 = 0 ;
@@ -5308,6 +5339,7 @@ static PyObject *_wrap_ListBox_InsertItems(PyObject *self, PyObject *args, PyObj
             SWIG_fail;
         }
         arg2 = new wxArrayString;
+        temp2 = True;
         int i, len=PySequence_Length(obj1);
         for (i=0; i<len; i++) {
             PyObject* item = PySequence_GetItem(obj1, i);
@@ -5334,12 +5366,12 @@ static PyObject *_wrap_ListBox_InsertItems(PyObject *self, PyObject *args, PyObj
     }
     Py_INCREF(Py_None); resultobj = Py_None;
     {
-        if (arg2) delete arg2;
+        if (temp2) delete arg2;
     }
     return resultobj;
     fail:
     {
-        if (arg2) delete arg2;
+        if (temp2) delete arg2;
     }
     return NULL;
 }
@@ -5349,6 +5381,7 @@ static PyObject *_wrap_ListBox_Set(PyObject *self, PyObject *args, PyObject *kwa
     PyObject *resultobj;
     wxListBox *arg1 = (wxListBox *) 0 ;
     wxArrayString *arg2 = 0 ;
+    bool temp2 = False ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     char *kwnames[] = {
@@ -5363,6 +5396,7 @@ static PyObject *_wrap_ListBox_Set(PyObject *self, PyObject *args, PyObject *kwa
             SWIG_fail;
         }
         arg2 = new wxArrayString;
+        temp2 = True;
         int i, len=PySequence_Length(obj1);
         for (i=0; i<len; i++) {
             PyObject* item = PySequence_GetItem(obj1, i);
@@ -5385,12 +5419,12 @@ static PyObject *_wrap_ListBox_Set(PyObject *self, PyObject *args, PyObject *kwa
     }
     Py_INCREF(Py_None); resultobj = Py_None;
     {
-        if (arg2) delete arg2;
+        if (temp2) delete arg2;
     }
     return resultobj;
     fail:
     {
-        if (arg2) delete arg2;
+        if (temp2) delete arg2;
     }
     return NULL;
 }
@@ -5796,6 +5830,116 @@ static PyObject *_wrap_ListBox_IsSorted(PyObject *self, PyObject *args, PyObject
 }
 
 
+static PyObject *_wrap_ListBox_SetItemForegroundColour(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject *resultobj;
+    wxListBox *arg1 = (wxListBox *) 0 ;
+    int arg2 ;
+    wxColour *arg3 = 0 ;
+    wxColour temp3 ;
+    PyObject * obj0 = 0 ;
+    PyObject * obj1 = 0 ;
+    PyObject * obj2 = 0 ;
+    char *kwnames[] = {
+        (char *) "self",(char *) "item",(char *) "c", NULL 
+    };
+    
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOO:ListBox_SetItemForegroundColour",kwnames,&obj0,&obj1,&obj2)) goto fail;
+    if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_wxListBox,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
+    {
+        arg2 = (int) SWIG_PyObj_AsInt(obj1);  
+        if (PyErr_Occurred()) SWIG_fail;
+    }
+    {
+        arg3 = &temp3;
+        if ( ! wxColour_helper(obj2, &arg3)) SWIG_fail;
+    }
+    {
+        PyThreadState* __tstate = wxPyBeginAllowThreads();
+        wxListBox_SetItemForegroundColour(arg1,arg2,(wxColour const &)*arg3);
+        
+        wxPyEndAllowThreads(__tstate);
+        if (PyErr_Occurred()) SWIG_fail;
+    }
+    Py_INCREF(Py_None); resultobj = Py_None;
+    return resultobj;
+    fail:
+    return NULL;
+}
+
+
+static PyObject *_wrap_ListBox_SetItemBackgroundColour(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject *resultobj;
+    wxListBox *arg1 = (wxListBox *) 0 ;
+    int arg2 ;
+    wxColour *arg3 = 0 ;
+    wxColour temp3 ;
+    PyObject * obj0 = 0 ;
+    PyObject * obj1 = 0 ;
+    PyObject * obj2 = 0 ;
+    char *kwnames[] = {
+        (char *) "self",(char *) "item",(char *) "c", NULL 
+    };
+    
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOO:ListBox_SetItemBackgroundColour",kwnames,&obj0,&obj1,&obj2)) goto fail;
+    if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_wxListBox,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
+    {
+        arg2 = (int) SWIG_PyObj_AsInt(obj1);  
+        if (PyErr_Occurred()) SWIG_fail;
+    }
+    {
+        arg3 = &temp3;
+        if ( ! wxColour_helper(obj2, &arg3)) SWIG_fail;
+    }
+    {
+        PyThreadState* __tstate = wxPyBeginAllowThreads();
+        wxListBox_SetItemBackgroundColour(arg1,arg2,(wxColour const &)*arg3);
+        
+        wxPyEndAllowThreads(__tstate);
+        if (PyErr_Occurred()) SWIG_fail;
+    }
+    Py_INCREF(Py_None); resultobj = Py_None;
+    return resultobj;
+    fail:
+    return NULL;
+}
+
+
+static PyObject *_wrap_ListBox_SetItemFont(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject *resultobj;
+    wxListBox *arg1 = (wxListBox *) 0 ;
+    int arg2 ;
+    wxFont *arg3 = 0 ;
+    PyObject * obj0 = 0 ;
+    PyObject * obj1 = 0 ;
+    PyObject * obj2 = 0 ;
+    char *kwnames[] = {
+        (char *) "self",(char *) "item",(char *) "f", NULL 
+    };
+    
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OOO:ListBox_SetItemFont",kwnames,&obj0,&obj1,&obj2)) goto fail;
+    if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_wxListBox,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
+    {
+        arg2 = (int) SWIG_PyObj_AsInt(obj1);  
+        if (PyErr_Occurred()) SWIG_fail;
+    }
+    if ((SWIG_ConvertPtr(obj2,(void **) &arg3, SWIGTYPE_p_wxFont,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
+    if (arg3 == NULL) {
+        PyErr_SetString(PyExc_TypeError,"null reference"); SWIG_fail; 
+    }
+    {
+        PyThreadState* __tstate = wxPyBeginAllowThreads();
+        wxListBox_SetItemFont(arg1,arg2,(wxFont const &)*arg3);
+        
+        wxPyEndAllowThreads(__tstate);
+        if (PyErr_Occurred()) SWIG_fail;
+    }
+    Py_INCREF(Py_None); resultobj = Py_None;
+    return resultobj;
+    fail:
+    return NULL;
+}
+
+
 static PyObject * ListBox_swigregister(PyObject *self, PyObject *args) {
     PyObject *obj;
     if (!PyArg_ParseTuple(args,(char*)"O", &obj)) return NULL;
@@ -5821,6 +5965,7 @@ static PyObject *_wrap_new_CheckListBox(PyObject *self, PyObject *args, PyObject
     wxCheckListBox *result;
     wxPoint temp3 ;
     wxSize temp4 ;
+    bool temp5 = False ;
     bool temp8 = False ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
@@ -5859,6 +6004,7 @@ static PyObject *_wrap_new_CheckListBox(PyObject *self, PyObject *args, PyObject
                 SWIG_fail;
             }
             arg5 = new wxArrayString;
+            temp5 = True;
             int i, len=PySequence_Length(obj4);
             for (i=0; i<len; i++) {
                 PyObject* item = PySequence_GetItem(obj4, i);
@@ -5901,7 +6047,7 @@ static PyObject *_wrap_new_CheckListBox(PyObject *self, PyObject *args, PyObject
     }
     resultobj = SWIG_NewPointerObj((void *) result, SWIGTYPE_p_wxCheckListBox, 1);
     {
-        if (arg5) delete arg5;
+        if (temp5) delete arg5;
     }
     {
         if (temp8)
@@ -5910,7 +6056,7 @@ static PyObject *_wrap_new_CheckListBox(PyObject *self, PyObject *args, PyObject
     return resultobj;
     fail:
     {
-        if (arg5) delete arg5;
+        if (temp5) delete arg5;
     }
     {
         if (temp8)
@@ -5961,6 +6107,7 @@ static PyObject *_wrap_CheckListBox_Create(PyObject *self, PyObject *args, PyObj
     bool result;
     wxPoint temp4 ;
     wxSize temp5 ;
+    bool temp6 = False ;
     bool temp9 = False ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
@@ -6001,6 +6148,7 @@ static PyObject *_wrap_CheckListBox_Create(PyObject *self, PyObject *args, PyObj
                 SWIG_fail;
             }
             arg6 = new wxArrayString;
+            temp6 = True;
             int i, len=PySequence_Length(obj5);
             for (i=0; i<len; i++) {
                 PyObject* item = PySequence_GetItem(obj5, i);
@@ -6043,7 +6191,7 @@ static PyObject *_wrap_CheckListBox_Create(PyObject *self, PyObject *args, PyObj
     }
     resultobj = result ? Py_True : Py_False; Py_INCREF(resultobj);
     {
-        if (arg6) delete arg6;
+        if (temp6) delete arg6;
     }
     {
         if (temp9)
@@ -6052,7 +6200,7 @@ static PyObject *_wrap_CheckListBox_Create(PyObject *self, PyObject *args, PyObj
     return resultobj;
     fail:
     {
-        if (arg6) delete arg6;
+        if (temp6) delete arg6;
     }
     {
         if (temp9)
@@ -6569,6 +6717,7 @@ static PyObject *_wrap_TextAttr_SetTabs(PyObject *self, PyObject *args, PyObject
     PyObject *resultobj;
     wxTextAttr *arg1 = (wxTextAttr *) 0 ;
     wxArrayInt *arg2 = 0 ;
+    bool temp2 = False ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
     char *kwnames[] = {
@@ -6583,6 +6732,7 @@ static PyObject *_wrap_TextAttr_SetTabs(PyObject *self, PyObject *args, PyObject
             SWIG_fail;
         }
         arg2 = new wxArrayInt;
+        temp2 = True;
         int i, len=PySequence_Length(obj1);
         for (i=0; i<len; i++) {
             PyObject* item = PySequence_GetItem(obj1, i);
@@ -6601,12 +6751,12 @@ static PyObject *_wrap_TextAttr_SetTabs(PyObject *self, PyObject *args, PyObject
     }
     Py_INCREF(Py_None); resultobj = Py_None;
     {
-        if (arg2) delete arg2;
+        if (temp2) delete arg2;
     }
     return resultobj;
     fail:
     {
-        if (arg2) delete arg2;
+        if (temp2) delete arg2;
     }
     return NULL;
 }
@@ -10773,6 +10923,7 @@ static PyObject *_wrap_new_RadioBox(PyObject *self, PyObject *args, PyObject *kw
     bool temp3 = False ;
     wxPoint temp4 ;
     wxSize temp5 ;
+    bool temp6 = False ;
     bool temp10 = False ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
@@ -10818,6 +10969,7 @@ static PyObject *_wrap_new_RadioBox(PyObject *self, PyObject *args, PyObject *kw
                 SWIG_fail;
             }
             arg6 = new wxArrayString;
+            temp6 = True;
             int i, len=PySequence_Length(obj5);
             for (i=0; i<len; i++) {
                 PyObject* item = PySequence_GetItem(obj5, i);
@@ -10870,7 +11022,7 @@ static PyObject *_wrap_new_RadioBox(PyObject *self, PyObject *args, PyObject *kw
         delete arg3;
     }
     {
-        if (arg6) delete arg6;
+        if (temp6) delete arg6;
     }
     {
         if (temp10)
@@ -10883,7 +11035,7 @@ static PyObject *_wrap_new_RadioBox(PyObject *self, PyObject *args, PyObject *kw
         delete arg3;
     }
     {
-        if (arg6) delete arg6;
+        if (temp6) delete arg6;
     }
     {
         if (temp10)
@@ -10937,6 +11089,7 @@ static PyObject *_wrap_RadioBox_Create(PyObject *self, PyObject *args, PyObject
     bool temp4 = False ;
     wxPoint temp5 ;
     wxSize temp6 ;
+    bool temp7 = False ;
     bool temp11 = False ;
     PyObject * obj0 = 0 ;
     PyObject * obj1 = 0 ;
@@ -10984,6 +11137,7 @@ static PyObject *_wrap_RadioBox_Create(PyObject *self, PyObject *args, PyObject
                 SWIG_fail;
             }
             arg7 = new wxArrayString;
+            temp7 = True;
             int i, len=PySequence_Length(obj6);
             for (i=0; i<len; i++) {
                 PyObject* item = PySequence_GetItem(obj6, i);
@@ -11036,7 +11190,7 @@ static PyObject *_wrap_RadioBox_Create(PyObject *self, PyObject *args, PyObject
         delete arg4;
     }
     {
-        if (arg7) delete arg7;
+        if (temp7) delete arg7;
     }
     {
         if (temp11)
@@ -11049,7 +11203,7 @@ static PyObject *_wrap_RadioBox_Create(PyObject *self, PyObject *args, PyObject
         delete arg4;
     }
     {
-        if (arg7) delete arg7;
+        if (temp7) delete arg7;
     }
     {
         if (temp11)
@@ -25967,6 +26121,36 @@ static PyObject *_wrap_TreeCtrl_Unselect(PyObject *self, PyObject *args, PyObjec
 }
 
 
+static PyObject *_wrap_TreeCtrl_UnselectItem(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject *resultobj;
+    wxPyTreeCtrl *arg1 = (wxPyTreeCtrl *) 0 ;
+    wxTreeItemId *arg2 = 0 ;
+    PyObject * obj0 = 0 ;
+    PyObject * obj1 = 0 ;
+    char *kwnames[] = {
+        (char *) "self",(char *) "item", NULL 
+    };
+    
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:TreeCtrl_UnselectItem",kwnames,&obj0,&obj1)) goto fail;
+    if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_wxPyTreeCtrl,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
+    if ((SWIG_ConvertPtr(obj1,(void **) &arg2, SWIGTYPE_p_wxTreeItemId,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
+    if (arg2 == NULL) {
+        PyErr_SetString(PyExc_TypeError,"null reference"); SWIG_fail; 
+    }
+    {
+        PyThreadState* __tstate = wxPyBeginAllowThreads();
+        (arg1)->UnselectItem((wxTreeItemId const &)*arg2);
+        
+        wxPyEndAllowThreads(__tstate);
+        if (PyErr_Occurred()) SWIG_fail;
+    }
+    Py_INCREF(Py_None); resultobj = Py_None;
+    return resultobj;
+    fail:
+    return NULL;
+}
+
+
 static PyObject *_wrap_TreeCtrl_UnselectAll(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject *resultobj;
     wxPyTreeCtrl *arg1 = (wxPyTreeCtrl *) 0 ;
@@ -25992,6 +26176,44 @@ static PyObject *_wrap_TreeCtrl_UnselectAll(PyObject *self, PyObject *args, PyOb
 
 
 static PyObject *_wrap_TreeCtrl_SelectItem(PyObject *self, PyObject *args, PyObject *kwargs) {
+    PyObject *resultobj;
+    wxPyTreeCtrl *arg1 = (wxPyTreeCtrl *) 0 ;
+    wxTreeItemId *arg2 = 0 ;
+    bool arg3 = (bool) True ;
+    PyObject * obj0 = 0 ;
+    PyObject * obj1 = 0 ;
+    PyObject * obj2 = 0 ;
+    char *kwnames[] = {
+        (char *) "self",(char *) "item",(char *) "select", NULL 
+    };
+    
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO|O:TreeCtrl_SelectItem",kwnames,&obj0,&obj1,&obj2)) goto fail;
+    if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_wxPyTreeCtrl,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
+    if ((SWIG_ConvertPtr(obj1,(void **) &arg2, SWIGTYPE_p_wxTreeItemId,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
+    if (arg2 == NULL) {
+        PyErr_SetString(PyExc_TypeError,"null reference"); SWIG_fail; 
+    }
+    if (obj2) {
+        {
+            arg3 = (bool) SWIG_PyObj_AsBool(obj2);  
+            if (PyErr_Occurred()) SWIG_fail;
+        }
+    }
+    {
+        PyThreadState* __tstate = wxPyBeginAllowThreads();
+        (arg1)->SelectItem((wxTreeItemId const &)*arg2,arg3);
+        
+        wxPyEndAllowThreads(__tstate);
+        if (PyErr_Occurred()) SWIG_fail;
+    }
+    Py_INCREF(Py_None); resultobj = Py_None;
+    return resultobj;
+    fail:
+    return NULL;
+}
+
+
+static PyObject *_wrap_TreeCtrl_ToggleItemSelection(PyObject *self, PyObject *args, PyObject *kwargs) {
     PyObject *resultobj;
     wxPyTreeCtrl *arg1 = (wxPyTreeCtrl *) 0 ;
     wxTreeItemId *arg2 = 0 ;
@@ -26001,7 +26223,7 @@ static PyObject *_wrap_TreeCtrl_SelectItem(PyObject *self, PyObject *args, PyObj
         (char *) "self",(char *) "item", NULL 
     };
     
-    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:TreeCtrl_SelectItem",kwnames,&obj0,&obj1)) goto fail;
+    if(!PyArg_ParseTupleAndKeywords(args,kwargs,(char *)"OO:TreeCtrl_ToggleItemSelection",kwnames,&obj0,&obj1)) goto fail;
     if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_wxPyTreeCtrl,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
     if ((SWIG_ConvertPtr(obj1,(void **) &arg2, SWIGTYPE_p_wxTreeItemId,SWIG_POINTER_EXCEPTION | 0 )) == -1) SWIG_fail;
     if (arg2 == NULL) {
@@ -26009,7 +26231,7 @@ static PyObject *_wrap_TreeCtrl_SelectItem(PyObject *self, PyObject *args, PyObj
     }
     {
         PyThreadState* __tstate = wxPyBeginAllowThreads();
-        (arg1)->SelectItem((wxTreeItemId const &)*arg2);
+        (arg1)->ToggleItemSelection((wxTreeItemId const &)*arg2);
         
         wxPyEndAllowThreads(__tstate);
         if (PyErr_Occurred()) SWIG_fail;
@@ -29523,6 +29745,9 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"ListBox_EnsureVisible", (PyCFunction) _wrap_ListBox_EnsureVisible, METH_VARARGS | METH_KEYWORDS },
         { (char *)"ListBox_AppendAndEnsureVisible", (PyCFunction) _wrap_ListBox_AppendAndEnsureVisible, METH_VARARGS | METH_KEYWORDS },
         { (char *)"ListBox_IsSorted", (PyCFunction) _wrap_ListBox_IsSorted, METH_VARARGS | METH_KEYWORDS },
+        { (char *)"ListBox_SetItemForegroundColour", (PyCFunction) _wrap_ListBox_SetItemForegroundColour, METH_VARARGS | METH_KEYWORDS },
+        { (char *)"ListBox_SetItemBackgroundColour", (PyCFunction) _wrap_ListBox_SetItemBackgroundColour, METH_VARARGS | METH_KEYWORDS },
+        { (char *)"ListBox_SetItemFont", (PyCFunction) _wrap_ListBox_SetItemFont, METH_VARARGS | METH_KEYWORDS },
         { (char *)"ListBox_swigregister", ListBox_swigregister, METH_VARARGS },
         { (char *)"new_CheckListBox", (PyCFunction) _wrap_new_CheckListBox, METH_VARARGS | METH_KEYWORDS },
         { (char *)"new_PreCheckListBox", (PyCFunction) _wrap_new_PreCheckListBox, METH_VARARGS | METH_KEYWORDS },
@@ -30119,8 +30344,10 @@ static PyMethodDef SwigMethods[] = {
         { (char *)"TreeCtrl_CollapseAndReset", (PyCFunction) _wrap_TreeCtrl_CollapseAndReset, METH_VARARGS | METH_KEYWORDS },
         { (char *)"TreeCtrl_Toggle", (PyCFunction) _wrap_TreeCtrl_Toggle, METH_VARARGS | METH_KEYWORDS },
         { (char *)"TreeCtrl_Unselect", (PyCFunction) _wrap_TreeCtrl_Unselect, METH_VARARGS | METH_KEYWORDS },
+        { (char *)"TreeCtrl_UnselectItem", (PyCFunction) _wrap_TreeCtrl_UnselectItem, METH_VARARGS | METH_KEYWORDS },
         { (char *)"TreeCtrl_UnselectAll", (PyCFunction) _wrap_TreeCtrl_UnselectAll, METH_VARARGS | METH_KEYWORDS },
         { (char *)"TreeCtrl_SelectItem", (PyCFunction) _wrap_TreeCtrl_SelectItem, METH_VARARGS | METH_KEYWORDS },
+        { (char *)"TreeCtrl_ToggleItemSelection", (PyCFunction) _wrap_TreeCtrl_ToggleItemSelection, METH_VARARGS | METH_KEYWORDS },
         { (char *)"TreeCtrl_EnsureVisible", (PyCFunction) _wrap_TreeCtrl_EnsureVisible, METH_VARARGS | METH_KEYWORDS },
         { (char *)"TreeCtrl_ScrollTo", (PyCFunction) _wrap_TreeCtrl_ScrollTo, METH_VARARGS | METH_KEYWORDS },
         { (char *)"TreeCtrl_EditLabel", (PyCFunction) _wrap_TreeCtrl_EditLabel, METH_VARARGS | METH_KEYWORDS },