]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/cocoa/msgdlg.h
move Read/Write() to common code, there was almost nothing platform-specific in it
[wxWidgets.git] / include / wx / cocoa / msgdlg.h
index af0d26b8f19ea2ca088a2ba78ddf520a18c15824..a490cf49d6674e684a99d5ce3744a6d10ea5e184 100644 (file)
@@ -3,6 +3,7 @@
 // Purpose:     wxMessageDialog class
 // Author:      Gareth Simpson
 // Created:     2007-10-29
+// RCS-ID:      $Id$
 // Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
@@ -24,54 +25,46 @@ DECLARE_WXCOCOA_OBJC_CLASS(NSAlert);
     #endif
 #endif
 
-#if defined(__WX_COMPILING_COCOA_MSGDLG_MM__) || wxUSE_COCOA_NATIVE_MSGDLG
+#if wxUSE_COCOA_NATIVE_MSGDLG
     #define wxMessageDialog wxCocoaMessageDialog
 #else
     #include "wx/generic/msgdlgg.h"
+
     #define wxMessageDialog wxGenericMessageDialog
 #endif
 
-//-------------------------------------------------------------------------
-// wxMsgDialog
-//-------------------------------------------------------------------------
-
+// ----------------------------------------------------------------------------
+// wxCocoaMessageDialog
+// ----------------------------------------------------------------------------
 
 
-class WXDLLEXPORT wxCocoaMessageDialog: public wxMessageDialogBase
+class WXDLLIMPEXP_CORE wxCocoaMessageDialog
+    : public wxMessageDialogWithCustomLabels
 {
-    DECLARE_DYNAMIC_CLASS(wxCocoaMessageDialog)
-    DECLARE_NO_COPY_CLASS(wxCocoaMessageDialog)
-
-
 public:
     wxCocoaMessageDialog(wxWindow *parent,
                     const wxString& message,
                     const wxString& caption = wxMessageBoxCaptionStr,
                     long style = wxOK|wxCENTRE,
                     const wxPoint& pos = wxDefaultPosition);
-                                               
-       virtual ~wxCocoaMessageDialog();
 
-       virtual int ShowModal();
-       
-    // customization of the message box
-    virtual bool SetYesNoLabels(const wxString& yes,const wxString& no);
-    virtual bool SetYesNoCancelLabels(const wxString& yes, const wxString& no, const wxString& cancel);
-    virtual bool SetOKLabel(const wxString& ok);
-    virtual bool SetOKCancelLabels(const wxString& ok, const wxString& cancel);
+    virtual int ShowModal();
 
 protected:
     // not supported for message dialog
     virtual void DoSetSize(int WXUNUSED(x), int WXUNUSED(y),
                            int WXUNUSED(width), int WXUNUSED(height),
                            int WXUNUSED(sizeFlags) = wxSIZE_AUTO) {}
-       
-private:
-       wxString m_yes,
-                        m_no,
-                        m_ok,
-                        m_cancel;
 
+    // override wxMessageDialogWithCustomLabels method to get rid of
+    // accelerators in the custom label strings
+    //
+    // VZ: I have no idea _why_ do we do this but the old version did and
+    //     I didn't want to change the existing behaviour
+    virtual void DoSetCustomLabel(wxString& var, const ButtonLabel& label);
+
+    DECLARE_DYNAMIC_CLASS(wxCocoaMessageDialog)
+    DECLARE_NO_COPY_CLASS(wxCocoaMessageDialog)
 };
 
 #endif // _WX_MSGDLG_H_