Fixed: Scrolling in small steps not working.
--HG-- branch : develop
This commit is contained in:
parent
7a23ff8fd6
commit
cb94cb4f9f
2 changed files with 13 additions and 21 deletions
|
@ -147,7 +147,7 @@ namespace NLGUI
|
||||||
sint32 _Aligned; // 0-Top 1-Bottom 2-Left 3-Right
|
sint32 _Aligned; // 0-Top 1-Bottom 2-Left 3-Right
|
||||||
|
|
||||||
sint32 _TrackDispPos;
|
sint32 _TrackDispPos;
|
||||||
sint32 _TrackPos;
|
float _TrackPos;
|
||||||
sint32 _TrackSize;
|
sint32 _TrackSize;
|
||||||
sint32 _TrackSizeMin;
|
sint32 _TrackSizeMin;
|
||||||
|
|
||||||
|
|
|
@ -653,8 +653,7 @@ namespace NLGUI
|
||||||
factor = -(float)_Target->getOfsY() / factor;
|
factor = -(float)_Target->getOfsY() / factor;
|
||||||
if (factor < 0.0f) factor = 0.0f;
|
if (factor < 0.0f) factor = 0.0f;
|
||||||
if (factor > 1.0f) factor = 1.0f;
|
if (factor > 1.0f) factor = 1.0f;
|
||||||
factor = factor * (getHReal()-_TrackSize);
|
_TrackPos = factor * (getHReal()-_TrackSize);
|
||||||
_TrackPos = (sint32)factor;
|
|
||||||
}
|
}
|
||||||
else // TOP
|
else // TOP
|
||||||
{
|
{
|
||||||
|
@ -663,8 +662,7 @@ namespace NLGUI
|
||||||
if (factor < 0.0f) factor = 0.0f;
|
if (factor < 0.0f) factor = 0.0f;
|
||||||
if (factor > 1.0f) factor = 1.0f;
|
if (factor > 1.0f) factor = 1.0f;
|
||||||
sint32 hreal = getHReal();
|
sint32 hreal = getHReal();
|
||||||
factor = (1.0f-factor) * (hreal - _TrackSize);
|
_TrackPos = (1.0f-factor) * (hreal - _TrackSize);
|
||||||
_TrackPos = (sint32)factor;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -712,8 +710,7 @@ namespace NLGUI
|
||||||
factor = -(float)_Target->getOfsX() / factor;
|
factor = -(float)_Target->getOfsX() / factor;
|
||||||
if (factor < 0.0f) factor = 0.0f;
|
if (factor < 0.0f) factor = 0.0f;
|
||||||
if (factor > 1.0f) factor = 1.0f;
|
if (factor > 1.0f) factor = 1.0f;
|
||||||
factor = factor * (getWReal()-_TrackSize);
|
_TrackPos = factor * (getWReal()-_TrackSize);
|
||||||
_TrackPos = (sint32)factor;
|
|
||||||
}
|
}
|
||||||
else // RIGHT
|
else // RIGHT
|
||||||
{
|
{
|
||||||
|
@ -722,8 +719,7 @@ namespace NLGUI
|
||||||
if (factor < 0.0f) factor = 0.0f;
|
if (factor < 0.0f) factor = 0.0f;
|
||||||
if (factor > 1.0f) factor = 1.0f;
|
if (factor > 1.0f) factor = 1.0f;
|
||||||
sint32 hreal = getWReal();
|
sint32 hreal = getWReal();
|
||||||
factor = (1.0f-factor) * (hreal - _TrackSize);
|
_TrackPos = (1.0f-factor) * (hreal - _TrackSize);
|
||||||
_TrackPos = (sint32)factor;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -930,8 +926,8 @@ namespace NLGUI
|
||||||
if ((getWReal()-_TrackSize) <= 0)
|
if ((getWReal()-_TrackSize) <= 0)
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
sint32 newtpos;
|
float newtpos;
|
||||||
sint32 tpos = _TrackPos;
|
float tpos = _TrackPos;
|
||||||
sint32 tsize = _TrackSize;
|
sint32 tsize = _TrackSize;
|
||||||
|
|
||||||
// Limit the scroller to the defined area
|
// Limit the scroller to the defined area
|
||||||
|
@ -998,8 +994,8 @@ namespace NLGUI
|
||||||
if ((getHReal()-_TrackSize) <= 0)
|
if ((getHReal()-_TrackSize) <= 0)
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
sint32 newtpos;
|
float newtpos;
|
||||||
sint32 tpos = _TrackPos;
|
float tpos = _TrackPos;
|
||||||
sint32 tsize = _TrackSize;
|
sint32 tsize = _TrackSize;
|
||||||
|
|
||||||
// Limit the scroller to the defined area
|
// Limit the scroller to the defined area
|
||||||
|
@ -1202,16 +1198,14 @@ namespace NLGUI
|
||||||
float factor = (float)(wReal-maxWReal);
|
float factor = (float)(wReal-maxWReal);
|
||||||
factor = -(float)ofsX / factor;
|
factor = -(float)ofsX / factor;
|
||||||
clamp(factor, 0.f, 1.f);
|
clamp(factor, 0.f, 1.f);
|
||||||
factor = factor * (getWReal()-_TrackSize);
|
_TrackPos = factor * (getWReal()-_TrackSize);
|
||||||
_TrackPos = (sint32)factor;
|
|
||||||
}
|
}
|
||||||
else // RIGHT
|
else // RIGHT
|
||||||
{
|
{
|
||||||
float factor = (float)(wReal-maxWReal);
|
float factor = (float)(wReal-maxWReal);
|
||||||
factor = (float)ofsX / factor;
|
factor = (float)ofsX / factor;
|
||||||
clamp(factor, 0.f, 1.f);
|
clamp(factor, 0.f, 1.f);
|
||||||
factor = (1.0f-factor) * (getWReal() - _TrackSize);
|
_TrackPos = (1.0f-factor) * (getWReal() - _TrackSize);
|
||||||
_TrackPos = (sint32)factor;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// invalidate only position. 1 pass is sufficient
|
// invalidate only position. 1 pass is sufficient
|
||||||
|
@ -1240,8 +1234,7 @@ namespace NLGUI
|
||||||
float factor = (float)(hReal-maxHReal);
|
float factor = (float)(hReal-maxHReal);
|
||||||
factor = -(float)ofsY / factor;
|
factor = -(float)ofsY / factor;
|
||||||
clamp(factor, 0.f, 1.f);
|
clamp(factor, 0.f, 1.f);
|
||||||
factor = factor * (getHReal()-_TrackSize);
|
_TrackPos = factor * (getHReal()-_TrackSize);
|
||||||
_TrackPos = (sint32)factor;
|
|
||||||
}
|
}
|
||||||
else // TOP
|
else // TOP
|
||||||
{
|
{
|
||||||
|
@ -1250,8 +1243,7 @@ namespace NLGUI
|
||||||
float factor = (float)(hReal-maxHReal);
|
float factor = (float)(hReal-maxHReal);
|
||||||
factor = (float)ofsY / factor;
|
factor = (float)ofsY / factor;
|
||||||
clamp(factor, 0.f, 1.f);
|
clamp(factor, 0.f, 1.f);
|
||||||
factor = (1.0f-factor) * (getHReal() - _TrackSize);
|
_TrackPos = (1.0f-factor) * (getHReal() - _TrackSize);
|
||||||
_TrackPos = (sint32)factor;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// invalidate only position. 1 pass is sufficient
|
// invalidate only position. 1 pass is sufficient
|
||||||
|
|
Loading…
Reference in a new issue