sdlGetGlobalMouseState function

int sdlGetGlobalMouseState(
  1. Pointer<Int32> x,
  2. Pointer<Int32> y
)

Get the current state of the mouse in relation to the desktop.

This works similarly to SDL_GetMouseState(), but the coordinates will be reported relative to the top-left of the desktop. This can be useful if you need to track the mouse outside of a specific window and SDL_CaptureMouse() doesn't fit your needs. For example, it could be useful if you need to track the mouse while dragging a window, where coordinates relative to a window might not be in sync at all times.

Note: SDL_GetMouseState() returns the mouse position as SDL understands it from the last pump of the event queue. This function, however, queries the OS for the current mouse position, and as such, might be a slightly less efficient function. Unless you know what you're doing and have a good reason to use this function, you probably want SDL_GetMouseState() instead.

\param x filled in with the current X coord relative to the desktop; can be NULL \param y filled in with the current Y coord relative to the desktop; can be NULL \returns the current button state as a bitmask which can be tested using the SDL_BUTTON(X) macros.

\since This function is available since SDL 2.0.4.

\sa SDL_CaptureMouse

extern DECLSPEC Uint32 SDLCALL SDL_GetGlobalMouseState(int *x, int *y)

Implementation

int sdlGetGlobalMouseState(Pointer<Int32> x, Pointer<Int32> y) {
  final sdlGetGlobalMouseStateLookupFunction = libSdl2.lookupFunction<
      Uint32 Function(Pointer<Int32> x, Pointer<Int32> y),
      int Function(
          Pointer<Int32> x, Pointer<Int32> y)>('SDL_GetGlobalMouseState');
  return sdlGetGlobalMouseStateLookupFunction(x, y);
}