示例#1
0
        protected IEnumerable <INodeInfo> domElemsBy(string className)
        {
            if (inspector == null)
            {
                Log.Debug("domElemsBy: Inspector is null");
                yield break;
            }

            List <INodeInfo> ret = new List <INodeInfo>();

            foreach (IComponent c in Loader.Soba.Registered)
            {
                if (c.GetType().Name != className)
                {
                    continue;
                }

                foreach (INodeInfo info in inspector.GetBy(c.GetType()))
                {
                    ret.Add(info);
                    ret.AddRange(domElemsBy(info.Link));
                }
            }

            // TODO:
            foreach (INodeInfo info in ret.Distinct())
            {
                yield return(info);
            }
        }