Exemple #1
0
        /// <summary>
        /// Gets the list of methods to render in the inspector interface.
        /// </summary>
        /// <param name="caller">The caller.</param>
        /// <returns></returns>
        public static List <InspectorItemRenderer> GetListOfMethods(object caller)
        {
            List <InspectorItemRenderer> methodRenderers = new List <InspectorItemRenderer>();

            MethodInfo[] methodInfos = caller.GetType().GetMethods(BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Instance | BindingFlags.Static);
            foreach (MethodInfo methodInfo in methodInfos)
            {
                InspectorItemRenderer renderer = InspectorItemRenderer.GetRendererFromMethodInfo(methodInfo, caller);

                if (renderer != null)
                {
                    methodRenderers.Add(renderer);
                }
            }

            return(methodRenderers);
        }
        /// <summary>
        /// Gets the list of methods to render in the inspector interface.
        /// </summary>
        /// <param name="caller">The caller.</param>
        /// <returns></returns>
        public static List <InspectorItemRenderer> GetListOfMethods(object caller, SerializedObject serializedObject, string pathToCaller = null)
        {
            List <InspectorItemRenderer> methodRenderers = new List <InspectorItemRenderer>();

            BindingFlags      flags       = (BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Instance | BindingFlags.Static);
            List <MethodInfo> methodInfos = MethodInfoHelper.GetAllMethodsTillUnityBaseClass(caller.GetType(), flags);

            foreach (MethodInfo methodInfo in methodInfos)
            {
                InspectorItemRenderer renderer = InspectorItemRenderer.GetRendererFromMethodInfo(methodInfo, caller, serializedObject, pathToCaller);

                if (renderer != null)
                {
                    methodRenderers.Add(renderer);
                }
            }

            return(methodRenderers);
        }