diff options
| author | Alexander Pickering <alex@cogarr.net> | 2018-08-12 14:51:22 -0400 |
|---|---|---|
| committer | Alexander Pickering <alex@cogarr.net> | 2018-08-12 14:51:22 -0400 |
| commit | dc9cd82e80338a20b71db662abb6192aff118fe3 (patch) | |
| tree | 5cdc862d505147c3df22714d45527da28eb6adb9 /src/client/lua_api/gui/iguielement.cpp | |
| parent | 2c97dada7b9c7fedc511f1ecf012346c198d92f8 (diff) | |
| download | brokengine-dc9cd82e80338a20b71db662abb6192aff118fe3.tar.gz brokengine-dc9cd82e80338a20b71db662abb6192aff118fe3.tar.bz2 brokengine-dc9cd82e80338a20b71db662abb6192aff118fe3.zip | |
Modified iguielement to export it's functions
Other gui elements can now register all the base igui functions
by registering iguielement_m from iguielement.hpp
Diffstat (limited to 'src/client/lua_api/gui/iguielement.cpp')
| -rw-r--r-- | src/client/lua_api/gui/iguielement.cpp | 22 |
1 files changed, 20 insertions, 2 deletions
diff --git a/src/client/lua_api/gui/iguielement.cpp b/src/client/lua_api/gui/iguielement.cpp index 5ba998f..44fb67c 100644 --- a/src/client/lua_api/gui/iguielement.cpp +++ b/src/client/lua_api/gui/iguielement.cpp @@ -1,8 +1,6 @@ /*This file defines some things that all igui stuff can do*/ /*** @module gui - - */ extern "C" { #include <lua.h> @@ -86,6 +84,25 @@ int setiguitext(lua_State* L){ return 0; } + +/*** +@function guielement:gettext() +@treturn string The caption text of the element. For input element like +editboxes, this returns the text that the edit box contains. +*/ +//{guieditbox}:gettext() :: "caption_text" +int getiguitext(lua_State* L){ + lua_getfield(L, -1, "guielement");//{guieditbox},ud_guielement + irr::gui::IGUIElement *el = (IGUIElement*)lua_touserdata(L,-1); + lua_pop(L,2);// + const wchar_t *t = el->getText(); + size_t strlen = wcslen(t); + char output[strlen]; + wcstombs(output,t,strlen); + lua_pushstring(L,output);//"str" + return 1; +} + /*** Removes a gui element, and any child elements @function guielement:remove() @@ -140,3 +157,4 @@ int guigetid(lua_State* L){ lua_pushnumber(L,id); return 1; } + |
