]> git.saurik.com Git - wxWidgets.git/blobdiff - wxPython/src/msw/_controls.py
wxPageSetupDialog no longer derives from wxDialog
[wxWidgets.git] / wxPython / src / msw / _controls.py
index 28b41c104fe47da7e0546264b596ca86081f8c2d..a5a97e0eb803be18bd2a7ebaa169e7e7a24524a2 100644 (file)
@@ -11,6 +11,7 @@ BU_LEFT = _controls_.BU_LEFT
 BU_TOP = _controls_.BU_TOP
 BU_RIGHT = _controls_.BU_RIGHT
 BU_BOTTOM = _controls_.BU_BOTTOM
+BU_ALIGN_MASK = _controls_.BU_ALIGN_MASK
 BU_EXACTFIT = _controls_.BU_EXACTFIT
 BU_AUTODRAW = _controls_.BU_AUTODRAW
 class Button(_core.Control):
@@ -23,11 +24,16 @@ class Button(_core.Control):
         return "<%s.%s; proxy of C++ wxButton instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
     def __init__(self, *args, **kwargs):
         """
-        __init__(self, Window parent, int id, String label, Point pos=DefaultPosition, 
-            Size size=DefaultSize, long style=0, 
-            Validator validator=DefaultValidator, String name=ButtonNameStr) -> Button
+        __init__(self, Window parent, int id=-1, String label=EmptyString, 
+            Point pos=DefaultPosition, Size size=DefaultSize, 
+            long style=0, Validator validator=DefaultValidator, 
+            String name=ButtonNameStr) -> Button
 
-        Create and show a button.
+        Create and show a button.  The preferred way to create standard
+        buttons is to use a standard ID and an empty label.  In this case
+        wxWigets will automatically use a stock label that coresponds to the
+        ID given.  In additon, the button will be decorated with stock icons
+        under GTK+ 2.
         """
         newobj = _controls_.new_Button(*args, **kwargs)
         self.this = newobj.this
@@ -37,9 +43,10 @@ class Button(_core.Control):
 
     def Create(*args, **kwargs):
         """
-        Create(self, Window parent, int id, String label, Point pos=DefaultPosition, 
-            Size size=DefaultSize, long style=0, 
-            Validator validator=DefaultValidator, String name=ButtonNameStr) -> bool
+        Create(self, Window parent, int id=-1, String label=EmptyString, 
+            Point pos=DefaultPosition, Size size=DefaultSize, 
+            long style=0, Validator validator=DefaultValidator, 
+            String name=ButtonNameStr) -> bool
 
         Acutally create the GUI Button for 2-phase creation.
         """
@@ -136,9 +143,9 @@ class BitmapButton(Button):
         return "<%s.%s; proxy of C++ wxBitmapButton instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
     def __init__(self, *args, **kwargs):
         """
-        __init__(self, Window parent, int id, Bitmap bitmap, Point pos=DefaultPosition
-            Size size=DefaultSize, long style=BU_AUTODRAW
-            Validator validator=DefaultValidator, 
+        __init__(self, Window parent, int id=-1, Bitmap bitmap=wxNullBitmap
+            Point pos=DefaultPosition, Size size=DefaultSize
+            long style=BU_AUTODRAW, Validator validator=DefaultValidator, 
             String name=ButtonNameStr) -> BitmapButton
 
         Create and show a button with a bitmap for the label.
@@ -151,9 +158,9 @@ class BitmapButton(Button):
 
     def Create(*args, **kwargs):
         """
-        Create(self, Window parent, int id, Bitmap bitmap, Point pos=DefaultPosition
-            Size size=DefaultSize, long style=BU_AUTODRAW
-            Validator validator=DefaultValidator, 
+        Create(self, Window parent, int id=-1, Bitmap bitmap=wxNullBitmap
+            Point pos=DefaultPosition, Size size=DefaultSize
+            long style=BU_AUTODRAW, Validator validator=DefaultValidator, 
             String name=ButtonNameStr) -> bool
 
         Acutally create the GUI BitmapButton for 2-phase creation.
@@ -275,9 +282,10 @@ class CheckBox(_core.Control):
         return "<%s.%s; proxy of C++ wxCheckBox instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
     def __init__(self, *args, **kwargs):
         """
-        __init__(self, Window parent, int id, String label, Point pos=DefaultPosition, 
-            Size size=DefaultSize, long style=0, 
-            Validator validator=DefaultValidator, String name=CheckBoxNameStr) -> CheckBox
+        __init__(self, Window parent, int id=-1, String label=EmptyString, 
+            Point pos=DefaultPosition, Size size=DefaultSize, 
+            long style=0, Validator validator=DefaultValidator, 
+            String name=CheckBoxNameStr) -> CheckBox
 
         Creates and shows a CheckBox control
         """
@@ -289,9 +297,10 @@ class CheckBox(_core.Control):
 
     def Create(*args, **kwargs):
         """
-        Create(self, Window parent, int id, String label, Point pos=DefaultPosition, 
-            Size size=DefaultSize, long style=0, 
-            Validator validator=DefaultValidator, String name=CheckBoxNameStr) -> bool
+        Create(self, Window parent, int id=-1, String label=EmptyString, 
+            Point pos=DefaultPosition, Size size=DefaultSize, 
+            long style=0, Validator validator=DefaultValidator, 
+            String name=CheckBoxNameStr) -> bool
 
         Actually create the GUI CheckBox for 2-phase creation.
         """
@@ -447,6 +456,8 @@ class Choice(_core.ControlWithItems):
         Create(Window parent, int id, Point pos=DefaultPosition, Size size=DefaultSize,
             List choices=[], long style=0, Validator validator=DefaultValidator,
             String name=ChoiceNameStr) -> bool
+
+        Actually create the GUI Choice control for 2-phase creation
         """
         return _controls_.Choice_Create(*args, **kwargs)
 
@@ -563,6 +574,8 @@ class ComboBox(Choice):
             Point pos=DefaultPosition, Size size=DefaultSize,
             List choices=[], long style=0, Validator validator=DefaultValidator,
             String name=ChoiceNameStr) -> bool
+
+        Actually create the GUI wxComboBox control for 2-phase creation
         """
         return _controls_.ComboBox_Create(*args, **kwargs)
 
@@ -752,7 +765,7 @@ class Gauge(_core.Control):
         return "<%s.%s; proxy of C++ wxGauge instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
     def __init__(self, *args, **kwargs):
         """
-        __init__(self, Window parent, int id, int range, Point pos=DefaultPosition, 
+        __init__(self, Window parent, int id=-1, int range=100, Point pos=DefaultPosition, 
             Size size=DefaultSize, long style=GA_HORIZONTAL, 
             Validator validator=DefaultValidator, 
             String name=GaugeNameStr) -> Gauge
@@ -765,7 +778,7 @@ class Gauge(_core.Control):
 
     def Create(*args, **kwargs):
         """
-        Create(self, Window parent, int id, int range, Point pos=DefaultPosition, 
+        Create(self, Window parent, int id=-1, int range=100, Point pos=DefaultPosition, 
             Size size=DefaultSize, long style=GA_HORIZONTAL, 
             Validator validator=DefaultValidator, 
             String name=GaugeNameStr) -> bool
@@ -865,9 +878,9 @@ class StaticBox(_core.Control):
         return "<%s.%s; proxy of C++ wxStaticBox instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
     def __init__(self, *args, **kwargs):
         """
-        __init__(self, Window parent, int id, String label, Point pos=DefaultPosition
-            Size size=DefaultSize, long style=0
-            String name=StaticBoxNameStr) -> StaticBox
+        __init__(self, Window parent, int id=-1, String label=EmptyString
+            Point pos=DefaultPosition, Size size=DefaultSize
+            long style=0, String name=StaticBoxNameStr) -> StaticBox
         """
         newobj = _controls_.new_StaticBox(*args, **kwargs)
         self.this = newobj.this
@@ -877,9 +890,9 @@ class StaticBox(_core.Control):
 
     def Create(*args, **kwargs):
         """
-        Create(self, Window parent, int id, String label, Point pos=DefaultPosition
-            Size size=DefaultSize, long style=0
-            String name=StaticBoxNameStr) -> bool
+        Create(self, Window parent, int id=-1, String label=EmptyString
+            Point pos=DefaultPosition, Size size=DefaultSize
+            long style=0, String name=StaticBoxNameStr) -> bool
         """
         return _controls_.StaticBox_Create(*args, **kwargs)
 
@@ -942,8 +955,8 @@ class StaticLine(_core.Control):
         return "<%s.%s; proxy of C++ wxStaticLine instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
     def __init__(self, *args, **kwargs):
         """
-        __init__(self, Window parent, int id, Point pos=DefaultPosition, Size size=DefaultSize
-            long style=LI_HORIZONTAL, 
+        __init__(self, Window parent, int id=-1, Point pos=DefaultPosition
+            Size size=DefaultSize, long style=LI_HORIZONTAL, 
             String name=StaticTextNameStr) -> StaticLine
         """
         newobj = _controls_.new_StaticLine(*args, **kwargs)
@@ -954,8 +967,8 @@ class StaticLine(_core.Control):
 
     def Create(*args, **kwargs):
         """
-        Create(self, Window parent, int id, Point pos=DefaultPosition, Size size=DefaultSize
-            long style=LI_HORIZONTAL, 
+        Create(self, Window parent, int id=-1, Point pos=DefaultPosition
+            Size size=DefaultSize, long style=LI_HORIZONTAL, 
             String name=StaticTextNameStr) -> bool
         """
         return _controls_.StaticLine_Create(*args, **kwargs)
@@ -1029,9 +1042,9 @@ class StaticText(_core.Control):
         return "<%s.%s; proxy of C++ wxStaticText instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
     def __init__(self, *args, **kwargs):
         """
-        __init__(self, Window parent, int id, String label, Point pos=DefaultPosition
-            Size size=DefaultSize, long style=0
-            String name=StaticTextNameStr) -> StaticText
+        __init__(self, Window parent, int id=-1, String label=EmptyString
+            Point pos=DefaultPosition, Size size=DefaultSize
+            long style=0, String name=StaticTextNameStr) -> StaticText
         """
         newobj = _controls_.new_StaticText(*args, **kwargs)
         self.this = newobj.this
@@ -1041,9 +1054,9 @@ class StaticText(_core.Control):
 
     def Create(*args, **kwargs):
         """
-        Create(self, Window parent, int id, String label, Point pos=DefaultPosition
-            Size size=DefaultSize, long style=0
-            String name=StaticTextNameStr) -> bool
+        Create(self, Window parent, int id=-1, String label=EmptyString
+            Point pos=DefaultPosition, Size size=DefaultSize
+            long style=0, String name=StaticTextNameStr) -> bool
         """
         return _controls_.StaticText_Create(*args, **kwargs)
 
@@ -1103,9 +1116,9 @@ class StaticBitmap(_core.Control):
         return "<%s.%s; proxy of C++ wxStaticBitmap instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
     def __init__(self, *args, **kwargs):
         """
-        __init__(self, Window parent, int id, Bitmap bitmap, Point pos=DefaultPosition
-            Size size=DefaultSize, long style=0
-            String name=StaticBitmapNameStr) -> StaticBitmap
+        __init__(self, Window parent, int id=-1, Bitmap bitmap=wxNullBitmap
+            Point pos=DefaultPosition, Size size=DefaultSize
+            long style=0, String name=StaticBitmapNameStr) -> StaticBitmap
         """
         newobj = _controls_.new_StaticBitmap(*args, **kwargs)
         self.this = newobj.this
@@ -1115,9 +1128,9 @@ class StaticBitmap(_core.Control):
 
     def Create(*args, **kwargs):
         """
-        Create(self, Window parent, int id, Bitmap bitmap, Point pos=DefaultPosition
-            Size size=DefaultSize, long style=0
-            String name=StaticBitmapNameStr) -> bool
+        Create(self, Window parent, int id=-1, Bitmap bitmap=wxNullBitmap
+            Point pos=DefaultPosition, Size size=DefaultSize
+            long style=0, String name=StaticBitmapNameStr) -> bool
         """
         return _controls_.StaticBitmap_Create(*args, **kwargs)
 
@@ -1189,8 +1202,8 @@ class ListBox(_core.ControlWithItems):
         return "<%s.%s; proxy of C++ wxListBox instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
     def __init__(self, *args, **kwargs):
         """
-        __init__(self, Window parent, int id, Point pos=DefaultPosition, Size size=DefaultSize
-            wxArrayString choices=wxPyEmptyStringArray, 
+        __init__(self, Window parent, int id=-1, Point pos=DefaultPosition
+            Size size=DefaultSize, wxArrayString choices=wxPyEmptyStringArray, 
             long style=0, Validator validator=DefaultValidator, 
             String name=ListBoxNameStr) -> ListBox
         """
@@ -1202,8 +1215,8 @@ class ListBox(_core.ControlWithItems):
 
     def Create(*args, **kwargs):
         """
-        Create(self, Window parent, int id, Point pos=DefaultPosition, Size size=DefaultSize
-            wxArrayString choices=wxPyEmptyStringArray, 
+        Create(self, Window parent, int id=-1, Point pos=DefaultPosition
+            Size size=DefaultSize, wxArrayString choices=wxPyEmptyStringArray, 
             long style=0, Validator validator=DefaultValidator, 
             String name=ListBoxNameStr) -> bool
         """
@@ -1347,8 +1360,8 @@ class CheckListBox(ListBox):
         return "<%s.%s; proxy of C++ wxCheckListBox instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
     def __init__(self, *args, **kwargs):
         """
-        __init__(self, Window parent, int id, Point pos=DefaultPosition, Size size=DefaultSize
-            wxArrayString choices=wxPyEmptyStringArray, 
+        __init__(self, Window parent, int id=-1, Point pos=DefaultPosition
+            Size size=DefaultSize, wxArrayString choices=wxPyEmptyStringArray, 
             long style=0, Validator validator=DefaultValidator, 
             String name=ListBoxNameStr) -> CheckListBox
         """
@@ -1360,8 +1373,8 @@ class CheckListBox(ListBox):
 
     def Create(*args, **kwargs):
         """
-        Create(self, Window parent, int id, Point pos=DefaultPosition, Size size=DefaultSize
-            wxArrayString choices=wxPyEmptyStringArray, 
+        Create(self, Window parent, int id=-1, Point pos=DefaultPosition
+            Size size=DefaultSize, wxArrayString choices=wxPyEmptyStringArray, 
             long style=0, Validator validator=DefaultValidator, 
             String name=ListBoxNameStr) -> bool
         """
@@ -1455,13 +1468,12 @@ TE_HT_BEYOND = _controls_.TE_HT_BEYOND
 class TextAttr(object):
     def __repr__(self):
         return "<%s.%s; proxy of C++ wxTextAttr instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
-    def __init__(self, *args):
+    def __init__(self, *args, **kwargs):
         """
-        __init__(self) -> TextAttr
-        __init__(self, Colour colText, Colour colBack=wxNullColour, Font font=wxNullFont, 
-            int alignment=TEXT_ALIGNMENT_DEFAULT) -> TextAttr
+        __init__(self, Colour colText=wxNullColour, Colour colBack=wxNullColour, 
+            Font font=wxNullFont, int alignment=TEXT_ALIGNMENT_DEFAULT) -> TextAttr
         """
-        newobj = _controls_.new_TextAttr(*args)
+        newobj = _controls_.new_TextAttr(*args, **kwargs)
         self.this = newobj.this
         self.thisown = 1
         del newobj.thisown
@@ -1602,8 +1614,8 @@ class TextCtrl(_core.Control):
         return "<%s.%s; proxy of C++ wxTextCtrl instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
     def __init__(self, *args, **kwargs):
         """
-        __init__(self, Window parent, int id, String value=EmptyString, Point pos=DefaultPosition
-            Size size=DefaultSize, 
+        __init__(self, Window parent, int id=-1, String value=EmptyString
+            Point pos=DefaultPosition, Size size=DefaultSize, 
             long style=0, Validator validator=DefaultValidator, 
             String name=TextCtrlNameStr) -> TextCtrl
         """
@@ -1615,8 +1627,8 @@ class TextCtrl(_core.Control):
 
     def Create(*args, **kwargs):
         """
-        Create(self, Window parent, int id, String value=EmptyString, Point pos=DefaultPosition
-            Size size=DefaultSize, 
+        Create(self, Window parent, int id=-1, String value=EmptyString
+            Point pos=DefaultPosition, Size size=DefaultSize, 
             long style=0, Validator validator=DefaultValidator, 
             String name=TextCtrlNameStr) -> bool
         """
@@ -1663,7 +1675,11 @@ class TextCtrl(_core.Control):
         return _controls_.TextCtrl_IsMultiLine(*args, **kwargs)
 
     def GetSelection(*args, **kwargs):
-        """GetSelection() -> (from, to)"""
+        """
+        GetSelection() -> (from, to)
+
+        If the return values from and to are the same, there is no selection.
+        """
         return _controls_.TextCtrl_GetSelection(*args, **kwargs)
 
     def GetStringSelection(*args, **kwargs):
@@ -1743,9 +1759,25 @@ class TextCtrl(_core.Control):
         return _controls_.TextCtrl_ShowPosition(*args, **kwargs)
 
     def HitTest(*args, **kwargs):
-        """HitTest(Point pt) -> (result, row, col)"""
+        """
+        HitTest(Point pt) -> (result, row, col)
+
+        Find the row, col coresponding to the character at the point given in
+        pixels. NB: pt is in device coords but is not adjusted for the client
+        area origin nor scrolling.
+        """
         return _controls_.TextCtrl_HitTest(*args, **kwargs)
 
+    def HitTestPos(*args, **kwargs):
+        """
+        HitTestPos(Point pt) -> (result, position)
+
+        Find the character position in the text coresponding to the point
+        given in pixels. NB: pt is in device coords but is not adjusted for
+        the client area origin nor scrolling. 
+        """
+        return _controls_.TextCtrl_HitTestPos(*args, **kwargs)
+
     def Copy(*args, **kwargs):
         """Copy(self)"""
         return _controls_.TextCtrl_Copy(*args, **kwargs)
@@ -2280,10 +2312,11 @@ class RadioBox(_core.Control):
         return "<%s.%s; proxy of C++ wxRadioBox instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
     def __init__(self, *args, **kwargs):
         """
-        __init__(self, Window parent, int id, String label, Point pos=DefaultPosition, 
-            Size size=DefaultSize, wxArrayString choices=wxPyEmptyStringArray, 
-            int majorDimension=0, 
-            long style=RA_HORIZONTAL, Validator validator=DefaultValidator, 
+        __init__(self, Window parent, int id=-1, String label=EmptyString, 
+            Point pos=DefaultPosition, Size size=DefaultSize, 
+            wxArrayString choices=wxPyEmptyStringArray, 
+            int majorDimension=0, long style=RA_HORIZONTAL, 
+            Validator validator=DefaultValidator, 
             String name=RadioBoxNameStr) -> RadioBox
         """
         if kwargs.has_key('point'): kwargs['pos'] = kwargs['point'];del kwargs['point']
@@ -2295,10 +2328,11 @@ class RadioBox(_core.Control):
 
     def Create(*args, **kwargs):
         """
-        Create(self, Window parent, int id, String label, Point pos=DefaultPosition, 
-            Size size=DefaultSize, wxArrayString choices=wxPyEmptyStringArray, 
-            int majorDimension=0, 
-            long style=RA_HORIZONTAL, Validator validator=DefaultValidator, 
+        Create(self, Window parent, int id=-1, String label=EmptyString, 
+            Point pos=DefaultPosition, Size size=DefaultSize, 
+            wxArrayString choices=wxPyEmptyStringArray, 
+            int majorDimension=0, long style=RA_HORIZONTAL, 
+            Validator validator=DefaultValidator, 
             String name=RadioBoxNameStr) -> bool
         """
         return _controls_.RadioBox_Create(*args, **kwargs)
@@ -2415,9 +2449,10 @@ class RadioButton(_core.Control):
         return "<%s.%s; proxy of C++ wxRadioButton instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
     def __init__(self, *args, **kwargs):
         """
-        __init__(self, Window parent, int id, String label, Point pos=DefaultPosition, 
-            Size size=DefaultSize, long style=0, 
-            Validator validator=DefaultValidator, String name=RadioButtonNameStr) -> RadioButton
+        __init__(self, Window parent, int id=-1, String label=EmptyString, 
+            Point pos=DefaultPosition, Size size=DefaultSize, 
+            long style=0, Validator validator=DefaultValidator, 
+            String name=RadioButtonNameStr) -> RadioButton
         """
         newobj = _controls_.new_RadioButton(*args, **kwargs)
         self.this = newobj.this
@@ -2427,9 +2462,10 @@ class RadioButton(_core.Control):
 
     def Create(*args, **kwargs):
         """
-        Create(self, Window parent, int id, String label, Point pos=DefaultPosition, 
-            Size size=DefaultSize, long style=0, 
-            Validator validator=DefaultValidator, String name=RadioButtonNameStr) -> bool
+        Create(self, Window parent, int id=-1, String label=EmptyString, 
+            Point pos=DefaultPosition, Size size=DefaultSize, 
+            long style=0, Validator validator=DefaultValidator, 
+            String name=RadioButtonNameStr) -> bool
         """
         return _controls_.RadioButton_Create(*args, **kwargs)
 
@@ -2497,9 +2533,10 @@ class Slider(_core.Control):
         return "<%s.%s; proxy of C++ wxSlider instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
     def __init__(self, *args, **kwargs):
         """
-        __init__(self, Window parent, int id, int value, int minValue, int maxValue, 
-            Point pos=DefaultPosition, Size size=DefaultSize, 
-            long style=SL_HORIZONTAL, Validator validator=DefaultValidator, 
+        __init__(self, Window parent, int id=-1, int value=0, int minValue=0, 
+            int maxValue=100, Point pos=DefaultPosition, 
+            Size size=DefaultSize, long style=SL_HORIZONTAL, 
+            Validator validator=DefaultValidator, 
             String name=SliderNameStr) -> Slider
         """
         if kwargs.has_key('point'): kwargs['pos'] = kwargs['point'];del kwargs['point']
@@ -2511,9 +2548,10 @@ class Slider(_core.Control):
 
     def Create(*args, **kwargs):
         """
-        Create(self, Window parent, int id, int value, int minValue, int maxValue, 
-            Point pos=DefaultPosition, Size size=DefaultSize, 
-            long style=SL_HORIZONTAL, Validator validator=DefaultValidator, 
+        Create(self, Window parent, int id=-1, int value=0, int minValue=0, 
+            int maxValue=100, Point pos=DefaultPosition, 
+            Size size=DefaultSize, long style=SL_HORIZONTAL, 
+            Validator validator=DefaultValidator, 
             String name=SliderNameStr) -> bool
         """
         return _controls_.Slider_Create(*args, **kwargs)
@@ -2662,9 +2700,10 @@ class ToggleButton(_core.Control):
         return "<%s.%s; proxy of C++ wxToggleButton instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
     def __init__(self, *args, **kwargs):
         """
-        __init__(self, Window parent, int id, String label, Point pos=DefaultPosition, 
-            Size size=DefaultSize, long style=0, 
-            Validator validator=DefaultValidator, String name=ToggleButtonNameStr) -> ToggleButton
+        __init__(self, Window parent, int id=-1, String label=EmptyString, 
+            Point pos=DefaultPosition, Size size=DefaultSize, 
+            long style=0, Validator validator=DefaultValidator, 
+            String name=ToggleButtonNameStr) -> ToggleButton
         """
         newobj = _controls_.new_ToggleButton(*args, **kwargs)
         self.this = newobj.this
@@ -2674,9 +2713,10 @@ class ToggleButton(_core.Control):
 
     def Create(*args, **kwargs):
         """
-        Create(self, Window parent, int id, String label, Point pos=DefaultPosition, 
-            Size size=DefaultSize, long style=0, 
-            Validator validator=DefaultValidator, String name=ToggleButtonNameStr) -> bool
+        Create(self, Window parent, int id=-1, String label=EmptyString, 
+            Point pos=DefaultPosition, Size size=DefaultSize, 
+            long style=0, Validator validator=DefaultValidator, 
+            String name=ToggleButtonNameStr) -> bool
         """
         return _controls_.ToggleButton_Create(*args, **kwargs)
 
@@ -2760,6 +2800,10 @@ class BookCtrl(_core.Control):
         """GetPage(self, size_t n) -> Window"""
         return _controls_.BookCtrl_GetPage(*args, **kwargs)
 
+    def GetCurrentPage(*args, **kwargs):
+        """GetCurrentPage(self) -> Window"""
+        return _controls_.BookCtrl_GetCurrentPage(*args, **kwargs)
+
     def GetSelection(*args, **kwargs):
         """GetSelection(self) -> int"""
         return _controls_.BookCtrl_GetSelection(*args, **kwargs)
@@ -2939,8 +2983,8 @@ class Notebook(BookCtrl):
 
     def Create(*args, **kwargs):
         """
-        Create(self, Window parent, int id, Point pos=DefaultPosition, Size size=DefaultSize
-            long style=0, String name=NOTEBOOK_NAME) -> bool
+        Create(self, Window parent, int id=-1, Point pos=DefaultPosition
+            Size size=DefaultSize, long style=0, String name=NOTEBOOK_NAME) -> bool
         """
         return _controls_.Notebook_Create(*args, **kwargs)
 
@@ -2957,17 +3001,18 @@ class Notebook(BookCtrl):
         return _controls_.Notebook_SetTabSize(*args, **kwargs)
 
     def HitTest(*args, **kwargs):
-        """HitTest(Point pt) -> (tab, where)"""
+        """
+        HitTest(Point pt) -> (tab, where)
+
+        Returns the tab which is hit, and flags indicating where using
+        wx.NB_HITTEST flags.
+        """
         return _controls_.Notebook_HitTest(*args, **kwargs)
 
     def CalcSizeFromPage(*args, **kwargs):
         """CalcSizeFromPage(self, Size sizePage) -> Size"""
         return _controls_.Notebook_CalcSizeFromPage(*args, **kwargs)
 
-    def ApplyThemeBackground(*args, **kwargs):
-        """ApplyThemeBackground(self, Window window, Colour colour)"""
-        return _controls_.Notebook_ApplyThemeBackground(*args, **kwargs)
-
     def GetClassDefaultAttributes(*args, **kwargs):
         """
         GetClassDefaultAttributes(int variant=WINDOW_VARIANT_NORMAL) -> VisualAttributes
@@ -3062,7 +3107,7 @@ class NotebookPage(wx.Panel):
         wx.Panel.__init__(self, parent, id, pos, size, style, name)
         self.child = None
         EVT_SIZE(self, self.OnSize)
-        
+
     def OnSize(self, evt):
         if self.child is None:
             children = self.GetChildren()
@@ -3097,8 +3142,8 @@ class Listbook(BookCtrl):
 
     def Create(*args, **kwargs):
         """
-        Create(self, Window parent, int id, Point pos=DefaultPosition, Size size=DefaultSize
-            long style=0, String name=EmptyString) -> bool
+        Create(self, Window parent, int id=-1, Point pos=DefaultPosition
+            Size size=DefaultSize, long style=0, String name=EmptyString) -> bool
         """
         return _controls_.Listbook_Create(*args, **kwargs)
 
@@ -3106,6 +3151,10 @@ class Listbook(BookCtrl):
         """IsVertical(self) -> bool"""
         return _controls_.Listbook_IsVertical(*args, **kwargs)
 
+    def GetListView(*args, **kwargs):
+        """GetListView(self) -> ListView"""
+        return _controls_.Listbook_GetListView(*args, **kwargs)
+
 
 class ListbookPtr(Listbook):
     def __init__(self, this):
@@ -3145,6 +3194,80 @@ wxEVT_COMMAND_LISTBOOK_PAGE_CHANGING = _controls_.wxEVT_COMMAND_LISTBOOK_PAGE_CH
 EVT_LISTBOOK_PAGE_CHANGED  = wx.PyEventBinder( wxEVT_COMMAND_LISTBOOK_PAGE_CHANGED, 1 )
 EVT_LISTBOOK_PAGE_CHANGING = wx.PyEventBinder( wxEVT_COMMAND_LISTBOOK_PAGE_CHANGING, 1 )
 
+CHB_DEFAULT = _controls_.CHB_DEFAULT
+CHB_TOP = _controls_.CHB_TOP
+CHB_BOTTOM = _controls_.CHB_BOTTOM
+CHB_LEFT = _controls_.CHB_LEFT
+CHB_RIGHT = _controls_.CHB_RIGHT
+CHB_ALIGN_MASK = _controls_.CHB_ALIGN_MASK
+class Choicebook(BookCtrl):
+    def __repr__(self):
+        return "<%s.%s; proxy of C++ wxChoicebook instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
+    def __init__(self, *args, **kwargs):
+        """
+        __init__(self, Window parent, int id, Point pos=DefaultPosition, Size size=DefaultSize, 
+            long style=0, String name=EmptyString) -> Choicebook
+        """
+        newobj = _controls_.new_Choicebook(*args, **kwargs)
+        self.this = newobj.this
+        self.thisown = 1
+        del newobj.thisown
+        self._setOORInfo(self)
+
+    def Create(*args, **kwargs):
+        """
+        Create(self, Window parent, int id, Point pos=DefaultPosition, Size size=DefaultSize, 
+            long style=0, String name=EmptyString) -> bool
+        """
+        return _controls_.Choicebook_Create(*args, **kwargs)
+
+    def IsVertical(*args, **kwargs):
+        """IsVertical(self) -> bool"""
+        return _controls_.Choicebook_IsVertical(*args, **kwargs)
+
+    def DeleteAllPages(*args, **kwargs):
+        """DeleteAllPages(self) -> bool"""
+        return _controls_.Choicebook_DeleteAllPages(*args, **kwargs)
+
+
+class ChoicebookPtr(Choicebook):
+    def __init__(self, this):
+        self.this = this
+        if not hasattr(self,"thisown"): self.thisown = 0
+        self.__class__ = Choicebook
+_controls_.Choicebook_swigregister(ChoicebookPtr)
+
+def PreChoicebook(*args, **kwargs):
+    """PreChoicebook() -> Choicebook"""
+    val = _controls_.new_PreChoicebook(*args, **kwargs)
+    val.thisown = 1
+    return val
+
+class ChoicebookEvent(BookCtrlEvent):
+    def __repr__(self):
+        return "<%s.%s; proxy of C++ wxChoicebookEvent instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
+    def __init__(self, *args, **kwargs):
+        """
+        __init__(self, wxEventType commandType=wxEVT_NULL, int id=0, int nSel=-1, 
+            int nOldSel=-1) -> ChoicebookEvent
+        """
+        newobj = _controls_.new_ChoicebookEvent(*args, **kwargs)
+        self.this = newobj.this
+        self.thisown = 1
+        del newobj.thisown
+
+class ChoicebookEventPtr(ChoicebookEvent):
+    def __init__(self, this):
+        self.this = this
+        if not hasattr(self,"thisown"): self.thisown = 0
+        self.__class__ = ChoicebookEvent
+_controls_.ChoicebookEvent_swigregister(ChoicebookEventPtr)
+
+wxEVT_COMMAND_CHOICEBOOK_PAGE_CHANGED = _controls_.wxEVT_COMMAND_CHOICEBOOK_PAGE_CHANGED
+wxEVT_COMMAND_CHOICEBOOK_PAGE_CHANGING = _controls_.wxEVT_COMMAND_CHOICEBOOK_PAGE_CHANGING
+EVT_CHOICEBOOK_PAGE_CHANGED  = wx.PyEventBinder( wxEVT_COMMAND_CHOICEBOOK_PAGE_CHANGED, 1 )
+EVT_CHOICEBOOK_PAGE_CHANGING = wx.PyEventBinder( wxEVT_COMMAND_CHOICEBOOK_PAGE_CHANGING, 1 )
+
 #---------------------------------------------------------------------------
 
 class BookCtrlSizer(_core.Sizer):
@@ -3159,11 +3282,23 @@ class BookCtrlSizer(_core.Sizer):
         self._setOORInfo(self)
 
     def RecalcSizes(*args, **kwargs):
-        """RecalcSizes(self)"""
+        """
+        RecalcSizes(self)
+
+        Using the sizes calculated by `CalcMin` reposition and resize all the
+        items managed by this sizer.  You should not need to call this directly as
+        it is called by `Layout`.
+        """
         return _controls_.BookCtrlSizer_RecalcSizes(*args, **kwargs)
 
     def CalcMin(*args, **kwargs):
-        """CalcMin(self) -> Size"""
+        """
+        CalcMin(self) -> Size
+
+        This method is where the sizer will do the actual calculation of its
+        children's minimal sizes.  You should not need to call this directly as
+        it is called by `Layout`.
+        """
         return _controls_.BookCtrlSizer_CalcMin(*args, **kwargs)
 
     def GetControl(*args, **kwargs):
@@ -3190,11 +3325,23 @@ class NotebookSizer(_core.Sizer):
         self._setOORInfo(self)
 
     def RecalcSizes(*args, **kwargs):
-        """RecalcSizes(self)"""
+        """
+        RecalcSizes(self)
+
+        Using the sizes calculated by `CalcMin` reposition and resize all the
+        items managed by this sizer.  You should not need to call this directly as
+        it is called by `Layout`.
+        """
         return _controls_.NotebookSizer_RecalcSizes(*args, **kwargs)
 
     def CalcMin(*args, **kwargs):
-        """CalcMin(self) -> Size"""
+        """
+        CalcMin(self) -> Size
+
+        This method is where the sizer will do the actual calculation of its
+        children's minimal sizes.  You should not need to call this directly as
+        it is called by `Layout`.
+        """
         return _controls_.NotebookSizer_CalcMin(*args, **kwargs)
 
     def GetNotebook(*args, **kwargs):
@@ -3484,6 +3631,7 @@ class ToolBarBase(_core.Control):
 
     # For consistency with the backwards compatible methods above, here are
     # some non-'Label' versions of the Check and Radio methods
+
     def AddCheckTool(self, id, bitmap,
                      bmpDisabled = wx.NullBitmap,
                      shortHelp = '', longHelp = '',
@@ -3684,8 +3832,8 @@ class ToolBar(ToolBarBase):
         return "<%s.%s; proxy of C++ wxToolBar instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
     def __init__(self, *args, **kwargs):
         """
-        __init__(self, Window parent, int id, Point pos=DefaultPosition, Size size=DefaultSize
-            long style=wxNO_BORDER|wxTB_HORIZONTAL, 
+        __init__(self, Window parent, int id=-1, Point pos=DefaultPosition
+            Size size=DefaultSize, long style=wxNO_BORDER|wxTB_HORIZONTAL, 
             String name=wxPyToolBarNameStr) -> ToolBar
         """
         newobj = _controls_.new_ToolBar(*args, **kwargs)
@@ -3696,8 +3844,8 @@ class ToolBar(ToolBarBase):
 
     def Create(*args, **kwargs):
         """
-        Create(self, Window parent, int id, Point pos=DefaultPosition, Size size=DefaultSize
-            long style=wxNO_BORDER|wxTB_HORIZONTAL, 
+        Create(self, Window parent, int id=-1, Point pos=DefaultPosition
+            Size size=DefaultSize, long style=wxNO_BORDER|wxTB_HORIZONTAL, 
             String name=wxPyToolBarNameStr) -> bool
         """
         return _controls_.ToolBar_Create(*args, **kwargs)
@@ -4167,6 +4315,9 @@ EVT_LIST_COL_DRAGGING      = wx.PyEventBinder(wxEVT_COMMAND_LIST_COL_DRAGGING
 EVT_LIST_COL_END_DRAG      = wx.PyEventBinder(wxEVT_COMMAND_LIST_COL_END_DRAG     , 1)
 EVT_LIST_ITEM_FOCUSED      = wx.PyEventBinder(wxEVT_COMMAND_LIST_ITEM_FOCUSED     , 1)
 
+EVT_LIST_GET_INFO = wx._deprecated(EVT_LIST_GET_INFO)
+EVT_LIST_SET_INFO = wx._deprecated(EVT_LIST_SET_INFO)
+
 #---------------------------------------------------------------------------
 
 class ListCtrl(_core.Control):
@@ -4259,7 +4410,7 @@ class ListCtrl(_core.Control):
         return _controls_.ListCtrl_SetItemState(*args, **kwargs)
 
     def SetItemImage(*args, **kwargs):
-        """SetItemImage(self, long item, int image, int selImage) -> bool"""
+        """SetItemImage(self, long item, int image, int selImage=-1) -> bool"""
         return _controls_.ListCtrl_SetItemImage(*args, **kwargs)
 
     def GetItemText(*args, **kwargs):
@@ -4414,7 +4565,12 @@ class ListCtrl(_core.Control):
         return _controls_.ListCtrl_FindItemAtPos(*args, **kwargs)
 
     def HitTest(*args, **kwargs):
-        """HitTest(Point point) -> (item, where)"""
+        """
+        HitTest(Point point) -> (item, where)
+
+        Determines which item (if any) is at the specified point, giving
+         in the second return value (see wxLIST_HITTEST_... flags.)
+        """
         return _controls_.ListCtrl_HitTest(*args, **kwargs)
 
     def InsertItem(*args, **kwargs):
@@ -5212,13 +5368,28 @@ class TreeCtrl(_core.Control):
         return _controls_.TreeCtrl_SortChildren(*args, **kwargs)
 
     def HitTest(*args, **kwargs):
-        """HitTest(Point point) -> (item, where)"""
+        """
+        HitTest(Point point) -> (item, where)
+
+        Determine which item (if any) belongs the given point.  The coordinates
+        specified are relative to the client area of tree ctrl and the where return
+        value is set to a bitmask of wxTREE_HITTEST_xxx constants.
+
+        """
         return _controls_.TreeCtrl_HitTest(*args, **kwargs)
 
     def GetBoundingRect(*args, **kwargs):
         """GetBoundingRect(self, TreeItemId item, bool textOnly=False) -> PyObject"""
         return _controls_.TreeCtrl_GetBoundingRect(*args, **kwargs)
 
+    def SetState(*args, **kwargs):
+        """SetState(self, TreeItemId node, int state)"""
+        return _controls_.TreeCtrl_SetState(*args, **kwargs)
+
+    def GetState(*args, **kwargs):
+        """GetState(self, TreeItemId node) -> int"""
+        return _controls_.TreeCtrl_GetState(*args, **kwargs)
+
     def GetClassDefaultAttributes(*args, **kwargs):
         """
         GetClassDefaultAttributes(int variant=WINDOW_VARIANT_NORMAL) -> VisualAttributes
@@ -5363,7 +5534,15 @@ class GenericDirCtrl(_core.Control):
         return _controls_.GenericDirCtrl_GetFilterListCtrl(*args, **kwargs)
 
     def FindChild(*args, **kwargs):
-        """FindChild(wxTreeItemId parentId, wxString path) -> (item, done)"""
+        """
+        FindChild(wxTreeItemId parentId, wxString path) -> (item, done)
+
+        Find the child that matches the first part of 'path'.  E.g. if a child
+        path is "/usr" and 'path' is "/usr/include" then the child for
+        /usr is returned.  If the path string has been used (we're at the
+        leaf), done is set to True.
+
+        """
         return _controls_.GenericDirCtrl_FindChild(*args, **kwargs)
 
     def DoResize(*args, **kwargs):
@@ -5435,8 +5614,8 @@ class PyControl(_core.Control):
         return "<%s.%s; proxy of C++ wxPyControl instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
     def __init__(self, *args, **kwargs):
         """
-        __init__(self, Window parent, int id, Point pos=DefaultPosition, Size size=DefaultSize
-            long style=0, Validator validator=DefaultValidator, 
+        __init__(self, Window parent, int id=-1, Point pos=DefaultPosition
+            Size size=DefaultSize, long style=0, Validator validator=DefaultValidator, 
             String name=ControlNameStr) -> PyControl
         """
         newobj = _controls_.new_PyControl(*args, **kwargs)