diff --git a/src/gui/lua/Makefile.am b/src/gui/lua/Makefile.am index 78ac4bfd6..291a551a4 100644 --- a/src/gui/lua/Makefile.am +++ b/src/gui/lua/Makefile.am @@ -36,5 +36,7 @@ libneutrino_gui_lua_a_SOURCES = \ lua_cc_text.cpp \ lua_cc_window.cpp \ lua_configfile.cpp \ + lua_hintbox.cpp \ lua_menue.cpp \ + lua_messagebox.cpp \ lua_video.cpp diff --git a/src/gui/lua/lua_hintbox.cpp b/src/gui/lua/lua_hintbox.cpp new file mode 100644 index 000000000..6b9c23d7f --- /dev/null +++ b/src/gui/lua/lua_hintbox.cpp @@ -0,0 +1,176 @@ +/* + * lua hintbox + * + * (C) 2014 by martii + * (C) 2014-2015 M. Liebmann (micha-bbg) + * (C) 2014 Sven Hoefer (svenhoefer) + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#include +#include +#include +#include +#include + +#include +#include +#include +#include + +#include "luainstance.h" +#include "lua_hintbox.h" + +CLuaInstHintbox* CLuaInstHintbox::getInstance() +{ + static CLuaInstHintbox* LuaInstHintbox = NULL; + + if(!LuaInstHintbox) + LuaInstHintbox = new CLuaInstHintbox(); + return LuaInstHintbox; +} + +void CLuaInstHintbox::HintboxRegister(lua_State *L) +{ + luaL_Reg meth[] = { + { "new", CLuaInstHintbox::HintboxNew }, + { "exec", CLuaInstHintbox::HintboxExec }, + { "paint", CLuaInstHintbox::HintboxPaint }, + { "hide", CLuaInstHintbox::HintboxHide }, + { "__gc", CLuaInstHintbox::HintboxDelete }, + { NULL, NULL } + }; + + luaL_newmetatable(L, "hintbox"); + luaL_setfuncs(L, meth, 0); + lua_pushvalue(L, -1); + lua_setfield(L, -1, "__index"); + lua_setglobal(L, "hintbox"); +} + +CLuaHintbox *CLuaInstHintbox::HintboxCheck(lua_State *L, int n) +{ + return *(CLuaHintbox **) luaL_checkudata(L, n, "hintbox"); +} + +CLuaHintbox::CLuaHintbox() +{ + caption = NULL; + b = NULL; +} + +CLuaHintbox::~CLuaHintbox() +{ + if (caption) + free(caption); + delete b; +} + +int CLuaInstHintbox::HintboxNew(lua_State *L) +{ + lua_assert(lua_istable(L,1)); + + std::string name, text, icon = std::string(NEUTRINO_ICON_INFO); + tableLookup(L, "name", name) || tableLookup(L, "title", name) || tableLookup(L, "caption", name); + tableLookup(L, "text", text); + tableLookup(L, "icon", icon); + lua_Integer width = 450; + tableLookup(L, "width", width); + + CLuaHintbox **udata = (CLuaHintbox **) lua_newuserdata(L, sizeof(CLuaHintbox *)); + *udata = new CLuaHintbox(); + (*udata)->caption = strdup(name.c_str()); + (*udata)->b = new CHintBox((*udata)->caption, text.c_str(), width, icon.c_str()); + luaL_getmetatable(L, "hintbox"); + lua_setmetatable(L, -2); + return 1; +} + +int CLuaInstHintbox::HintboxDelete(lua_State *L) +{ + CLuaHintbox *m = HintboxCheck(L, 1); + delete m; + return 0; +} + +int CLuaInstHintbox::HintboxPaint(lua_State *L) +{ + CLuaHintbox *m = HintboxCheck(L, 1); + if (!m) + return 0; + m->b->paint(); + return 0; +} + +int CLuaInstHintbox::HintboxHide(lua_State *L) +{ + CLuaHintbox *m = HintboxCheck(L, 1); + m->b->hide(); + return 0; +} + +int CLuaInstHintbox::HintboxExec(lua_State *L) +{ + CLuaHintbox *m = HintboxCheck(L, 1); + if (!m) + return 0; + int timeout = -1; + if (lua_isnumber(L, -1)) + timeout = (int) lua_tonumber(L, -1); + m->b->paint(); + + // copied from gui/widget/hintbox.cpp + neutrino_msg_t msg; + neutrino_msg_data_t data; + if ( timeout == -1 ) + timeout = 5; /// default timeout 5 sec + //timeout = g_settings.timing[SNeutrinoSettings::TIMING_INFOBAR]; + + uint64_t timeoutEnd = CRCInput::calcTimeoutEnd( timeout ); + + int res = messages_return::none; + + while ( ! ( res & ( messages_return::cancel_info | messages_return::cancel_all ) ) ) { + g_RCInput->getMsgAbsoluteTimeout( &msg, &data, &timeoutEnd ); + + if ((msg == CRCInput::RC_timeout) || (msg == CRCInput::RC_ok)) + res = messages_return::cancel_info; + else if (msg == CRCInput::RC_home) + res = messages_return::cancel_all; + else if ((m->b->has_scrollbar()) && ((msg == CRCInput::RC_up) || (msg == CRCInput::RC_down))) { + if (msg == CRCInput::RC_up) + m->b->scroll_up(); + else + m->b->scroll_down(); + } else if ((msg == CRCInput::RC_sat) || (msg == CRCInput::RC_favorites)) { + } else if (msg == CRCInput::RC_mode) { + res = messages_return::handled; + break; + } else if ((msg == CRCInput::RC_next) || (msg == CRCInput::RC_prev)) { + res = messages_return::cancel_all; + g_RCInput->postMsg(msg, data); + } else { + res = CNeutrinoApp::getInstance()->handleMsg(msg, data); + if (res & messages_return::unhandled) { + + // leave here and handle above... + g_RCInput->postMsg(msg, data); + res = messages_return::cancel_all; + } + } + } + m->b->hide(); + return 0; +} diff --git a/src/gui/lua/lua_hintbox.h b/src/gui/lua/lua_hintbox.h new file mode 100644 index 000000000..7dac495a6 --- /dev/null +++ b/src/gui/lua/lua_hintbox.h @@ -0,0 +1,51 @@ +/* + * lua hintbox + * + * (C) 2014 by martii + * (C) 2014-2015 M. Liebmann (micha-bbg) + * (C) 2014 Sven Hoefer (svenhoefer) + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#ifndef _LUAHINTBOX_H +#define _LUAHINTBOX_H + +class CLuaHintbox +{ + public: + CHintBox *b; + char *caption; + CLuaHintbox(); + ~CLuaHintbox(); +}; + +class CLuaInstHintbox +{ + public: + CLuaInstHintbox() {}; + ~CLuaInstHintbox() {}; + static CLuaInstHintbox* getInstance(); + static void HintboxRegister(lua_State *L); + + private: + static CLuaHintbox *HintboxCheck(lua_State *L, int n); + static int HintboxNew(lua_State *L); + static int HintboxDelete(lua_State *L); + static int HintboxExec(lua_State *L); + static int HintboxPaint(lua_State *L); + static int HintboxHide(lua_State *L); +}; + +#endif //_LUAHINTBOX_H diff --git a/src/gui/lua/lua_messagebox.cpp b/src/gui/lua/lua_messagebox.cpp new file mode 100644 index 000000000..5be190692 --- /dev/null +++ b/src/gui/lua/lua_messagebox.cpp @@ -0,0 +1,142 @@ +/* + * lua messagebox + * + * (C) 2014 by martii + * (C) 2014-2015 M. Liebmann (micha-bbg) + * (C) 2014 Sven Hoefer (svenhoefer) + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#include +#include +#include +#include +#include + +#include +#include +#include +#include + +#include "luainstance.h" +#include "lua_messagebox.h" + +CLuaInstMessagebox* CLuaInstMessagebox::getInstance() +{ + static CLuaInstMessagebox* LuaInstMessagebox = NULL; + + if(!LuaInstMessagebox) + LuaInstMessagebox = new CLuaInstMessagebox(); + return LuaInstMessagebox; +} + +void CLuaInstMessagebox::MessageboxRegister(lua_State *L) +{ + luaL_Reg meth[] = { + { "exec", CLuaInstMessagebox::MessageboxExec }, + { NULL, NULL } + }; + + luaL_newmetatable(L, "messagebox"); + luaL_setfuncs(L, meth, 0); + lua_pushvalue(L, -1); + lua_setfield(L, -1, "__index"); + lua_setglobal(L, "messagebox"); +} + +// messagebox.exec{caption="Title", text="text", icon="settings", width=500,timeout=-1,return_default_on_timeout=0, +// default = "yes", buttons = { "yes", "no", "cancel", "all", "back", "ok" }, align="center1|center2|left|right" } +int CLuaInstMessagebox::MessageboxExec(lua_State *L) +{ + lua_assert(lua_istable(L,1)); + + std::string name, text, icon = std::string(NEUTRINO_ICON_INFO); + tableLookup(L, "name", name) || tableLookup(L, "title", name) || tableLookup(L, "caption", name); + tableLookup(L, "text", text); + tableLookup(L, "icon", icon); + lua_Integer timeout = -1, width = 450, return_default_on_timeout = 0, show_buttons = 0, default_button = 0; + tableLookup(L, "timeout", timeout); + tableLookup(L, "width", width); + tableLookup(L, "return_default_on_timeout", return_default_on_timeout); + + std::string tmp; + if (tableLookup(L, "align", tmp)) { + lua_pushvalue(L, -2); + const char *val = lua_tostring(L, -2); + table_key mb[] = { + { "center1", CMessageBox::mbBtnAlignCenter1 }, + { "center2", CMessageBox::mbBtnAlignCenter2 }, + { "left", CMessageBox::mbBtnAlignLeft }, + { "right", CMessageBox::mbBtnAlignRight }, + { NULL, 0 } + }; + for (int i = 0; mb[i].name; i++) + if (!strcmp(mb[i].name, val)) { + show_buttons |= mb[i].code; + break; + } + } + lua_pushstring(L, "buttons"); + lua_gettable(L, -2); + for (lua_pushnil(L); lua_next(L, -2); lua_pop(L, 2)) { + lua_pushvalue(L, -2); + const char *val = lua_tostring(L, -2); + table_key mb[] = { + { "yes", CMessageBox::mbYes }, + { "no", CMessageBox::mbNo }, + { "cancel", CMessageBox::mbCancel }, + { "all", CMessageBox::mbAll }, + { "back", CMessageBox::mbBack }, + { "ok", CMessageBox::mbOk }, + { NULL, 0 } + }; + for (int i = 0; mb[i].name; i++) + if (!strcmp(mb[i].name, val)) { + show_buttons |= mb[i].code; + break; + } + } + lua_pop(L, 1); + + table_key mbr[] = { + { "yes", CMessageBox::mbrYes }, + { "no", CMessageBox::mbrNo }, + { "cancel", CMessageBox::mbrCancel }, + { "back", CMessageBox::mbrBack }, + { "ok", CMessageBox::mbrOk }, + { NULL, 0 } + }; + if (tableLookup(L, "default", tmp)) { + lua_pushvalue(L, -2); + const char *val = lua_tostring(L, -2); + for (int i = 0; mbr[i].name; i++) + if (!strcmp(mbr[i].name, val)) { + default_button = mbr[i].code; + break; + } + } + + int res = ShowMsg(name, text, (CMessageBox::result_) default_button, (CMessageBox::buttons_) show_buttons, icon.empty() ? NULL : icon.c_str(), width, timeout, return_default_on_timeout); + + tmp = "cancel"; + for (int i = 0; mbr[i].name; i++) + if (res == mbr[i].code) { + tmp = mbr[i].name; + break; + } + lua_pushstring(L, tmp.c_str()); + + return 1; +} diff --git a/src/gui/lua/lua_messagebox.h b/src/gui/lua/lua_messagebox.h new file mode 100644 index 000000000..83d2114e2 --- /dev/null +++ b/src/gui/lua/lua_messagebox.h @@ -0,0 +1,46 @@ +/* + * lua messagebox + * + * (C) 2014 by martii + * (C) 2014-2015 M. Liebmann (micha-bbg) + * (C) 2014 Sven Hoefer (svenhoefer) + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#ifndef _LUAMESSAGEBOX_H +#define _LUAMESSAGEBOX_H + +class CLuaMessagebox +{ + public: + CMessageBox *b; + CLuaMessagebox(); + ~CLuaMessagebox(); +}; + +class CLuaInstMessagebox +{ + public: + CLuaInstMessagebox() {}; + ~CLuaInstMessagebox() {}; + static CLuaInstMessagebox* getInstance(); + static void MessageboxRegister(lua_State *L); + + private: +// static CLuaMessagebox *MessageboxCheck(lua_State *L, int n); + static int MessageboxExec(lua_State *L); +}; + +#endif //_LUAMESSAGEBOX_H diff --git a/src/gui/lua/luainstance.cpp b/src/gui/lua/luainstance.cpp index 74feebeec..826b72ee6 100644 --- a/src/gui/lua/luainstance.cpp +++ b/src/gui/lua/luainstance.cpp @@ -29,6 +29,7 @@ #include #include #include +#include #include #include #include @@ -42,7 +43,9 @@ #include "lua_cc_text.h" #include "lua_cc_window.h" #include "lua_configfile.h" +#include "lua_hintbox.h" #include "lua_menue.h" +#include "lua_messagebox.h" #include "lua_video.h" static void set_lua_variables(lua_State *L) @@ -542,14 +545,14 @@ void CLuaInstance::registerFunctions() lua_register(lua, className, NewWindow); - HintboxRegister(lua); - MessageboxRegister(lua); CLuaInstCCPicture::getInstance()->CCPictureRegister(lua); CLuaInstCCSignalbox::getInstance()->CCSignalBoxRegister(lua); CLuaInstCCText::getInstance()->CCTextRegister(lua); CLuaInstCCWindow::getInstance()->CCWindowRegister(lua); CLuaInstConfigFile::getInstance()->LuaConfigFileRegister(lua); + CLuaInstHintbox::getInstance()->HintboxRegister(lua); CLuaInstMenu::getInstance()->MenuRegister(lua); + CLuaInstMessagebox::getInstance()->MessageboxRegister(lua); } CLuaData *CLuaInstance::CheckData(lua_State *L, int narg) @@ -1144,249 +1147,6 @@ int CLuaInstance::runScriptExt(lua_State *L) return 0; } -void CLuaInstance::HintboxRegister(lua_State *L) -{ - luaL_Reg meth[] = { - { "new", CLuaInstance::HintboxNew }, - { "exec", CLuaInstance::HintboxExec }, - { "paint", CLuaInstance::HintboxPaint }, - { "hide", CLuaInstance::HintboxHide }, - { "__gc", CLuaInstance::HintboxDelete }, - { NULL, NULL } - }; - - luaL_newmetatable(L, "hintbox"); - luaL_setfuncs(L, meth, 0); - lua_pushvalue(L, -1); - lua_setfield(L, -1, "__index"); - lua_setglobal(L, "hintbox"); -} - -CLuaHintbox *CLuaInstance::HintboxCheck(lua_State *L, int n) -{ - return *(CLuaHintbox **) luaL_checkudata(L, n, "hintbox"); -} - -CLuaHintbox::CLuaHintbox() -{ - caption = NULL; - b = NULL; -} - -CLuaHintbox::~CLuaHintbox() -{ - if (caption) - free(caption); - delete b; -} - -int CLuaInstance::HintboxNew(lua_State *L) -{ - lua_assert(lua_istable(L,1)); - - std::string name, text, icon = std::string(NEUTRINO_ICON_INFO); - tableLookup(L, "name", name) || tableLookup(L, "title", name) || tableLookup(L, "caption", name); - tableLookup(L, "text", text); - tableLookup(L, "icon", icon); - lua_Integer width = 450; - tableLookup(L, "width", width); - - CLuaHintbox **udata = (CLuaHintbox **) lua_newuserdata(L, sizeof(CLuaHintbox *)); - *udata = new CLuaHintbox(); - (*udata)->caption = strdup(name.c_str()); - (*udata)->b = new CHintBox((*udata)->caption, text.c_str(), width, icon.c_str()); - luaL_getmetatable(L, "hintbox"); - lua_setmetatable(L, -2); - return 1; -} - -int CLuaInstance::HintboxDelete(lua_State *L) -{ - CLuaHintbox *m = HintboxCheck(L, 1); - delete m; - return 0; -} - -int CLuaInstance::HintboxPaint(lua_State *L) -{ - CLuaHintbox *m = HintboxCheck(L, 1); - if (!m) - return 0; - m->b->paint(); - return 0; -} - -int CLuaInstance::HintboxHide(lua_State *L) -{ - CLuaHintbox *m = HintboxCheck(L, 1); - m->b->hide(); - return 0; -} - -int CLuaInstance::HintboxExec(lua_State *L) -{ - CLuaHintbox *m = HintboxCheck(L, 1); - if (!m) - return 0; - int timeout = -1; - if (lua_isnumber(L, -1)) - timeout = (int) lua_tonumber(L, -1); - m->b->paint(); - - // copied from gui/widget/hintbox.cpp - - neutrino_msg_t msg; - neutrino_msg_data_t data; - if ( timeout == -1 ) - timeout = 5; /// default timeout 5 sec - //timeout = g_settings.timing[SNeutrinoSettings::TIMING_INFOBAR]; - - uint64_t timeoutEnd = CRCInput::calcTimeoutEnd( timeout ); - - int res = messages_return::none; - - while ( ! ( res & ( messages_return::cancel_info | messages_return::cancel_all ) ) ) - { - g_RCInput->getMsgAbsoluteTimeout( &msg, &data, &timeoutEnd ); - - if ((msg == CRCInput::RC_timeout) || (msg == CRCInput::RC_ok)) - res = messages_return::cancel_info; - else if(msg == CRCInput::RC_home) - res = messages_return::cancel_all; - else if ((m->b->has_scrollbar()) && ((msg == CRCInput::RC_up) || (msg == CRCInput::RC_down))) - { - if (msg == CRCInput::RC_up) - m->b->scroll_up(); - else - m->b->scroll_down(); - } - else if((msg == CRCInput::RC_sat) || (msg == CRCInput::RC_favorites)) { - } - else if(msg == CRCInput::RC_mode) { - res = messages_return::handled; - break; - } - else if((msg == CRCInput::RC_next) || (msg == CRCInput::RC_prev)) { - res = messages_return::cancel_all; - g_RCInput->postMsg(msg, data); - } - else - { - res = CNeutrinoApp::getInstance()->handleMsg(msg, data); - if (res & messages_return::unhandled) - { - - // leave here and handle above... - g_RCInput->postMsg(msg, data); - res = messages_return::cancel_all; - } - } - } - m->b->hide(); - return 0; -} - -void CLuaInstance::MessageboxRegister(lua_State *L) -{ - luaL_Reg meth[] = { - { "exec", CLuaInstance::MessageboxExec }, - { NULL, NULL } - }; - - luaL_newmetatable(L, "messagebox"); - luaL_setfuncs(L, meth, 0); - lua_pushvalue(L, -1); - lua_setfield(L, -1, "__index"); - lua_setglobal(L, "messagebox"); -} - -// messagebox.exec{caption="Title", text="text", icon="settings", width=500,timeout=-1,return_default_on_timeout=0, -// default = "yes", buttons = { "yes", "no", "cancel", "all", "back", "ok" }, align="center1|center2|left|right" } -int CLuaInstance::MessageboxExec(lua_State *L) -{ - lua_assert(lua_istable(L,1)); - - std::string name, text, icon = std::string(NEUTRINO_ICON_INFO); - tableLookup(L, "name", name) || tableLookup(L, "title", name) || tableLookup(L, "caption", name); - tableLookup(L, "text", text); - tableLookup(L, "icon", icon); - lua_Integer timeout = -1, width = 450, return_default_on_timeout = 0, show_buttons = 0, default_button = 0; - tableLookup(L, "timeout", timeout); - tableLookup(L, "width", width); - tableLookup(L, "return_default_on_timeout", return_default_on_timeout); - - std::string tmp; - if (tableLookup(L, "align", tmp)) { - lua_pushvalue(L, -2); - const char *val = lua_tostring(L, -2); - table_key mb[] = { - { "center1", CMessageBox::mbBtnAlignCenter1 }, - { "center2", CMessageBox::mbBtnAlignCenter2 }, - { "left", CMessageBox::mbBtnAlignLeft }, - { "right", CMessageBox::mbBtnAlignRight }, - { NULL, 0 } - }; - for (int i = 0; mb[i].name; i++) - if (!strcmp(mb[i].name, val)) { - show_buttons |= mb[i].code; - break; - } - } - lua_pushstring(L, "buttons"); - lua_gettable(L, -2); - for (lua_pushnil(L); lua_next(L, -2); lua_pop(L, 2)) { - lua_pushvalue(L, -2); - const char *val = lua_tostring(L, -2); - table_key mb[] = { - { "yes", CMessageBox::mbYes }, - { "no", CMessageBox::mbNo }, - { "cancel", CMessageBox::mbCancel }, - { "all", CMessageBox::mbAll }, - { "back", CMessageBox::mbBack }, - { "ok", CMessageBox::mbOk }, - { NULL, 0 } - }; - for (int i = 0; mb[i].name; i++) - if (!strcmp(mb[i].name, val)) { - show_buttons |= mb[i].code; - break; - } - } - lua_pop(L, 1); - - table_key mbr[] = { - { "yes", CMessageBox::mbrYes }, - { "no", CMessageBox::mbrNo }, - { "cancel", CMessageBox::mbrCancel }, - { "back", CMessageBox::mbrBack }, - { "ok", CMessageBox::mbrOk }, - { NULL, 0 } - }; - if (tableLookup(L, "default", tmp)) { - lua_pushvalue(L, -2); - const char *val = lua_tostring(L, -2); - for (int i = 0; mbr[i].name; i++) - if (!strcmp(mbr[i].name, val)) { - default_button = mbr[i].code; - break; - } - } - - int res = ShowMsg(name, text, (CMessageBox::result_) default_button, (CMessageBox::buttons_) show_buttons, icon.empty() ? NULL : icon.c_str(), width, timeout, return_default_on_timeout); - - tmp = "cancel"; - for (int i = 0; mbr[i].name; i++) - if (res == mbr[i].code) { - tmp = mbr[i].name; - break; - } - lua_pushstring(L, tmp.c_str()); - - return 1; -} - -// -------------------------------------------------------------------------------- - int CLuaInstance::checkVersion(lua_State *L) { int numargs = lua_gettop(L); diff --git a/src/gui/lua/luainstance.h b/src/gui/lua/luainstance.h index 8b9b04baa..d93111f04 100644 --- a/src/gui/lua/luainstance.h +++ b/src/gui/lua/luainstance.h @@ -26,8 +26,6 @@ extern "C" { #include } #include -#include -#include #include #include "luainstance_helpers.h" @@ -35,24 +33,6 @@ extern "C" { #define LUA_API_VERSION_MAJOR 1 #define LUA_API_VERSION_MINOR 22 - -class CLuaHintbox -{ - public: - CHintBox *b; - char *caption; - CLuaHintbox(); - ~CLuaHintbox(); -}; - -class CLuaMessagebox -{ - public: - CMessageBox *b; - CLuaMessagebox(); - ~CLuaMessagebox(); -}; - /* inspired by Steve Kemp http://www.steve.org.uk/ */ class CLuaInstance { @@ -105,18 +85,6 @@ private: static int strFind(lua_State *L); static int strSub(lua_State *L); - void HintboxRegister(lua_State *L); - static int HintboxNew(lua_State *L); - static int HintboxDelete(lua_State *L); - static int HintboxExec(lua_State *L); - static int HintboxPaint(lua_State *L); - static int HintboxHide(lua_State *L); - static CLuaHintbox *HintboxCheck(lua_State *L, int n); - - void MessageboxRegister(lua_State *L); - static int MessageboxExec(lua_State *L); - static CLuaMessagebox *MessageboxCheck(lua_State *L, int n); - static int checkVersion(lua_State *L); static int createChannelIDfromUrl(lua_State *L); static int enableInfoClock(lua_State *L);