]> git.saurik.com Git - wxWidgets.git/blame - wxPython/src/_cmndlgs.i
Detect Apple bug that prevents the joystick code compiling for OS X 10.1
[wxWidgets.git] / wxPython / src / _cmndlgs.i
CommitLineData
7bf85405 1/////////////////////////////////////////////////////////////////////////////
d14a1e28
RD
2// Name: _cmndlgs.i
3// Purpose: SWIG interface for the "Common Dialog" classes
7bf85405
RD
4//
5// Author: Robin Dunn
6//
d14a1e28 7// Created: 25-July-1998
7bf85405 8// RCS-ID: $Id$
d14a1e28 9// Copyright: (c) 2003 by Total Control Software
7bf85405
RD
10// Licence: wxWindows license
11/////////////////////////////////////////////////////////////////////////////
12
d14a1e28 13// Not a %module
7bf85405 14
7bf85405 15
d14a1e28
RD
16//---------------------------------------------------------------------------
17%newgroup
7bf85405 18
b2dc1044
RD
19MAKE_CONST_WXSTRING(FileSelectorPromptStr);
20MAKE_CONST_WXSTRING(DirSelectorPromptStr);
21MAKE_CONST_WXSTRING(DirDialogNameStr);
22MAKE_CONST_WXSTRING(FileSelectorDefaultWildcardStr);
23MAKE_CONST_WXSTRING(GetTextFromUserPromptStr);
24MAKE_CONST_WXSTRING(MessageBoxCaptionStr);
137b5242 25
d14a1e28
RD
26//---------------------------------------------------------------------------
27
137b5242 28
fcafa8a9 29DocStr(wxColourData,
dce2bd22
RD
30"This class holds a variety of information related to the colour
31chooser dialog, used to transfer settings and results to and from the
d07d2bc9 32`wx.ColourDialog`.", "");
fcafa8a9 33
9416aa89 34class wxColourData : public wxObject {
7bf85405 35public:
fcafa8a9
RD
36 DocCtorStr(
37 wxColourData(),
d07d2bc9 38 "Constructor, sets default values.", "");
fcafa8a9 39
7bf85405
RD
40 ~wxColourData();
41
fcafa8a9
RD
42
43 DocDeclStr(
44 bool , GetChooseFull(),
dce2bd22
RD
45 "Under Windows, determines whether the Windows colour dialog will
46display the full dialog with custom colour selection controls. Has no
d07d2bc9 47meaning under other platforms. The default value is true.", "");
fcafa8a9
RD
48
49 DocDeclStr(
50 wxColour , GetColour(),
d07d2bc9 51 "Gets the colour (pre)selected by the dialog.", "");
fcafa8a9
RD
52
53 DocDeclStr(
54 wxColour , GetCustomColour(int i),
dce2bd22
RD
55 "Gets the i'th custom colour associated with the colour dialog. i
56should be an integer between 0 and 15. The default custom colours are
da397248 57all invalid colours.", "");
fcafa8a9
RD
58
59 DocDeclStr(
60 void , SetChooseFull(int flag),
dce2bd22
RD
61 "Under Windows, tells the Windows colour dialog to display the full
62dialog with custom colour selection controls. Under other platforms,
d07d2bc9 63has no effect. The default value is true.", "");
fcafa8a9
RD
64
65 DocDeclStr(
66 void , SetColour(const wxColour& colour),
dce2bd22 67 "Sets the default colour for the colour dialog. The default colour is
d07d2bc9 68black.", "");
fcafa8a9
RD
69
70 DocDeclStr(
71 void , SetCustomColour(int i, const wxColour& colour),
dce2bd22 72 "Sets the i'th custom colour for the colour dialog. i should be an
da397248 73integer between 0 and 15. The default custom colours are all invalid colours.", "");
fcafa8a9 74
7bf85405
RD
75};
76
77
dce2bd22
RD
78
79
fcafa8a9 80DocStr(wxColourDialog,
d07d2bc9 81 "This class represents the colour chooser dialog.", "");
fcafa8a9 82
ab1f7d2a
RD
83MustHaveApp(wxColourDialog);
84
7bf85405
RD
85class wxColourDialog : public wxDialog {
86public:
2b9048c5 87 %pythonAppend wxColourDialog "self._setOORInfo(self)"
7bf85405 88
fcafa8a9
RD
89 DocCtorStr(
90 wxColourDialog(wxWindow* parent, wxColourData* data = NULL),
dce2bd22
RD
91 "Constructor. Pass a parent window, and optionally a `wx.ColourData`,
92which will be copied to the colour dialog's internal ColourData
d07d2bc9 93instance.", "");
0122b7e3 94
fcafa8a9
RD
95 DocDeclStr(
96 wxColourData& , GetColourData(),
d07d2bc9 97 "Returns a reference to the `wx.ColourData` used by the dialog.", "");
7bf85405
RD
98};
99
100
d14a1e28 101//--------------------------------------------------------------------------------
7bf85405 102
fcafa8a9
RD
103
104DocStr(wxDirDialog,
dce2bd22 105 "wx.DirDialog allows the user to select a directory by browising the
d07d2bc9 106file system.", "
dce2bd22
RD
107
108Window Styles
109--------------
110 ==================== ==========================================
111 wx.DD_NEW_DIR_BUTTON Add 'Create new directory' button and allow
112 directory names to be editable. On Windows
113 the new directory button is only available
114 with recent versions of the common dialogs.
115 ==================== ==========================================
116");
fcafa8a9 117
ab1f7d2a
RD
118MustHaveApp(wxDirDialog);
119
7bf85405
RD
120class wxDirDialog : public wxDialog {
121public:
2b9048c5 122 %pythonAppend wxDirDialog "self._setOORInfo(self)"
d14a1e28 123
fcafa8a9
RD
124 DocCtorStr(
125 wxDirDialog(wxWindow* parent,
126 const wxString& message = wxPyDirSelectorPromptStr,
127 const wxString& defaultPath = wxPyEmptyString,
128 long style = 0,
129 const wxPoint& pos = wxDefaultPosition,
130 const wxSize& size = wxDefaultSize,
131 const wxString& name = wxPyDirDialogNameStr),
d07d2bc9 132 "Constructor. Use ShowModal method to show the dialog.", "");
fcafa8a9
RD
133
134
135 DocDeclStr(
136 wxString , GetPath(),
d07d2bc9 137 "Returns the default or user-selected path.", "");
fcafa8a9
RD
138
139 DocDeclStr(
140 wxString , GetMessage(),
d07d2bc9 141 "Returns the message that will be displayed on the dialog.", "");
fcafa8a9
RD
142
143 DocDeclStr(
144 long , GetStyle(),
d07d2bc9 145 "Returns the dialog style.", "");
fcafa8a9
RD
146
147 DocDeclStr(
148 void , SetMessage(const wxString& message),
d07d2bc9 149 "Sets the message that will be displayed on the dialog.", "");
fcafa8a9
RD
150
151 DocDeclStr(
152 void , SetPath(const wxString& path),
d07d2bc9 153 "Sets the default path.", "");
fcafa8a9 154
7bf85405
RD
155};
156
68320e40 157
d14a1e28 158//---------------------------------------------------------------------------
7bf85405 159
fcafa8a9 160DocStr(wxFileDialog,
dce2bd22 161"wx.FileDialog allows the user to select one or more files from the
d07d2bc9 162filesystem.", "
dce2bd22
RD
163
164In Windows, this is the common file selector dialog. On X based
165platforms a generic alternative is used. The path and filename are
166distinct elements of a full file pathname. If path is \"\", the
167current directory will be used. If filename is \"\", no default
168filename will be supplied. The wildcard determines what files are
169displayed in the file selector, and file extension supplies a type
170extension for the required filename.
171
172Both the X and Windows versions implement a wildcard filter. Typing a
d07d2bc9 173filename containing wildcards (\*, ?) in the filename text item, and
dce2bd22
RD
174clicking on Ok, will result in only those files matching the pattern
175being displayed. The wildcard may be a specification for multiple
176types of file with a description for each, such as::
fcafa8a9
RD
177
178 \"BMP files (*.bmp)|*.bmp|GIF files (*.gif)|*.gif\"
179
dce2bd22
RD
180
181Window Styles
182--------------
d07d2bc9
RD
183 =================== ==========================================
184 wx.OPEN This is an open dialog.
fcafa8a9 185
d07d2bc9 186 wx.SAVE This is a save dialog.
fcafa8a9 187
d07d2bc9
RD
188 wx.HIDE_READONLY For open dialog only: hide the checkbox
189 allowing to open the file in read-only mode.
fcafa8a9 190
d07d2bc9
RD
191 wx.OVERWRITE_PROMPT For save dialog only: prompt for a confirmation
192 if a file will be overwritten.
fcafa8a9 193
d07d2bc9
RD
194 wx.MULTIPLE For open dialog only: allows selecting multiple
195 files.
fcafa8a9 196
d07d2bc9
RD
197 wx.CHANGE_DIR Change the current working directory to the
198 directory where the file(s) chosen by the user
199 are.
200 =================== ==========================================
fcafa8a9
RD
201");
202
203
204
ab1f7d2a
RD
205MustHaveApp(wxFileDialog);
206
7bf85405
RD
207class wxFileDialog : public wxDialog {
208public:
2b9048c5 209 %pythonAppend wxFileDialog "self._setOORInfo(self)"
fcafa8a9
RD
210
211 DocCtorStr(
212 wxFileDialog(wxWindow* parent,
213 const wxString& message = wxPyFileSelectorPromptStr,
214 const wxString& defaultDir = wxPyEmptyString,
215 const wxString& defaultFile = wxPyEmptyString,
216 const wxString& wildcard = wxPyFileSelectorDefaultWildcardStr,
217 long style = 0,
218 const wxPoint& pos = wxDefaultPosition),
d07d2bc9 219 "Constructor. Use ShowModal method to show the dialog.", "");
fcafa8a9
RD
220
221
222 DocDeclStr(
223 void , SetMessage(const wxString& message),
d07d2bc9 224 "Sets the message that will be displayed on the dialog.", "");
fcafa8a9
RD
225
226 DocDeclStr(
227 void , SetPath(const wxString& path),
dce2bd22 228 "Sets the path (the combined directory and filename that will be
d07d2bc9 229returned when the dialog is dismissed).", "");
fcafa8a9
RD
230
231 DocDeclStr(
232 void , SetDirectory(const wxString& dir),
d07d2bc9 233 "Sets the default directory.", "");
fcafa8a9
RD
234
235 DocDeclStr(
236 void , SetFilename(const wxString& name),
d07d2bc9 237 "Sets the default filename.", "");
fcafa8a9
RD
238
239 DocDeclStr(
240 void , SetWildcard(const wxString& wildCard),
dce2bd22
RD
241 "Sets the wildcard, which can contain multiple file types, for
242example::
243
244 \"BMP files (*.bmp)|*.bmp|GIF files (*.gif)|*.gif\"
d07d2bc9 245", "");
d14a1e28 246
fcafa8a9
RD
247 DocDeclStr(
248 void , SetStyle(long style),
d07d2bc9 249 "Sets the dialog style.", "");
fcafa8a9
RD
250
251 DocDeclStr(
252 void , SetFilterIndex(int filterIndex),
d07d2bc9 253 "Sets the default filter index, starting from zero.", "");
fcafa8a9 254
fcafa8a9
RD
255 DocDeclStr(
256 wxString , GetMessage() const,
d07d2bc9 257 "Returns the message that will be displayed on the dialog.", "");
fcafa8a9
RD
258
259 DocDeclStr(
260 wxString , GetPath() const,
d07d2bc9 261 "Returns the full path (directory and filename) of the selected file.", "");
fcafa8a9
RD
262
263 DocDeclStr(
264 wxString , GetDirectory() const,
d07d2bc9 265 "Returns the default directory.", "");
fcafa8a9
RD
266
267 DocDeclStr(
268 wxString , GetFilename() const,
d07d2bc9 269 "Returns the default filename.", "");
fcafa8a9
RD
270
271 DocDeclStr(
272 wxString , GetWildcard() const,
d07d2bc9 273 "Returns the file dialog wildcard.", "");
fcafa8a9
RD
274
275 DocDeclStr(
276 long , GetStyle() const,
d07d2bc9 277 "Returns the dialog style.", "");
fcafa8a9
RD
278
279 DocDeclStr(
280 int , GetFilterIndex() const,
dce2bd22
RD
281 "Returns the index into the list of filters supplied, optionally, in
282the wildcard parameter. Before the dialog is shown, this is the index
283which will be used when the dialog is first displayed. After the
d07d2bc9 284dialog is shown, this is the index selected by the user.", "");
f6bcfd97 285
fcafa8a9
RD
286
287 DocStr(GetFilenames,
dce2bd22
RD
288 "Returns a list of filenames chosen in the dialog. This function
289should only be used with the dialogs which have wx.MULTIPLE style, use
d07d2bc9 290GetFilename for the others.", "");
fcafa8a9
RD
291
292 DocStr(GetPaths,
dce2bd22
RD
293 "Fills the array paths with the full paths of the files chosen. This
294function should only be used with the dialogs which have wx.MULTIPLE
d07d2bc9 295style, use GetPath for the others.", "");
fcafa8a9 296
d14a1e28 297 %extend {
f6bcfd97
BP
298 PyObject* GetFilenames() {
299 wxArrayString arr;
300 self->GetFilenames(arr);
b37c7e1d 301 return wxArrayString2PyList_helper(arr);
f6bcfd97
BP
302 }
303
304 PyObject* GetPaths() {
305 wxArrayString arr;
306 self->GetPaths(arr);
b37c7e1d 307 return wxArrayString2PyList_helper(arr);
f6bcfd97
BP
308 }
309 }
3ef86e32
RD
310
311// TODO
312// // Utility functions
313
314// // Parses the wildCard, returning the number of filters.
315// // Returns 0 if none or if there's a problem,
316// // The arrays will contain an equal number of items found before the error.
317// // wildCard is in the form:
318// // "All files (*)|*|Image Files (*.jpeg *.png)|*.jpg;*.png"
319// static int ParseWildcard(const wxString& wildCard,
320// wxArrayString& descriptions,
321// wxArrayString& filters);
322
323// // Append first extension to filePath from a ';' separated extensionList
324// // if filePath = "path/foo.bar" just return it as is
325// // if filePath = "foo[.]" and extensionList = "*.jpg;*.png" return "foo.jpg"
326// // if the extension is "*.j?g" (has wildcards) or "jpg" then return filePath
327// static wxString AppendExtension(const wxString &filePath,
328// const wxString &extensionList);
329
330
7bf85405
RD
331};
332
333
d14a1e28 334//---------------------------------------------------------------------------
7bf85405 335
293a0a86
RD
336enum { wxCHOICEDLG_STYLE };
337
e5868095
RD
338
339DocStr(wxMultiChoiceDialog,
d07d2bc9 340 "A simple dialog with a multi selection listbox.", "");
e5868095 341
ab1f7d2a
RD
342MustHaveApp(wxMultiChoiceDialog);
343
293a0a86
RD
344class wxMultiChoiceDialog : public wxDialog
345{
346public:
2b9048c5 347 %pythonAppend wxMultiChoiceDialog "self._setOORInfo(self)"
293a0a86 348
e5868095
RD
349 DocCtorAStr(
350 wxMultiChoiceDialog(wxWindow *parent,
351 const wxString& message,
352 const wxString& caption,
d5573410 353 int choices=0, wxString* choices_array=NULL,
e5868095
RD
354 long style = wxCHOICEDLG_STYLE,
355 const wxPoint& pos = wxDefaultPosition),
870b7ef0 356 "__init__(self, Window parent, String message, String caption,
40a0d6ca 357 List choices=EmptyList, long style=CHOICEDLG_STYLE,
dce2bd22 358 Point pos=DefaultPosition) -> MultiChoiceDialog",
870b7ef0
RD
359 "Constructor. Use the `ShowModal` method to show the dialog.
360
361 :param parent: The parent window.
362 :param message: Text to display above the list of selections.
363 :param caption: Text to use in the title bar of the dialog.
364 :param choices: A list of strings or unicode objects that the
365 user is allowed to choose from.
366 :param style: Styles to apply to the dialog. The default value is
367 equivallent to wx.DEFAULT_DIALOG_STYLE|wx.RESIZE_BORDER|wx.OK|wx.CANCEL|wx.CENTER.
368 :param pos: Where to position the dialog (not used on Windows)
369
370", "");
e5868095
RD
371
372
373 DocDeclAStr(
374 void, SetSelections(const wxArrayInt& selections),
375 "SetSelections(List selections)",
dce2bd22 376 "Specify the items in the list that should be selected, using a list of
870b7ef0
RD
377integers. The list should specify the indexes of the items that
378should be selected.", "");
293a0a86 379
e5868095
RD
380 DocAStr(GetSelections,
381 "GetSelections() -> [selections]",
870b7ef0
RD
382 "Returns a list of integers representing the items that are selected.
383If an item is selected then its index will appear in the list.", "");
d14a1e28 384 %extend {
293a0a86
RD
385 PyObject* GetSelections() {
386 return wxArrayInt2PyList_helper(self->GetSelections());
387 }
388 }
389};
390
7bf85405 391
d14a1e28 392//---------------------------------------------------------------------------
7bf85405 393
e5868095 394DocStr(wxSingleChoiceDialog,
d07d2bc9 395 "A simple dialog with a single selection listbox.", "");
e5868095 396
ab1f7d2a
RD
397MustHaveApp(wxSingleChoiceDialog);
398
7bf85405
RD
399class wxSingleChoiceDialog : public wxDialog {
400public:
2b9048c5 401 %pythonAppend wxSingleChoiceDialog "self._setOORInfo(self)"
e5868095
RD
402
403 DocAStr(wxSingleChoiceDialog,
dce2bd22 404 "__init__(Window parent, String message, String caption,
40a0d6ca 405 List choices=EmptyList, long style=CHOICEDLG_STYLE,
dce2bd22 406 Point pos=DefaultPosition) -> SingleChoiceDialog",
d07d2bc9 407 "Constructor. Use ShowModal method to show the dialog.", "");
e5868095 408
d14a1e28
RD
409 %extend {
410 // TODO: ignoring clientData for now... FIX THIS
7bf85405
RD
411 // SWIG is messing up the &/*'s for some reason.
412 wxSingleChoiceDialog(wxWindow* parent,
d14a1e28
RD
413 const wxString& message,
414 const wxString& caption,
415 int choices, wxString* choices_array,
7bf85405 416 //char** clientData = NULL,
293a0a86 417 long style = wxCHOICEDLG_STYLE,
d14a1e28
RD
418 const wxPoint& pos = wxDefaultPosition) {
419 return new wxSingleChoiceDialog(parent, message, caption,
420 choices, choices_array, NULL, style, pos);
7bf85405 421 }
09f3d4e6 422 }
9c039d08 423
e5868095
RD
424 DocDeclStr(
425 int , GetSelection(),
d07d2bc9 426 "Get the index of teh currently selected item.", "");
e5868095
RD
427
428 DocDeclStr(
429 wxString , GetStringSelection(),
d07d2bc9 430 "Returns the string value of the currently selected item", "");
e5868095
RD
431
432 DocDeclStr(
433 void , SetSelection(int sel),
d07d2bc9 434 "Set the current selected item to sel", "");
7bf85405
RD
435};
436
437
d14a1e28 438//---------------------------------------------------------------------------
7bf85405 439
e5868095 440DocStr(wxTextEntryDialog,
d07d2bc9 441 "A dialog with text control, [ok] and [cancel] buttons", "");
e5868095 442
ab1f7d2a
RD
443MustHaveApp(wxTextEntryDialog);
444
f63a6e0c
RD
445enum { wxTextEntryDialogStyle };
446
7bf85405
RD
447class wxTextEntryDialog : public wxDialog {
448public:
2b9048c5 449 %pythonAppend wxTextEntryDialog "self._setOORInfo(self)"
7bf85405 450
e5868095
RD
451 DocCtorStr(
452 wxTextEntryDialog(wxWindow* parent,
453 const wxString& message,
454 const wxString& caption = wxPyGetTextFromUserPromptStr,
455 const wxString& defaultValue = wxPyEmptyString,
7aada1e0 456 long style = wxTextEntryDialogStyle,
e5868095 457 const wxPoint& pos = wxDefaultPosition),
d07d2bc9 458 "Constructor. Use ShowModal method to show the dialog.", "");
e5868095
RD
459
460 DocDeclStr(
461 wxString , GetValue(),
dce2bd22 462 "Returns the text that the user has entered if the user has pressed OK,
d07d2bc9 463or the original value if the user has pressed Cancel.", "");
e5868095
RD
464
465 DocDeclStr(
466 void , SetValue(const wxString& value),
d07d2bc9 467 "Sets the default text value.", "");
7bf85405
RD
468};
469
d14a1e28 470//---------------------------------------------------------------------------
7bf85405 471
7aada1e0
RD
472MAKE_CONST_WXSTRING(GetPasswordFromUserPromptStr);
473
474class wxPasswordEntryDialog : public wxTextEntryDialog
475{
476public:
477 wxPasswordEntryDialog(wxWindow *parent,
478 const wxString& message,
479 const wxString& caption = wxPyGetPasswordFromUserPromptStr,
480 const wxString& value = wxPyEmptyString,
481 long style = wxTextEntryDialogStyle,
482 const wxPoint& pos = wxDefaultPosition);
483};
484
485//---------------------------------------------------------------------------
486
e5868095
RD
487
488DocStr(wxFontData,
dce2bd22 489 "This class holds a variety of information related to font dialogs and
d07d2bc9 490is used to transfer settings to and results from a `wx.FontDialog`.", "");
e5868095
RD
491
492
9416aa89 493class wxFontData : public wxObject {
7bf85405
RD
494public:
495 wxFontData();
496 ~wxFontData();
497
e5868095
RD
498 DocDeclStr(
499 void , EnableEffects(bool enable),
dce2bd22
RD
500 "Enables or disables 'effects' under MS Windows only. This refers to
501the controls for manipulating colour, strikeout and underline
d07d2bc9 502properties. The default value is true.", "");
e5868095
RD
503
504 DocDeclStr(
505 bool , GetAllowSymbols(),
dce2bd22
RD
506 "Under MS Windows, returns a flag determining whether symbol fonts can
507be selected. Has no effect on other platforms. The default value is
d07d2bc9 508true.", "");
e5868095
RD
509
510 DocDeclStr(
511 wxColour , GetColour(),
dce2bd22 512 "Gets the colour associated with the font dialog. The default value is
d07d2bc9 513black.", "");
e5868095
RD
514
515 DocDeclStr(
516 wxFont , GetChosenFont(),
d07d2bc9 517 "Gets the font chosen by the user.", "");
e5868095
RD
518
519 DocDeclStr(
520 bool , GetEnableEffects(),
d07d2bc9 521 "Determines whether 'effects' are enabled under Windows.", "");
e5868095
RD
522
523 DocDeclStr(
524 wxFont , GetInitialFont(),
dce2bd22 525 "Gets the font that will be initially used by the font dialog. This
d07d2bc9 526should have previously been set by the application.", "");
e5868095
RD
527
528 DocDeclStr(
529 bool , GetShowHelp(),
dce2bd22 530 "Returns true if the Help button will be shown (Windows only). The
d07d2bc9 531default value is false.", "");
e5868095
RD
532
533 DocDeclStr(
534 void , SetAllowSymbols(bool allowSymbols),
dce2bd22 535 "Under MS Windows, determines whether symbol fonts can be selected. Has
d07d2bc9 536no effect on other platforms. The default value is true.", "");
e5868095
RD
537
538 DocDeclStr(
539 void , SetChosenFont(const wxFont& font),
dce2bd22 540 "Sets the font that will be returned to the user (normally for internal
d07d2bc9 541use only).", "");
e5868095
RD
542
543 DocDeclStr(
544 void , SetColour(const wxColour& colour),
dce2bd22 545 "Sets the colour that will be used for the font foreground colour. The
d07d2bc9 546default colour is black.", "");
e5868095
RD
547
548 DocDeclStr(
549 void , SetInitialFont(const wxFont& font),
d07d2bc9 550 "Sets the font that will be initially used by the font dialog.", "");
e5868095
RD
551
552 DocDeclStr(
553 void , SetRange(int min, int max),
dce2bd22 554 "Sets the valid range for the font point size (Windows only). The
d07d2bc9 555default is 0, 0 (unrestricted range).", "");
e5868095
RD
556
557 DocDeclStr(
558 void , SetShowHelp(bool showHelp),
dce2bd22 559 "Determines whether the Help button will be displayed in the font
d07d2bc9 560dialog (Windows only). The default value is false.", "");
7bf85405
RD
561};
562
563
e5868095
RD
564
565
566DocStr(wxFontDialog,
dce2bd22
RD
567 "wx.FontDialog allows the user to select a system font and its attributes.
568
569:see: `wx.FontData`
d07d2bc9 570", "");
e5868095 571
ab1f7d2a
RD
572MustHaveApp(wxFontDialog);
573
7bf85405
RD
574class wxFontDialog : public wxDialog {
575public:
2b9048c5 576 %pythonAppend wxFontDialog "self._setOORInfo(self)"
e5868095
RD
577
578 DocStr(wxFontDialog,
dce2bd22
RD
579 "Constructor. Pass a parent window and the `wx.FontData` object to be
580used to initialize the dialog controls. Call `ShowModal` to display
581the dialog. If ShowModal returns ``wx.ID_OK`` then you can fetch the
d07d2bc9 582results with via the `wx.FontData` returned by `GetFontData`.", "");
557a93b9 583 wxFontDialog(wxWindow* parent, const wxFontData& data);
7bf85405 584
e5868095
RD
585
586 DocDeclStr(
587 wxFontData& , GetFontData(),
dce2bd22 588 "Returns a reference to the internal `wx.FontData` used by the
d07d2bc9 589wx.FontDialog.", "");
7bf85405
RD
590};
591
592
d14a1e28 593//---------------------------------------------------------------------------
7bf85405 594
e5868095
RD
595
596DocStr(wxMessageDialog,
dce2bd22 597"This class provides a simple dialog that shows a single or multi-line
d07d2bc9 598message, with a choice of OK, Yes, No and/or Cancel buttons.", "
dce2bd22
RD
599
600Window Styles
601--------------
d07d2bc9
RD
602 =================== =============================================
603 wx.OK Show an OK button.
604 wx.CANCEL Show a Cancel button.
605 wx.YES_NO Show Yes and No buttons.
606 wx.YES_DEFAULT Used with wxYES_NO, makes Yes button the
607 default - which is the default behaviour.
608 wx.NO_DEFAULT Used with wxYES_NO, makes No button the default.
609 wx.ICON_EXCLAMATION Shows an exclamation mark icon.
610 wx.ICON_HAND Shows an error icon.
611 wx.ICON_ERROR Shows an error icon - the same as wxICON_HAND.
612 wx.ICON_QUESTION Shows a question mark icon.
613 wx.ICON_INFORMATION Shows an information (i) icon.
614 wx.STAY_ON_TOP The message box stays on top of all other
615 window, even those of the other applications
616 (Windows only).
617 =================== =============================================
e5868095
RD
618");
619
620
ab1f7d2a
RD
621MustHaveApp(wxMessageDialog);
622
7bf85405
RD
623class wxMessageDialog : public wxDialog {
624public:
2b9048c5 625 %pythonAppend wxMessageDialog "self._setOORInfo(self)"
d14a1e28 626
dce2bd22
RD
627 DocCtorStr(
628 wxMessageDialog(wxWindow* parent,
629 const wxString& message,
630 const wxString& caption = wxPyMessageBoxCaptionStr,
631 long style = wxOK | wxCANCEL | wxCENTRE,
632 const wxPoint& pos = wxDefaultPosition),
d07d2bc9 633 "Constructor, use `ShowModal` to display the dialog.", "");
7bf85405 634
7bf85405
RD
635};
636
d14a1e28 637//---------------------------------------------------------------------------
7bf85405 638
e5868095
RD
639
640DocStr(wxProgressDialog,
dce2bd22 641"A dialog that shows a short message and a progress bar. Optionally, it
d07d2bc9 642can display an ABORT button.", "
dce2bd22
RD
643
644Window Styles
645--------------
d07d2bc9
RD
646 ==================== =============================================
647 wx.PD_APP_MODAL Make the progress dialog modal. If this flag is
648 not given, it is only \"locally\" modal -
649 that is the input to the parent window is
650 disabled, but not to the other ones.
651
652 wx.PD_AUTO_HIDE Causes the progress dialog to disappear from
653 screen as soon as the maximum value of the
654 progress meter has been reached.
655
656 wx.PD_CAN_ABORT This flag tells the dialog that it should have
657 a \"Cancel\" button which the user may press. If
658 this happens, the next call to Update() will
659 return false.
660
661 wx.PD_ELAPSED_TIME This flag tells the dialog that it should show
662 elapsed time (since creating the dialog).
663
664 wx.PD_ESTIMATED_TIME This flag tells the dialog that it should show
665 estimated time.
666
667 wx.PD_REMAINING_TIME This flag tells the dialog that it should show
668 remaining time.
191dea6d
RD
669
670 wx.PD_SMOOTH Uses the wx.GA_SMOOTH style on the embedded
671 wx.Gauge widget.
d07d2bc9 672 ==================== =============================================
e5868095
RD
673");
674
675
191dea6d
RD
676// TODO: wxPD_CAN_SKIP
677
ab1f7d2a
RD
678MustHaveApp(wxProgressDialog);
679
bb0054cd
RD
680class wxProgressDialog : public wxFrame {
681public:
2b9048c5 682 %pythonAppend wxProgressDialog "self._setOORInfo(self)"
7bf85405 683
e5868095
RD
684 DocCtorStr(
685 wxProgressDialog(const wxString& title,
686 const wxString& message,
687 int maximum = 100,
688 wxWindow* parent = NULL,
689 int style = wxPD_AUTO_HIDE | wxPD_APP_MODAL ),
dce2bd22
RD
690 "Constructor. Creates the dialog, displays it and disables user input
691for other windows, or, if wx.PD_APP_MODAL flag is not given, for its
d07d2bc9 692parent window only.", "");
e5868095 693
191dea6d
RD
694 // TODO: support getting the skipped value back in the return value, but
695 // only if style is set. This is so the API doesn't change for existing
696 // users...
e5868095 697 DocDeclStr(
75e14ed5 698 virtual bool , Update(int value, const wxString& newmsg = wxPyEmptyString),
dce2bd22 699 "Updates the dialog, setting the progress bar to the new value and, if
e4836488
RD
700given changes the message above it. The value given should be less
701than or equal to the maximum value given to the constructor and the
191dea6d 702dialog is closed if it is equal to the maximum. Returns True unless
e4836488 703the Cancel button has been pressed.
dce2bd22
RD
704
705If false is returned, the application can either immediately destroy
706the dialog or ask the user for the confirmation and if the abort is
d07d2bc9 707not confirmed the dialog may be resumed with Resume function.", "");
e5868095
RD
708
709 DocDeclStr(
710 void , Resume(),
dce2bd22 711 "Can be used to continue with the dialog, after the user had chosen to
d07d2bc9 712abort.", "");
e5868095 713
d14a1e28 714};
bb0054cd 715
d14a1e28 716//---------------------------------------------------------------------------
0122b7e3
RD
717
718enum wxFindReplaceFlags
719{
720 // downward search/replace selected (otherwise - upwards)
721 wxFR_DOWN = 1,
722
723 // whole word search/replace selected
724 wxFR_WHOLEWORD = 2,
725
726 // case sensitive search/replace selected (otherwise - case insensitive)
727 wxFR_MATCHCASE = 4
728};
729
730
731enum wxFindReplaceDialogStyles
732{
733 // replace dialog (otherwise find dialog)
734 wxFR_REPLACEDIALOG = 1,
735
736 // don't allow changing the search direction
737 wxFR_NOUPDOWN = 2,
738
739 // don't allow case sensitive searching
740 wxFR_NOMATCHCASE = 4,
741
742 // don't allow whole word searching
743 wxFR_NOWHOLEWORD = 8
744};
745
0122b7e3 746
0122b7e3 747
d14a1e28
RD
748%constant wxEventType wxEVT_COMMAND_FIND;
749%constant wxEventType wxEVT_COMMAND_FIND_NEXT;
750%constant wxEventType wxEVT_COMMAND_FIND_REPLACE;
751%constant wxEventType wxEVT_COMMAND_FIND_REPLACE_ALL;
752%constant wxEventType wxEVT_COMMAND_FIND_CLOSE;
0122b7e3 753
0122b7e3 754
d14a1e28
RD
755%pythoncode {
756EVT_FIND = wx.PyEventBinder( wxEVT_COMMAND_FIND, 1 )
757EVT_FIND_NEXT = wx.PyEventBinder( wxEVT_COMMAND_FIND_NEXT, 1 )
758EVT_FIND_REPLACE = wx.PyEventBinder( wxEVT_COMMAND_FIND_REPLACE, 1 )
759EVT_FIND_REPLACE_ALL = wx.PyEventBinder( wxEVT_COMMAND_FIND_REPLACE_ALL, 1 )
760EVT_FIND_CLOSE = wx.PyEventBinder( wxEVT_COMMAND_FIND_CLOSE, 1 )
0122b7e3 761
d14a1e28
RD
762%# For backwards compatibility. Should they be removed?
763EVT_COMMAND_FIND = EVT_FIND
764EVT_COMMAND_FIND_NEXT = EVT_FIND_NEXT
765EVT_COMMAND_FIND_REPLACE = EVT_FIND_REPLACE
766EVT_COMMAND_FIND_REPLACE_ALL = EVT_FIND_REPLACE_ALL
767EVT_COMMAND_FIND_CLOSE = EVT_FIND_CLOSE
768}
0122b7e3 769
0122b7e3 770
e5868095 771DocStr(wxFindDialogEvent,
d07d2bc9 772 "Events for the FindReplaceDialog", "");
e5868095 773
0122b7e3
RD
774class wxFindDialogEvent : public wxCommandEvent
775{
776public:
777 wxFindDialogEvent(wxEventType commandType = wxEVT_NULL, int id = 0);
e5868095
RD
778
779 DocDeclStr(
780 int , GetFlags(),
dce2bd22 781 "Get the currently selected flags: this is the combination of
d07d2bc9 782wx.FR_DOWN, wx.FR_WHOLEWORD and wx.FR_MATCHCASE flags.", "");
e5868095
RD
783
784 DocDeclStr(
785 const wxString& , GetFindString(),
d07d2bc9 786 "Return the string to find (never empty).", "");
e5868095
RD
787
788 DocDeclStr(
789 const wxString& , GetReplaceString(),
dce2bd22 790 "Return the string to replace the search string with (only for replace
d07d2bc9 791and replace all events).", "");
e5868095
RD
792
793 DocDeclStr(
794 wxFindReplaceDialog *, GetDialog(),
d07d2bc9 795 "Return the pointer to the dialog which generated this event.", "");
e5868095
RD
796
797 DocDeclStr(
798 void , SetFlags(int flags),
d07d2bc9 799 "", "");
e5868095
RD
800
801 DocDeclStr(
802 void , SetFindString(const wxString& str),
d07d2bc9 803 "", "");
e5868095
RD
804
805 DocDeclStr(
806 void , SetReplaceString(const wxString& str),
d07d2bc9 807 "", "");
0122b7e3
RD
808};
809
810
811
e5868095 812DocStr(wxFindReplaceData,
dce2bd22
RD
813"wx.FindReplaceData holds the data for wx.FindReplaceDialog. It is used
814to initialize the dialog with the default values and will keep the
815last values from the dialog when it is closed. It is also updated each
816time a `wx.FindDialogEvent` is generated so instead of using the
817`wx.FindDialogEvent` methods you can also directly query this object.
818
819Note that all SetXXX() methods may only be called before showing the
d07d2bc9 820dialog and calling them has no effect later.", "
dce2bd22
RD
821
822Flags
823-----
824 ================ ===============================================
825 wx.FR_DOWN Downward search/replace selected (otherwise,
826 upwards)
827
828 wx.FR_WHOLEWORD Whole word search/replace selected
829
830 wx.FR_MATCHCASE Case sensitive search/replace selected
831 (otherwise, case insensitive)
832 ================ ===============================================
e5868095
RD
833");
834
835
836
837
0122b7e3
RD
838class wxFindReplaceData : public wxObject
839{
840public:
e5868095
RD
841 DocCtorStr(
842 wxFindReplaceData(int flags=0),
d07d2bc9 843 "Constuctor initializes the flags to default value (0).", "");
e5868095 844
0122b7e3 845 ~wxFindReplaceData();
e5868095 846
0122b7e3 847
e5868095
RD
848 DocDeclStr(
849 const wxString& , GetFindString(),
d07d2bc9 850 "Get the string to find.", "");
e5868095
RD
851
852 DocDeclStr(
853 const wxString& , GetReplaceString(),
d07d2bc9 854 "Get the replacement string.", "");
e5868095
RD
855
856 DocDeclStr(
857 int , GetFlags(),
d07d2bc9 858 "Get the combination of flag values.", "");
e5868095
RD
859
860 DocDeclStr(
861 void , SetFlags(int flags),
d07d2bc9 862 "Set the flags to use to initialize the controls of the dialog.", "");
e5868095
RD
863
864 DocDeclStr(
865 void , SetFindString(const wxString& str),
d07d2bc9 866 "Set the string to find (used as initial value by the dialog).", "");
e5868095
RD
867
868 DocDeclStr(
869 void , SetReplaceString(const wxString& str),
d07d2bc9 870 "Set the replacement string (used as initial value by the dialog).", "");
e5868095 871
0122b7e3
RD
872};
873
874
e5868095
RD
875
876
877DocStr(wxFindReplaceDialog,
dce2bd22
RD
878"wx.FindReplaceDialog is a standard modeless dialog which is used to
879allow the user to search for some text (and possibly replace it with
880something else). The actual searching is supposed to be done in the
881owner window which is the parent of this dialog. Note that it means
882that unlike for the other standard dialogs this one must have a parent
883window. Also note that there is no way to use this dialog in a modal
d07d2bc9 884way; it is always, by design and implementation, modeless.", "
dce2bd22
RD
885
886
887Window Styles
888-------------
e5868095 889
dce2bd22
RD
890 ===================== =========================================
891 wx.FR_REPLACEDIALOG replace dialog (otherwise find dialog)
e5868095 892
dce2bd22 893 wx.FR_NOUPDOWN don't allow changing the search direction
e5868095 894
dce2bd22 895 wx.FR_NOMATCHCASE don't allow case sensitive searching
e5868095 896
dce2bd22
RD
897 wx.FR_NOWHOLEWORD don't allow whole word searching
898 ===================== =========================================
e5868095
RD
899");
900
ab1f7d2a
RD
901MustHaveApp(wxFindReplaceDialog);
902
0122b7e3
RD
903class wxFindReplaceDialog : public wxDialog {
904public:
2b9048c5
RD
905 %pythonAppend wxFindReplaceDialog "self._setOORInfo(self)"
906 %pythonAppend wxFindReplaceDialog() ""
d14a1e28 907
e5868095
RD
908 DocCtorStr(
909 wxFindReplaceDialog(wxWindow *parent,
910 wxFindReplaceData *data,
911 const wxString &title,
912 int style = 0),
dce2bd22 913 "Create a FindReplaceDialog. The parent and data parameters must be
d07d2bc9 914non-None. Use Show to display the dialog.", "");
e5868095
RD
915
916 DocCtorStrName(
917 wxFindReplaceDialog(),
d07d2bc9 918 "Precreate a FindReplaceDialog for 2-phase creation", "",
e5868095 919 PreFindReplaceDialog);
0122b7e3 920
e5868095
RD
921
922 DocDeclStr(
dce2bd22
RD
923 bool , Create(wxWindow *parent, wxFindReplaceData *data,
924 const wxString &title, int style = 0),
d07d2bc9 925 "Create the dialog, for 2-phase create.", "");
e5868095 926
0122b7e3 927
e5868095
RD
928 DocDeclStr(
929 const wxFindReplaceData *, GetData(),
d07d2bc9 930 "Get the FindReplaceData object used by this dialog.", "");
e5868095
RD
931
932 DocDeclStr(
933 void , SetData(wxFindReplaceData *data),
d07d2bc9 934 "Set the FindReplaceData object used by this dialog.", "");
e5868095 935
0122b7e3
RD
936};
937
d14a1e28
RD
938//---------------------------------------------------------------------------
939//---------------------------------------------------------------------------