X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/ae3c17b4013e80b99976c750c19fca47729517f6..b02dd12239c8a59b9a545d9fcb04974f8ad02c6b:/interface/wx/choicdlg.h?ds=sidebyside diff --git a/interface/wx/choicdlg.h b/interface/wx/choicdlg.h index 734cecc83c..ff49376afc 100644 --- a/interface/wx/choicdlg.h +++ b/interface/wx/choicdlg.h @@ -3,12 +3,11 @@ // Purpose: interface of wx[Multi|Single]ChoiceDialog // Author: wxWidgets team // RCS-ID: $Id$ -// Licence: wxWindows license +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// /** @class wxMultiChoiceDialog - @wxheader{choicdlg.h} This class represents a dialog that shows a list of strings, and allows the user to select one or more. @@ -61,12 +60,58 @@ public: strings. @endWxPythonOnly + + @beginWxPerlOnly + Not supported by wxPerl. + @endWxPerlOnly */ wxMultiChoiceDialog(wxWindow* parent, const wxString& message, const wxString& caption, int n, const wxString* choices, long style = wxCHOICEDLG_STYLE, const wxPoint& pos = wxDefaultPosition); + /** + Constructor taking an array of wxString choices. + + @param parent + Parent window. + @param message + Message to show on the dialog. + @param caption + The dialog caption. + @param choices + An array of strings, or a string list, containing the choices. + @param style + A dialog style (bitlist) containing flags chosen from standard + dialog style and the ones listed below. The default value is + equivalent to wxDEFAULT_DIALOG_STYLE | wxRESIZE_BORDER | wxOK | + wxCANCEL | wxCENTRE. + @param pos + Dialog position. Not Windows. + + @beginStyleTable + @style{wxOK} + Show an OK button. + @style{wxCANCEL} + Show a Cancel button. + @style{wxCENTRE} + Centre the message. Not Windows. + @endStyleTable + + @remarks Use ShowModal() to show the dialog. + + @beginWxPythonOnly + + For Python the two parameters @a n and @a choices are collapsed into a + multi parameter @a choices which is expected to be a Python list of + strings. + + @endWxPythonOnly + + @beginWxPerlOnly + Use an array reference for the @a choices parameter. + @endWxPerlOnly + */ wxMultiChoiceDialog(wxWindow* parent, const wxString& message, const wxString& caption, @@ -78,12 +123,12 @@ public: /** Returns array with indexes of selected items. */ - wxArrayInt GetSelection() const; + wxArrayInt GetSelections() const; /** Sets selected items from the array of selected items' indexes. */ - void SetSelections(const wxArrayInt& selections) const; + void SetSelections(const wxArrayInt& selections); /** Shows the dialog, returning either wxID_OK or wxID_CANCEL. @@ -95,7 +140,6 @@ public: /** @class wxSingleChoiceDialog - @wxheader{choicdlg.h} This class represents a dialog that shows a list of strings, and allows the user to select one. Double-clicking on a list item is equivalent to @@ -126,7 +170,7 @@ public: An array of strings, or a string list, containing the choices. @param clientData An array of client data to be associated with the items. See - GetSelectionClientData(). + GetSelectionData(). @param style A dialog style (bitlist) containing flags chosen from standard dialog styles and the ones listed below. The default value is @@ -153,6 +197,10 @@ public: strings. @endWxPythonOnly + + @beginWxPerlOnly + Not supported by wxPerl. + @endWxPerlOnly */ wxSingleChoiceDialog(wxWindow* parent, const wxString& message, const wxString& caption, @@ -160,6 +208,52 @@ public: void** clientData = NULL, long style = wxCHOICEDLG_STYLE, const wxPoint& pos = wxDefaultPosition); + /** + Constructor, taking an array of wxString choices and optional client + data. + + @param parent + Parent window. + @param message + Message to show on the dialog. + @param caption + The dialog caption. + @param choices + An array of strings, or a string list, containing the choices. + @param clientData + An array of client data to be associated with the items. See + GetSelectionData(). + @param style + A dialog style (bitlist) containing flags chosen from standard + dialog styles and the ones listed below. The default value is + equivalent to wxDEFAULT_DIALOG_STYLE | wxRESIZE_BORDER | wxOK | + wxCANCEL | wxCENTRE. + @param pos + Dialog position. Not Windows. + + @beginStyleTable + @style{wxOK} + Show an OK button. + @style{wxCANCEL} + Show a Cancel button. + @style{wxCENTRE} + Centre the message. Not Windows. + @endStyleTable + + @remarks Use ShowModal() to show the dialog. + + @beginWxPythonOnly + + For Python the two parameters @a n and @a choices are collapsed into a + multi parameter @a choices which is expected to be a Python list of + strings. + + @endWxPythonOnly + + @beginWxPerlOnly + Use an array reference for the @a choices parameter. + @endWxPerlOnly + */ wxSingleChoiceDialog(wxWindow* parent, const wxString& message, const wxString& caption, @@ -176,8 +270,10 @@ public: /** Returns the client data associated with the selection. + + @since 2.9.4 */ - char* GetSelectionClientData() const; + void* GetSelectionData() const; /** Returns the selected string. @@ -187,7 +283,7 @@ public: /** Sets the index of the initially selected item. */ - void SetSelection(int selection) const; + void SetSelection(int selection); /** Shows the dialog, returning either wxID_OK or wxID_CANCEL. @@ -201,7 +297,7 @@ public: // Global functions/macros // ============================================================================ -/** @ingroup group_funcmacro_dialog */ +/** @addtogroup group_funcmacro_dialog */ //@{ /** @@ -209,6 +305,10 @@ public: selected string. If the user pressed cancel, -1 is returned. @header{wx/choicdlg.h} + + @beginWxPerlOnly + Use an array reference for the @a aChoices parameter. + @endWxPerlOnly */ int wxGetSingleChoiceIndex(const wxString& message, const wxString& caption, @@ -218,7 +318,9 @@ int wxGetSingleChoiceIndex(const wxString& message, int y = -1, bool centre = true, int width = 150, - int height = 200); + int height = 200, + int initialSelection = 0); + int wxGetSingleChoiceIndex(const wxString& message, const wxString& caption, int n, @@ -228,11 +330,24 @@ int wxGetSingleChoiceIndex(const wxString& message, int y = -1, bool centre = true, int width = 150, - int height = 200); + int height = 200, + int initialSelection = 0); + + +int wxGetSingleChoiceIndex(const wxString& message, + const wxString& caption, + const wxArrayString& choices, + int initialSelection, + wxWindow *parent = NULL); +int wxGetSingleChoiceIndex(const wxString& message, + const wxString& caption, + int n, const wxString *choices, + int initialSelection, + wxWindow *parent = NULL); //@} -/** @ingroup group_funcmacro_dialog */ +/** @addtogroup group_funcmacro_dialog */ //@{ /** @@ -250,6 +365,10 @@ int wxGetSingleChoiceIndex(const wxString& message, characters) is centred; if @false, the message is left-justified. @header{wx/choicdlg.h} + + @beginWxPerlOnly + Use an array reference for the @a choices parameter. + @endWxPerlOnly */ wxString wxGetSingleChoice(const wxString& message, const wxString& caption, @@ -259,7 +378,8 @@ wxString wxGetSingleChoice(const wxString& message, int y = -1, bool centre = true, int width = 150, - int height = 200); + int height = 200 + int initialSelection = 0); wxString wxGetSingleChoice(const wxString& message, const wxString& caption, int n, @@ -269,11 +389,25 @@ wxString wxGetSingleChoice(const wxString& message, int y = -1, bool centre = true, int width = 150, - int height = 200); + int height = 200 + int initialSelection = 0); + + +wxString wxGetSingleChoice(const wxString& message, + const wxString& caption, + const wxArrayString& choices, + int initialSelection, + wxWindow *parent = NULL); + +wxString wxGetSingleChoice(const wxString& message, + const wxString& caption, + int n, const wxString *choices, + int initialSelection, + wxWindow *parent = NULL); //@} -/** @ingroup group_funcmacro_dialog */ +/** @addtogroup group_funcmacro_dialog */ //@{ /** @@ -283,6 +417,10 @@ wxString wxGetSingleChoice(const wxString& message, of elements as @c choices or @c aChoices! @header{wx/choicdlg.h} + + @beginWxPerlOnly + Use an array reference for the @a aChoices and @a client_data parameters. + @endWxPerlOnly */ wxString wxGetSingleChoiceData(const wxString& message, const wxString& caption, @@ -293,7 +431,9 @@ wxString wxGetSingleChoiceData(const wxString& message, int y = -1, bool centre = true, int width = 150, - int height = 200); + int height = 200 + int initialSelection = 0); + wxString wxGetSingleChoiceData(const wxString& message, const wxString& caption, int n, @@ -304,11 +444,26 @@ wxString wxGetSingleChoiceData(const wxString& message, int y = -1, bool centre = true, int width = 150, - int height = 200); + int height = 200 + int initialSelection = 0); + +void* wxGetSingleChoiceData(const wxString& message, + const wxString& caption, + const wxArrayString& choices, + void **client_data, + int initialSelection, + wxWindow *parent = NULL); + +void* wxGetSingleChoiceData(const wxString& message, + const wxString& caption, + int n, const wxString *choices, + void **client_data, + int initialSelection, + wxWindow *parent = NULL); //@} -/** @ingroup group_funcmacro_dialog */ +/** @addtogroup group_funcmacro_dialog */ //@{ /** @@ -316,7 +471,8 @@ wxString wxGetSingleChoiceData(const wxString& message, multiple-selection listbox. The user may choose an arbitrary (including 0) number of items in the listbox whose indices will be returned in @c selections array. The initial contents of this array will be used to - select the items when the dialog is shown. + select the items when the dialog is shown. If the user cancels the dialog, + the function returns -1 and @c selections array is left unchanged. You may pass the list of strings to choose from either using @c choices which is an array of @a n strings for the listbox or by using a single @@ -326,8 +482,14 @@ wxString wxGetSingleChoiceData(const wxString& message, characters) is centred; if @false, the message is left-justified. @header{wx/choicdlg.h} + + @beginWxPerlOnly + Use an array reference for the @a choices parameter. + In wxPerl there is no @a selections parameter; the function + returns an array containing the user selections. + @endWxPerlOnly */ -size_t wxGetMultipleChoices(wxArrayInt& selections, +int wxGetSelectedChoices(wxArrayInt& selections, const wxString& message, const wxString& caption, const wxArrayString& aChoices, @@ -337,7 +499,8 @@ size_t wxGetMultipleChoices(wxArrayInt& selections, bool centre = true, int width = 150, int height = 200); -size_t wxGetMultipleChoices(wxArrayInt& selections, + +int wxGetSelectedChoices(wxArrayInt& selections, const wxString& message, const wxString& caption, int n,