aboutsummaryrefslogtreecommitdiff
path: root/src/client/lua_api/gui/iguielement.cpp
diff options
context:
space:
mode:
authorAlexander Pickering <alex@cogarr.net>2018-08-12 14:51:22 -0400
committerAlexander Pickering <alex@cogarr.net>2018-08-12 14:51:22 -0400
commitdc9cd82e80338a20b71db662abb6192aff118fe3 (patch)
tree5cdc862d505147c3df22714d45527da28eb6adb9 /src/client/lua_api/gui/iguielement.cpp
parent2c97dada7b9c7fedc511f1ecf012346c198d92f8 (diff)
downloadbrokengine-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.cpp22
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;
}
+