]> git.saurik.com Git - wxWidgets.git/blobdiff - wxPython/src/msw/_controls.py
A little cleanup
[wxWidgets.git] / wxPython / src / msw / _controls.py
index 0c48cd251dd126c6b6b3bc42b0f17755e0e3ffc9..046853bdb60d369a3b9a7b197982f0c04d674c93 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.
         """
@@ -69,12 +76,13 @@ class Button(_core.Control):
         Get the default attributes for this class.  This is useful if you want
         to use the same font or colour in your own control as in a standard
         control -- which is a much better idea than hard coding specific
-        colours or fonts which might look completely out of place on the users
-        system, especially if it uses themes.
+        colours or fonts which might look completely out of place on the
+        user's system, especially if it uses themes.
 
         The variant parameter is only relevant under Mac currently and is
         ignore under other platforms. Under Mac, it will change the size of
-        the returned font. See SetWindowVariant for more about this.
+        the returned font. See `wx.Window.SetWindowVariant` for more about
+        this.
         """
         return _controls_.Button_GetClassDefaultAttributes(*args, **kwargs)
 
@@ -114,12 +122,13 @@ def Button_GetClassDefaultAttributes(*args, **kwargs):
     Get the default attributes for this class.  This is useful if you want
     to use the same font or colour in your own control as in a standard
     control -- which is a much better idea than hard coding specific
-    colours or fonts which might look completely out of place on the users
-    system, especially if it uses themes.
+    colours or fonts which might look completely out of place on the
+    user's system, especially if it uses themes.
 
     The variant parameter is only relevant under Mac currently and is
     ignore under other platforms. Under Mac, it will change the size of
-    the returned font. See SetWindowVariant for more about this.
+    the returned font. See `wx.Window.SetWindowVariant` for more about
+    this.
     """
     return _controls_.Button_GetClassDefaultAttributes(*args, **kwargs)
 
@@ -134,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.
@@ -149,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.
@@ -273,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
         """
@@ -287,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.
         """
@@ -369,12 +380,13 @@ class CheckBox(_core.Control):
         Get the default attributes for this class.  This is useful if you want
         to use the same font or colour in your own control as in a standard
         control -- which is a much better idea than hard coding specific
-        colours or fonts which might look completely out of place on the users
-        system, especially if it uses themes.
+        colours or fonts which might look completely out of place on the
+        user's system, especially if it uses themes.
 
         The variant parameter is only relevant under Mac currently and is
         ignore under other platforms. Under Mac, it will change the size of
-        the returned font. See SetWindowVariant for more about this.
+        the returned font. See `wx.Window.SetWindowVariant` for more about
+        this.
         """
         return _controls_.CheckBox_GetClassDefaultAttributes(*args, **kwargs)
 
@@ -405,12 +417,13 @@ def CheckBox_GetClassDefaultAttributes(*args, **kwargs):
     Get the default attributes for this class.  This is useful if you want
     to use the same font or colour in your own control as in a standard
     control -- which is a much better idea than hard coding specific
-    colours or fonts which might look completely out of place on the users
-    system, especially if it uses themes.
+    colours or fonts which might look completely out of place on the
+    user's system, especially if it uses themes.
 
     The variant parameter is only relevant under Mac currently and is
     ignore under other platforms. Under Mac, it will change the size of
-    the returned font. See SetWindowVariant for more about this.
+    the returned font. See `wx.Window.SetWindowVariant` for more about
+    this.
     """
     return _controls_.CheckBox_GetClassDefaultAttributes(*args, **kwargs)
 
@@ -443,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)
 
@@ -478,12 +493,13 @@ class Choice(_core.ControlWithItems):
         Get the default attributes for this class.  This is useful if you want
         to use the same font or colour in your own control as in a standard
         control -- which is a much better idea than hard coding specific
-        colours or fonts which might look completely out of place on the users
-        system, especially if it uses themes.
+        colours or fonts which might look completely out of place on the
+        user's system, especially if it uses themes.
 
         The variant parameter is only relevant under Mac currently and is
         ignore under other platforms. Under Mac, it will change the size of
-        the returned font. See SetWindowVariant for more about this.
+        the returned font. See `wx.Window.SetWindowVariant` for more about
+        this.
         """
         return _controls_.Choice_GetClassDefaultAttributes(*args, **kwargs)
 
@@ -514,12 +530,13 @@ def Choice_GetClassDefaultAttributes(*args, **kwargs):
     Get the default attributes for this class.  This is useful if you want
     to use the same font or colour in your own control as in a standard
     control -- which is a much better idea than hard coding specific
-    colours or fonts which might look completely out of place on the users
-    system, especially if it uses themes.
+    colours or fonts which might look completely out of place on the
+    user's system, especially if it uses themes.
 
     The variant parameter is only relevant under Mac currently and is
     ignore under other platforms. Under Mac, it will change the size of
-    the returned font. See SetWindowVariant for more about this.
+    the returned font. See `wx.Window.SetWindowVariant` for more about
+    this.
     """
     return _controls_.Choice_GetClassDefaultAttributes(*args, **kwargs)
 
@@ -557,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)
 
@@ -645,6 +664,15 @@ class ComboBox(Choice):
         """
         return _controls_.ComboBox_SetMark(*args, **kwargs)
 
+    def GetMark(*args, **kwargs):
+        """
+        GetMark(self) -> (from, to)
+
+        Gets the positions of the begining and ending of the selection mark in
+        the combobox text field.
+        """
+        return _controls_.ComboBox_GetMark(*args, **kwargs)
+
     def SetStringSelection(*args, **kwargs):
         """
         SetStringSelection(self, String string) -> bool
@@ -681,6 +709,84 @@ class ComboBox(Choice):
         """
         return _controls_.ComboBox_Remove(*args, **kwargs)
 
+    def IsEditable(*args, **kwargs):
+        """
+        IsEditable(self) -> bool
+
+        Returns True if the combo is ediatable (not read-only.)
+        """
+        return _controls_.ComboBox_IsEditable(*args, **kwargs)
+
+    def Undo(*args, **kwargs):
+        """
+        Undo(self)
+
+        Redoes the last undo in the text field. Windows only.
+        """
+        return _controls_.ComboBox_Undo(*args, **kwargs)
+
+    def Redo(*args, **kwargs):
+        """
+        Redo(self)
+
+        Undoes the last edit in the text field. Windows only.
+        """
+        return _controls_.ComboBox_Redo(*args, **kwargs)
+
+    def SelectAll(*args, **kwargs):
+        """
+        SelectAll(self)
+
+        Select all the text in the combo's text field.
+        """
+        return _controls_.ComboBox_SelectAll(*args, **kwargs)
+
+    def CanCopy(*args, **kwargs):
+        """
+        CanCopy(self) -> bool
+
+        Returns True if the combobox is editable and there is a text selection
+        to copy to the clipboard.  Only available on Windows.
+        """
+        return _controls_.ComboBox_CanCopy(*args, **kwargs)
+
+    def CanCut(*args, **kwargs):
+        """
+        CanCut(self) -> bool
+
+        Returns True if the combobox is editable and there is a text selection
+        to copy to the clipboard.  Only available on Windows.
+        """
+        return _controls_.ComboBox_CanCut(*args, **kwargs)
+
+    def CanPaste(*args, **kwargs):
+        """
+        CanPaste(self) -> bool
+
+        Returns True if the combobox is editable and there is text on the
+        clipboard that can be pasted into the text field. Only available on
+        Windows.
+        """
+        return _controls_.ComboBox_CanPaste(*args, **kwargs)
+
+    def CanUndo(*args, **kwargs):
+        """
+        CanUndo(self) -> bool
+
+        Returns True if the combobox is editable and the last edit can be
+        undone.  Only available on Windows.
+        """
+        return _controls_.ComboBox_CanUndo(*args, **kwargs)
+
+    def CanRedo(*args, **kwargs):
+        """
+        CanRedo(self) -> bool
+
+        Returns True if the combobox is editable and the last undo can be
+        redone.  Only available on Windows.
+        """
+        return _controls_.ComboBox_CanRedo(*args, **kwargs)
+
     def GetClassDefaultAttributes(*args, **kwargs):
         """
         GetClassDefaultAttributes(int variant=WINDOW_VARIANT_NORMAL) -> VisualAttributes
@@ -688,12 +794,13 @@ class ComboBox(Choice):
         Get the default attributes for this class.  This is useful if you want
         to use the same font or colour in your own control as in a standard
         control -- which is a much better idea than hard coding specific
-        colours or fonts which might look completely out of place on the users
-        system, especially if it uses themes.
+        colours or fonts which might look completely out of place on the
+        user's system, especially if it uses themes.
 
         The variant parameter is only relevant under Mac currently and is
         ignore under other platforms. Under Mac, it will change the size of
-        the returned font. See SetWindowVariant for more about this.
+        the returned font. See `wx.Window.SetWindowVariant` for more about
+        this.
         """
         return _controls_.ComboBox_GetClassDefaultAttributes(*args, **kwargs)
 
@@ -724,12 +831,13 @@ def ComboBox_GetClassDefaultAttributes(*args, **kwargs):
     Get the default attributes for this class.  This is useful if you want
     to use the same font or colour in your own control as in a standard
     control -- which is a much better idea than hard coding specific
-    colours or fonts which might look completely out of place on the users
-    system, especially if it uses themes.
+    colours or fonts which might look completely out of place on the
+    user's system, especially if it uses themes.
 
     The variant parameter is only relevant under Mac currently and is
     ignore under other platforms. Under Mac, it will change the size of
-    the returned font. See SetWindowVariant for more about this.
+    the returned font. See `wx.Window.SetWindowVariant` for more about
+    this.
     """
     return _controls_.ComboBox_GetClassDefaultAttributes(*args, **kwargs)
 
@@ -744,7 +852,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
@@ -757,7 +865,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
@@ -807,12 +915,13 @@ class Gauge(_core.Control):
         Get the default attributes for this class.  This is useful if you want
         to use the same font or colour in your own control as in a standard
         control -- which is a much better idea than hard coding specific
-        colours or fonts which might look completely out of place on the users
-        system, especially if it uses themes.
+        colours or fonts which might look completely out of place on the
+        user's system, especially if it uses themes.
 
         The variant parameter is only relevant under Mac currently and is
         ignore under other platforms. Under Mac, it will change the size of
-        the returned font. See SetWindowVariant for more about this.
+        the returned font. See `wx.Window.SetWindowVariant` for more about
+        this.
         """
         return _controls_.Gauge_GetClassDefaultAttributes(*args, **kwargs)
 
@@ -839,12 +948,13 @@ def Gauge_GetClassDefaultAttributes(*args, **kwargs):
     Get the default attributes for this class.  This is useful if you want
     to use the same font or colour in your own control as in a standard
     control -- which is a much better idea than hard coding specific
-    colours or fonts which might look completely out of place on the users
-    system, especially if it uses themes.
+    colours or fonts which might look completely out of place on the
+    user's system, especially if it uses themes.
 
     The variant parameter is only relevant under Mac currently and is
     ignore under other platforms. Under Mac, it will change the size of
-    the returned font. See SetWindowVariant for more about this.
+    the returned font. See `wx.Window.SetWindowVariant` for more about
+    this.
     """
     return _controls_.Gauge_GetClassDefaultAttributes(*args, **kwargs)
 
@@ -855,9 +965,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
@@ -867,9 +977,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)
 
@@ -880,12 +990,13 @@ class StaticBox(_core.Control):
         Get the default attributes for this class.  This is useful if you want
         to use the same font or colour in your own control as in a standard
         control -- which is a much better idea than hard coding specific
-        colours or fonts which might look completely out of place on the users
-        system, especially if it uses themes.
+        colours or fonts which might look completely out of place on the
+        user's system, especially if it uses themes.
 
         The variant parameter is only relevant under Mac currently and is
         ignore under other platforms. Under Mac, it will change the size of
-        the returned font. See SetWindowVariant for more about this.
+        the returned font. See `wx.Window.SetWindowVariant` for more about
+        this.
         """
         return _controls_.StaticBox_GetClassDefaultAttributes(*args, **kwargs)
 
@@ -914,12 +1025,13 @@ def StaticBox_GetClassDefaultAttributes(*args, **kwargs):
     Get the default attributes for this class.  This is useful if you want
     to use the same font or colour in your own control as in a standard
     control -- which is a much better idea than hard coding specific
-    colours or fonts which might look completely out of place on the users
-    system, especially if it uses themes.
+    colours or fonts which might look completely out of place on the
+    user's system, especially if it uses themes.
 
     The variant parameter is only relevant under Mac currently and is
     ignore under other platforms. Under Mac, it will change the size of
-    the returned font. See SetWindowVariant for more about this.
+    the returned font. See `wx.Window.SetWindowVariant` for more about
+    this.
     """
     return _controls_.StaticBox_GetClassDefaultAttributes(*args, **kwargs)
 
@@ -930,8 +1042,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)
@@ -942,8 +1054,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)
@@ -964,12 +1076,13 @@ class StaticLine(_core.Control):
         Get the default attributes for this class.  This is useful if you want
         to use the same font or colour in your own control as in a standard
         control -- which is a much better idea than hard coding specific
-        colours or fonts which might look completely out of place on the users
-        system, especially if it uses themes.
+        colours or fonts which might look completely out of place on the
+        user's system, especially if it uses themes.
 
         The variant parameter is only relevant under Mac currently and is
         ignore under other platforms. Under Mac, it will change the size of
-        the returned font. See SetWindowVariant for more about this.
+        the returned font. See `wx.Window.SetWindowVariant` for more about
+        this.
         """
         return _controls_.StaticLine_GetClassDefaultAttributes(*args, **kwargs)
 
@@ -999,12 +1112,13 @@ def StaticLine_GetClassDefaultAttributes(*args, **kwargs):
     Get the default attributes for this class.  This is useful if you want
     to use the same font or colour in your own control as in a standard
     control -- which is a much better idea than hard coding specific
-    colours or fonts which might look completely out of place on the users
-    system, especially if it uses themes.
+    colours or fonts which might look completely out of place on the
+    user's system, especially if it uses themes.
 
     The variant parameter is only relevant under Mac currently and is
     ignore under other platforms. Under Mac, it will change the size of
-    the returned font. See SetWindowVariant for more about this.
+    the returned font. See `wx.Window.SetWindowVariant` for more about
+    this.
     """
     return _controls_.StaticLine_GetClassDefaultAttributes(*args, **kwargs)
 
@@ -1015,9 +1129,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
@@ -1027,9 +1141,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)
 
@@ -1040,12 +1154,13 @@ class StaticText(_core.Control):
         Get the default attributes for this class.  This is useful if you want
         to use the same font or colour in your own control as in a standard
         control -- which is a much better idea than hard coding specific
-        colours or fonts which might look completely out of place on the users
-        system, especially if it uses themes.
+        colours or fonts which might look completely out of place on the
+        user's system, especially if it uses themes.
 
         The variant parameter is only relevant under Mac currently and is
         ignore under other platforms. Under Mac, it will change the size of
-        the returned font. See SetWindowVariant for more about this.
+        the returned font. See `wx.Window.SetWindowVariant` for more about
+        this.
         """
         return _controls_.StaticText_GetClassDefaultAttributes(*args, **kwargs)
 
@@ -1071,12 +1186,13 @@ def StaticText_GetClassDefaultAttributes(*args, **kwargs):
     Get the default attributes for this class.  This is useful if you want
     to use the same font or colour in your own control as in a standard
     control -- which is a much better idea than hard coding specific
-    colours or fonts which might look completely out of place on the users
-    system, especially if it uses themes.
+    colours or fonts which might look completely out of place on the
+    user's system, especially if it uses themes.
 
     The variant parameter is only relevant under Mac currently and is
     ignore under other platforms. Under Mac, it will change the size of
-    the returned font. See SetWindowVariant for more about this.
+    the returned font. See `wx.Window.SetWindowVariant` for more about
+    this.
     """
     return _controls_.StaticText_GetClassDefaultAttributes(*args, **kwargs)
 
@@ -1087,9 +1203,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
@@ -1099,9 +1215,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)
 
@@ -1124,12 +1240,13 @@ class StaticBitmap(_core.Control):
         Get the default attributes for this class.  This is useful if you want
         to use the same font or colour in your own control as in a standard
         control -- which is a much better idea than hard coding specific
-        colours or fonts which might look completely out of place on the users
-        system, especially if it uses themes.
+        colours or fonts which might look completely out of place on the
+        user's system, especially if it uses themes.
 
         The variant parameter is only relevant under Mac currently and is
         ignore under other platforms. Under Mac, it will change the size of
-        the returned font. See SetWindowVariant for more about this.
+        the returned font. See `wx.Window.SetWindowVariant` for more about
+        this.
         """
         return _controls_.StaticBitmap_GetClassDefaultAttributes(*args, **kwargs)
 
@@ -1155,12 +1272,13 @@ def StaticBitmap_GetClassDefaultAttributes(*args, **kwargs):
     Get the default attributes for this class.  This is useful if you want
     to use the same font or colour in your own control as in a standard
     control -- which is a much better idea than hard coding specific
-    colours or fonts which might look completely out of place on the users
-    system, especially if it uses themes.
+    colours or fonts which might look completely out of place on the
+    user's system, especially if it uses themes.
 
     The variant parameter is only relevant under Mac currently and is
     ignore under other platforms. Under Mac, it will change the size of
-    the returned font. See SetWindowVariant for more about this.
+    the returned font. See `wx.Window.SetWindowVariant` for more about
+    this.
     """
     return _controls_.StaticBitmap_GetClassDefaultAttributes(*args, **kwargs)
 
@@ -1171,8 +1289,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
         """
@@ -1184,8 +1302,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
         """
@@ -1279,12 +1397,13 @@ class ListBox(_core.ControlWithItems):
         Get the default attributes for this class.  This is useful if you want
         to use the same font or colour in your own control as in a standard
         control -- which is a much better idea than hard coding specific
-        colours or fonts which might look completely out of place on the users
-        system, especially if it uses themes.
+        colours or fonts which might look completely out of place on the
+        user's system, especially if it uses themes.
 
         The variant parameter is only relevant under Mac currently and is
         ignore under other platforms. Under Mac, it will change the size of
-        the returned font. See SetWindowVariant for more about this.
+        the returned font. See `wx.Window.SetWindowVariant` for more about
+        this.
         """
         return _controls_.ListBox_GetClassDefaultAttributes(*args, **kwargs)
 
@@ -1311,12 +1430,13 @@ def ListBox_GetClassDefaultAttributes(*args, **kwargs):
     Get the default attributes for this class.  This is useful if you want
     to use the same font or colour in your own control as in a standard
     control -- which is a much better idea than hard coding specific
-    colours or fonts which might look completely out of place on the users
-    system, especially if it uses themes.
+    colours or fonts which might look completely out of place on the
+    user's system, especially if it uses themes.
 
     The variant parameter is only relevant under Mac currently and is
     ignore under other platforms. Under Mac, it will change the size of
-    the returned font. See SetWindowVariant for more about this.
+    the returned font. See `wx.Window.SetWindowVariant` for more about
+    this.
     """
     return _controls_.ListBox_GetClassDefaultAttributes(*args, **kwargs)
 
@@ -1327,8 +1447,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
         """
@@ -1340,8 +1460,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
         """
@@ -1435,13 +1555,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
@@ -1476,7 +1595,7 @@ class TextAttr(object):
         return _controls_.TextAttr_SetTabs(*args, **kwargs)
 
     def SetLeftIndent(*args, **kwargs):
-        """SetLeftIndent(self, int indent)"""
+        """SetLeftIndent(self, int indent, int subIndent=0)"""
         return _controls_.TextAttr_SetLeftIndent(*args, **kwargs)
 
     def SetRightIndent(*args, **kwargs):
@@ -1543,6 +1662,10 @@ class TextAttr(object):
         """GetLeftIndent(self) -> long"""
         return _controls_.TextAttr_GetLeftIndent(*args, **kwargs)
 
+    def GetLeftSubIndent(*args, **kwargs):
+        """GetLeftSubIndent(self) -> long"""
+        return _controls_.TextAttr_GetLeftSubIndent(*args, **kwargs)
+
     def GetRightIndent(*args, **kwargs):
         """GetRightIndent(self) -> long"""
         return _controls_.TextAttr_GetRightIndent(*args, **kwargs)
@@ -1578,8 +1701,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
         """
@@ -1591,8 +1714,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
         """
@@ -1639,7 +1762,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):
@@ -1719,9 +1846,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)
@@ -1813,12 +1956,13 @@ class TextCtrl(_core.Control):
         Get the default attributes for this class.  This is useful if you want
         to use the same font or colour in your own control as in a standard
         control -- which is a much better idea than hard coding specific
-        colours or fonts which might look completely out of place on the users
-        system, especially if it uses themes.
+        colours or fonts which might look completely out of place on the
+        user's system, especially if it uses themes.
 
         The variant parameter is only relevant under Mac currently and is
         ignore under other platforms. Under Mac, it will change the size of
-        the returned font. See SetWindowVariant for more about this.
+        the returned font. See `wx.Window.SetWindowVariant` for more about
+        this.
         """
         return _controls_.TextCtrl_GetClassDefaultAttributes(*args, **kwargs)
 
@@ -1844,12 +1988,13 @@ def TextCtrl_GetClassDefaultAttributes(*args, **kwargs):
     Get the default attributes for this class.  This is useful if you want
     to use the same font or colour in your own control as in a standard
     control -- which is a much better idea than hard coding specific
-    colours or fonts which might look completely out of place on the users
-    system, especially if it uses themes.
+    colours or fonts which might look completely out of place on the
+    user's system, especially if it uses themes.
 
     The variant parameter is only relevant under Mac currently and is
     ignore under other platforms. Under Mac, it will change the size of
-    the returned font. See SetWindowVariant for more about this.
+    the returned font. See `wx.Window.SetWindowVariant` for more about
+    this.
     """
     return _controls_.TextCtrl_GetClassDefaultAttributes(*args, **kwargs)
 
@@ -1959,12 +2104,13 @@ class ScrollBar(_core.Control):
         Get the default attributes for this class.  This is useful if you want
         to use the same font or colour in your own control as in a standard
         control -- which is a much better idea than hard coding specific
-        colours or fonts which might look completely out of place on the users
-        system, especially if it uses themes.
+        colours or fonts which might look completely out of place on the
+        user's system, especially if it uses themes.
 
         The variant parameter is only relevant under Mac currently and is
         ignore under other platforms. Under Mac, it will change the size of
-        the returned font. See SetWindowVariant for more about this.
+        the returned font. See `wx.Window.SetWindowVariant` for more about
+        this.
         """
         return _controls_.ScrollBar_GetClassDefaultAttributes(*args, **kwargs)
 
@@ -1991,12 +2137,13 @@ def ScrollBar_GetClassDefaultAttributes(*args, **kwargs):
     Get the default attributes for this class.  This is useful if you want
     to use the same font or colour in your own control as in a standard
     control -- which is a much better idea than hard coding specific
-    colours or fonts which might look completely out of place on the users
-    system, especially if it uses themes.
+    colours or fonts which might look completely out of place on the
+    user's system, especially if it uses themes.
 
     The variant parameter is only relevant under Mac currently and is
     ignore under other platforms. Under Mac, it will change the size of
-    the returned font. See SetWindowVariant for more about this.
+    the returned font. See `wx.Window.SetWindowVariant` for more about
+    this.
     """
     return _controls_.ScrollBar_GetClassDefaultAttributes(*args, **kwargs)
 
@@ -2068,12 +2215,13 @@ class SpinButton(_core.Control):
         Get the default attributes for this class.  This is useful if you want
         to use the same font or colour in your own control as in a standard
         control -- which is a much better idea than hard coding specific
-        colours or fonts which might look completely out of place on the users
-        system, especially if it uses themes.
+        colours or fonts which might look completely out of place on the
+        user's system, especially if it uses themes.
 
         The variant parameter is only relevant under Mac currently and is
         ignore under other platforms. Under Mac, it will change the size of
-        the returned font. See SetWindowVariant for more about this.
+        the returned font. See `wx.Window.SetWindowVariant` for more about
+        this.
         """
         return _controls_.SpinButton_GetClassDefaultAttributes(*args, **kwargs)
 
@@ -2101,12 +2249,13 @@ def SpinButton_GetClassDefaultAttributes(*args, **kwargs):
     Get the default attributes for this class.  This is useful if you want
     to use the same font or colour in your own control as in a standard
     control -- which is a much better idea than hard coding specific
-    colours or fonts which might look completely out of place on the users
-    system, especially if it uses themes.
+    colours or fonts which might look completely out of place on the
+    user's system, especially if it uses themes.
 
     The variant parameter is only relevant under Mac currently and is
     ignore under other platforms. Under Mac, it will change the size of
-    the returned font. See SetWindowVariant for more about this.
+    the returned font. See `wx.Window.SetWindowVariant` for more about
+    this.
     """
     return _controls_.SpinButton_GetClassDefaultAttributes(*args, **kwargs)
 
@@ -2170,12 +2319,13 @@ class SpinCtrl(_core.Control):
         Get the default attributes for this class.  This is useful if you want
         to use the same font or colour in your own control as in a standard
         control -- which is a much better idea than hard coding specific
-        colours or fonts which might look completely out of place on the users
-        system, especially if it uses themes.
+        colours or fonts which might look completely out of place on the
+        user's system, especially if it uses themes.
 
         The variant parameter is only relevant under Mac currently and is
         ignore under other platforms. Under Mac, it will change the size of
-        the returned font. See SetWindowVariant for more about this.
+        the returned font. See `wx.Window.SetWindowVariant` for more about
+        this.
         """
         return _controls_.SpinCtrl_GetClassDefaultAttributes(*args, **kwargs)
 
@@ -2201,12 +2351,13 @@ def SpinCtrl_GetClassDefaultAttributes(*args, **kwargs):
     Get the default attributes for this class.  This is useful if you want
     to use the same font or colour in your own control as in a standard
     control -- which is a much better idea than hard coding specific
-    colours or fonts which might look completely out of place on the users
-    system, especially if it uses themes.
+    colours or fonts which might look completely out of place on the
+    user's system, especially if it uses themes.
 
     The variant parameter is only relevant under Mac currently and is
     ignore under other platforms. Under Mac, it will change the size of
-    the returned font. See SetWindowVariant for more about this.
+    the returned font. See `wx.Window.SetWindowVariant` for more about
+    this.
     """
     return _controls_.SpinCtrl_GetClassDefaultAttributes(*args, **kwargs)
 
@@ -2248,10 +2399,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']
@@ -2263,10 +2415,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)
@@ -2332,12 +2485,13 @@ class RadioBox(_core.Control):
         Get the default attributes for this class.  This is useful if you want
         to use the same font or colour in your own control as in a standard
         control -- which is a much better idea than hard coding specific
-        colours or fonts which might look completely out of place on the users
-        system, especially if it uses themes.
+        colours or fonts which might look completely out of place on the
+        user's system, especially if it uses themes.
 
         The variant parameter is only relevant under Mac currently and is
         ignore under other platforms. Under Mac, it will change the size of
-        the returned font. See SetWindowVariant for more about this.
+        the returned font. See `wx.Window.SetWindowVariant` for more about
+        this.
         """
         return _controls_.RadioBox_GetClassDefaultAttributes(*args, **kwargs)
 
@@ -2365,12 +2519,13 @@ def RadioBox_GetClassDefaultAttributes(*args, **kwargs):
     Get the default attributes for this class.  This is useful if you want
     to use the same font or colour in your own control as in a standard
     control -- which is a much better idea than hard coding specific
-    colours or fonts which might look completely out of place on the users
-    system, especially if it uses themes.
+    colours or fonts which might look completely out of place on the
+    user's system, especially if it uses themes.
 
     The variant parameter is only relevant under Mac currently and is
     ignore under other platforms. Under Mac, it will change the size of
-    the returned font. See SetWindowVariant for more about this.
+    the returned font. See `wx.Window.SetWindowVariant` for more about
+    this.
     """
     return _controls_.RadioBox_GetClassDefaultAttributes(*args, **kwargs)
 
@@ -2381,9 +2536,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
@@ -2393,9 +2549,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)
 
@@ -2414,12 +2571,13 @@ class RadioButton(_core.Control):
         Get the default attributes for this class.  This is useful if you want
         to use the same font or colour in your own control as in a standard
         control -- which is a much better idea than hard coding specific
-        colours or fonts which might look completely out of place on the users
-        system, especially if it uses themes.
+        colours or fonts which might look completely out of place on the
+        user's system, especially if it uses themes.
 
         The variant parameter is only relevant under Mac currently and is
         ignore under other platforms. Under Mac, it will change the size of
-        the returned font. See SetWindowVariant for more about this.
+        the returned font. See `wx.Window.SetWindowVariant` for more about
+        this.
         """
         return _controls_.RadioButton_GetClassDefaultAttributes(*args, **kwargs)
 
@@ -2445,12 +2603,13 @@ def RadioButton_GetClassDefaultAttributes(*args, **kwargs):
     Get the default attributes for this class.  This is useful if you want
     to use the same font or colour in your own control as in a standard
     control -- which is a much better idea than hard coding specific
-    colours or fonts which might look completely out of place on the users
-    system, especially if it uses themes.
+    colours or fonts which might look completely out of place on the
+    user's system, especially if it uses themes.
 
     The variant parameter is only relevant under Mac currently and is
     ignore under other platforms. Under Mac, it will change the size of
-    the returned font. See SetWindowVariant for more about this.
+    the returned font. See `wx.Window.SetWindowVariant` for more about
+    this.
     """
     return _controls_.RadioButton_GetClassDefaultAttributes(*args, **kwargs)
 
@@ -2461,9 +2620,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']
@@ -2475,9 +2635,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)
@@ -2573,12 +2734,13 @@ class Slider(_core.Control):
         Get the default attributes for this class.  This is useful if you want
         to use the same font or colour in your own control as in a standard
         control -- which is a much better idea than hard coding specific
-        colours or fonts which might look completely out of place on the users
-        system, especially if it uses themes.
+        colours or fonts which might look completely out of place on the
+        user's system, especially if it uses themes.
 
         The variant parameter is only relevant under Mac currently and is
         ignore under other platforms. Under Mac, it will change the size of
-        the returned font. See SetWindowVariant for more about this.
+        the returned font. See `wx.Window.SetWindowVariant` for more about
+        this.
         """
         return _controls_.Slider_GetClassDefaultAttributes(*args, **kwargs)
 
@@ -2605,12 +2767,13 @@ def Slider_GetClassDefaultAttributes(*args, **kwargs):
     Get the default attributes for this class.  This is useful if you want
     to use the same font or colour in your own control as in a standard
     control -- which is a much better idea than hard coding specific
-    colours or fonts which might look completely out of place on the users
-    system, especially if it uses themes.
+    colours or fonts which might look completely out of place on the
+    user's system, especially if it uses themes.
 
     The variant parameter is only relevant under Mac currently and is
     ignore under other platforms. Under Mac, it will change the size of
-    the returned font. See SetWindowVariant for more about this.
+    the returned font. See `wx.Window.SetWindowVariant` for more about
+    this.
     """
     return _controls_.Slider_GetClassDefaultAttributes(*args, **kwargs)
 
@@ -2624,9 +2787,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
@@ -2636,9 +2800,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)
 
@@ -2665,12 +2830,13 @@ class ToggleButton(_core.Control):
         Get the default attributes for this class.  This is useful if you want
         to use the same font or colour in your own control as in a standard
         control -- which is a much better idea than hard coding specific
-        colours or fonts which might look completely out of place on the users
-        system, especially if it uses themes.
+        colours or fonts which might look completely out of place on the
+        user's system, especially if it uses themes.
 
         The variant parameter is only relevant under Mac currently and is
         ignore under other platforms. Under Mac, it will change the size of
-        the returned font. See SetWindowVariant for more about this.
+        the returned font. See `wx.Window.SetWindowVariant` for more about
+        this.
         """
         return _controls_.ToggleButton_GetClassDefaultAttributes(*args, **kwargs)
 
@@ -2697,99 +2863,104 @@ def ToggleButton_GetClassDefaultAttributes(*args, **kwargs):
     Get the default attributes for this class.  This is useful if you want
     to use the same font or colour in your own control as in a standard
     control -- which is a much better idea than hard coding specific
-    colours or fonts which might look completely out of place on the users
-    system, especially if it uses themes.
+    colours or fonts which might look completely out of place on the
+    user's system, especially if it uses themes.
 
     The variant parameter is only relevant under Mac currently and is
     ignore under other platforms. Under Mac, it will change the size of
-    the returned font. See SetWindowVariant for more about this.
+    the returned font. See `wx.Window.SetWindowVariant` for more about
+    this.
     """
     return _controls_.ToggleButton_GetClassDefaultAttributes(*args, **kwargs)
 
 #---------------------------------------------------------------------------
 
-class BookCtrl(_core.Control):
+class BookCtrlBase(_core.Control):
     def __init__(self): raise RuntimeError, "No constructor defined"
     def __repr__(self):
-        return "<%s.%s; proxy of C++ wxBookCtrl instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
+        return "<%s.%s; proxy of C++ wxBookCtrlBase instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
     def GetPageCount(*args, **kwargs):
         """GetPageCount(self) -> size_t"""
-        return _controls_.BookCtrl_GetPageCount(*args, **kwargs)
+        return _controls_.BookCtrlBase_GetPageCount(*args, **kwargs)
 
     def GetPage(*args, **kwargs):
         """GetPage(self, size_t n) -> Window"""
-        return _controls_.BookCtrl_GetPage(*args, **kwargs)
+        return _controls_.BookCtrlBase_GetPage(*args, **kwargs)
+
+    def GetCurrentPage(*args, **kwargs):
+        """GetCurrentPage(self) -> Window"""
+        return _controls_.BookCtrlBase_GetCurrentPage(*args, **kwargs)
 
     def GetSelection(*args, **kwargs):
         """GetSelection(self) -> int"""
-        return _controls_.BookCtrl_GetSelection(*args, **kwargs)
+        return _controls_.BookCtrlBase_GetSelection(*args, **kwargs)
 
     def SetPageText(*args, **kwargs):
         """SetPageText(self, size_t n, String strText) -> bool"""
-        return _controls_.BookCtrl_SetPageText(*args, **kwargs)
+        return _controls_.BookCtrlBase_SetPageText(*args, **kwargs)
 
     def GetPageText(*args, **kwargs):
         """GetPageText(self, size_t n) -> String"""
-        return _controls_.BookCtrl_GetPageText(*args, **kwargs)
+        return _controls_.BookCtrlBase_GetPageText(*args, **kwargs)
 
     def SetImageList(*args, **kwargs):
         """SetImageList(self, ImageList imageList)"""
-        return _controls_.BookCtrl_SetImageList(*args, **kwargs)
+        return _controls_.BookCtrlBase_SetImageList(*args, **kwargs)
 
     def AssignImageList(*args, **kwargs):
         """AssignImageList(self, ImageList imageList)"""
-        return _controls_.BookCtrl_AssignImageList(*args, **kwargs)
+        return _controls_.BookCtrlBase_AssignImageList(*args, **kwargs)
 
     def GetImageList(*args, **kwargs):
         """GetImageList(self) -> ImageList"""
-        return _controls_.BookCtrl_GetImageList(*args, **kwargs)
+        return _controls_.BookCtrlBase_GetImageList(*args, **kwargs)
 
     def GetPageImage(*args, **kwargs):
         """GetPageImage(self, size_t n) -> int"""
-        return _controls_.BookCtrl_GetPageImage(*args, **kwargs)
+        return _controls_.BookCtrlBase_GetPageImage(*args, **kwargs)
 
     def SetPageImage(*args, **kwargs):
         """SetPageImage(self, size_t n, int imageId) -> bool"""
-        return _controls_.BookCtrl_SetPageImage(*args, **kwargs)
+        return _controls_.BookCtrlBase_SetPageImage(*args, **kwargs)
 
     def SetPageSize(*args, **kwargs):
         """SetPageSize(self, Size size)"""
-        return _controls_.BookCtrl_SetPageSize(*args, **kwargs)
+        return _controls_.BookCtrlBase_SetPageSize(*args, **kwargs)
 
     def CalcSizeFromPage(*args, **kwargs):
         """CalcSizeFromPage(self, Size sizePage) -> Size"""
-        return _controls_.BookCtrl_CalcSizeFromPage(*args, **kwargs)
+        return _controls_.BookCtrlBase_CalcSizeFromPage(*args, **kwargs)
 
     def DeletePage(*args, **kwargs):
         """DeletePage(self, size_t n) -> bool"""
-        return _controls_.BookCtrl_DeletePage(*args, **kwargs)
+        return _controls_.BookCtrlBase_DeletePage(*args, **kwargs)
 
     def RemovePage(*args, **kwargs):
         """RemovePage(self, size_t n) -> bool"""
-        return _controls_.BookCtrl_RemovePage(*args, **kwargs)
+        return _controls_.BookCtrlBase_RemovePage(*args, **kwargs)
 
     def DeleteAllPages(*args, **kwargs):
         """DeleteAllPages(self) -> bool"""
-        return _controls_.BookCtrl_DeleteAllPages(*args, **kwargs)
+        return _controls_.BookCtrlBase_DeleteAllPages(*args, **kwargs)
 
     def AddPage(*args, **kwargs):
         """AddPage(self, Window page, String text, bool select=False, int imageId=-1) -> bool"""
-        return _controls_.BookCtrl_AddPage(*args, **kwargs)
+        return _controls_.BookCtrlBase_AddPage(*args, **kwargs)
 
     def InsertPage(*args, **kwargs):
         """
         InsertPage(self, size_t n, Window page, String text, bool select=False, 
             int imageId=-1) -> bool
         """
-        return _controls_.BookCtrl_InsertPage(*args, **kwargs)
+        return _controls_.BookCtrlBase_InsertPage(*args, **kwargs)
 
     def SetSelection(*args, **kwargs):
         """SetSelection(self, size_t n) -> int"""
-        return _controls_.BookCtrl_SetSelection(*args, **kwargs)
+        return _controls_.BookCtrlBase_SetSelection(*args, **kwargs)
 
     def AdvanceSelection(*args, **kwargs):
         """AdvanceSelection(self, bool forward=True)"""
-        return _controls_.BookCtrl_AdvanceSelection(*args, **kwargs)
+        return _controls_.BookCtrlBase_AdvanceSelection(*args, **kwargs)
 
     def GetClassDefaultAttributes(*args, **kwargs):
         """
@@ -2798,76 +2969,78 @@ class BookCtrl(_core.Control):
         Get the default attributes for this class.  This is useful if you want
         to use the same font or colour in your own control as in a standard
         control -- which is a much better idea than hard coding specific
-        colours or fonts which might look completely out of place on the users
-        system, especially if it uses themes.
+        colours or fonts which might look completely out of place on the
+        user's system, especially if it uses themes.
 
         The variant parameter is only relevant under Mac currently and is
         ignore under other platforms. Under Mac, it will change the size of
-        the returned font. See SetWindowVariant for more about this.
+        the returned font. See `wx.Window.SetWindowVariant` for more about
+        this.
         """
-        return _controls_.BookCtrl_GetClassDefaultAttributes(*args, **kwargs)
+        return _controls_.BookCtrlBase_GetClassDefaultAttributes(*args, **kwargs)
 
     GetClassDefaultAttributes = staticmethod(GetClassDefaultAttributes)
 
-class BookCtrlPtr(BookCtrl):
+class BookCtrlBasePtr(BookCtrlBase):
     def __init__(self, this):
         self.this = this
         if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = BookCtrl
-_controls_.BookCtrl_swigregister(BookCtrlPtr)
+        self.__class__ = BookCtrlBase
+_controls_.BookCtrlBase_swigregister(BookCtrlBasePtr)
 NOTEBOOK_NAME = cvar.NOTEBOOK_NAME
 
-def BookCtrl_GetClassDefaultAttributes(*args, **kwargs):
+def BookCtrlBase_GetClassDefaultAttributes(*args, **kwargs):
     """
-    BookCtrl_GetClassDefaultAttributes(int variant=WINDOW_VARIANT_NORMAL) -> VisualAttributes
+    BookCtrlBase_GetClassDefaultAttributes(int variant=WINDOW_VARIANT_NORMAL) -> VisualAttributes
 
     Get the default attributes for this class.  This is useful if you want
     to use the same font or colour in your own control as in a standard
     control -- which is a much better idea than hard coding specific
-    colours or fonts which might look completely out of place on the users
-    system, especially if it uses themes.
+    colours or fonts which might look completely out of place on the
+    user's system, especially if it uses themes.
 
     The variant parameter is only relevant under Mac currently and is
     ignore under other platforms. Under Mac, it will change the size of
-    the returned font. See SetWindowVariant for more about this.
+    the returned font. See `wx.Window.SetWindowVariant` for more about
+    this.
     """
-    return _controls_.BookCtrl_GetClassDefaultAttributes(*args, **kwargs)
+    return _controls_.BookCtrlBase_GetClassDefaultAttributes(*args, **kwargs)
 
-class BookCtrlEvent(_core.NotifyEvent):
+class BookCtrlBaseEvent(_core.NotifyEvent):
     def __repr__(self):
-        return "<%s.%s; proxy of C++ wxBookCtrlEvent instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
+        return "<%s.%s; proxy of C++ wxBookCtrlBaseEvent 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) -> BookCtrlEvent
+            int nOldSel=-1) -> BookCtrlBaseEvent
         """
-        newobj = _controls_.new_BookCtrlEvent(*args, **kwargs)
+        newobj = _controls_.new_BookCtrlBaseEvent(*args, **kwargs)
         self.this = newobj.this
         self.thisown = 1
         del newobj.thisown
     def GetSelection(*args, **kwargs):
         """GetSelection(self) -> int"""
-        return _controls_.BookCtrlEvent_GetSelection(*args, **kwargs)
+        return _controls_.BookCtrlBaseEvent_GetSelection(*args, **kwargs)
 
     def SetSelection(*args, **kwargs):
         """SetSelection(self, int nSel)"""
-        return _controls_.BookCtrlEvent_SetSelection(*args, **kwargs)
+        return _controls_.BookCtrlBaseEvent_SetSelection(*args, **kwargs)
 
     def GetOldSelection(*args, **kwargs):
         """GetOldSelection(self) -> int"""
-        return _controls_.BookCtrlEvent_GetOldSelection(*args, **kwargs)
+        return _controls_.BookCtrlBaseEvent_GetOldSelection(*args, **kwargs)
 
     def SetOldSelection(*args, **kwargs):
         """SetOldSelection(self, int nOldSel)"""
-        return _controls_.BookCtrlEvent_SetOldSelection(*args, **kwargs)
+        return _controls_.BookCtrlBaseEvent_SetOldSelection(*args, **kwargs)
 
 
-class BookCtrlEventPtr(BookCtrlEvent):
+class BookCtrlBaseEventPtr(BookCtrlBaseEvent):
     def __init__(self, this):
         self.this = this
         if not hasattr(self,"thisown"): self.thisown = 0
-        self.__class__ = BookCtrlEvent
-_controls_.BookCtrlEvent_swigregister(BookCtrlEventPtr)
+        self.__class__ = BookCtrlBaseEvent
+_controls_.BookCtrlBaseEvent_swigregister(BookCtrlBaseEventPtr)
 
 #---------------------------------------------------------------------------
 
@@ -2881,7 +3054,7 @@ NB_HITTEST_NOWHERE = _controls_.NB_HITTEST_NOWHERE
 NB_HITTEST_ONICON = _controls_.NB_HITTEST_ONICON
 NB_HITTEST_ONLABEL = _controls_.NB_HITTEST_ONLABEL
 NB_HITTEST_ONITEM = _controls_.NB_HITTEST_ONITEM
-class Notebook(BookCtrl):
+class Notebook(BookCtrlBase):
     def __repr__(self):
         return "<%s.%s; proxy of C++ wxNotebook instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
     def __init__(self, *args, **kwargs):
@@ -2897,8 +3070,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)
 
@@ -2915,17 +3088,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
@@ -2933,12 +3107,13 @@ class Notebook(BookCtrl):
         Get the default attributes for this class.  This is useful if you want
         to use the same font or colour in your own control as in a standard
         control -- which is a much better idea than hard coding specific
-        colours or fonts which might look completely out of place on the users
-        system, especially if it uses themes.
+        colours or fonts which might look completely out of place on the
+        user's system, especially if it uses themes.
 
         The variant parameter is only relevant under Mac currently and is
         ignore under other platforms. Under Mac, it will change the size of
-        the returned font. See SetWindowVariant for more about this.
+        the returned font. See `wx.Window.SetWindowVariant` for more about
+        this.
         """
         return _controls_.Notebook_GetClassDefaultAttributes(*args, **kwargs)
 
@@ -2964,16 +3139,17 @@ def Notebook_GetClassDefaultAttributes(*args, **kwargs):
     Get the default attributes for this class.  This is useful if you want
     to use the same font or colour in your own control as in a standard
     control -- which is a much better idea than hard coding specific
-    colours or fonts which might look completely out of place on the users
-    system, especially if it uses themes.
+    colours or fonts which might look completely out of place on the
+    user's system, especially if it uses themes.
 
     The variant parameter is only relevant under Mac currently and is
     ignore under other platforms. Under Mac, it will change the size of
-    the returned font. See SetWindowVariant for more about this.
+    the returned font. See `wx.Window.SetWindowVariant` for more about
+    this.
     """
     return _controls_.Notebook_GetClassDefaultAttributes(*args, **kwargs)
 
-class NotebookEvent(BookCtrlEvent):
+class NotebookEvent(BookCtrlBaseEvent):
     def __repr__(self):
         return "<%s.%s; proxy of C++ wxNotebookEvent instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
     def __init__(self, *args, **kwargs):
@@ -3018,7 +3194,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()
@@ -3037,7 +3213,7 @@ LB_BOTTOM = _controls_.LB_BOTTOM
 LB_LEFT = _controls_.LB_LEFT
 LB_RIGHT = _controls_.LB_RIGHT
 LB_ALIGN_MASK = _controls_.LB_ALIGN_MASK
-class Listbook(BookCtrl):
+class Listbook(BookCtrlBase):
     def __repr__(self):
         return "<%s.%s; proxy of C++ wxListbook instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
     def __init__(self, *args, **kwargs):
@@ -3053,8 +3229,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)
 
@@ -3062,6 +3238,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):
@@ -3076,7 +3256,7 @@ def PreListbook(*args, **kwargs):
     val.thisown = 1
     return val
 
-class ListbookEvent(BookCtrlEvent):
+class ListbookEvent(BookCtrlBaseEvent):
     def __repr__(self):
         return "<%s.%s; proxy of C++ wxListbookEvent instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
     def __init__(self, *args, **kwargs):
@@ -3101,13 +3281,87 @@ 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(BookCtrlBase):
+    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(BookCtrlBaseEvent):
+    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):
     def __repr__(self):
         return "<%s.%s; proxy of C++ wxBookCtrlSizer instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
     def __init__(self, *args, **kwargs):
-        """__init__(self, BookCtrl nb) -> BookCtrlSizer"""
+        """__init__(self, BookCtrlBase nb) -> BookCtrlSizer"""
         newobj = _controls_.new_BookCtrlSizer(*args, **kwargs)
         self.this = newobj.this
         self.thisown = 1
@@ -3115,15 +3369,27 @@ 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):
-        """GetControl(self) -> BookCtrl"""
+        """GetControl(self) -> BookCtrlBase"""
         return _controls_.BookCtrlSizer_GetControl(*args, **kwargs)
 
 
@@ -3146,11 +3412,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):
@@ -3165,6 +3443,8 @@ class NotebookSizerPtr(NotebookSizer):
         self.__class__ = NotebookSizer
 _controls_.NotebookSizer_swigregister(NotebookSizerPtr)
 
+NotebookSizer = wx._deprecated(NotebookSizer, "NotebookSizer is no longer needed.") 
+BookCtrlSizer = wx._deprecated(BookCtrlSizer, "BookCtrlSizer is no longer needed.") 
 #---------------------------------------------------------------------------
 
 TOOL_STYLE_BUTTON = _controls_.TOOL_STYLE_BUTTON
@@ -3440,6 +3720,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 = '',
@@ -3640,8 +3921,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)
@@ -3652,8 +3933,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)
@@ -3669,12 +3950,13 @@ class ToolBar(ToolBarBase):
         Get the default attributes for this class.  This is useful if you want
         to use the same font or colour in your own control as in a standard
         control -- which is a much better idea than hard coding specific
-        colours or fonts which might look completely out of place on the users
-        system, especially if it uses themes.
+        colours or fonts which might look completely out of place on the
+        user's system, especially if it uses themes.
 
         The variant parameter is only relevant under Mac currently and is
         ignore under other platforms. Under Mac, it will change the size of
-        the returned font. See SetWindowVariant for more about this.
+        the returned font. See `wx.Window.SetWindowVariant` for more about
+        this.
         """
         return _controls_.ToolBar_GetClassDefaultAttributes(*args, **kwargs)
 
@@ -3700,12 +3982,13 @@ def ToolBar_GetClassDefaultAttributes(*args, **kwargs):
     Get the default attributes for this class.  This is useful if you want
     to use the same font or colour in your own control as in a standard
     control -- which is a much better idea than hard coding specific
-    colours or fonts which might look completely out of place on the users
-    system, especially if it uses themes.
+    colours or fonts which might look completely out of place on the
+    user's system, especially if it uses themes.
 
     The variant parameter is only relevant under Mac currently and is
     ignore under other platforms. Under Mac, it will change the size of
-    the returned font. See SetWindowVariant for more about this.
+    the returned font. See `wx.Window.SetWindowVariant` for more about
+    this.
     """
     return _controls_.ToolBar_GetClassDefaultAttributes(*args, **kwargs)
 
@@ -4121,6 +4404,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):
@@ -4213,7 +4499,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):
@@ -4368,7 +4654,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):
@@ -4496,12 +4787,13 @@ class ListCtrl(_core.Control):
         Get the default attributes for this class.  This is useful if you want
         to use the same font or colour in your own control as in a standard
         control -- which is a much better idea than hard coding specific
-        colours or fonts which might look completely out of place on the users
-        system, especially if it uses themes.
+        colours or fonts which might look completely out of place on the
+        user's system, especially if it uses themes.
 
         The variant parameter is only relevant under Mac currently and is
         ignore under other platforms. Under Mac, it will change the size of
-        the returned font. See SetWindowVariant for more about this.
+        the returned font. See `wx.Window.SetWindowVariant` for more about
+        this.
         """
         return _controls_.ListCtrl_GetClassDefaultAttributes(*args, **kwargs)
 
@@ -4527,12 +4819,13 @@ def ListCtrl_GetClassDefaultAttributes(*args, **kwargs):
     Get the default attributes for this class.  This is useful if you want
     to use the same font or colour in your own control as in a standard
     control -- which is a much better idea than hard coding specific
-    colours or fonts which might look completely out of place on the users
-    system, especially if it uses themes.
+    colours or fonts which might look completely out of place on the
+    user's system, especially if it uses themes.
 
     The variant parameter is only relevant under Mac currently and is
     ignore under other platforms. Under Mac, it will change the size of
-    the returned font. See SetWindowVariant for more about this.
+    the returned font. See `wx.Window.SetWindowVariant` for more about
+    this.
     """
     return _controls_.ListCtrl_GetClassDefaultAttributes(*args, **kwargs)
 
@@ -5164,13 +5457,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
@@ -5178,12 +5486,13 @@ class TreeCtrl(_core.Control):
         Get the default attributes for this class.  This is useful if you want
         to use the same font or colour in your own control as in a standard
         control -- which is a much better idea than hard coding specific
-        colours or fonts which might look completely out of place on the users
-        system, especially if it uses themes.
+        colours or fonts which might look completely out of place on the
+        user's system, especially if it uses themes.
 
         The variant parameter is only relevant under Mac currently and is
         ignore under other platforms. Under Mac, it will change the size of
-        the returned font. See SetWindowVariant for more about this.
+        the returned font. See `wx.Window.SetWindowVariant` for more about
+        this.
         """
         return _controls_.TreeCtrl_GetClassDefaultAttributes(*args, **kwargs)
 
@@ -5209,12 +5518,13 @@ def TreeCtrl_GetClassDefaultAttributes(*args, **kwargs):
     Get the default attributes for this class.  This is useful if you want
     to use the same font or colour in your own control as in a standard
     control -- which is a much better idea than hard coding specific
-    colours or fonts which might look completely out of place on the users
-    system, especially if it uses themes.
+    colours or fonts which might look completely out of place on the
+    user's system, especially if it uses themes.
 
     The variant parameter is only relevant under Mac currently and is
     ignore under other platforms. Under Mac, it will change the size of
-    the returned font. See SetWindowVariant for more about this.
+    the returned font. See `wx.Window.SetWindowVariant` for more about
+    this.
     """
     return _controls_.TreeCtrl_GetClassDefaultAttributes(*args, **kwargs)
 
@@ -5313,7 +5623,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):
@@ -5385,8 +5703,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)
@@ -5399,6 +5717,10 @@ class PyControl(_core.Control):
         """_setCallbackInfo(self, PyObject self, PyObject _class)"""
         return _controls_.PyControl__setCallbackInfo(*args, **kwargs)
 
+    def SetBestSize(*args, **kwargs):
+        """SetBestSize(self, Size size)"""
+        return _controls_.PyControl_SetBestSize(*args, **kwargs)
+
     def base_DoMoveWindow(*args, **kwargs):
         """base_DoMoveWindow(self, int x, int y, int width, int height)"""
         return _controls_.PyControl_base_DoMoveWindow(*args, **kwargs)
@@ -5479,6 +5801,10 @@ class PyControl(_core.Control):
         """base_ApplyParentThemeBackground(self, Colour c)"""
         return _controls_.PyControl_base_ApplyParentThemeBackground(*args, **kwargs)
 
+    def base_GetDefaultAttributes(*args, **kwargs):
+        """base_GetDefaultAttributes(self) -> VisualAttributes"""
+        return _controls_.PyControl_base_GetDefaultAttributes(*args, **kwargs)
+
 
 class PyControlPtr(PyControl):
     def __init__(self, this):