Fix #162: Center ingame mouse cursor after login
This commit is contained in:
parent
2efdca688e
commit
868ff2d106
3 changed files with 9 additions and 5 deletions
|
@ -59,6 +59,8 @@ namespace NLGUI
|
|||
/// get buttons state
|
||||
NLMISC::TMouseButton getButtonState() const { return _Buttons; }
|
||||
|
||||
static const sint32 InvalidCoord = 0x80000000;
|
||||
|
||||
protected:
|
||||
// (x,y) is from the TopLeft corner of the window
|
||||
sint32 _PointerX; // Current pointer position (raw, before snapping)
|
||||
|
|
|
@ -25,7 +25,7 @@ namespace NLGUI
|
|||
CViewBase( param ),
|
||||
_Buttons( NLMISC::noButton )
|
||||
{
|
||||
_PointerX = _PointerY = _PointerOldX = _PointerOldY = _PointerDownX = _PointerDownY = 0;
|
||||
_PointerX = _PointerY = _PointerOldX = _PointerOldY = _PointerDownX = _PointerDownY = InvalidCoord;
|
||||
_PointerDown = false;
|
||||
_PointerVisible = true;
|
||||
}
|
||||
|
|
|
@ -263,7 +263,6 @@ bool IsMouseFreeLook()
|
|||
return MouseFreeLook;
|
||||
}
|
||||
|
||||
|
||||
// *********************************************************************************
|
||||
// Use this method to toggle the mouse (freelook -> cursor)
|
||||
void SetMouseCursor (bool updatePos)
|
||||
|
@ -287,8 +286,11 @@ void SetMouseCursor (bool updatePos)
|
|||
{
|
||||
sint32 ix, iy;
|
||||
cursor->getPointerPos (ix, iy);
|
||||
x = (float)ix / (float)width;
|
||||
y = (float)iy / (float)height;
|
||||
if (ix != CViewPointer::InvalidCoord && iy != CViewPointer::InvalidCoord)
|
||||
{
|
||||
x = (float)ix / (float)width;
|
||||
y = (float)iy / (float)height;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue