#if defined(__WINDOWS__)
#include "wx/msw/private.h"
#endif
-#ifdef __WXMAC__
- #include "wx/mac/private.h"
-#endif
// ===========================================================================
// implementation
return old;
}
-void wxMessageOutputBase::DoPrintf(const wxChar* format, ...)
+#if !wxUSE_UTF8_LOCALE_ONLY
+void wxMessageOutput::DoPrintfWchar(const wxChar *format, ...)
+{
+ va_list args;
+ va_start(args, format);
+ wxString out;
+
+ out.PrintfV(format, args);
+ va_end(args);
+
+ Output(out);
+}
+#endif // !wxUSE_UTF8_LOCALE_ONLY
+
+#if wxUSE_UNICODE_UTF8
+void wxMessageOutput::DoPrintfUtf8(const char *format, ...)
{
va_list args;
va_start(args, format);
Output(out);
}
+#endif // wxUSE_UNICODE_UTF8
// ----------------------------------------------------------------------------
// wxMessageOutputBest
#ifdef __WINDOWS__
if ( !IsInConsole() )
{
- ::MessageBox(NULL, str, _T("wxWidgets"), MB_ICONINFORMATION | MB_OK);
+ ::MessageBox(NULL, str.wx_str(), _T("wxWidgets"),
+ MB_ICONINFORMATION | MB_OK);
}
else
#endif // __WINDOWS__/!__WINDOWS__
{
- const wxWX2MBbuf buf(str.mb_str());
+ const wxWX2MBbuf buf = str.mb_str();
if ( buf )
fprintf(stderr, "%s", (const char*) buf);
void wxMessageOutputStderr::Output(const wxString& str)
{
- const wxWX2MBbuf buf(str.mb_str());
+ const wxWX2MBbuf buf = str.mb_str();
if ( buf )
fprintf(stderr, "%s", (const char*) buf);
#if defined(__WXMSW__) && !defined(__WXMICROWIN__)
out.Replace(wxT("\t"), wxT(" "));
out.Replace(wxT("\n"), wxT("\r\n"));
- ::OutputDebugString(out);
-#elif defined(__WXMAC__) && !defined(__DARWIN__)
- if ( wxIsDebuggerRunning() )
- {
- Str255 pstr;
- wxString output = out + wxT(";g") ;
- wxMacStringToPascal(output.c_str(), pstr);
-
- #ifdef __powerc
- DebugStr(pstr);
- #else
- SysBreakStr(pstr);
- #endif
- }
+ ::OutputDebugString(out.wx_str());
#else
wxFputs( out , stderr ) ;
if ( out.Right(1) != wxT("\n") )
// wxMessageOutputMessageBox
// ----------------------------------------------------------------------------
-#if wxUSE_GUI
+#if wxUSE_GUI && wxUSE_MSGDLG
void wxMessageOutputMessageBox::Output(const wxString& str)
{
wxString title;
if ( wxTheApp )
- title.Printf(_("%s message"), wxTheApp->GetAppName().c_str());
+ title.Printf(_("%s message"), wxTheApp->GetAppDisplayName().c_str());
::wxMessageBox(out, title);
}