#include <string>
#include <sstream>
#include <iomanip>
#include "ui_gpsim.h"
#include "../src/sim_context.h"
#include "../src/symbol.h"
#include "../src/cmd_manager.h"
extern GlobalVerbosityAccessor verbose;
///
/// CGpsimConsole
/// Connector between the gpsim console and the
/// console handler for the loaded modules.
//////////////////////////////////////////////////
CGpsimConsole::CGpsimConsole() {
}
void CGpsimConsole::Printf(const char *fmt, ...) {
va_list ap;
va_start(ap,fmt);
vfprintf(m_pfOut, fmt, ap);
va_end(ap);
}
void CGpsimConsole::VPrintf(const char *fmt, va_list argptr) {
vfprintf(m_pfOut, fmt, argptr);
}
void CGpsimConsole::Puts(const char*s) {
fputs(s, m_pfOut);
}
void CGpsimConsole::Putc(const char c) {
fputc(c, m_pfOut);
}
char* CGpsimConsole::Gets(char *s, int size) {
return fgets(s, size, m_pfIn);
}
void CGpsimConsole::SetOut(FILE *pOut) {
m_pfOut = pOut;
}
void CGpsimConsole::SetIn(FILE *pIn) {
m_pfIn = pIn;
}
CGpsimConsole g_Console;
// From input.cc
class Macro;
void add_string_to_input_buffer(const char *s, Macro *m=0);
void NotifyExitOnBreak(int iExitCode) {
add_string_to_input_buffer("abort_gpsim_now\n");
}
void initialize_ConsoleUI()
{
g_Console.SetOut(stdout);
g_Console.SetIn(stdin);
GetUserInterface().SetConsole(&g_Console);
GetUserInterface().SetExitOnBreak(NotifyExitOnBreak);
}
syntax highlighted by Code2HTML, v. 0.9.1