SDL::Mouse

Section: User Contributed Perl Documentation (3)
Updated: 2019-07-26
Page Index
 

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.


 

Index

NAME
CATEGORY
CONSTANTS
METHODS
warp_mouse
set_cursor
get_cursor
show_cursor
SEE ALSO
AUTHORS
LinuxReviews : manual page archive : man3pm