- va_list argptr;
- va_start(argptr, format);
- wxVLogGeneric(level, format, argptr);
- va_end(argptr);
-}
-#endif // wxUSE_UNICODE_UTF8
-
-#if !wxUSE_UTF8_LOCALE_ONLY
- #define IMPLEMENT_LOG_FUNCTION_WCHAR(level) \
- void wxDoLog##level##Wchar(const wxChar *format, ...) \
- { \
- va_list argptr; \
- va_start(argptr, format); \
- wxVLog##level(format, argptr); \
- va_end(argptr); \
- }
-#else
- #define IMPLEMENT_LOG_FUNCTION_WCHAR(level)
-#endif
-
-#if wxUSE_UNICODE_UTF8
- #define IMPLEMENT_LOG_FUNCTION_UTF8(level) \
- void wxDoLog##level##Utf8(const char *format, ...) \
- { \
- va_list argptr; \
- va_start(argptr, format); \
- wxVLog##level(format, argptr); \
- va_end(argptr); \
- }
-#else
- #define IMPLEMENT_LOG_FUNCTION_UTF8(level)
-#endif
-
-#define IMPLEMENT_LOG_FUNCTION(level) \
- void wxVLog##level(const wxString& format, va_list argptr) \
- { \
- if ( wxLog::IsEnabled() ) { \
- wxLog::OnLog(wxLOG_##level, \
- wxString::FormatV(format, argptr), time(NULL)); \
- } \
- } \
- IMPLEMENT_LOG_FUNCTION_WCHAR(level) \
- IMPLEMENT_LOG_FUNCTION_UTF8(level)
-
-IMPLEMENT_LOG_FUNCTION(Error)
-IMPLEMENT_LOG_FUNCTION(Warning)
-IMPLEMENT_LOG_FUNCTION(Message)
-IMPLEMENT_LOG_FUNCTION(Info)
-IMPLEMENT_LOG_FUNCTION(Status)
-
-void wxSafeShowMessage(const wxString& title, const wxString& text)
-{
-#ifdef __WINDOWS__
- ::MessageBox(NULL, text.t_str(), title.t_str(), MB_OK | MB_ICONSTOP);
-#else
- wxFprintf(stderr, wxS("%s: %s\n"), title.c_str(), text.c_str());
- fflush(stderr);
-#endif
-}
-
-// fatal errors can't be suppressed nor handled by the custom log target and
-// always terminate the program
-void wxVLogFatalError(const wxString& format, va_list argptr)
-{
- wxSafeShowMessage(wxS("Fatal Error"), wxString::FormatV(format, argptr));