X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/997c7e4616fc41fb571553a8998d1f13ff90b278..77c8efc8c37da6d6a5e2e8022d21d1cd7d76371d:/src/common/msgout.cpp diff --git a/src/common/msgout.cpp b/src/common/msgout.cpp index da9af7b1d9..9647088067 100644 --- a/src/common/msgout.cpp +++ b/src/common/msgout.cpp @@ -118,7 +118,13 @@ void wxMessageOutputBest::Output(const wxString& str) return; } - ::MessageBox(NULL, str.wx_str(), NULL, MB_ICONINFORMATION | MB_OK); + wxString title; + if ( wxTheApp ) + title = wxTheApp->GetAppDisplayName(); + else // Use some title to avoid default "Error" + title = _("Message"); + + ::MessageBox(NULL, str.t_str(), title.t_str(), MB_ICONINFORMATION | MB_OK); #else // !__WINDOWS__ // TODO: use the native message box for the other ports too wxMessageOutputStderr::Output(str); @@ -140,12 +146,15 @@ wxString wxMessageOutputStderr::AppendLineFeedIfNeeded(const wxString& str) void wxMessageOutputStderr::Output(const wxString& str) { - const wxWX2MBbuf buf = AppendLineFeedIfNeeded(str).mb_str(); + const wxString strWithLF = AppendLineFeedIfNeeded(str); + const wxWX2MBbuf buf = strWithLF.mb_str(); if ( buf ) - fprintf(stderr, "%s", (const char*) buf); + fprintf(m_fp, "%s", (const char*) buf); else // print at least something - fprintf(stderr, "%s", (const char*) str.ToAscii()); + fprintf(m_fp, "%s", (const char*) strWithLF.ToAscii()); + + fflush(m_fp); } // ---------------------------------------------------------------------------- @@ -154,11 +163,11 @@ void wxMessageOutputStderr::Output(const wxString& str) void wxMessageOutputDebug::Output(const wxString& str) { -#if defined(__WXMSW__) && !defined(__WXMICROWIN__) +#if defined(__WINDOWS__) && !defined(__WXMICROWIN__) wxString out(AppendLineFeedIfNeeded(str)); out.Replace(wxT("\t"), wxT(" ")); out.Replace(wxT("\n"), wxT("\r\n")); - ::OutputDebugString(out.wx_str()); + ::OutputDebugString(out.t_str()); #else // TODO: use native debug output function for the other ports too wxMessageOutputStderr::Output(str); @@ -175,7 +184,7 @@ void wxMessageOutputLog::Output(const wxString& str) out.Replace(wxT("\t"), wxT(" ")); - ::wxLogMessage(wxT("%s"), out.c_str()); + wxLogMessage(wxT("%s"), out.c_str()); } #endif // wxUSE_BASE @@ -186,12 +195,14 @@ void wxMessageOutputLog::Output(const wxString& str) #if wxUSE_GUI && wxUSE_MSGDLG +extern WXDLLEXPORT_DATA(const char) wxMessageBoxCaptionStr[] = "Message"; + void wxMessageOutputMessageBox::Output(const wxString& str) { wxString out(str); // the native MSW msg box understands the TABs, others don't -#ifndef __WXMSW__ +#ifndef __WINDOWS__ out.Replace(wxT("\t"), wxT(" ")); #endif