コード例 #1
0
        private static List <Element> MakeGroup(List <Element> element_list)
        {
            List <Element> grouping_list = new List <Element>();

            for (int i = 0; i < element_list.Count; ++i)
            {
                int j;
                for (j = i + 1; j < element_list.Count; ++j)
                {
                    if (!element_list[j].IsContinue())
                    {
                        break;
                    }
                }
                if (j > i + 1) // Group を作る
                {
                    ElementGroup group = new ElementGroup();
                    group.AddElementRange(element_list.GetRange(i, j - i));
                    grouping_list.Add(group);
                    i = j - 1;
                }
                else // Group を作らない
                {
                    grouping_list.Add(element_list[i]);
                }
            }
            return(grouping_list);
        }