]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/generic/msgdlgg.h
Implement monitoring of file descriptors in wxMotif event loop.
[wxWidgets.git] / include / wx / generic / msgdlgg.h
index 864bffd3670115e73c87307e57fca8bdee461d78..21db4aa32b672c0c78dcbb13da12e1d67d95ae88 100644 (file)
@@ -1,51 +1,56 @@
 /////////////////////////////////////////////////////////////////////////////
-// Name:        msgdlgg.h
+// Name:        wx/generic/msgdlgg.h
 // Purpose:     Generic wxMessageDialog
 // Author:      Julian Smart
 // Modified by:
 // Created:     01/02/97
 // RCS-ID:      $Id$
-// Copyright:   (c)
-// Licence:    wxWindows licence
+// Copyright:   (c) Julian Smart
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
-#ifndef __MSGDLGH_G__
-#define __MSGDLGH_G__
+#ifndef _WX_GENERIC_MSGDLGG_H_
+#define _WX_GENERIC_MSGDLGG_H_
 
-#if defined(__GNUG__) && !defined(__APPLE__)
-#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
-
-WXDLLEXPORT_DATA(extern const wxChar*) wxMessageBoxCaptionStr;
-
-class WXDLLEXPORT wxGenericMessageDialog: public wxDialog
+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:
-    long m_dialogStyle;
+    // 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_