summaryrefslogtreecommitdiff
path: root/plugins/MirLua/src/mlua_console.cpp
diff options
context:
space:
mode:
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