This commit is contained in:
Glenn Maynard
2006-10-06 01:07:53 +00:00
parent c2a88f95cc
commit 76dea048fc
3 changed files with 7 additions and 2 deletions
+2 -1
View File
@@ -120,7 +120,8 @@ void Enum::SetMetatable( lua_State *L, LuaReference &EnumTable, LuaReference &En
lua_setfield( L, -2, "__index" );
lua_pushliteral( L, "Enum" );
lua_setfield( L, -2, "type" );
LuaHelpers::PushValueFunc( L, 1 );
lua_setfield( L, -2, "__type" ); // for luaL_pushtype
}
lua_setmetatable( L, -2 );
lua_pop( L, 1 );
+4
View File
@@ -112,6 +112,10 @@ void LuaBinding::Register( lua_State *L )
lua_pushstring( L, GetClassName() );
lua_setfield( L, metatable, "type" );
lua_pushstring( L, GetClassName() );
LuaHelpers::PushValueFunc( L, 1 );
lua_setfield( L, metatable, "__type" ); // for luaL_pushtype
{
lua_newtable( L );
int iHeirarchyTable = lua_gettop( L );
+1 -1
View File
@@ -314,7 +314,7 @@ XNode *LuaManager::GetLuaInformation() const
// fall through
case LUA_TUSERDATA: // table or userdata: class instance
{
if( !luaL_getmetafield(L, -1, "type") )
if( !luaL_callmeta(L, -1, "__type") )
break;
RString sType;
if( !LuaHelpers::Pop(L, sType) )