// Name: msgdlg.h
// Purpose: interface of wxMessageDialog
// Author: wxWidgets team
-// RCS-ID: $Id$
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
+/**
+ Default message box caption string.
+*/
+const char wxMessageBoxCaptionStr[] = "Message";
+
+
/**
@class wxMessageDialog
appearance or be specially positioned if its label is not changed from
the default one. Notice that using this button is not supported when
showing a message box from non-main thread in wxOSX/Cocoa and it is not
- supported in wxOSX/Carbon at all. @since 2.9.3.
+ supported in wxOSX/Carbon at all. Available since wxWidgets 2.9.3.
@style{wxNO_DEFAULT}
Makes the "No" button default, can only be used with @c wxYES_NO.
@style{wxCANCEL_DEFAULT}
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{wxICON_AUTH_NEEDED}
+ Displays an authentication needed symbol. This style is only supported
+ for message dialogs under wxMSW when a task dialog is used to implement
+ them (i.e. when running under Windows Vista or later). In other cases
+ the default icon selection logic will be used. Note this can be
+ combined with other styles to provide a fallback. For instance, using
+ wxICON_AUTH_NEEDED | wxICON_QUESTION will show a shield symbol on
+ Windows Vista or above and a question symbol on other platforms.
+ Available since wxWidgets 2.9.5
@style{wxSTAY_ON_TOP}
Makes the message box stay on top of all other windows and not only
just its parent (currently implemented only under MSW and GTK).
class wxMessageDialog : public wxDialog
{
public:
+ /**
+ Helper class allowing to use either stock id or string labels.
+
+ This class should never be used explicitly and is not really part of
+ wxWidgets API but rather is just an implementation helper allowing the
+ methods such as SetYesNoLabels() and SetOKCancelLabels() below to be
+ callable with either stock ids (e.g. ::wxID_CLOSE) or strings
+ ("&Close").
+ */
+ class ButtonLabel
+ {
+ public:
+ /// Construct the label from a stock id.
+ ButtonLabel(int stockId);
+
+ /// Construct the label from the specified string.
+ ButtonLabel(const wxString& label);
+
+ /**
+ Return the associated label as string.
+
+ Get the string label, whether it was originally specified directly
+ or as a stock id -- this is only useful for platforms without native
+ stock items id support
+ */
+ wxString GetAsString() const;
+
+ /**
+ Return the stock id or wxID_NONE if this is not a stock label.
+ */
+ int GetStockId() const;
+ };
+
/**
Constructor specifying the message box properties.
Use ShowModal() to show the dialog.
for @a x and @a y to let the system position the window.
@param y
Vertical dialog position (ignored under MSW).
+
@header{wx/msgdlg.h}
*/
int wxMessageBox(const wxString& message,
- const wxString& caption = "Message",
- int style = wxOK,
+ const wxString& caption = wxMessageBoxCaptionStr,
+ int style = wxOK | wxCENTRE,
wxWindow* parent = NULL,
int x = wxDefaultCoord,
int y = wxDefaultCoord);