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

ChangeItemsVisibility() private method

private ChangeItemsVisibility ( int startIndex, int endIndex, bool setSelected ) : void
startIndex int
endIndex int
setSelected bool
return void
        private void ChangeItemsVisibility(int startIndex, int endIndex, bool setSelected)
        {
            Visibility tmpVisibility = Visibility.Visible;
            for (int i = startIndex; i <= endIndex; i++)
            {
                var item = ContainerFromIndex(i) as CatrobatListViewItem;
                if (item == null)
                {
                    continue;
                }
                if (i == startIndex)
                {
                    tmpVisibility = item.Visibility == Visibility.Visible ? Visibility.Collapsed : Visibility.Visible;
                }
                if (item.IsGrouped)
                {
                    i = GetEndBrickIndex(item.Content);
                }
                if (setSelected)
                {
                    if (!SmartSelectedItems.Contains(item.Content))
                    {
                        SmartSelectedItems.Add(item.Content);
                    }
                }
                else
                {
                    SmartSelectedItems.Remove(item.Content);
                }

                item.Visibility = tmpVisibility;
            }
        }