System.Windows.Forms.TreeNode._GetYIndex C# (CSharp) Method

_GetYIndex() private method

private _GetYIndex ( TreeNode currentNode, int currentY ) : int
currentNode TreeNode
currentY int
return int
        private int _GetYIndex(TreeNode currentNode, int currentY)
        {
            if (currentNode.parent == null) return currentY;

            if (currentNode == TreeView.root) return currentY--;

            if (currentNode.parent != TreeView.root && currentNode.parent.IsVisible) currentY++;

            for (int i = 0; i < currentNode.index; i++)
                currentY += _GetVisibleNodesAmount(currentNode.parent.Nodes[i], 0);

            return _GetYIndex(currentNode.parent, currentY);
        }