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