diff options
Diffstat (limited to 'src/client/lua_api/gui')
| -rw-r--r-- | src/client/lua_api/gui/iguielement.cpp | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/src/client/lua_api/gui/iguielement.cpp b/src/client/lua_api/gui/iguielement.cpp index af9d234..9254ba0 100644 --- a/src/client/lua_api/gui/iguielement.cpp +++ b/src/client/lua_api/gui/iguielement.cpp @@ -215,6 +215,27 @@ int focus(lua_State *L){ return 0; } +//{guielement},bool +int setelementenabled(lua_State *L){ + int enable = lua_toboolean(L,-1); + lua_pop(L,1); + lua_getfield(L,-1,"guielement"); + IGUIElement *ele = (IGUIElement*)lua_touserdata(L,-1); + ele->setEnabled(enable == 1); + lua_pop(L,1); + return 0; +} + +//{guielement} +int getelementenabled(lua_State *L){ + lua_getfield(L,-1,"guielement"); + IGUIElement *ele = (IGUIElement*)lua_touserdata(L,-1); + bool enabled = ele->isEnabled(); + lua_pushboolean(L,enabled?1:0); + lua_pop(L,1); + return 1; +} + class guicallback{ private: @@ -257,6 +278,7 @@ int guigetid(lua_State* L){ return 1; } + extern const luaL_reg iguielement_m[] = { {"move", moveiguielement}, {"setvisible", setvisible}, @@ -268,5 +290,6 @@ extern const luaL_reg iguielement_m[] = { {"gettext", getiguitext}, {"remove", removeiguielement}, {"focus", focus}, + {"enable", setelementenabled}, {NULL, NULL} }; |
