summaryrefslogtreecommitdiff
path: root/plugins/MirLua/src/mlua_console.cpp
diff options
context:
space:
mode:
authorAlexander Lantsev <aunsane@gmail.com>2015-06-22 14:21:07 +0000
committerAlexander Lantsev <aunsane@gmail.com>2015-06-22 14:21:07 +0000
commit631e22caadf37a547bafccc0f90251621b0bd987 (patch)
treeb83353c9449eb2ef415120304d829f0dca17af07 /plugins/MirLua/src/mlua_console.cpp
parent0514092bbe0dfcfa7a091a7a66b4df83be3a7eb9 (diff)
MirLua: console refactoring
git-svn-id: http://svn.miranda-ng.org/main/trunk@14328 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c
Diffstat (limited to 'plugins/MirLua/src/mlua_console.cpp')
-rw-r--r--plugins/MirLua/src/mlua_console.cpp25
1 files changed, 25 insertions, 0 deletions
diff --git a/plugins/MirLua/src/mlua_console.cpp b/plugins/MirLua/src/mlua_console.cpp
new file mode 100644
index 0000000000..75a51585b6
--- /dev/null
+++ b/plugins/MirLua/src/mlua_console.cpp
@@ -0,0 +1,25 @@
+#include "stdafx.h"
+
+CMLuaConsole::CMLuaConsole(lua_State *L)
+ : L(L), hConsole(NULL)
+{
+ if (db_get_b(NULL, MODULE, "ShowConsole", 0))
+ {
+ if (!AttachConsole(ATTACH_PARENT_PROCESS))
+ {
+ if (AllocConsole())
+ {
+ freopen("CONOUT$", "w", stdout);
+ hConsole = CreateConsoleScreenBuffer(GENERIC_READ | GENERIC_WRITE, 0, NULL, CONSOLE_TEXTMODE_BUFFER, NULL);
+ SetConsoleTitle(_T("MirLua Console"));
+ }
+ }
+ }
+}
+
+CMLuaConsole::~CMLuaConsole()
+{
+ if (hConsole)
+ CloseHandle(hConsole);
+ FreeConsole();
+} \ No newline at end of file