---
name: "SDL::Mouse"
section: "3pm"
platform: "linux"
package: "libsdl-perl"
version: "2.548-5+b1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/SDL::Mouse"
---

# SDL::Mouse(3pm)

SDL Bindings for the Mouse device

## NAME

SDL::Mouse - SDL Bindings for the Mouse device

## CATEGORY

Core, Mouse

## CONSTANTS

The constants for SDL::Mouse belong to SDL::Events/SDL::Event, under the export tag of `':state'`.

## METHODS

### warp\_mouse

```
 SDL::Mouse::warp_mouse( $x, $y );
```

Set the position of the mouse cursor (generates a mouse motion event). Even if the mouse is warped to where it currently is, a mouse motion event is generated.

### set\_cursor

```
 SDL::Mouse::set_cursor( $cursor_object );
```

Sets the currently active cursor to the specified one. See SDL::Cursor for details on cursor objects. If the cursor is currently visible, the change will be immediately represented on the display. `set_cursor()` can be used to force cursor redraw, if this is desired for any reason.

### get\_cursor

```
 my $cursor_object = SDL::Mouse::get_cursor;
```

Gets the currently active mouse cursor.

### show\_cursor

```
 my $return = SDL::Mouse::show_cursor( $state );
```

Toggle whether or not the cursor is shown on the screen. Passing `"SDL_ENABLE"` displays the cursor and passing `"SDL_DISABLE"` hides it. The current state of the mouse cursor can be queried by passing `"SDL_QUERY"`, either `"SDL_DISABLE"` or `"SDL_ENABLE"` will be returned.

```
 use SDL;
 use SDL::Mouse;
 use SDL::Video;
 use SDL::Events ':state'; #For the constants
 SDL::init(SDL_INIT_VIDEO);
 SDL::Video::set_video_mode(640, 480, 16, SDL_SWSURFACE);
 printf("Cursor is %s\n", SDL::Mouse::show_cursor(SDL_QUERY) ? 'visible' : 'not visible');
 sleep(3);
 SDL::Mouse::show_cursor(SDL_DISABLE);
 printf("Cursor is %s\n", SDL::Mouse::show_cursor(SDL_QUERY) ? 'visible' : 'not visible');
 sleep(3);
 SDL::Mouse::show_cursor(SDL_ENABLE);
 printf("Cursor is %s\n", SDL::Mouse::show_cursor(SDL_QUERY) ? 'visible' : 'not visible');
 sleep(3);
```

## SEE ALSO

SDL::Cursor

## AUTHORS

See "AUTHORS" in SDL.
