diff options
| author | oy <Tom_Adams@web.de> | 2010-06-19 20:51:54 +0200 |
|---|---|---|
| committer | oy <Tom_Adams@web.de> | 2010-06-19 20:51:54 +0200 |
| commit | e2c3f744b2b12c63f3563c79471446ec508929ef (patch) | |
| tree | b8e462c8854e2a48702e2ac322ae28c59e3965f7 /src/game | |
| parent | b790634a2dc273a506d3373a85e8b11ae9b043da (diff) | |
| download | zcatch-e2c3f744b2b12c63f3563c79471446ec508929ef.tar.gz zcatch-e2c3f744b2b12c63f3563c79471446ec508929ef.zip | |
added commands to clear the consoles. Closes #104
Diffstat (limited to 'src/game')
| -rw-r--r-- | src/game/client/components/console.cpp | 18 | ||||
| -rw-r--r-- | src/game/client/components/console.h | 4 |
2 files changed, 22 insertions, 0 deletions
diff --git a/src/game/client/components/console.cpp b/src/game/client/components/console.cpp index 2916606b..5ffe1efd 100644 --- a/src/game/client/components/console.cpp +++ b/src/game/client/components/console.cpp @@ -61,6 +61,12 @@ void CGameConsole::CInstance::Init(CGameConsole *pGameConsole) m_pGameConsole = pGameConsole; }; +void CGameConsole::CInstance::ClearBacklog() +{ + m_Backlog.Init(); + m_BacklogActPage = 0; +} + void CGameConsole::CInstance::ExecuteLine(const char *pLine) { if(m_Type == 0) @@ -574,6 +580,16 @@ void CGameConsole::ConToggleRemoteConsole(IConsole::IResult *pResult, void *pUse ((CGameConsole *)pUserData)->Toggle(1); } +void CGameConsole::ConClearLocalConsole(IConsole::IResult *pResult, void *pUserData) +{ + ((CGameConsole *)pUserData)->m_LocalConsole.ClearBacklog(); +} + +void CGameConsole::ConClearRemoteConsole(IConsole::IResult *pResult, void *pUserData) +{ + ((CGameConsole *)pUserData)->m_RemoteConsole.ClearBacklog(); +} + void CGameConsole::ClientConsolePrintCallback(const char *pStr, void *pUserData) { ((CGameConsole *)pUserData)->m_LocalConsole.PrintLine(pStr); @@ -600,6 +616,8 @@ void CGameConsole::OnConsoleInit() Console()->Register("toggle_local_console", "", CFGFLAG_CLIENT, ConToggleLocalConsole, this, "Toggle local console"); Console()->Register("toggle_remote_console", "", CFGFLAG_CLIENT, ConToggleRemoteConsole, this, "Toggle remote console"); + Console()->Register("clear_local_console", "", CFGFLAG_CLIENT, ConClearLocalConsole, this, "Clear local console"); + Console()->Register("clear_remote_console", "", CFGFLAG_CLIENT, ConClearRemoteConsole, this, "Clear remote console"); } /* diff --git a/src/game/client/components/console.h b/src/game/client/components/console.h index 6d644001..68f3965d 100644 --- a/src/game/client/components/console.h +++ b/src/game/client/components/console.h @@ -31,6 +31,8 @@ class CGameConsole : public CComponent CInstance(int t); void Init(CGameConsole *pGameConsole); + void ClearBacklog(); + void ExecuteLine(const char *pLine); void OnInput(IInput::CEvent Event); @@ -59,6 +61,8 @@ class CGameConsole : public CComponent static void ClientConsolePrintCallback(const char *pStr, void *pUserData); static void ConToggleLocalConsole(IConsole::IResult *pResult, void *pUserData); static void ConToggleRemoteConsole(IConsole::IResult *pResult, void *pUserData); + static void ConClearLocalConsole(IConsole::IResult *pResult, void *pUserData); + static void ConClearRemoteConsole(IConsole::IResult *pResult, void *pUserData); public: CGameConsole(); |