wxWidgets/interface/msgdlg.h

202 lines
5.8 KiB
C
Raw Normal View History

/////////////////////////////////////////////////////////////////////////////
// Name: msgdlg.h
// Purpose: interface of wxMessageDialog
// Author: wxWidgets team
// RCS-ID: $Id$
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
/**
@class wxMessageDialog
@wxheader{msgdlg.h}
This class represents a dialog that shows a single or multi-line message,
with a choice of OK, Yes, No and Cancel buttons.
@library{wxcore}
@category{cmndlg}
@see @ref overview_wxmessagedialogoverview "wxMessageDialog overview"
*/
class wxMessageDialog : public wxDialog
{
public:
/**
Constructor. Use ShowModal() to show the dialog.
@param parent
Parent window.
@param message
Message to show on the dialog.
@param caption
The dialog caption.
@param style
A dialog style (bitlist) containing flags chosen from the following:
wxOK
Show an OK button.
wxCANCEL
Show a Cancel button.
wxYES_NO
Show Yes and No buttons.
wxYES_DEFAULT
Used with wxYES_NO, makes Yes button the default - which is the default
behaviour.
wxNO_DEFAULT
Used with wxYES_NO, makes No button the default.
wxICON_EXCLAMATION
Shows an exclamation mark icon.
wxICON_HAND
Shows an error icon.
wxICON_ERROR
Shows an error icon - the same as wxICON_HAND.
wxICON_QUESTION
Shows a question mark icon.
wxICON_INFORMATION
Shows an information (i) icon.
wxSTAY_ON_TOP
The message box stays on top of all other window, even those of the other
applications (Windows only).
@param pos
Dialog position. Not Windows.
*/
wxMessageDialog(wxWindow* parent, const wxString& message,
const wxString& caption = "Message box",
long style = wxOK | wxCANCEL,
const wxPoint& pos = wxDefaultPosition);
/**
Destructor.
*/
~wxMessageDialog();
/**
Sets the extended message for the dialog: this message is usually an extension
of the short message specified in the constructor or set with
SetMessage(). If it is set, the main message
appears highlighted -- if supported -- and this message appears beneath it in
normal font. On the platforms which don't support extended messages, it is
simply appended to the normal message with a new line separating them.
*/
void SetExtendedMessage(const wxString exMsg);
/**
Sets the message shown by the dialog.
*/
void SetMessage(const wxString msg);
/**
Overrides the default labels of the OK and Cancel buttons.
Please see the remarks in
SetYesNoLabels() documentation.
*/
bool SetOKCancelLabels(const wxString ok, const wxString cancel);
/**
Overrides the default label of the OK button.
Please see the remarks in
SetYesNoLabels() documentation.
*/
bool SetOKLabel(const wxString ok);
/**
Overrides the default labels of the Yes, No and Cancel buttons.
Please see the remarks in
SetYesNoLabels() documentation.
*/
bool SetYesNoCancelLabels(const wxString yes, const wxString no,
const wxString cancel);
/**
Overrides the default labels of the Yes and No buttons.
Notice that this function is not currently available on all platforms, so it
may return @false to indicate that the labels couldn't be changed. If it
returns @true (currently only under wxMac), the labels were set successfully.
Typically, if the function was used successfully, the main dialog message may
need to be changed, e.g.:
*/
bool SetYesNoLabels(const wxString yes, const wxString no);
/**
Shows the dialog, returning one of wxID_OK, wxID_CANCEL, wxID_YES, wxID_NO.
*/
int ShowModal();
};
// ============================================================================
// Global functions/macros
// ============================================================================
/** @ingroup group_funcmacro_dialog */
//@{
/**
General purpose message dialog. @c style may be a bit list of the
following identifiers:
@beginStyleTable
@style{wxYES_NO}
Puts Yes and No buttons on the message box. May be combined with
wxCANCEL.
@style{wxCANCEL}
Puts a Cancel button on the message box. May only be combined with
wxYES_NO or wxOK.
@style{wxOK}
Puts an Ok button on the message box. May be combined with wxCANCEL.
@style{wxICON_EXCLAMATION}
Displays an exclamation mark symbol.
@style{wxICON_HAND}
Displays an error symbol.
@style{wxICON_ERROR}
Displays an error symbol - the same as wxICON_HAND.
@style{wxICON_QUESTION}
Displays a question mark symbol.
@style{wxICON_INFORMATION}
Displays an information symbol.
The return value is one of: wxYES, wxNO, wxCANCEL, wxOK. For example:
@code
int answer = wxMessageBox("Quit program?", "Confirm",
wxYES_NO | wxCANCEL, main_frame);
if (answer == wxYES)
main_frame->Close();
@endcode
@a message may contain newline characters, in which case the message will
be split into separate lines, to cater for large messages.
@header{wx/msgdlg.h}
*/
int wxMessageBox(const wxString& message,
const wxString& caption = "Message",
int style = wxOK,
wxWindow* parent = NULL,
int x = -1, int y = -1);
//@}