diff options
author | Stijn Buys <ingar@osirion.org> | 2008-11-08 13:53:28 +0000 |
---|---|---|
committer | Stijn Buys <ingar@osirion.org> | 2008-11-08 13:53:28 +0000 |
commit | 016d769e2b353d28b40f9c045f8e6d004d83bec1 (patch) | |
tree | b797be0fc03d146427af2601762e6460cf880084 /src/dedicated/console.h | |
parent | dbb28ef3422bf2442e15d75fd52180cfb9b40102 (diff) |
renaming server namespace to dedicated
Diffstat (limited to 'src/dedicated/console.h')
-rw-r--r-- | src/dedicated/console.h | 66 |
1 files changed, 66 insertions, 0 deletions
diff --git a/src/dedicated/console.h b/src/dedicated/console.h new file mode 100644 index 0000000..13db3fc --- /dev/null +++ b/src/dedicated/console.h @@ -0,0 +1,66 @@ +/* + server/console.h + This file is part of the Osirion project and is distributed under + the terms of the GNU General Public License version 2 +*/ + +#ifndef __INCLUDED_SERVER_CONSOLE_H__ +#define __INCLUDED_SERVER_CONSOLE_H__ + +#include "sys/consoleinterface.h" + +namespace server { + +class Console : public sys::ConsoleInterface { +public: + Console(); + ~Console(); + + /// initialize the server console + static void init(); + /// shutdown the server console + static void shutdown(); + +#ifdef HAVE_CURSES + /// resize the console + virtual void resize(); + /// run one console frame + void frame(); + +protected: + /// draw the ncurses console + void draw(); + /// clear and draw background (ncurses) + void draw_background(); + /// draw status + void draw_status(); + /// draw the console text (ncurses) + void draw_text(); + /// draw the console input (ncurses) + void draw_input(); + /// dump console content to cout + void dump(); + /// print one line of text (do nothing) + virtual void print(const std::string & text); + +private: + typedef std::deque<std::string> History; + + /// set ncurses drawing color + void set_color(const char *color_code); + + // input history + History history; + History::reverse_iterator history_pos; + + size_t input_pos; + size_t console_scroll; +#endif +}; + +Console *console(); + +} + +#endif // __INCLUDED_SERVER_CONSOLE_H__ + |