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
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" );