The-Powder-Toy/includes/Console.h

49 lines
1.1 KiB
C
Raw Normal View History

2012-01-11 16:59:45 -06:00
#ifndef CONSOLE_H
#define CONSOLE_H
#include <string>
#include <vector>
#include "interface/Sandbox.h"
#include "Simulation.h"
class ConsoleCommand
{
private:
std::string * command;
int returnStatus;
2012-01-14 12:51:24 -06:00
std::string * returnString;
2012-01-11 16:59:45 -06:00
public:
void SetCommand(std::string * command);
void SetError(std::string * error);
std::string * GetCommand();
std::string * GetError();
ConsoleCommand();
2012-01-14 12:51:24 -06:00
ConsoleCommand(std::string * command, int returnStatus, std::string * returnString = new std::string(""));
2012-01-11 16:59:45 -06:00
};
class Console
{
private:
2012-01-14 12:51:24 -06:00
bool sound_enable;
bool file_script;
2012-01-11 16:59:45 -06:00
std::vector<ConsoleCommand> * previousCommands;
std::string * lastError;
ui::Sandbox * sandbox;
Simulation * sim;
public:
virtual void Tick(float * dt);
2012-01-14 12:51:24 -06:00
int ParseType(char * txt);
int ParsePartref(char * txt);
int ParseCoords(char * coords, int *x, int *y);
2012-01-11 16:59:45 -06:00
virtual void ConsoleShown();
virtual void ConsoleHidden();
2012-01-14 12:51:24 -06:00
virtual int ProcessCommand(char * console);
2012-01-11 16:59:45 -06:00
virtual std::string * GetLastError();
virtual std::vector<ConsoleCommand> * GetPreviousCommands();
Console(ui::Sandbox * sandbox);
virtual ~Console();
};
#endif // CONSOLE_H