]> git.saurik.com Git - wxWidgets.git/blob - interface/dirdlg.h
added convenient wxON_BLOCK_EXIT_THISn() macros wrapping wxON_BLOCK_EXIT_OBJn(*this)
[wxWidgets.git] / interface / dirdlg.h
1 /////////////////////////////////////////////////////////////////////////////
2 // Name: dirdlg.h
3 // Purpose: interface of wxDirDialog
4 // Author: wxWidgets team
5 // RCS-ID: $Id$
6 // Licence: wxWindows license
7 /////////////////////////////////////////////////////////////////////////////
8
9 /**
10 @class wxDirDialog
11 @wxheader{dirdlg.h}
12
13 This class represents the directory chooser dialog.
14
15 @beginStyleTable
16 @style{wxDD_DEFAULT_STYLE}:
17 Equivalent to a combination of wxDEFAULT_DIALOG_STYLE and
18 wxRESIZE_BORDER (the last one is not used under wxWinCE).
19 @style{wxDD_DIR_MUST_EXIST}:
20 The dialog will allow the user to choose only an existing folder.
21 When this style is not given, a "Create new directory" button is
22 added to the dialog (on Windows) or some other way is provided to
23 the user to type the name of a new folder.
24 @style{wxDD_CHANGE_DIR}:
25 Change the current working directory to the directory chosen by the
26 user.
27 @endStyleTable
28
29 @library{wxcore}
30 @category{cmndlg}
31
32 @see @ref overview_wxdirdialogoverview "wxDirDialog overview", wxFileDialog
33 */
34 class wxDirDialog : public wxDialog
35 {
36 public:
37 /**
38 Constructor. Use ShowModal() to show
39 the dialog.
40
41 @param parent
42 Parent window.
43 @param message
44 Message to show on the dialog.
45 @param defaultPath
46 The default path, or the empty string.
47 @param style
48 The dialog style. See wxDirDialog
49 @param pos
50 Dialog position. Ignored under Windows.
51 @param size
52 Dialog size. Ignored under Windows.
53 @param name
54 The dialog name, not used.
55 */
56 wxDirDialog(wxWindow* parent,
57 const wxString& message = "Choose a directory",
58 const wxString& defaultPath = "",
59 long style = wxDD_DEFAULT_STYLE,
60 const wxPoint& pos = wxDefaultPosition,
61 const wxSize& size = wxDefaultSize,
62 const wxString& name = "wxDirCtrl");
63
64 /**
65 Destructor.
66 */
67 ~wxDirDialog();
68
69 /**
70 Returns the message that will be displayed on the dialog.
71 */
72 wxString GetMessage() const;
73
74 /**
75 Returns the default or user-selected path.
76 */
77 wxString GetPath() const;
78
79 /**
80 Sets the message that will be displayed on the dialog.
81 */
82 void SetMessage(const wxString& message);
83
84 /**
85 Sets the default path.
86 */
87 void SetPath(const wxString& path);
88
89 /**
90 Shows the dialog, returning wxID_OK if the user pressed OK, and wxID_CANCEL
91 otherwise.
92 */
93 int ShowModal();
94 };
95
96
97
98 // ============================================================================
99 // Global functions/macros
100 // ============================================================================
101
102 /** @ingroup group_funcmacro_dialog */
103 //@{
104
105 /**
106 Pops up a directory selector dialog. The arguments have the same meaning
107 as those of wxDirDialog::wxDirDialog(). The message is displayed at the
108 top, and the default_path, if specified, is set as the initial selection.
109
110 The application must check for an empty return value (if the user pressed
111 Cancel). For example:
112
113 @code
114 const wxString& dir = wxDirSelector("Choose a folder");
115 if ( !dir.empty() )
116 {
117 ...
118 }
119 @endcode
120
121 @header{wx/dirdlg.h}
122 */
123 wxString wxDirSelector(const wxString& message = wxDirSelectorPromptStr,
124 const wxString& default_path = "",
125 long style = 0,
126 const wxPoint& pos = wxDefaultPosition,
127 wxWindow* parent = NULL);
128
129 //@}
130