public bool MouseHover(int x, int y, float frameDeltaTime)
{
if (_isEnabled)
{
_scroll.MouseHover(x, y, frameDeltaTime);
if (_scrollSelected)
{
int newPosition;
if (_isHorizontal)
{
newPosition = _initialScrollPos + (x - (_isSlider ? (_xPos + (_scrollButtonLength / 2)) : _initialMousePos));
}
else
{
newPosition = _initialScrollPos + (y - (_isSlider ? (_yPos + (_scrollButtonLength / 2)) : _initialMousePos));
}
if (newPosition < 0)
{
newPosition = 0;
}
else if (newPosition > (_scrollBarLength - _scrollButtonLength))
{
newPosition = _scrollBarLength - _scrollButtonLength;
}
float itemsPerIncrement = ((_amountOfItems - _amountVisible) / (float)(_scrollBarLength - _scrollButtonLength));
int oldIndex = _topIndex;
_topIndex = (int)((itemsPerIncrement * newPosition) + 0.5f);
SetScrollButtonPosition();
return oldIndex != _topIndex;
}
return false;
}
return false;
}