Scroll to navigation

SDL_CreateCursor(3) SDL3 FUNCTIONS SDL_CreateCursor(3)

NAME

SDL_CreateCursor - Create a cursor using the specified bitmap data and mask (in MSB format).

SYNOPSIS

#include "SDL3/SDL.h"
SDL_Cursor* SDL_CreateCursor(const Uint8 * data,
                             const Uint8 * mask,
                             int w, int h, int hot_x,
                             int hot_y);

DESCRIPTION

mask has to be in MSB (Most Significant Bit) format.

The cursor width ( w ) must be a multiple of 8 bits.

The cursor is created in black and white according to the following:

• data=0, mask=1: white

• data=1, mask=1: black

• data=0, mask=0: transparent

• data=1, mask=0: inverted color if possible, black if not.

Cursors created with this function must be freed with

SDL_DestroyCursor ().

If you want to have a color cursor, or create your cursor from an

SDL_Surface , you should use

SDL_CreateColorCursor (). Alternately, you can hide the cursor and draw your own as part of your game's rendering, but it will be bound to the framerate.

Also, since SDL 2.0.0, SDL_CreateSystemCursor () is available, which provides twelve readily available system cursors to pick from.

FUNCTION PARAMETERS

the color value for each pixel of the cursor
the mask value for each pixel of the cursor
the width of the cursor
the height of the cursor
the X-axis location of the upper left corner of the cursor relative to the actual mouse position
the Y-axis location of the upper left corner of the cursor relative to the actual mouse position

RETURN VALUE

Returns a new cursor with the specified parameters on success or NULL on failure; call SDL_GetError () for more information.

AVAILABILITY

This function is available since SDL 3.0.0.

SEE ALSO

SDL_CreateColorCursor(3), SDL_CreateSystemCursor(3), SDL_DestroyCursor(3), SDL_SetCursor(3)

SDL 3.1.0 SDL