void UpdateScrollSize()
{
// calc scroll bar info
if(VScrollBarVisible && _byteProvider != null && _byteProvider.Length > 0 && _iHexMaxHBytes != 0)
{
long scrollmax = (long)Math.Ceiling((double)_byteProvider.Length / (double)_iHexMaxHBytes - (double)_iHexMaxVBytes);
scrollmax = Math.Max(0, scrollmax);
long scrollpos = _startByte / _iHexMaxHBytes;
if(scrollmax == _scrollVmax && scrollpos == _scrollVpos)
return;
_scrollVmin = 0;
_scrollVmax = scrollmax;
_scrollVpos = Math.Min(scrollpos, scrollmax);
UpdateVScroll();
}
else if(VScrollBarVisible)
{
// disable scroll bar
_scrollVmin = 0;
_scrollVmax = 0;
_scrollVpos = 0;
UpdateVScroll();
}
}