Catrobat.IDE.WindowsPhone.Controls.ListsViewControls.CatrobatListView.CatrobatListViewMisc.CatrobatListViewWorker.CalcMaxReorderIndex C# (CSharp) Method

CalcMaxReorderIndex() private method

private CalcMaxReorderIndex ( int index, bool forGrouping = false ) : int
index int
forGrouping bool
return int
        private int CalcMaxReorderIndex(int index, bool forGrouping = false)
        {
            for (int i = index; i < Items.Count; i++)
            {
                if (Items[i] is Script)
                {
                    return i;
                }
                if (!forGrouping && Items[i] is BlockBeginBrick)
                {
                    var tmpItem = ContainerFromIndex(i) as CatrobatListViewItem;
                    if (tmpItem != null && tmpItem.IsGrouped)
                    {
                        i = Items.IndexOf((Items[i] as BlockBeginBrick).End);
                    }
                    else if (!tmpItem.IsGrouped)
                    {
                        return i;
                    }
                }
            }
            return Items.Count;
        }