.. wxPython Phoenix documentation

   This file was generated by Phoenix's sphinx generator and associated
   tools, do not edit by hand.

   Copyright: (c) 2011-2020 by Total Control Software
   License:   wxWindows License

.. include:: headings.inc



.. _wx.StdDialogButtonSizer:

==========================================================================================================================================
|phoenix_title|  **wx.StdDialogButtonSizer**
==========================================================================================================================================

This class creates button layouts which conform to the standard button spacing and ordering defined by the platform or toolkit's user interface guidelines (if such things exist).          

By using this class, you can ensure that all your standard dialogs look correct on all major platforms. Currently it conforms to the Windows, GTK+ and macOS human interface guidelines. 

When there aren't interface guidelines defined for a particular platform or toolkit, :ref:`wx.StdDialogButtonSizer`  reverts to the Windows implementation. 

To use this class, first add buttons to the sizer by calling :meth:`wx.StdDialogButtonSizer.AddButton`   (or :meth:`wx.StdDialogButtonSizer.SetAffirmativeButton` , :meth:`wx.StdDialogButtonSizer.SetNegativeButton`   or :meth:`wx.StdDialogButtonSizer.SetCancelButton` ) and then call Realize in order to create the actual button layout used. Other than these special operations, this sizer works like any other sizer. 

If you add a button with ``wx.ID_SAVE``, on macOS the button will be renamed to "Save" and the ``wx.ID_NO`` button will be renamed to "Don't Save" in accordance with the macOS Human Interface Guidelines. 





         



.. seealso:: :ref:`wx.Sizer`, :ref:`Sizers Overview <sizers overview>`, :meth:`wx.Dialog.CreateButtonSizer`     







|

|class_hierarchy| Class Hierarchy
=================================

.. raw:: html

   <div id="toggleBlock" onclick="return toggleVisibility(this)" class="closed" style="cursor:pointer;">
   <img id="toggleBlock-trigger" src="_static/images/closed.png"/>
   Inheritance diagram for class <strong>StdDialogButtonSizer</strong>:
   </div>
   <div id="toggleBlock-summary" style="display:block;"></div>
   <div id="toggleBlock-content" style="display:none;">
   <p class="graphviz">
   <center><img src="_static/images/inheritance/wx.StdDialogButtonSizer_inheritance.png" alt="Inheritance diagram of StdDialogButtonSizer" usemap="#dummy" class="inheritance"/></center>
   <script type="text/javascript">toggleVisibilityOnLoad(document.getElementById('toggleBlock'))</script>
   <map id="dummy" name="dummy"> <area shape="rect" id="node1" href="wx.StdDialogButtonSizer.html" title="wx.StdDialogButtonSizer" alt="" coords="5,237,188,267"/> <area shape="rect" id="node2" href="wx.BoxSizer.html" title="wx.BoxSizer" alt="" coords="45,160,148,189"/> <area shape="rect" id="node3" href="wx.Sizer.html" title="wx.Sizer" alt="" coords="58,83,135,112"/> <area shape="rect" id="node4" href="wx.Object.html" title="wx.Object" alt="" coords="53,5,140,35"/> </map> 
   </p>
   </div>

|


|method_summary| Methods Summary
================================

================================================================================ ================================================================================
:meth:`~wx.StdDialogButtonSizer.__init__`                                        Constructor for a :ref:`wx.StdDialogButtonSizer`.
:meth:`~wx.StdDialogButtonSizer.AddButton`                                       Adds a button to the :ref:`wx.StdDialogButtonSizer`.
:meth:`~wx.StdDialogButtonSizer.CalcMin`                                         Implements the calculation of a box sizer's minimal.
:meth:`~wx.StdDialogButtonSizer.Realize`                                         Rearranges the buttons and applies proper spacing between buttons to make them match the platform or toolkit's interface guidelines.
:meth:`~wx.StdDialogButtonSizer.RepositionChildren`                              Method which must be overridden in the derived sizer classes.
:meth:`~wx.StdDialogButtonSizer.SetAffirmativeButton`                            Sets the affirmative button for the sizer.
:meth:`~wx.StdDialogButtonSizer.SetCancelButton`                                 Sets the cancel button for the sizer.
:meth:`~wx.StdDialogButtonSizer.SetNegativeButton`                               Sets the negative button for the sizer.
================================================================================ ================================================================================


|


|api| Class API
===============


.. class:: wx.StdDialogButtonSizer(BoxSizer)

   **Possible constructors**::

       StdDialogButtonSizer()
       
   
   This class creates button layouts which conform to the standard button
   spacing and ordering defined by the platform or toolkit's user
   interface guidelines (if such things exist).



   .. method:: __init__(self)

      Constructor for a :ref:`wx.StdDialogButtonSizer`.                   





   .. method:: AddButton(self, button)

      Adds a button to the :ref:`wx.StdDialogButtonSizer`.                  

      The `button`  must have one of the following identifiers:

      - ``wx.ID_OK`` 
      - ``wx.ID_YES`` 
      - ``wx.ID_SAVE`` 
      - ``wx.ID_APPLY`` 
      - ``wx.ID_CLOSE`` 
      - ``wx.ID_NO`` 
      - ``wx.ID_CANCEL`` 
      - ``wx.ID_HELP`` 
      - ``wx.ID_CONTEXT_HELP``  


                 


      :param `button`: 
      :type `button`: wx.Button







   .. method:: CalcMin(self)

      Implements the calculation of a box sizer's minimal.                  

      It is used internally only and must not be called by the user. Documented for information.                  

      :rtype: :ref:`wx.Size`








   .. method:: Realize(self)

      Rearranges the buttons and applies proper spacing between buttons to make them match the platform or toolkit's interface guidelines.                   





   .. method:: RepositionChildren(self, minSize)

      Method which must be overridden in the derived sizer classes.                  

      The implementation should reposition the children using the current total size available to the sizer ( ``m_size`` ) and the size computed by the last call to  :meth:`CalcMin` . 

                


      :param `minSize`: 
      :type `minSize`: wx.Size






      .. versionadded:: 4.1/wxWidgets-3.1.3 ,
          before this version RecalcSizes() method not taking any arguments had to be overridden in the derived classes instead.   








   .. method:: SetAffirmativeButton(self, button)

      Sets the affirmative button for the sizer.                  

      This allows you to use identifiers other than the standard identifiers outlined above.                  


      :param `button`: 
      :type `button`: wx.Button







   .. method:: SetCancelButton(self, button)

      Sets the cancel button for the sizer.                  

      This allows you to use identifiers other than the standard identifiers outlined above.                  


      :param `button`: 
      :type `button`: wx.Button







   .. method:: SetNegativeButton(self, button)

      Sets the negative button for the sizer.                  

      This allows you to use identifiers other than the standard identifiers outlined above.                  


      :param `button`: 
      :type `button`: wx.Button






