Esempio n. 1
0
	static int l_new(lua_State *l) {
		UI::Context *c = LuaObject<UI::Context>::CheckFromLua(1);

        Uint32 flags = _unpack_flags(l);

		Uint32 seed = 0;

		if (lua_gettop(l) > 2 && !lua_isnil(l, 3))
			seed = luaL_checkinteger(l, 3);

		LuaObject<Face>::PushToLua(new Face(c, flags, seed));
		return 1;
	}
Esempio n. 2
0
	static int l_pack_end(lua_State *l) {
		UI::Box *b = LuaObject<UI::Box>::CheckFromLua(1);

		Uint32 flags = _unpack_flags(l);

		if (lua_istable(l, 2)) {
			for (size_t i = 0; i < lua_rawlen(l, 2); i++) {
				lua_rawgeti(l, 2, i+1);
				b->PackEnd(LuaObject<UI::Widget>::CheckFromLua(-1), flags);
				lua_pop(l, 1);
			}
		}
		else
			b->PackEnd(LuaObject<UI::Widget>::CheckFromLua(2), flags);

		lua_pushvalue(l, 1);
		return 1;
	}