Коммит 1ef6b747 создал по автору xottab-duty's avatar xottab-duty
Просмотр файлов

CUICursor: ability to warp cursor to specific UI window position

владелец cce060b5
......@@ -152,3 +152,23 @@ void CUICursor::SetUICursorPosition(Fvector2 pos)
p.y = iFloor(vPos.y / correction.y);
pInput->iSetMousePos(p);
}
void CUICursor::WarpToWindow(CUIWindow* wnd, bool change_visibility /*= true*/)
{
if (!wnd)
{
if (change_visibility)
Hide();
return;
}
if (!IsVisible() && change_visibility)
Show();
Fvector2 pos;
wnd->GetAbsolutePos(pos);
Fvector2 size = wnd->GetWndSize();
const Fvector2 sizeOfThird = Fvector2(size).div(3);
pos.add(size).sub(sizeOfThird);
SetUICursorPosition(pos);
}
......@@ -26,6 +26,7 @@ public:
Fvector2 GetCursorPosition();
void SetUICursorPosition(Fvector2 pos);
void WarpToWindow(CUIWindow* wnd, bool change_visibility = true);
void UpdateCursorPosition(int _dx, int _dy);
void OnDeviceReset() override;
......
Поддерживает Markdown
0% или .
You are about to add 0 people to the discussion. Proceed with caution.
Сначала завершите редактирование этого сообщения!
Пожалуйста, зарегистрируйтесь или чтобы прокомментировать