+// ----------------------------------------------------------------------------
+// debug and trace functions
+// ----------------------------------------------------------------------------
+
+#if wxUSE_LOG_DEBUG
+ void wxVLogDebug(const wxString& format, va_list argptr)
+ {
+ if ( wxLog::IsEnabled() )
+ {
+ wxLog::OnLog(wxLOG_Debug,
+ wxString::FormatV(format, argptr), time(NULL));
+ }
+ }
+
+#if !wxUSE_UTF8_LOCALE_ONLY
+ void wxDoLogDebugWchar(const wxChar *format, ...)
+ {
+ va_list argptr;
+ va_start(argptr, format);
+ wxVLogDebug(format, argptr);
+ va_end(argptr);
+ }
+#endif // !wxUSE_UTF8_LOCALE_ONLY
+
+#if wxUSE_UNICODE_UTF8
+ void wxDoLogDebugUtf8(const char *format, ...)
+ {
+ va_list argptr;
+ va_start(argptr, format);
+ wxVLogDebug(format, argptr);
+ va_end(argptr);
+ }
+#endif // wxUSE_UNICODE_UTF8
+#endif // wxUSE_LOG_DEBUG
+
+#if wxUSE_LOG_TRACE
+ void wxVLogTrace(const wxString& mask, const wxString& format, va_list argptr)