* Add con_log.c to log all console output

* Add con_passive.c to cut down on #ifdef DEDICATED in sys_main.c
* Add Sys_ErrorDialog to report ERR_FATALs to the user
  + On Windows use a MessageBox and offer to copy the console log to the
    clipboard
  + On everything else print to the terminal and save the console log as
    crashlog.txt
This commit is contained in:
Tim Angus 2007-11-30 18:32:52 +00:00
parent ccc66aadff
commit 3cde9bf0dc
10 changed files with 340 additions and 95 deletions

View file

@ -22,6 +22,7 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
#include "../qcommon/q_shared.h"
#include "../qcommon/qcommon.h"
#include "sys_local.h"
#include <unistd.h>
#include <signal.h>
@ -101,7 +102,7 @@ Clear the display of the line currently edited
bring cursor back to beginning of line
==================
*/
void CON_Hide( void )
static void CON_Hide( void )
{
if( ttycon_on )
{
@ -131,7 +132,7 @@ Show the current line
FIXME need to position the cursor if needed?
==================
*/
void CON_Show( void )
static void CON_Show( void )
{
if( ttycon_on )
{
@ -296,10 +297,10 @@ void CON_Init( void )
/*
==================
CON_ConsoleInput
CON_Input
==================
*/
char *CON_ConsoleInput( void )
char *CON_Input( void )
{
// we use this when sending back commands
static char text[256];
@ -439,3 +440,20 @@ char *CON_ConsoleInput( void )
return text;
}
}
/*
==================
CON_Print
==================
*/
void CON_Print( const char *msg )
{
CON_Hide( );
if( com_ansiColor && com_ansiColor->integer )
Sys_AnsiColorPrint( msg );
else
fputs( msg, stderr );
CON_Show( );
}