static int AddEventListener(IntPtr L) { try { ToLua.CheckArgsCount(L, 3); UIBase obj = (UIBase)ToLua.CheckObject(L, 1, typeof(UIBase)); System.Enum arg0 = (System.Enum)ToLua.CheckObject(L, 2, typeof(System.Enum)); EventHandle arg1 = null; LuaTypes funcType3 = LuaDLL.lua_type(L, 3); if (funcType3 != LuaTypes.LUA_TFUNCTION) { arg1 = (EventHandle)ToLua.CheckObject(L, 3, typeof(EventHandle)); } else { LuaFunction func = ToLua.ToLuaFunction(L, 3); arg1 = DelegateFactory.CreateDelegate(typeof(EventHandle), func) as EventHandle; } obj.AddEventListener(arg0, arg1); return(0); } catch (Exception e) { return(LuaDLL.toluaL_exception(L, e)); } }