MCPcopy Create free account
hub / github.com/OpenDUNE/OpenDUNE / Mouse_CheckMovement

Function Mouse_CheckMovement

src/input/mouse.c:268–295  ·  view source on GitHub ↗

* If the mouse has moved, update its coordinates, and update the region flags. * @param mouseX New mouse X coordinate. * @param mouseY New mouse Y coordinate. */

Source from the content-addressed store, hash-verified

266 * @param mouseY New mouse Y coordinate.
267 */
268static void Mouse_CheckMovement(uint16 mouseX, uint16 mouseY)
269{
270 if (g_mouseHiddenDepth == 0 && (g_mousePrevX != mouseX || g_mousePrevY != mouseY)) {
271
272 if ((g_regionFlags & 0xC000) != 0xC000) {
273 GUI_Mouse_Hide();
274
275 if ((g_regionFlags & 0x8000) == 0) {
276 GUI_Mouse_Show();
277 g_mousePrevX = mouseX;
278 g_mousePrevY = mouseY;
279 g_mouseLock = 0;
280 return;
281 }
282 }
283
284 if (mouseX >= g_regionMinX && mouseX <= g_regionMaxX &&
285 mouseY >= g_regionMinY && mouseY <= g_regionMaxY) {
286 g_regionFlags |= 0x4000;
287 } else {
288 GUI_Mouse_Show();
289 }
290 }
291
292 g_mousePrevX = mouseX;
293 g_mousePrevY = mouseY;
294 g_mouseLock = 0;
295}
296
297/**
298 * Handle movement of the mouse.

Callers 1

Mouse_HandleMovementFunction · 0.85

Calls 2

GUI_Mouse_HideFunction · 0.85
GUI_Mouse_ShowFunction · 0.85

Tested by

no test coverage detected