X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/23e00c551b1d9b109a0f82ae2906dea0cd4718c2..12bb29f5432174ecbd65549bda832d70d34a98ae:/src/cocoa/msgdlg.mm diff --git a/src/cocoa/msgdlg.mm b/src/cocoa/msgdlg.mm index fce905f6ba..b14a70ba61 100644 --- a/src/cocoa/msgdlg.mm +++ b/src/cocoa/msgdlg.mm @@ -31,6 +31,7 @@ #include "wx/cocoa/autorelease.h" #include "wx/cocoa/string.h" +#include "wx/modalhook.h" #import // ============================================================================ @@ -63,7 +64,7 @@ wxCocoaMessageDialog::wxCocoaMessageDialog(wxWindow *parent, m_cocoaNSView = nil; } -void wxCocoaMessageDialog::DoSetCustomLabel(wxString& var, const wxString& value) +void wxCocoaMessageDialog::DoSetCustomLabel(wxString& var, const ButtonLabel& value) { wxMessageDialogWithCustomLabels::DoSetCustomLabel(var, value); @@ -72,6 +73,8 @@ void wxCocoaMessageDialog::DoSetCustomLabel(wxString& var, const wxString& value int wxCocoaMessageDialog::ShowModal() { + WX_HOOK_MODAL_DIALOG(); + wxAutoNSAutoreleasePool thePool; NSAlert *alert = [[[NSAlert alloc] init] autorelease]; @@ -79,14 +82,17 @@ int wxCocoaMessageDialog::ShowModal() const long style = GetMessageDialogStyle(); NSAlertStyle nsStyle = NSInformationalAlertStyle; - if (style & wxICON_EXCLAMATION) - nsStyle = NSWarningAlertStyle; - else if (style & wxICON_HAND) - nsStyle = NSCriticalAlertStyle; - else if (style & wxICON_INFORMATION) - nsStyle = NSInformationalAlertStyle; - else if (style & wxICON_QUESTION) - nsStyle = NSInformationalAlertStyle; + + switch ( GetEffectiveIcon() ) + { + case wxICON_ERROR: + nsStyle = NSCriticalAlertStyle; + break; + + case wxICON_WARNING: + nsStyle = NSWarningAlertStyle; + break; + } [alert setAlertStyle:nsStyle];