This class represents a dialog that shows a single or multi-line message,
with a choice of OK, Yes, No and Cancel buttons.
+ @beginStyleTable
+ @style{wxOK}
+ Puts an Ok button in the message box. May be combined with @c wxCANCEL.
+ @style{wxCANCEL}
+ Puts a Cancel button in the message box. Must be combined with
+ either @c wxOK or @c wxYES_NO.
+ @style{wxYES_NO}
+ Puts Yes and No buttons in the message box. May be combined with
+ @c wxCANCEL.
+ @style{wxNO_DEFAULT}
+ Makes the "No" button default, can only be used with @c wxYES_NO.
+ @style{wxCANCEL_DEFAULT}
+ Makes the "Cancel" button default, can only be used with @c wxCANCEL
+ @style{wxYES_DEFAULT}
+ Makes the "Yes" button default, this is the default behaviour and
+ this flag exists solely for symmetry with @c wxNO_DEFAULT.
+ @style{wxOK_DEFAULT}
+ Makes the "OK" button default, this is the default behaviour and
+ this flag exists solely for symmetry with @c wxCANCEL_DEFAULT.
+ @style{wxICON_EXCLAMATION}
+ Displays an exclamation mark symbol.
+ @style{wxICON_ERROR}
+ Displays an error symbol.
+ @style{wxICON_HAND}
+ Displays an error symbol, this is a MSW-inspired synonym for @c wxICON_ERROR.
+ @style{wxICON_QUESTION}
+ Displays a question mark symbol. This icon is automatically used
+ with @c wxYES_NO so it's usually unnecessary to specify it explicitly.
+ @style{wxICON_INFORMATION}
+ Displays an information symbol. This icon is used by default if
+ @c wxYES_NO is not given so it is usually unnecessary to specify it
+ explicitly.
+ @style{wxSTAY_ON_TOP}
+ Makes the message box stay on top of all other windows (currently
+ implemented only under MSW).
+ @endStyleTable
+
@library{wxcore}
@category{cmndlg}
- @see @ref overview_wxmessagedialogoverview "wxMessageDialog overview"
+ @see @ref overview_cmndlg_msg
*/
class wxMessageDialog : public wxDialog
{
public:
/**
Constructor specifying the message box properties.
-
Use ShowModal() to show the dialog.
- @a style may be a bit list of the following identifiers:
-
- @beginStyleTable
- @style{wxOK}
- Puts an Ok button in the message box. May be combined with @c
- wxCANCEL.
- @style{wxCANCEL}
- Puts a Cancel button in the message box. Must be combined with
- either @c wxOK or @c wxYES_NO.
- @style{wxYES_NO}
- Puts Yes and No buttons in the message box. May be combined with
- @c wxCANCEL.
- @style{wxNO_DEFAULT}
- Makes the "No" button default, can only be used with @c wxYES_NO.
- @style{wxYES_DEFAULT}
- Makes the "Yes" button default, this is the default behaviour and
- this flag exists solely for symmetry with @c wxNO_DEFAULT.
- @style{wxICON_EXCLAMATION}
- Displays an exclamation mark symbol.
- @style{wxICON_ERROR}
- Displays an error symbol.
- @style{wxICON_HAND}
- Displays an error symbol, this is a MSW-inspired synonym for @c
- wxICON_ERROR.
- @style{wxICON_QUESTION}
- Displays a question mark symbol. This icon is automatically used
- with @c wxYES_NO so it's usually unnecessary to specify it
- explicitly.
- @style{wxICON_INFORMATION}
- Displays an information symbol. This icon is used by default if @c
- wxYES_NO is not given so it is usually unnecessary to specify it
- explicitly.
- @style{wxSTAY_ON_TOP}
- Makes the message box stay on top of all other windows (currently
- implemented only under MSW).
- @endStyleTable
+ @a style may be a bit list of the identifiers described above.
+
+ Notice that not all styles are compatible: only one of @c wxOK and
+ @c wxYES_NO may be specified (and one of them must be specified) and at
+ most one default button style can be used and it is only valid if the
+ corresponding button is shown in the message box.
@param parent
Parent window.
Dialog position (ignored under MSW).
*/
wxMessageDialog(wxWindow* parent, const wxString& message,
- const wxString& caption = "Message box",
- long style = wxOK | wxCANCEL,
+ const wxString& caption = wxMessageBoxCaptionStr,
+ long style = wxOK | wxCENTRE,
const wxPoint& pos = wxDefaultPosition);
/**
which don't support extended messages, it is simply appended to the
normal message with a new line separating them.
*/
- void SetExtendedMessage(const wxString extendedMessage);
+ virtual void SetExtendedMessage(const wxString& extendedMessage);
/**
Sets the message shown by the dialog.
*/
- void SetMessage(const wxString msg);
+ virtual void SetMessage(const wxString& message);
/**
Overrides the default labels of the OK and Cancel buttons.
Please see the remarks in SetYesNoLabels() documentation.
*/
- bool SetOKCancelLabels(const ButtonLabel& ok, const ButtonLabel& cancel);
+ virtual bool SetOKCancelLabels(const ButtonLabel& ok,
+ const ButtonLabel& cancel);
/**
Overrides the default label of the OK button.
Please see the remarks in SetYesNoLabels() documentation.
*/
- bool SetOKLabel(const ButtonLabel& ok);
+ virtual bool SetOKLabel(const ButtonLabel& ok);
/**
Overrides the default labels of the Yes, No and Cancel buttons.
Please see the remarks in SetYesNoLabels() documentation.
*/
- bool SetYesNoCancelLabels(const ButtonLabel& yes, const ButtonLabel& no,
- const ButtonLabel& cancel);
+ virtual bool SetYesNoCancelLabels(const ButtonLabel& yes,
+ const ButtonLabel& no,
+ const ButtonLabel& cancel);
/**
Overrides the default labels of the Yes and No buttons.
dlg.SetMessage(_("Do you really want to quit?"));
@endcode
*/
- bool SetYesNoLabels(const ButtonLabel& yes, const ButtonLabel& no);
+ virtual bool SetYesNoLabels(const ButtonLabel& yes, const ButtonLabel& no);
/**
- Shows the dialog, returning one of wxID_OK, wxID_CANCEL, wxID_YES,
- wxID_NO.
+ Shows the dialog, returning one of wxID_OK, wxID_CANCEL, wxID_YES, wxID_NO.
Notice that this method returns the identifier of the button which was
clicked unlike wxMessageBox() function.
*/
- int ShowModal();
+ virtual int ShowModal();
};