diff options
| author | Alexander Pickering <alex@cogarr.net> | 2018-10-20 14:05:30 -0400 |
|---|---|---|
| committer | Alexander Pickering <alex@cogarr.net> | 2018-10-20 14:05:30 -0400 |
| commit | 4a797a4226893b382ffc3c1f92e844f6743c7220 (patch) | |
| tree | 5645ee6e58c0ac38e71230338901578ee572df2a /src/client/lua_api/gui/iguielement.cpp | |
| parent | 6543a9aa301a8ebc67ff50a880bcff2e496fa17e (diff) | |
| download | brokengine-4a797a4226893b382ffc3c1f92e844f6743c7220.tar.gz brokengine-4a797a4226893b382ffc3c1f92e844f6743c7220.tar.bz2 brokengine-4a797a4226893b382ffc3c1f92e844f6743c7220.zip | |
Added more documentation
Added documentation for several gui elements
also moved documentation of generic iguielements
to an iguielement class
Also added a setvisible() function to iguielements
Diffstat (limited to 'src/client/lua_api/gui/iguielement.cpp')
| -rw-r--r-- | src/client/lua_api/gui/iguielement.cpp | 44 |
1 files changed, 42 insertions, 2 deletions
diff --git a/src/client/lua_api/gui/iguielement.cpp b/src/client/lua_api/gui/iguielement.cpp index 81d339f..4ef5026 100644 --- a/src/client/lua_api/gui/iguielement.cpp +++ b/src/client/lua_api/gui/iguielement.cpp @@ -1,6 +1,15 @@ /*This file defines some things that all igui stuff can do*/ /*** -@module gui +All gui elements inherit from iguielement. +Some functions (like settext()) do different things for different elements. +All gui elements can call the following callbacks: + + onFocus(self) + onUnfous(self) + onHover(self) + onLeave(self) + +@classmod iguielement */ extern "C" { #include <lua.h> @@ -19,7 +28,7 @@ using namespace core; using namespace gui; /*** -Move a window (by an offset) +Move an element (by an offset) from it's current position @function guielement:move() @tparam vector2d position The offset to move this element by */ @@ -40,6 +49,24 @@ int moveiguielement(lua_State* L){ } /*** +Set the visibility of this element +@function guielement:setvisible() +@tparam boolean visible Should this element be visible? +*/ +int setvisible(lua_State *L){ + int v = lua_toboolean(L,-1); + lua_pop(L,1); + + lua_getfield(L,-1,"guielement"); + IGUIElement *el = (IGUIElement*)lua_touserdata(L,-1);//{element},ud_element + lua_pop(L,2); + + el->setVisible(v == 1); + + return 0; +} + +/*** Find the rectangle that an element occupies @function guielement:getabsrect() @treturn rect The rectangle that this element occupies @@ -60,6 +87,7 @@ int getiguiclippingrect(lua_State* L){ return 1; } + /*** Find the rectangle that an element occupies that is visible to the user @function guielement:getabsclippingrect() @@ -212,3 +240,15 @@ int guigetid(lua_State* L){ return 1; } +extern const luaL_reg iguielement_m[] = { + {"move", moveiguielement}, + {"setvisible", setvisible}, + {"setrect", setrelrect}, + {"getabsrect", getiguiclippingrect}, + {"getabsclippingrect", getiguiabsclippingrect}, + {"getrelrect", getiguirelrect}, + {"settext", setiguitext}, + {"gettext", getiguitext}, + {"remove", removeiguielement}, + {NULL, NULL} +}; |
