.. 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.DirDialog:

==========================================================================================================================================
|phoenix_title|  **wx.DirDialog**
==========================================================================================================================================

This class represents the directory chooser dialog.          





.. _DirDialog-styles:

|styles| Window Styles
================================

This class supports the following styles: 

  

- ``wx.DD_DEFAULT_STYLE``: Equivalent to a combination of ``wx.DEFAULT_DIALOG_STYLE`` and ``wx.RESIZE_BORDER``.  
- ``wx.DD_DIR_MUST_EXIST``: The dialog will allow the user to choose only an existing folder. When this style is not given, a "Create new directory" button is added to the dialog (on Windows) or some other way is provided to the user to type the name of a new folder.  
- ``wx.DD_CHANGE_DIR``: Change the current working directory to the directory chosen by the user. 

  .. note:: 

   This flag cannot be used with the  ``DD_MULTIPLE``   style.    


-   ``wx.DD_MULTIPLE``: Allow the user to select multiple directories. This flag is only available since wxWidgets 3.1.4  
-   ``wx.DD_SHOW_HIDDEN``: Show hidden and system folders. This flag is only available since wxWidgets 3.1.4  

Notice that
 ``RESIZE_BORDER``   has special side effect under Windows where two different directory selection dialogs are available and this style also implicitly selects the new version as the old one always has fixed size. As the new version is almost always preferable, it is recommended that   ``RESIZE_BORDER``   style be always used. This is the case if the dialog is created with the default style value but if you need to use any additional styles you should still specify   ``DD_DEFAULT_STYLE``   unless you explicitly need to use the old dialog version under Windows. E.g. do  ::

            dlg = wx.DirDialog (None, "Choose input directory", "",
                                wx.DD_DEFAULT_STYLE | wx.DD_DIR_MUST_EXIST)

instead of just using  ``DD_DIR_MUST_EXIST``   style alone. 







         



.. note:: 

   MacOS 10.11+ does not display a title bar on the dialog. Use :meth:`SetMessage`   to change the string displayed to the user at the top of the dialog after creation. The :meth:`SetTitle`   method is provided for compatibility with pre-10.11 MacOS versions that do still support displaying the title bar.  







.. seealso:: :ref:`DirDialog Overview <dirdialog overview>`, :ref:`wx.FileDialog`    







|

|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>DirDialog</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.DirDialog_inheritance.png" alt="Inheritance diagram of DirDialog" 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.DirDialog.html" title="wx.DirDialog" alt="" coords="55,469,162,499"/> <area shape="rect" id="node2" href="wx.Dialog.html" title="wx.Dialog" alt="" coords="65,392,152,421"/> <area shape="rect" id="node3" href="wx.TopLevelWindow.html" title="wx.TopLevelWindow" alt="" coords="31,315,186,344"/> <area shape="rect" id="node4" href="wx.NonOwnedWindow.html" title="wx.NonOwnedWindow" alt="" coords="25,237,193,267"/> <area shape="rect" id="node5" href="wx.Window.html" title="wx.Window" alt="" coords="60,160,157,189"/> <area shape="rect" id="node6" href="wx.EvtHandler.html" title="wx.EvtHandler" alt="" coords="50,83,167,112"/> <area shape="rect" id="node7" href="wx.Object.html" title="wx.Object" alt="" coords="5,5,92,35"/> <area shape="rect" id="node8" href="wx.Trackable.html" title="wx.Trackable" alt="" coords="117,5,223,35"/> </map> 
   </p>
   </div>

|


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

================================================================================ ================================================================================
:meth:`~wx.DirDialog.__init__`                                                   Constructor.
:meth:`~wx.DirDialog.GetClassDefaultAttributes`                                  
:meth:`~wx.DirDialog.GetMessage`                                                 Returns the message that will be displayed on the dialog.
:meth:`~wx.DirDialog.GetPath`                                                    Returns the default or user-selected path.
:meth:`~wx.DirDialog.GetPaths`                                                   Fills the array `paths`  with the full paths of the chosen directories.
:meth:`~wx.DirDialog.SetMessage`                                                 Sets the message that will be displayed on the dialog.
:meth:`~wx.DirDialog.SetPath`                                                    Sets the default path.
:meth:`~wx.DirDialog.ShowModal`                                                  Shows the dialog, returning ``wx.ID_OK`` if the user pressed ``wx.OK``, and ``wx.ID_CANCEL`` otherwise.
================================================================================ ================================================================================


|


|property_summary| Properties Summary
=====================================

================================================================================ ================================================================================
:attr:`~wx.DirDialog.Message`                                                    See :meth:`~wx.DirDialog.GetMessage` and :meth:`~wx.DirDialog.SetMessage`
:attr:`~wx.DirDialog.Path`                                                       See :meth:`~wx.DirDialog.GetPath` and :meth:`~wx.DirDialog.SetPath`
================================================================================ ================================================================================


|


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


.. class:: wx.DirDialog(Dialog)

   **Possible constructors**::

       DirDialog(parent, message=DirSelectorPromptStr, defaultPath=EmptyString,
                 style=DD_DEFAULT_STYLE, pos=DefaultPosition, size=DefaultSize,
                 name=DirDialogNameStr)
       
   
   This class represents the directory chooser dialog.



   .. method:: __init__(self, parent, message=DirSelectorPromptStr, defaultPath=EmptyString, style=DD_DEFAULT_STYLE, pos=DefaultPosition, size=DefaultSize, name=DirDialogNameStr)

      Constructor.                  

      Use :meth:`ShowModal`   to show the dialog. 




      :param `parent`: Parent window.   
      :type `parent`: wx.Window
      :param `message`: Message to show on the dialog.   
      :type `message`: string
      :param `defaultPath`: The default path, or the empty string.   
      :type `defaultPath`: string
      :param `style`: The dialog style. See :ref:`wx.DirDialog`    
      :type `style`: long
      :param `pos`: Dialog position. Ignored under Windows.   
      :type `pos`: wx.Point
      :param `size`: Dialog size. Ignored under Windows.   
      :type `size`: wx.Size
      :param `name`: The dialog name, not used.   
      :type `name`: string
















                  





   .. staticmethod:: GetClassDefaultAttributes(variant=WINDOW_VARIANT_NORMAL)




      :param `variant`: 
      :type `variant`: wx.WindowVariant




      :rtype: :ref:`wx.VisualAttributes`








   .. method:: GetMessage(self)

      Returns the message that will be displayed on the dialog.                  

      :rtype: `string`








   .. method:: GetPath(self)

      Returns the default or user-selected path.                  

                

      :rtype: `string`







      .. note:: 

         This function can't be used with dialogs which have the  ``DD_MULTIPLE``   style, use  :meth:`GetPaths`   instead.   








   .. method:: GetPaths(self, paths)

      Fills the array `paths`  with the full paths of the chosen directories.                  

                


      :param `paths`: 
      :type `paths`: list of strings






      .. versionadded:: 4.1/wxWidgets-3.1.4  
     







      .. note:: 

         This function should only be used with the dialogs which have  ``DD_MULTIPLE``   style, use  :meth:`GetPath`   for the others.  








   .. method:: SetMessage(self, message)

      Sets the message that will be displayed on the dialog.                  


      :param `message`: 
      :type `message`: string







   .. method:: SetPath(self, path)

      Sets the default path.                  


      :param `path`: 
      :type `path`: string







   .. method:: ShowModal(self)

      Shows the dialog, returning ``wx.ID_OK`` if the user pressed ``wx.OK``, and ``wx.ID_CANCEL`` otherwise.                  

      :rtype: `int`








   .. attribute:: Message

      See :meth:`~wx.DirDialog.GetMessage` and :meth:`~wx.DirDialog.SetMessage`


   .. attribute:: Path

      See :meth:`~wx.DirDialog.GetPath` and :meth:`~wx.DirDialog.SetPath`

