]> git.saurik.com Git - wxWidgets.git/blobdiff - src/common/msgout.cpp
Fix wxHtmlHelpData::SetTempDir() to behave correctly without trailing slash.
[wxWidgets.git] / src / common / msgout.cpp
index e6a471d9b3178f72aec9f3bb42733e724541e418..bf98eb48980df4b2971ead75037443ca59cfd9b7 100644 (file)
@@ -4,7 +4,6 @@
 // Author:      Mattia Barbon
 // Modified by:
 // Created:     17.07.02
-// RCS-ID:      $Id$
 // Copyright:   (c) the wxWidgets team
 // Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
@@ -118,8 +117,16 @@ 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__
+    wxUnusedVar(m_flags);
+
     // TODO: use the native message box for the other ports too
     wxMessageOutputStderr::Output(str);
 #endif // __WINDOWS__/!__WINDOWS__
@@ -140,12 +147,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 +164,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 +185,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,16 +196,19 @@ 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
 
-    wxString title = wxTheApp ? wxTheApp->GetAppDisplayName() : wxT("wxWidgets");
+    wxString title = wxT("wxWidgets") ;
+    if (wxTheApp) title = wxTheApp->GetAppDisplayName();
 
     ::wxMessageBox(out, title);
 }