X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/e5b507581053d7a11b5c1419dc3ac5c31904236b..b9fc07ba8b7472e88089414e1d42e3df1774e9f3:/include/wx/generic/msgdlgg.h diff --git a/include/wx/generic/msgdlgg.h b/include/wx/generic/msgdlgg.h index 89044616a5..21db4aa32b 100644 --- a/include/wx/generic/msgdlgg.h +++ b/include/wx/generic/msgdlgg.h @@ -9,40 +9,48 @@ // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// -#ifndef __MSGDLGH_G__ -#define __MSGDLGH_G__ +#ifndef _WX_GENERIC_MSGDLGG_H_ +#define _WX_GENERIC_MSGDLGG_H_ -#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) -#pragma interface "msgdlgg.h" -#endif +class WXDLLIMPEXP_FWD_CORE wxSizer; -#include "wx/setup.h" -#include "wx/dialog.h" - -// type is an 'or' (|) of wxOK, wxCANCEL, wxYES_NO -// Returns wxYES/NO/OK/CANCEL - -extern WXDLLEXPORT_DATA(const wxChar*) wxMessageBoxCaptionStr; - -class WXDLLEXPORT wxGenericMessageDialog: public wxDialog, public wxMessageDialogBase +class WXDLLIMPEXP_CORE wxGenericMessageDialog : public wxMessageDialogBase { -DECLARE_DYNAMIC_CLASS(wxGenericMessageDialog) - public: - wxGenericMessageDialog(wxWindow *parent, const wxString& message, - const wxString& caption = wxMessageBoxCaptionStr, - long style = wxOK|wxCENTRE, const wxPoint& pos = wxDefaultPosition); + wxGenericMessageDialog(wxWindow *parent, + const wxString& message, + const wxString& caption = wxMessageBoxCaptionStr, + long style = wxOK|wxCENTRE, + const wxPoint& pos = wxDefaultPosition); + + virtual int ShowModal(); + +protected: + // Creates a message dialog taking any options that have been set after + // object creation into account such as custom labels. + void DoCreateMsgdialog(); void OnYes(wxCommandEvent& event); void OnNo(wxCommandEvent& event); + void OnHelp(wxCommandEvent& event); void OnCancel(wxCommandEvent& event); + // can be overridden to provide more contents to the dialog + virtual void AddMessageDialogCheckBox(wxSizer *WXUNUSED(sizer)) { } + virtual void AddMessageDialogDetails(wxSizer *WXUNUSED(sizer)) { } + private: + // Creates and returns a standard button sizer using the style of this + // dialog and the custom labels, if any. + // + // May return NULL on smart phone platforms not using buttons at all. + wxSizer *CreateMsgDlgButtonSizer(); + + wxPoint m_pos; + bool m_created; + DECLARE_EVENT_TABLE() + DECLARE_DYNAMIC_CLASS(wxGenericMessageDialog) }; -#if (!defined( __WXMSW__ ) && !defined( __WXMAC__) && !defined(__WXPM__)) || defined(__WXUNIVERSAL__) -#define wxMessageDialog wxGenericMessageDialog -#endif - -#endif // __MSGDLGH_G__ +#endif // _WX_GENERIC_MSGDLGG_H_