Changed love.graphics.getRendererInfo to return all the info (resolves issue #757)

This commit is contained in:
Alex Szpakowski
2013-09-23 18:03:10 -03:00
parent 2e2ede6334
commit b36d643570
+11 -6
View File
@@ -1058,14 +1058,19 @@ int w_isSupported(lua_State *L)
int w_getRendererInfo(lua_State *L) int w_getRendererInfo(lua_State *L)
{ {
const char *str = luaL_checkstring(L, 1); std::string name, version, vendor, device;
Graphics::RendererInfo infotype;
if (!Graphics::getConstant(str, infotype)) EXCEPT_GUARD(name = instance->getRendererInfo(Graphics::RENDERER_INFO_NAME);)
return luaL_error(L, "Invalid renderer info type: %s", str); EXCEPT_GUARD(version = instance->getRendererInfo(Graphics::RENDERER_INFO_VERSION);)
EXCEPT_GUARD(vendor = instance->getRendererInfo(Graphics::RENDERER_INFO_VENDOR);)
EXCEPT_GUARD(device = instance->getRendererInfo(Graphics::RENDERER_INFO_DEVICE);)
EXCEPT_GUARD(luax_pushstring(L, instance->getRendererInfo(infotype));) luax_pushstring(L, name);
return 1; luax_pushstring(L, version);
luax_pushstring(L, vendor);
luax_pushstring(L, device);
return 4;
} }
int w_draw(lua_State *L) int w_draw(lua_State *L)