/*****************************************************************************
** This is part of the CTSim program
-** Copyright (C) 1983-2000 Kevin Rosenberg
+** Copyright (c) 1983-2001 Kevin Rosenberg
**
-** $Id: syserror.cpp,v 1.12 2001/01/02 16:02:13 kevin Exp $
+** $Id: syserror.cpp,v 1.20 2001/01/30 02:20:50 kevin Exp $
**
** This program is free software; you can redistribute it and/or modify
** it under the terms of the GNU General Public License (version 2) as
#include <string>
#include "ct.h"
+#ifdef HAVE_WXWINDOWS
+#include "../src/ctsim.h"
+#endif
/* NAME
* sys_error System error handler
static int s_reportErrorLevel = ERR_WARNING; // Set error reporting level
-bool g_bRunningWXWindows = false;
void sys_error (int severity, const char *msg, ...)
{
std::string strOutput;
sys_verror (strOutput, severity, msg, arg);
-
-// if (g_bRunningWXWindows)
-// theApp->getLog() << strOutput.c_str();
-// else
+
+#ifdef HAVE_WXWINDOWS
+ if (g_bRunningWXWindows) {
+ if (theApp)
+ *theApp->getLog() << strOutput.c_str() << "\n";
+ else
+ wxLog::OnLog (wxLOG_Message, strOutput.c_str(), time(NULL));
+ }
+ else
+#endif
std::cout << strOutput;
va_end(arg);
os << errStr << "\n";
strOutput = os.str();
- if (severity == ERR_FATAL)
- throw std::runtime_error (errStr);
+ if (severity == ERR_FATAL) {
+ std::cerr << strOutput;
+ throw std::runtime_error (strOutput);
+ }
#if INTERACTIVE_ERROR_DISPLAY
std::cout << "A - Abort C - Continue W - Turn off warnings? ";