X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/6ace5176f6f3f0c841ff29294a517f3c862b8ddc..89fad939ec0d423961d8e93b2a0927f5b77bf256:/src/motif/msgdlg.cpp diff --git a/src/motif/msgdlg.cpp b/src/motif/msgdlg.cpp index 8cb73db371..fe8e598e30 100644 --- a/src/motif/msgdlg.cpp +++ b/src/motif/msgdlg.cpp @@ -13,10 +13,6 @@ // declarations // ============================================================================ -#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) - #pragma implementation "msgdlg.h" -#endif - // ---------------------------------------------------------------------------- // headers // ---------------------------------------------------------------------------- @@ -24,12 +20,10 @@ // For compilers that support precompilation, includes "wx.h". #include "wx/wxprec.h" -#include "wx/defs.h" - #ifdef __VMS #define XtDisplay XTDISPLAY #pragma message disable nosimpint -#include +#include "wx/vms_x_fix.h" #endif #include @@ -39,11 +33,15 @@ #pragma message enable nosimpint #endif -#include "wx/app.h" -#include "wx/intl.h" #include "wx/msgdlg.h" + +#ifndef WX_PRECOMP + #include "wx/intl.h" + #include "wx/app.h" + #include "wx/settings.h" +#endif + #include "wx/motif/private.h" -#include "wx/settings.h" // ---------------------------------------------------------------------------- // macros @@ -113,11 +111,16 @@ wxMessageDialog::wxMessageDialog(wxWindow *parent, SetMessageDialogStyle(style); } +extern "C" +{ + typedef Widget (*DialogCreateFunction)(Widget, String, ArgList, Cardinal); +} + int wxMessageDialog::ShowModal() { - Widget (*dialogCreateFunction)(Widget, String, ArgList, Cardinal) = NULL; const long style = GetMessageDialogStyle(); + DialogCreateFunction dialogCreateFunction; if ( style & wxYES_NO ) { // if we have [Yes], it must be a question @@ -173,22 +176,19 @@ int wxMessageDialog::ShowModal() wxFont font = wxSystemSettings::GetFont(wxSYS_DEFAULT_GUI_FONT); - if ( wxFont::GetFontTag() == (WXString) XmNfontList ) - { - XtSetArg(args[ac], XmNbuttonFontList, font.GetFontTypeC(dpy)); ac++; - XtSetArg(args[ac], XmNlabelFontList, font.GetFontTypeC(dpy)); ac++; - XtSetArg(args[ac], XmNtextFontList, font.GetFontTypeC(dpy)); ac++; - } - else - { - XtSetArg(args[ac], XmNbuttonRenderTable, font.GetFontTypeC(dpy)); ac++; - XtSetArg(args[ac], XmNlabelRenderTable, font.GetFontTypeC(dpy)); ac++; - XtSetArg(args[ac], XmNtextRenderTable, font.GetFontTypeC(dpy)); ac++; - } +#if __WXMOTIF20__ && !__WXLESSTIF__ + XtSetArg(args[ac], XmNbuttonRenderTable, font.GetFontTypeC(dpy)); ac++; + XtSetArg(args[ac], XmNlabelRenderTable, font.GetFontTypeC(dpy)); ac++; + XtSetArg(args[ac], XmNtextRenderTable, font.GetFontTypeC(dpy)); ac++; +#else + XtSetArg(args[ac], XmNbuttonFontList, font.GetFontTypeC(dpy)); ac++; + XtSetArg(args[ac], XmNlabelFontList, font.GetFontTypeC(dpy)); ac++; + XtSetArg(args[ac], XmNtextFontList, font.GetFontTypeC(dpy)); ac++; +#endif // do create message box - Widget wMsgBox = (*dialogCreateFunction)(wParent, "", args, ac); + Widget wMsgBox = (*dialogCreateFunction)(wParent, wxMOTIF_STR(""), args, ac); wxCHECK_MSG( wMsgBox, wxID_CANCEL, "msg box creation failed" ); @@ -269,4 +269,3 @@ int wxMessageDialog::ShowModal() return m_result; } -