]> git.saurik.com Git - wxWidgets.git/blobdiff - wxPython/src/msw/_controls.py
reSWIGged
[wxWidgets.git] / wxPython / src / msw / _controls.py
index da43133dbcdd463907e9f7c35559ab737b8fa47e..e79a33ba65c269e881ee27341a85923058e796eb 100644 (file)
@@ -18,37 +18,15 @@ class Button(_core.Control):
     A button is a control that contains a text string, and is one of the most
     common elements of a GUI.  It may be placed on a dialog box or panel, or
     indeed almost any other window.
-
-    Window Styles
-    -------------
-        ==============   ==========================================
-        wx.BU_LEFT       Left-justifies the label. WIN32 only.
-        wx.BU_TOP        Aligns the label to the top of the button.
-                         WIN32 only.
-        wx.BU_RIGHT      Right-justifies the bitmap label. WIN32 only.
-        wx.BU_BOTTOM     Aligns the label to the bottom of the button.
-                         WIN32 only.
-        wx.BU_EXACTFIT   Creates the button as small as possible
-                         instead of making it of the standard size
-                         (which is the default behaviour.)
-        ==============   ==========================================
-
-    Events
-    ------
-        ============     ==========================================
-        EVT_BUTTON       Sent when the button is clicked.
-        ============     ==========================================
-
-    :see: `wx.BitmapButton`
-
     """
     def __repr__(self):
         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.
         """
@@ -60,9 +38,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.
         """
@@ -85,6 +64,24 @@ class Button(_core.Control):
         return _controls_.Button_GetDefaultSize(*args, **kwargs)
 
     GetDefaultSize = staticmethod(GetDefaultSize)
+    def GetClassDefaultAttributes(*args, **kwargs):
+        """
+        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
+        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 `wx.Window.SetWindowVariant` for more about
+        this.
+        """
+        return _controls_.Button_GetClassDefaultAttributes(*args, **kwargs)
+
+    GetClassDefaultAttributes = staticmethod(GetClassDefaultAttributes)
 
 class ButtonPtr(Button):
     def __init__(self, this):
@@ -113,49 +110,37 @@ def Button_GetDefaultSize(*args, **kwargs):
     """
     return _controls_.Button_GetDefaultSize(*args, **kwargs)
 
+def Button_GetClassDefaultAttributes(*args, **kwargs):
+    """
+    Button_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
+    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 `wx.Window.SetWindowVariant` for more about
+    this.
+    """
+    return _controls_.Button_GetClassDefaultAttributes(*args, **kwargs)
+
 class BitmapButton(Button):
     """
     A Button that contains a bitmap.  A bitmap button can be supplied with a
     single bitmap, and wxWidgets will draw all button states using this bitmap. If
     the application needs more control, additional bitmaps for the selected state,
     unpressed focused state, and greyed-out state may be supplied.
-
-    Window Styles
-    -------------
-        ==============  =============================================
-        wx.BU_AUTODRAW  If this is specified, the button will be drawn
-                        automatically using the label bitmap only,
-                        providing a 3D-look border. If this style is
-                        not specified, the button will be drawn
-                        without borders and using all provided
-                        bitmaps. WIN32 only.
-        wx.BU_LEFT      Left-justifies the label. WIN32 only.
-        wx.BU_TOP       Aligns the label to the top of the button. WIN32
-                        only.
-        wx.BU_RIGHT     Right-justifies the bitmap label. WIN32 only.
-        wx.BU_BOTTOM    Aligns the label to the bottom of the
-                        button. WIN32 only.
-        wx.BU_EXACTFIT  Creates the button as small as possible
-                        instead of making it of the standard size
-                        (which is the default behaviour.)
-        ==============  =============================================
-
-    Events
-    ------
-         ===========   ==================================
-         EVT_BUTTON    Sent when the button is clicked.
-         ===========   ==================================
-
-    :see: `wx.Button`, `wx.Bitmap`
-
     """
     def __repr__(self):
         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.
@@ -168,9 +153,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.
@@ -287,39 +272,15 @@ class CheckBox(_core.Control):
     wx.CHK_3STATE style flag is set) it can have a third state, called the
     mixed or undetermined state. Often this is used as a "Does Not
     Apply" state.
-
-    Window Styles
-    -------------
-        =================================  ===============================
-        wx.CHK_2STATE                      Create a 2-state checkbox. 
-                                           This is the default.
-        wx.CHK_3STATE                      Create a 3-state checkbox.
-        wx.CHK_ALLOW_3RD_STATE_FOR_USER    By default a user can't set a
-                                           3-state checkbox to the
-                                           third state. It can only be
-                                           done from code. Using this
-                                           flags allows the user to set
-                                           the checkbox to the third
-                                           state by clicking.
-                                           wx.ALIGN_RIGHT Makes the
-                                           text appear on the left of
-                                           the checkbox.
-        =================================  ===============================
-
-    Events
-    ------
-        ===============================  ===============================
-        EVT_CHECKBOX                     Sent when checkbox is clicked.
-        ===============================  ===============================
-
     """
     def __repr__(self):
         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
         """
@@ -331,9 +292,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.
         """
@@ -406,6 +368,24 @@ class CheckBox(_core.Control):
         """
         return _controls_.CheckBox_Is3rdStateAllowedForUser(*args, **kwargs)
 
+    def GetClassDefaultAttributes(*args, **kwargs):
+        """
+        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
+        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 `wx.Window.SetWindowVariant` for more about
+        this.
+        """
+        return _controls_.CheckBox_GetClassDefaultAttributes(*args, **kwargs)
+
+    GetClassDefaultAttributes = staticmethod(GetClassDefaultAttributes)
 
 class CheckBoxPtr(CheckBox):
     def __init__(self, this):
@@ -425,6 +405,23 @@ def PreCheckBox(*args, **kwargs):
     val.thisown = 1
     return val
 
+def CheckBox_GetClassDefaultAttributes(*args, **kwargs):
+    """
+    CheckBox_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
+    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 `wx.Window.SetWindowVariant` for more about
+    this.
+    """
+    return _controls_.CheckBox_GetClassDefaultAttributes(*args, **kwargs)
+
 #---------------------------------------------------------------------------
 
 class Choice(_core.ControlWithItems):
@@ -432,13 +429,6 @@ class Choice(_core.ControlWithItems):
     A Choice control is used to select one of a list of strings.
     Unlike a `wx.ListBox`, only the selection is visible until the
     user pulls down the menu of choices.
-
-    Events
-    ------
-        ================    ==========================================
-        EVT_CHOICE          Sent when an item in the list is selected.
-        ================    ==========================================
-
     """
     def __repr__(self):
         return "<%s.%s; proxy of C++ wxChoice instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
@@ -461,8 +451,6 @@ 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)
 
@@ -491,6 +479,24 @@ class Choice(_core.ControlWithItems):
         return _controls_.Choice_SetString(*args, **kwargs)
 
     Select = SetSelection 
+    def GetClassDefaultAttributes(*args, **kwargs):
+        """
+        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
+        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 `wx.Window.SetWindowVariant` for more about
+        this.
+        """
+        return _controls_.Choice_GetClassDefaultAttributes(*args, **kwargs)
+
+    GetClassDefaultAttributes = staticmethod(GetClassDefaultAttributes)
 
 class ChoicePtr(Choice):
     def __init__(self, this):
@@ -510,13 +516,33 @@ def PreChoice(*args, **kwargs):
     val.thisown = 1
     return val
 
+def Choice_GetClassDefaultAttributes(*args, **kwargs):
+    """
+    Choice_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
+    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 `wx.Window.SetWindowVariant` for more about
+    this.
+    """
+    return _controls_.Choice_GetClassDefaultAttributes(*args, **kwargs)
+
 #---------------------------------------------------------------------------
 
 class ComboBox(Choice):
     """
-    A combobox is like a combination of an edit control and a listbox. It can be
-    displayed as static list with editable or read-only text field; or a drop-down
-    list with text field.
+    A combobox is like a combination of an edit control and a
+    listbox. It can be displayed as static list with editable or
+    read-only text field; or a drop-down list with text field.
+
+    A combobox permits a single selection only. Combobox items are
+    numbered from zero.
     """
     def __repr__(self):
         return "<%s.%s; proxy of C++ wxComboBox instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
@@ -524,8 +550,8 @@ class ComboBox(Choice):
         """
         __init__(Window parent, int id, String value=EmptyString,
             Point pos=DefaultPosition, Size size=DefaultSize,
-             List choices=[], long style=0, Validator validator=DefaultValidator,
-             String name=ComboBoxNameStr) -> ComboBox
+            List choices=[], long style=0, Validator validator=DefaultValidator,
+            String name=ComboBoxNameStr) -> ComboBox
 
         Constructor, creates and shows a ComboBox control.
         """
@@ -541,8 +567,6 @@ 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)
 
@@ -667,6 +691,24 @@ class ComboBox(Choice):
         """
         return _controls_.ComboBox_Remove(*args, **kwargs)
 
+    def GetClassDefaultAttributes(*args, **kwargs):
+        """
+        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
+        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 `wx.Window.SetWindowVariant` for more about
+        this.
+        """
+        return _controls_.ComboBox_GetClassDefaultAttributes(*args, **kwargs)
+
+    GetClassDefaultAttributes = staticmethod(GetClassDefaultAttributes)
 
 class ComboBoxPtr(ComboBox):
     def __init__(self, this):
@@ -686,6 +728,23 @@ def PreComboBox(*args, **kwargs):
     val.thisown = 1
     return val
 
+def ComboBox_GetClassDefaultAttributes(*args, **kwargs):
+    """
+    ComboBox_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
+    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 `wx.Window.SetWindowVariant` for more about
+    this.
+    """
+    return _controls_.ComboBox_GetClassDefaultAttributes(*args, **kwargs)
+
 #---------------------------------------------------------------------------
 
 GA_HORIZONTAL = _controls_.GA_HORIZONTAL
@@ -697,7 +756,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
@@ -710,7 +769,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
@@ -753,6 +812,24 @@ class Gauge(_core.Control):
         """GetBezelFace(self) -> int"""
         return _controls_.Gauge_GetBezelFace(*args, **kwargs)
 
+    def GetClassDefaultAttributes(*args, **kwargs):
+        """
+        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
+        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 `wx.Window.SetWindowVariant` for more about
+        this.
+        """
+        return _controls_.Gauge_GetClassDefaultAttributes(*args, **kwargs)
+
+    GetClassDefaultAttributes = staticmethod(GetClassDefaultAttributes)
 
 class GaugePtr(Gauge):
     def __init__(self, this):
@@ -768,6 +845,23 @@ def PreGauge(*args, **kwargs):
     val.thisown = 1
     return val
 
+def Gauge_GetClassDefaultAttributes(*args, **kwargs):
+    """
+    Gauge_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
+    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 `wx.Window.SetWindowVariant` for more about
+    this.
+    """
+    return _controls_.Gauge_GetClassDefaultAttributes(*args, **kwargs)
+
 #---------------------------------------------------------------------------
 
 class StaticBox(_core.Control):
@@ -775,9 +869,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
@@ -787,12 +881,30 @@ 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)
 
+    def GetClassDefaultAttributes(*args, **kwargs):
+        """
+        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
+        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 `wx.Window.SetWindowVariant` for more about
+        this.
+        """
+        return _controls_.StaticBox_GetClassDefaultAttributes(*args, **kwargs)
+
+    GetClassDefaultAttributes = staticmethod(GetClassDefaultAttributes)
 
 class StaticBoxPtr(StaticBox):
     def __init__(self, this):
@@ -810,6 +922,23 @@ def PreStaticBox(*args, **kwargs):
     val.thisown = 1
     return val
 
+def StaticBox_GetClassDefaultAttributes(*args, **kwargs):
+    """
+    StaticBox_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
+    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 `wx.Window.SetWindowVariant` for more about
+    this.
+    """
+    return _controls_.StaticBox_GetClassDefaultAttributes(*args, **kwargs)
+
 #---------------------------------------------------------------------------
 
 class StaticLine(_core.Control):
@@ -817,8 +946,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)
@@ -829,8 +958,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)
@@ -844,6 +973,24 @@ class StaticLine(_core.Control):
         return _controls_.StaticLine_GetDefaultSize(*args, **kwargs)
 
     GetDefaultSize = staticmethod(GetDefaultSize)
+    def GetClassDefaultAttributes(*args, **kwargs):
+        """
+        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
+        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 `wx.Window.SetWindowVariant` for more about
+        this.
+        """
+        return _controls_.StaticLine_GetClassDefaultAttributes(*args, **kwargs)
+
+    GetClassDefaultAttributes = staticmethod(GetClassDefaultAttributes)
 
 class StaticLinePtr(StaticLine):
     def __init__(self, this):
@@ -862,6 +1009,23 @@ def StaticLine_GetDefaultSize(*args, **kwargs):
     """StaticLine_GetDefaultSize() -> int"""
     return _controls_.StaticLine_GetDefaultSize(*args, **kwargs)
 
+def StaticLine_GetClassDefaultAttributes(*args, **kwargs):
+    """
+    StaticLine_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
+    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 `wx.Window.SetWindowVariant` for more about
+    this.
+    """
+    return _controls_.StaticLine_GetClassDefaultAttributes(*args, **kwargs)
+
 #---------------------------------------------------------------------------
 
 class StaticText(_core.Control):
@@ -869,9 +1033,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
@@ -881,12 +1045,30 @@ 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)
 
+    def GetClassDefaultAttributes(*args, **kwargs):
+        """
+        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
+        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 `wx.Window.SetWindowVariant` for more about
+        this.
+        """
+        return _controls_.StaticText_GetClassDefaultAttributes(*args, **kwargs)
+
+    GetClassDefaultAttributes = staticmethod(GetClassDefaultAttributes)
 
 class StaticTextPtr(StaticText):
     def __init__(self, this):
@@ -901,6 +1083,23 @@ def PreStaticText(*args, **kwargs):
     val.thisown = 1
     return val
 
+def StaticText_GetClassDefaultAttributes(*args, **kwargs):
+    """
+    StaticText_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
+    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 `wx.Window.SetWindowVariant` for more about
+    this.
+    """
+    return _controls_.StaticText_GetClassDefaultAttributes(*args, **kwargs)
+
 #---------------------------------------------------------------------------
 
 class StaticBitmap(_core.Control):
@@ -908,9 +1107,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
@@ -920,9 +1119,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)
 
@@ -938,6 +1137,24 @@ class StaticBitmap(_core.Control):
         """SetIcon(self, Icon icon)"""
         return _controls_.StaticBitmap_SetIcon(*args, **kwargs)
 
+    def GetClassDefaultAttributes(*args, **kwargs):
+        """
+        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
+        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 `wx.Window.SetWindowVariant` for more about
+        this.
+        """
+        return _controls_.StaticBitmap_GetClassDefaultAttributes(*args, **kwargs)
+
+    GetClassDefaultAttributes = staticmethod(GetClassDefaultAttributes)
 
 class StaticBitmapPtr(StaticBitmap):
     def __init__(self, this):
@@ -952,6 +1169,23 @@ def PreStaticBitmap(*args, **kwargs):
     val.thisown = 1
     return val
 
+def StaticBitmap_GetClassDefaultAttributes(*args, **kwargs):
+    """
+    StaticBitmap_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
+    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 `wx.Window.SetWindowVariant` for more about
+    this.
+    """
+    return _controls_.StaticBitmap_GetClassDefaultAttributes(*args, **kwargs)
+
 #---------------------------------------------------------------------------
 
 class ListBox(_core.ControlWithItems):
@@ -959,8 +1193,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
         """
@@ -972,8 +1206,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
         """
@@ -983,7 +1217,7 @@ class ListBox(_core.ControlWithItems):
         """
         Insert(self, String item, int pos, PyObject clientData=None)
 
-        Insert an item into the control before the item at the pos index,
+        Insert an item into the control before the item at the ``pos`` index,
         optionally associating some data object with the item.
         """
         return _controls_.ListBox_Insert(*args, **kwargs)
@@ -1064,15 +1298,16 @@ class ListBox(_core.ControlWithItems):
         """
         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.
+        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
+        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.
+        ignore under other platforms. Under Mac, it will change the size of
+        the returned font. See `wx.Window.SetWindowVariant` for more about
+        this.
         """
         return _controls_.ListBox_GetClassDefaultAttributes(*args, **kwargs)
 
@@ -1096,15 +1331,16 @@ def ListBox_GetClassDefaultAttributes(*args, **kwargs):
     """
     ListBox_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.
+    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
+    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.
+    ignore under other platforms. Under Mac, it will change the size of
+    the returned font. See `wx.Window.SetWindowVariant` for more about
+    this.
     """
     return _controls_.ListBox_GetClassDefaultAttributes(*args, **kwargs)
 
@@ -1115,8 +1351,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
         """
@@ -1128,8 +1364,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
         """
@@ -1223,13 +1459,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
@@ -1264,7 +1499,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):
@@ -1331,6 +1566,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)
@@ -1366,8 +1605,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
         """
@@ -1379,8 +1618,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
         """
@@ -1427,11 +1666,7 @@ class TextCtrl(_core.Control):
         return _controls_.TextCtrl_IsMultiLine(*args, **kwargs)
 
     def GetSelection(*args, **kwargs):
-        """
-        GetSelection() -> (from, to)
-
-        If the return values from and to are the same, there is no selection.
-        """
+        """GetSelection() -> (from, to)"""
         return _controls_.TextCtrl_GetSelection(*args, **kwargs)
 
     def GetStringSelection(*args, **kwargs):
@@ -1511,13 +1746,7 @@ class TextCtrl(_core.Control):
         return _controls_.TextCtrl_ShowPosition(*args, **kwargs)
 
     def HitTest(*args, **kwargs):
-        """
-        HitTest(Point pt) -> (result, row, col)
-
-        Find the character at position given in pixels.
-        NB: pt is in device coords (not adjusted for the client area
-        origin nor scrolling)
-        """
+        """HitTest(Point pt) -> (result, row, col)"""
         return _controls_.TextCtrl_HitTest(*args, **kwargs)
 
     def Copy(*args, **kwargs):
@@ -1604,6 +1833,24 @@ class TextCtrl(_core.Control):
         """GetString(self, long from, long to) -> String"""
         return _controls_.TextCtrl_GetString(*args, **kwargs)
 
+    def GetClassDefaultAttributes(*args, **kwargs):
+        """
+        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
+        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 `wx.Window.SetWindowVariant` for more about
+        this.
+        """
+        return _controls_.TextCtrl_GetClassDefaultAttributes(*args, **kwargs)
+
+    GetClassDefaultAttributes = staticmethod(GetClassDefaultAttributes)
 
 class TextCtrlPtr(TextCtrl):
     def __init__(self, this):
@@ -1618,6 +1865,23 @@ def PreTextCtrl(*args, **kwargs):
     val.thisown = 1
     return val
 
+def TextCtrl_GetClassDefaultAttributes(*args, **kwargs):
+    """
+    TextCtrl_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
+    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 `wx.Window.SetWindowVariant` for more about
+    this.
+    """
+    return _controls_.TextCtrl_GetClassDefaultAttributes(*args, **kwargs)
+
 wxEVT_COMMAND_TEXT_UPDATED = _controls_.wxEVT_COMMAND_TEXT_UPDATED
 wxEVT_COMMAND_TEXT_ENTER = _controls_.wxEVT_COMMAND_TEXT_ENTER
 wxEVT_COMMAND_TEXT_URL = _controls_.wxEVT_COMMAND_TEXT_URL
@@ -1714,21 +1978,27 @@ class ScrollBar(_core.Control):
             bool refresh=True)
 
         Sets the scrollbar properties of a built-in scrollbar.
+        """
+        return _controls_.ScrollBar_SetScrollbar(*args, **kwargs)
 
-            orientation: Determines the scrollbar whose page size is to be
-                         set. May be wx.HORIZONTAL or wx.VERTICAL.
-
-            position:    The position of the scrollbar in scroll units.
-
-            thumbSize:   The size of the thumb, or visible portion of the
-                         scrollbar, in scroll units.
+    def GetClassDefaultAttributes(*args, **kwargs):
+        """
+        GetClassDefaultAttributes(int variant=WINDOW_VARIANT_NORMAL) -> VisualAttributes
 
-            range:       The maximum position of the scrollbar.
+        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
+        user's system, especially if it uses themes.
 
-            refresh:     True to redraw the scrollbar, false otherwise.
+        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 `wx.Window.SetWindowVariant` for more about
+        this.
         """
-        return _controls_.ScrollBar_SetScrollbar(*args, **kwargs)
+        return _controls_.ScrollBar_GetClassDefaultAttributes(*args, **kwargs)
 
+    GetClassDefaultAttributes = staticmethod(GetClassDefaultAttributes)
 
 class ScrollBarPtr(ScrollBar):
     def __init__(self, this):
@@ -1744,6 +2014,23 @@ def PreScrollBar(*args, **kwargs):
     val.thisown = 1
     return val
 
+def ScrollBar_GetClassDefaultAttributes(*args, **kwargs):
+    """
+    ScrollBar_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
+    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 `wx.Window.SetWindowVariant` for more about
+    this.
+    """
+    return _controls_.ScrollBar_GetClassDefaultAttributes(*args, **kwargs)
+
 #---------------------------------------------------------------------------
 
 SP_HORIZONTAL = _controls_.SP_HORIZONTAL
@@ -1805,6 +2092,24 @@ class SpinButton(_core.Control):
         """IsVertical(self) -> bool"""
         return _controls_.SpinButton_IsVertical(*args, **kwargs)
 
+    def GetClassDefaultAttributes(*args, **kwargs):
+        """
+        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
+        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 `wx.Window.SetWindowVariant` for more about
+        this.
+        """
+        return _controls_.SpinButton_GetClassDefaultAttributes(*args, **kwargs)
+
+    GetClassDefaultAttributes = staticmethod(GetClassDefaultAttributes)
 
 class SpinButtonPtr(SpinButton):
     def __init__(self, this):
@@ -1821,6 +2126,23 @@ def PreSpinButton(*args, **kwargs):
     val.thisown = 1
     return val
 
+def SpinButton_GetClassDefaultAttributes(*args, **kwargs):
+    """
+    SpinButton_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
+    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 `wx.Window.SetWindowVariant` for more about
+    this.
+    """
+    return _controls_.SpinButton_GetClassDefaultAttributes(*args, **kwargs)
+
 class SpinCtrl(_core.Control):
     def __repr__(self):
         return "<%s.%s; proxy of C++ wxSpinCtrl instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
@@ -1874,6 +2196,24 @@ class SpinCtrl(_core.Control):
         """SetSelection(self, long from, long to)"""
         return _controls_.SpinCtrl_SetSelection(*args, **kwargs)
 
+    def GetClassDefaultAttributes(*args, **kwargs):
+        """
+        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
+        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 `wx.Window.SetWindowVariant` for more about
+        this.
+        """
+        return _controls_.SpinCtrl_GetClassDefaultAttributes(*args, **kwargs)
+
+    GetClassDefaultAttributes = staticmethod(GetClassDefaultAttributes)
 
 class SpinCtrlPtr(SpinCtrl):
     def __init__(self, this):
@@ -1888,6 +2228,23 @@ def PreSpinCtrl(*args, **kwargs):
     val.thisown = 1
     return val
 
+def SpinCtrl_GetClassDefaultAttributes(*args, **kwargs):
+    """
+    SpinCtrl_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
+    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 `wx.Window.SetWindowVariant` for more about
+    this.
+    """
+    return _controls_.SpinCtrl_GetClassDefaultAttributes(*args, **kwargs)
+
 class SpinEvent(_core.NotifyEvent):
     def __repr__(self):
         return "<%s.%s; proxy of C++ wxSpinEvent instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
@@ -1926,10 +2283,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']
@@ -1941,10 +2299,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)
@@ -2003,6 +2362,24 @@ class RadioBox(_core.Control):
         """GetNextItem(self, int item, int dir, long style) -> int"""
         return _controls_.RadioBox_GetNextItem(*args, **kwargs)
 
+    def GetClassDefaultAttributes(*args, **kwargs):
+        """
+        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
+        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 `wx.Window.SetWindowVariant` for more about
+        this.
+        """
+        return _controls_.RadioBox_GetClassDefaultAttributes(*args, **kwargs)
+
+    GetClassDefaultAttributes = staticmethod(GetClassDefaultAttributes)
 
 class RadioBoxPtr(RadioBox):
     def __init__(self, this):
@@ -2019,6 +2396,23 @@ def PreRadioBox(*args, **kwargs):
     val.thisown = 1
     return val
 
+def RadioBox_GetClassDefaultAttributes(*args, **kwargs):
+    """
+    RadioBox_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
+    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 `wx.Window.SetWindowVariant` for more about
+    this.
+    """
+    return _controls_.RadioBox_GetClassDefaultAttributes(*args, **kwargs)
+
 #---------------------------------------------------------------------------
 
 class RadioButton(_core.Control):
@@ -2026,9 +2420,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
@@ -2038,9 +2433,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)
 
@@ -2052,6 +2448,24 @@ class RadioButton(_core.Control):
         """SetValue(self, bool value)"""
         return _controls_.RadioButton_SetValue(*args, **kwargs)
 
+    def GetClassDefaultAttributes(*args, **kwargs):
+        """
+        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
+        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 `wx.Window.SetWindowVariant` for more about
+        this.
+        """
+        return _controls_.RadioButton_GetClassDefaultAttributes(*args, **kwargs)
+
+    GetClassDefaultAttributes = staticmethod(GetClassDefaultAttributes)
 
 class RadioButtonPtr(RadioButton):
     def __init__(self, this):
@@ -2066,6 +2480,23 @@ def PreRadioButton(*args, **kwargs):
     val.thisown = 1
     return val
 
+def RadioButton_GetClassDefaultAttributes(*args, **kwargs):
+    """
+    RadioButton_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
+    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 `wx.Window.SetWindowVariant` for more about
+    this.
+    """
+    return _controls_.RadioButton_GetClassDefaultAttributes(*args, **kwargs)
+
 #---------------------------------------------------------------------------
 
 class Slider(_core.Control):
@@ -2073,9 +2504,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']
@@ -2087,9 +2519,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)
@@ -2178,6 +2611,24 @@ class Slider(_core.Control):
         """SetSelection(self, int min, int max)"""
         return _controls_.Slider_SetSelection(*args, **kwargs)
 
+    def GetClassDefaultAttributes(*args, **kwargs):
+        """
+        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
+        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 `wx.Window.SetWindowVariant` for more about
+        this.
+        """
+        return _controls_.Slider_GetClassDefaultAttributes(*args, **kwargs)
+
+    GetClassDefaultAttributes = staticmethod(GetClassDefaultAttributes)
 
 class SliderPtr(Slider):
     def __init__(self, this):
@@ -2193,6 +2644,23 @@ def PreSlider(*args, **kwargs):
     val.thisown = 1
     return val
 
+def Slider_GetClassDefaultAttributes(*args, **kwargs):
+    """
+    Slider_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
+    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 `wx.Window.SetWindowVariant` for more about
+    this.
+    """
+    return _controls_.Slider_GetClassDefaultAttributes(*args, **kwargs)
+
 #---------------------------------------------------------------------------
 
 wxEVT_COMMAND_TOGGLEBUTTON_CLICKED = _controls_.wxEVT_COMMAND_TOGGLEBUTTON_CLICKED
@@ -2203,9 +2671,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
@@ -2215,9 +2684,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)
 
@@ -2237,6 +2707,24 @@ class ToggleButton(_core.Control):
         """
         return _controls_.ToggleButton_SetLabel(*args, **kwargs)
 
+    def GetClassDefaultAttributes(*args, **kwargs):
+        """
+        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
+        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 `wx.Window.SetWindowVariant` for more about
+        this.
+        """
+        return _controls_.ToggleButton_GetClassDefaultAttributes(*args, **kwargs)
+
+    GetClassDefaultAttributes = staticmethod(GetClassDefaultAttributes)
 
 class ToggleButtonPtr(ToggleButton):
     def __init__(self, this):
@@ -2252,6 +2740,23 @@ def PreToggleButton(*args, **kwargs):
     val.thisown = 1
     return val
 
+def ToggleButton_GetClassDefaultAttributes(*args, **kwargs):
+    """
+    ToggleButton_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
+    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 `wx.Window.SetWindowVariant` for more about
+    this.
+    """
+    return _controls_.ToggleButton_GetClassDefaultAttributes(*args, **kwargs)
+
 #---------------------------------------------------------------------------
 
 class BookCtrl(_core.Control):
@@ -2337,6 +2842,24 @@ class BookCtrl(_core.Control):
         """AdvanceSelection(self, bool forward=True)"""
         return _controls_.BookCtrl_AdvanceSelection(*args, **kwargs)
 
+    def GetClassDefaultAttributes(*args, **kwargs):
+        """
+        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
+        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 `wx.Window.SetWindowVariant` for more about
+        this.
+        """
+        return _controls_.BookCtrl_GetClassDefaultAttributes(*args, **kwargs)
+
+    GetClassDefaultAttributes = staticmethod(GetClassDefaultAttributes)
 
 class BookCtrlPtr(BookCtrl):
     def __init__(self, this):
@@ -2346,6 +2869,23 @@ class BookCtrlPtr(BookCtrl):
 _controls_.BookCtrl_swigregister(BookCtrlPtr)
 NOTEBOOK_NAME = cvar.NOTEBOOK_NAME
 
+def BookCtrl_GetClassDefaultAttributes(*args, **kwargs):
+    """
+    BookCtrl_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
+    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 `wx.Window.SetWindowVariant` for more about
+    this.
+    """
+    return _controls_.BookCtrl_GetClassDefaultAttributes(*args, **kwargs)
+
 class BookCtrlEvent(_core.NotifyEvent):
     def __repr__(self):
         return "<%s.%s; proxy of C++ wxBookCtrlEvent instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
@@ -2410,8 +2950,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)
 
@@ -2428,11 +2968,7 @@ class Notebook(BookCtrl):
         return _controls_.Notebook_SetTabSize(*args, **kwargs)
 
     def HitTest(*args, **kwargs):
-        """
-        HitTest(Point pt) -> (tab, where)
-
-        Returns the tab which is hit, and flags indicating where using wx.NB_HITTEST_ flags.
-        """
+        """HitTest(Point pt) -> (tab, where)"""
         return _controls_.Notebook_HitTest(*args, **kwargs)
 
     def CalcSizeFromPage(*args, **kwargs):
@@ -2443,6 +2979,24 @@ class Notebook(BookCtrl):
         """ApplyThemeBackground(self, Window window, Colour colour)"""
         return _controls_.Notebook_ApplyThemeBackground(*args, **kwargs)
 
+    def GetClassDefaultAttributes(*args, **kwargs):
+        """
+        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
+        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 `wx.Window.SetWindowVariant` for more about
+        this.
+        """
+        return _controls_.Notebook_GetClassDefaultAttributes(*args, **kwargs)
+
+    GetClassDefaultAttributes = staticmethod(GetClassDefaultAttributes)
 
 class NotebookPtr(Notebook):
     def __init__(self, this):
@@ -2457,6 +3011,23 @@ def PreNotebook(*args, **kwargs):
     val.thisown = 1
     return val
 
+def Notebook_GetClassDefaultAttributes(*args, **kwargs):
+    """
+    Notebook_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
+    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 `wx.Window.SetWindowVariant` for more about
+    this.
+    """
+    return _controls_.Notebook_GetClassDefaultAttributes(*args, **kwargs)
+
 class NotebookEvent(BookCtrlEvent):
     def __repr__(self):
         return "<%s.%s; proxy of C++ wxNotebookEvent instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
@@ -2537,8 +3108,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)
 
@@ -2599,11 +3170,23 @@ class BookCtrlSizer(_core.Sizer):
         self._setOORInfo(self)
 
     def RecalcSizes(*args, **kwargs):
-        """RecalcSizes(self)"""
+        """
+        RecalcSizes(self)
+
+        Using the sizes calculated by `CalcMin` reposition and resize all the
+        items managed by this sizer.  You should not need to call this directly as
+        it is called by `Layout`.
+        """
         return _controls_.BookCtrlSizer_RecalcSizes(*args, **kwargs)
 
     def CalcMin(*args, **kwargs):
-        """CalcMin(self) -> Size"""
+        """
+        CalcMin(self) -> Size
+
+        This method is where the sizer will do the actual calculation of its
+        children's minimal sizes.  You should not need to call this directly as
+        it is called by `Layout`.
+        """
         return _controls_.BookCtrlSizer_CalcMin(*args, **kwargs)
 
     def GetControl(*args, **kwargs):
@@ -2630,11 +3213,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):
@@ -2924,6 +3519,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 = '',
@@ -3124,8 +3720,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)
@@ -3136,8 +3732,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)
@@ -3146,6 +3742,24 @@ class ToolBar(ToolBarBase):
         """FindToolForPosition(self, int x, int y) -> ToolBarToolBase"""
         return _controls_.ToolBar_FindToolForPosition(*args, **kwargs)
 
+    def GetClassDefaultAttributes(*args, **kwargs):
+        """
+        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
+        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 `wx.Window.SetWindowVariant` for more about
+        this.
+        """
+        return _controls_.ToolBar_GetClassDefaultAttributes(*args, **kwargs)
+
+    GetClassDefaultAttributes = staticmethod(GetClassDefaultAttributes)
 
 class ToolBarPtr(ToolBar):
     def __init__(self, this):
@@ -3160,6 +3774,23 @@ def PreToolBar(*args, **kwargs):
     val.thisown = 1
     return val
 
+def ToolBar_GetClassDefaultAttributes(*args, **kwargs):
+    """
+    ToolBar_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
+    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 `wx.Window.SetWindowVariant` for more about
+    this.
+    """
+    return _controls_.ToolBar_GetClassDefaultAttributes(*args, **kwargs)
+
 #---------------------------------------------------------------------------
 
 LC_VRULES = _controls_.LC_VRULES
@@ -3731,10 +4362,10 @@ class ListCtrl(_core.Control):
         """
         SetWindowStyleFlag(self, long style)
 
-        Sets the style of the window. Please note that some styles cannot
-        be changed after the window creation and that Refresh() might
-        need to be called after changing the others for the change to
-        take place immediately.
+        Sets the style of the window. Please note that some styles cannot be
+        changed after the window creation and that Refresh() might need to be
+        called after changing the others for the change to take place
+        immediately.
         """
         return _controls_.ListCtrl_SetWindowStyleFlag(*args, **kwargs)
 
@@ -3819,12 +4450,7 @@ class ListCtrl(_core.Control):
         return _controls_.ListCtrl_FindItemAtPos(*args, **kwargs)
 
     def HitTest(*args, **kwargs):
-        """
-        HitTest(Point point) -> (item, where)
-
-        Determines which item (if any) is at the specified point,
-        giving details in the second return value (see wxLIST_HITTEST_... flags.)
-        """
+        """HitTest(Point point) -> (item, where)"""
         return _controls_.ListCtrl_HitTest(*args, **kwargs)
 
     def InsertItem(*args, **kwargs):
@@ -3949,15 +4575,16 @@ class ListCtrl(_core.Control):
         """
         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.
+        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
+        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.
+        ignore under other platforms. Under Mac, it will change the size of
+        the returned font. See `wx.Window.SetWindowVariant` for more about
+        this.
         """
         return _controls_.ListCtrl_GetClassDefaultAttributes(*args, **kwargs)
 
@@ -3980,15 +4607,16 @@ def ListCtrl_GetClassDefaultAttributes(*args, **kwargs):
     """
     ListCtrl_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.
+    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
+    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.
+    ignore under other platforms. Under Mac, it will change the size of
+    the returned font. See `wx.Window.SetWindowVariant` for more about
+    this.
     """
     return _controls_.ListCtrl_GetClassDefaultAttributes(*args, **kwargs)
 
@@ -4620,15 +5248,7 @@ class TreeCtrl(_core.Control):
         return _controls_.TreeCtrl_SortChildren(*args, **kwargs)
 
     def HitTest(*args, **kwargs):
-        """
-        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.
-
-        """
+        """HitTest(Point point) -> (item, where)"""
         return _controls_.TreeCtrl_HitTest(*args, **kwargs)
 
     def GetBoundingRect(*args, **kwargs):
@@ -4639,15 +5259,16 @@ class TreeCtrl(_core.Control):
         """
         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.
+        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
+        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.
+        ignore under other platforms. Under Mac, it will change the size of
+        the returned font. See `wx.Window.SetWindowVariant` for more about
+        this.
         """
         return _controls_.TreeCtrl_GetClassDefaultAttributes(*args, **kwargs)
 
@@ -4670,15 +5291,16 @@ def TreeCtrl_GetClassDefaultAttributes(*args, **kwargs):
     """
     TreeCtrl_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.
+    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
+    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.
+    ignore under other platforms. Under Mac, it will change the size of
+    the returned font. See `wx.Window.SetWindowVariant` for more about
+    this.
     """
     return _controls_.TreeCtrl_GetClassDefaultAttributes(*args, **kwargs)
 
@@ -4777,14 +5399,7 @@ class GenericDirCtrl(_core.Control):
         return _controls_.GenericDirCtrl_GetFilterListCtrl(*args, **kwargs)
 
     def FindChild(*args, **kwargs):
-        """
-        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
-
-        """
+        """FindChild(wxTreeItemId parentId, wxString path) -> (item, done)"""
         return _controls_.GenericDirCtrl_FindChild(*args, **kwargs)
 
     def DoResize(*args, **kwargs):
@@ -4856,8 +5471,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)
@@ -4870,6 +5485,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)
@@ -4950,6 +5569,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):
@@ -4977,29 +5600,21 @@ EVT_DETAILED_HELP_RANGE = wx.PyEventBinder( wxEVT_DETAILED_HELP, 2)
 
 class HelpEvent(_core.CommandEvent):
     """
-    A help event is sent when the user has requested
-    context-sensitive help. This can either be caused by the
-    application requesting context-sensitive help mode via
-    wx.ContextHelp, or (on MS Windows) by the system generating a
-    WM_HELP message when the user pressed F1 or clicked on the query
-    button in a dialog caption.
-
-    A help event is sent to the window that the user clicked on, and
-    is propagated up the window hierarchy until the event is
-    processed or there are no more event handlers. The application
-    should call event.GetId to check the identity of the clicked-on
-    window, and then either show some suitable help or call
-    event.Skip if the identifier is unrecognised. Calling Skip is
-    important because it allows wxWindows to generate further events
-    for ancestors of the clicked-on window. Otherwise it would be
-    impossible to show help for container windows, since processing
-    would stop after the first window found.
-
-     Events
-        EVT_HELP            Sent when the user has requested context-
-                            sensitive help.
-        EVT_HELP_RANGE      Allows to catch EVT_HELP for a range of IDs
-
+    A help event is sent when the user has requested context-sensitive
+    help. This can either be caused by the application requesting
+    context-sensitive help mode via wx.ContextHelp, or (on MS Windows) by
+    the system generating a WM_HELP message when the user pressed F1 or
+    clicked on the query button in a dialog caption.
+
+    A help event is sent to the window that the user clicked on, and is
+    propagated up the window hierarchy until the event is processed or
+    there are no more event handlers. The application should call
+    event.GetId to check the identity of the clicked-on window, and then
+    either show some suitable help or call event.Skip if the identifier is
+    unrecognised. Calling Skip is important because it allows wxWindows to
+    generate further events for ancestors of the clicked-on
+    window. Otherwise it would be impossible to show help for container
+    windows, since processing would stop after the first window found.
     """
     def __repr__(self):
         return "<%s.%s; proxy of C++ wxHelpEvent instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
@@ -5069,25 +5684,26 @@ _controls_.HelpEvent_swigregister(HelpEventPtr)
 
 class ContextHelp(_core.Object):
     """
-    This class changes the cursor to a query and puts the application
-    into a 'context-sensitive help mode'. When the user left-clicks
-    on a window within the specified window, a EVT_HELP event is sent
-    to that control, and the application may respond to it by popping
-    up some help.
+    This class changes the cursor to a query and puts the application into
+    a 'context-sensitive help mode'. When the user left-clicks on a window
+    within the specified window, a ``EVT_HELP`` event is sent to that
+    control, and the application may respond to it by popping up some
+    help.
 
     There are a couple of ways to invoke this behaviour implicitly:
 
-        * Use the wx.DIALOG_EX_CONTEXTHELP extended style for a
-          dialog (Windows only). This will put a question mark in the
-          titlebar, and Windows will put the application into
-          context-sensitive help mode automatically, with further
-          programming.
+        * Use the wx.DIALOG_EX_CONTEXTHELP extended style for a dialog
+          (Windows only). This will put a question mark in the titlebar,
+          and Windows will put the application into context-sensitive help
+          mode automatically, with further programming.
+
+        * Create a `wx.ContextHelpButton`, whose predefined behaviour is
+          to create a context help object. Normally you will write your
+          application so that this button is only added to a dialog for
+          non-Windows platforms (use ``wx.DIALOG_EX_CONTEXTHELP`` on
+          Windows).
 
-        * Create a wx.ContextHelpButton, whose predefined behaviour
-          is to create a context help object. Normally you will write
-          your application so that this button is only added to a
-          dialog for non-Windows platforms (use
-          wx.DIALOG_EX_CONTEXTHELP on Windows).
+    :see: `wx.ContextHelpButton`
 
     """
     def __repr__(self):
@@ -5096,8 +5712,8 @@ class ContextHelp(_core.Object):
         """
         __init__(self, Window window=None, bool doNow=True) -> ContextHelp
 
-        Constructs a context help object, calling BeginContextHelp if
-        doNow is true (the default).
+        Constructs a context help object, calling BeginContextHelp if doNow is
+        true (the default).
 
         If window is None, the top window is used.
         """
@@ -5115,13 +5731,13 @@ class ContextHelp(_core.Object):
         """
         BeginContextHelp(self, Window window=None) -> bool
 
-        Puts the application into context-sensitive help mode. window is
-        the window which will be used to catch events; if NULL, the top
-        window will be used.
+        Puts the application into context-sensitive help mode. window is the
+        window which will be used to catch events; if NULL, the top window
+        will be used.
 
         Returns true if the application was successfully put into
-        context-sensitive help mode. This function only returns when the
-        event loop has finished.
+        context-sensitive help mode. This function only returns when the event
+        loop has finished.
         """
         return _controls_.ContextHelp_BeginContextHelp(*args, **kwargs)
 
@@ -5144,16 +5760,17 @@ _controls_.ContextHelp_swigregister(ContextHelpPtr)
 
 class ContextHelpButton(BitmapButton):
     """
-    Instances of this class may be used to add a question mark button
-    that when pressed, puts the application into context-help
-    mode. It does this by creating a wx.ContextHelp object which
-    itself generates a EVT_HELP event when the user clicks on a
-    window.
+    Instances of this class may be used to add a question mark button that
+    when pressed, puts the application into context-help mode. It does
+    this by creating a wx.ContextHelp object which itself generates a
+    ``EVT_HELP`` event when the user clicks on a window.
 
-    On Windows, you may add a question-mark icon to a dialog by use
-    of the wx.DIALOG_EX_CONTEXTHELP extra style, but on other
-    platforms you will have to add a button explicitly, usually next
-    to OK, Cancel or similar buttons.
+    On Windows, you may add a question-mark icon to a dialog by use of the
+    ``wx.DIALOG_EX_CONTEXTHELP`` extra style, but on other platforms you
+    will have to add a button explicitly, usually next to OK, Cancel or
+    similar buttons.
+
+    :see: `wx.ContextHelp`, `wx.ContextHelpButton`
 
     """
     def __repr__(self):
@@ -5195,10 +5812,9 @@ class HelpProvider(object):
         """
         Set(HelpProvider helpProvider) -> HelpProvider
 
-        Sset the current, application-wide help provider. Returns the
-        previous one.  Unlike some other classes, the help provider is
-        not created on demand. This must be explicitly done by the
-        application.
+        Sset the current, application-wide help provider. Returns the previous
+        one.  Unlike some other classes, the help provider is not created on
+        demand. This must be explicitly done by the application.
         """
         return _controls_.HelpProvider_Set(*args, **kwargs)
 
@@ -5216,9 +5832,9 @@ class HelpProvider(object):
         """
         GetHelp(self, Window window) -> String
 
-        Gets the help string for this window. Its interpretation is
-        dependent on the help provider except that empty string always
-        means that no help is associated with the window.
+        Gets the help string for this window. Its interpretation is dependent
+        on the help provider except that empty string always means that no
+        help is associated with the window.
         """
         return _controls_.HelpProvider_GetHelp(*args, **kwargs)
 
@@ -5227,10 +5843,8 @@ class HelpProvider(object):
         ShowHelp(self, Window window) -> bool
 
         Shows help for the given window. Uses GetHelp internally if
-        applicable.
-
-        Returns true if it was done, or false if no help was available
-        for this window.
+        applicable. Returns True if it was done, or False if no help was
+        available for this window.
         """
         return _controls_.HelpProvider_ShowHelp(*args, **kwargs)
 
@@ -5247,8 +5861,8 @@ class HelpProvider(object):
         AddHelpById(self, int id, String text)
 
         This version associates the given text with all windows with this
-        id. May be used to set the same help string for all Cancel
-        buttons in the application, for example.
+        id. May be used to set the same help string for all Cancel buttons in
+        the application, for example.
         """
         return _controls_.HelpProvider_AddHelpById(*args, **kwargs)
 
@@ -5257,9 +5871,9 @@ class HelpProvider(object):
         RemoveHelp(self, Window window)
 
         Removes the association between the window pointer and the help
-        text. This is called by the wx.Window destructor. Without this,
-        the table of help strings will fill up and when window pointers
-        are reused, the wrong help string will be found.
+        text. This is called by the wx.Window destructor. Without this, the
+        table of help strings will fill up and when window pointers are
+        reused, the wrong help string will be found.
         """
         return _controls_.HelpProvider_RemoveHelp(*args, **kwargs)
 
@@ -5279,10 +5893,9 @@ def HelpProvider_Set(*args, **kwargs):
     """
     HelpProvider_Set(HelpProvider helpProvider) -> HelpProvider
 
-    Sset the current, application-wide help provider. Returns the
-    previous one.  Unlike some other classes, the help provider is
-    not created on demand. This must be explicitly done by the
-    application.
+    Sset the current, application-wide help provider. Returns the previous
+    one.  Unlike some other classes, the help provider is not created on
+    demand. This must be explicitly done by the application.
     """
     return _controls_.HelpProvider_Set(*args, **kwargs)
 
@@ -5296,9 +5909,9 @@ def HelpProvider_Get(*args, **kwargs):
 
 class SimpleHelpProvider(HelpProvider):
     """
-    wx.SimpleHelpProvider is an implementation of wx.HelpProvider
-    which supports only plain text help strings, and shows the string
-    associated with the control (if any) in a tooltip.
+    wx.SimpleHelpProvider is an implementation of `wx.HelpProvider` which
+    supports only plain text help strings, and shows the string associated
+    with the control (if any) in a tooltip.
     """
     def __repr__(self):
         return "<%s.%s; proxy of C++ wxSimpleHelpProvider instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this,)
@@ -5306,9 +5919,9 @@ class SimpleHelpProvider(HelpProvider):
         """
         __init__(self) -> SimpleHelpProvider
 
-        wx.SimpleHelpProvider is an implementation of wx.HelpProvider
-        which supports only plain text help strings, and shows the string
-        associated with the control (if any) in a tooltip.
+        wx.SimpleHelpProvider is an implementation of `wx.HelpProvider` which
+        supports only plain text help strings, and shows the string associated
+        with the control (if any) in a tooltip.
         """
         newobj = _controls_.new_SimpleHelpProvider(*args, **kwargs)
         self.this = newobj.this