00001 #ifndef HEADER_KEYCONSOLE_H 00002 #define HEADER_KEYCONSOLE_H 00003 00004 class Font; 00005 00006 #include "GameState.h" 00007 #include "Drawable.h" 00008 #include "Color.h" 00009 00010 #include <string> 00011 #include "SDL.h" 00012 00013 /** 00014 * Debug console. 00015 */ 00016 class KeyConsole : public GameState, public Drawable { 00017 private: 00018 Font *m_font; 00019 Color m_color; 00020 std::string m_input; 00021 protected: 00022 virtual void own_initState() {}; 00023 virtual void own_updateState() {}; 00024 virtual void own_pauseState() {}; 00025 virtual void own_resumeState() {}; 00026 virtual void own_cleanState() {}; 00027 public: 00028 KeyConsole(); 00029 virtual ~KeyConsole(); 00030 virtual const char *getName() const { return "state_console"; }; 00031 virtual bool allowBg() const { return true; } 00032 00033 void setInput(const std::string &input) { m_input = input; } 00034 std::string getInput() const { return m_input; } 00035 00036 bool sendCommand(); 00037 virtual void drawOn(SDL_Surface *screen); 00038 }; 00039 00040 #endif