UnityEditor.AudioMixerGroupSelector.GroupTreeViewGUI.GetFirstAndLastRowVisible C# (CSharp) Method

GetFirstAndLastRowVisible() public method

public GetFirstAndLastRowVisible ( List rows, float topPixel, float heightInPixels, int &firstRowVisible, int &lastRowVisible ) : void
rows List
topPixel float
heightInPixels float
firstRowVisible int
lastRowVisible int
return void
            public override void GetFirstAndLastRowVisible(List<TreeViewItem> rows, float topPixel, float heightInPixels, out int firstRowVisible, out int lastRowVisible)
            {
                if (rows.Count != this.m_RowRects.Count)
                {
                    Debug.LogError("Mismatch in state: rows vs cached rects");
                }
                int num = -1;
                int num2 = -1;
                for (int i = 0; i < this.m_RowRects.Count; i++)
                {
                    Rect rect = this.m_RowRects[i];
                    if (rect.y > topPixel)
                    {
                        Rect rect2 = this.m_RowRects[i];
                        if (rect2.y < (topPixel + heightInPixels))
                        {
                            goto Label_009D;
                        }
                    }
                    Rect rect3 = this.m_RowRects[i];
                    System.Boolean ReflectorVariable0 = true;
                    goto Label_009E;
                Label_009D:
                    ReflectorVariable0 = false;
                Label_009E:
                    if (ReflectorVariable0 ? ((rect3.yMax > topPixel) && (this.m_RowRects[i].yMax < (topPixel + heightInPixels))) : true)
                    {
                        if (num == -1)
                        {
                            num = i;
                        }
                        num2 = i;
                    }
                }
                if ((num != -1) && (num2 != -1))
                {
                    firstRowVisible = num;
                    lastRowVisible = num2;
                }
                else
                {
                    firstRowVisible = 0;
                    lastRowVisible = rows.Count - 1;
                }
            }