Example #1
0
 /// <summary>
 /// Clears all static cached data
 /// </summary>
 private static void ClearCache()
 {
     ContextToUnfoldedComponents.Clear();
     ContextToComponentMemberSearch.Clear();
     ContextToColoredBoxStyles.Clear();
     ContextToComponentInfos.Clear();
 }
Example #2
0
        internal static ComponentInfo[] GetComponentInfos(string contextName, string[] componentNames, Type[] componentTypes)
        {
            if (!ContextToComponentInfos.TryGetValue(contextName, out var infos))
            {
                var infosList = new List <ComponentInfo>(componentTypes.Length);
                for (var i = 0; i < componentTypes.Length; i++)
                {
                    infosList.Add(
                        new ComponentInfo
                    {
                        index = i, name = componentNames[i], type = componentTypes[i]
                    });
                }

                infos = infosList.ToArray();
                ContextToComponentInfos.Add(contextName, infos);
            }

            return(infos);
        }
Example #3
0
        internal static ComponentInfo[] GetComponentInfos(IEntity entity)
        {
            if (!ContextToComponentInfos.TryGetValue(entity.ContextInfo.name, out var infos))
            {
                var contextInfo = entity.ContextInfo;
                var infosList   = new List <ComponentInfo>(contextInfo.componentTypes.Length);
                for (var i = 0; i < contextInfo.componentTypes.Length; i++)
                {
                    infosList.Add(
                        new ComponentInfo
                    {
                        index = i, name = contextInfo.componentNames[i], type = contextInfo.componentTypes[i]
                    });
                }

                infos = infosList.ToArray();
                ContextToComponentInfos.Add(entity.ContextInfo.name, infos);
            }

            return(infos);
        }