X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/426d19f1391a685de14a71b9fc4339bb929e441a..75504144d2ee5ce2bc62d186f04b2d445c2048c5:/src/gtk/msgdlg.cpp diff --git a/src/gtk/msgdlg.cpp b/src/gtk/msgdlg.cpp index ca2fa78303..eee220b449 100644 --- a/src/gtk/msgdlg.cpp +++ b/src/gtk/msgdlg.cpp @@ -25,6 +25,7 @@ #endif #include "wx/gtk/private.h" +#include "wx/gtk/private/messagetype.h" #include "wx/gtk/private/mnemonics.h" #include @@ -89,19 +90,26 @@ void wxMessageDialog::GTKCreateMsgDialog() GtkWindow * const parent = m_parent ? GTK_WINDOW(m_parent->m_widget) : NULL; #if wxUSE_LIBHILDON || wxUSE_LIBHILDON2 - const char *stockIcon; - if ( m_dialogStyle & wxICON_NONE ) - stockIcon = ""; - else if ( m_dialogStyle & wxICON_ERROR ) - stockIcon = "qgn_note_gene_syserror"; - else if ( m_dialogStyle & wxICON_EXCLAMATION ) - stockIcon = "qgn_note_gene_syswarning"; - else if ( m_dialogStyle & wxICON_INFORMATION ) - stockIcon = "qgn_note_info"; - else if ( m_dialogStyle & wxICON_QUESTION ) - stockIcon = "qgn_note_confirm"; - else - stockIcon = ""; + const char *stockIcon = ""; + + switch ( GetEffectiveIcon() ) + { + case wxICON_ERROR: + stockIcon = "qgn_note_gene_syserror"; + break; + + case wxICON_WARNING: + stockIcon = "qgn_note_gene_syswarning"; + break; + + case wxICON_QUESTION: + stockIcon = "qgn_note_confirm"; + break; + + case wxICON_INFORMATION: + stockIcon = "qgn_note_info"; + break; + } // there is no generic note creation function in public API so we have no // choice but to use g_object_new() directly @@ -137,20 +145,7 @@ void wxMessageDialog::GTKCreateMsgDialog() } } -#ifdef __WXGTK210__ - if ( gtk_check_version(2, 10, 0) == NULL && (m_dialogStyle & wxICON_NONE)) - type = GTK_MESSAGE_OTHER; - else -#endif // __WXGTK210__ - if (m_dialogStyle & wxICON_EXCLAMATION) - type = GTK_MESSAGE_WARNING; - else if (m_dialogStyle & wxICON_ERROR) - type = GTK_MESSAGE_ERROR; - else if (m_dialogStyle & wxICON_INFORMATION) - type = GTK_MESSAGE_INFO; - else if (m_dialogStyle & wxICON_QUESTION) - type = GTK_MESSAGE_QUESTION; - else + if ( !wxGTKImpl::ConvertMessageTypeFromWX(GetEffectiveIcon(), &type) ) { // if no style is explicitly specified, detect the suitable icon // ourselves (this can be disabled by using wxICON_NONE)