X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FSDL%2FCursor.pm;h=7666a940113cbded8024ec79e5642ce6beeda06d;hb=896b04ee008898e1c1edbdd432bedaa8643400dc;hp=a8aee2a4743edcf7780812899f84b7c8f18af9c6;hpb=7b6a53a1f5064ca5b8ab0243f7bcf6209e6bf5a4;p=sdlgit%2FSDL_perl.git diff --git a/lib/SDL/Cursor.pm b/lib/SDL/Cursor.pm index a8aee2a..7666a94 100644 --- a/lib/SDL/Cursor.pm +++ b/lib/SDL/Cursor.pm @@ -40,9 +40,10 @@ sub new { verify (%options, qw/ -data -mask -x -y /) if $SDL::DEBUG; - die SDL::GetError() unless $$self; + my $self = \SDL::NewCursor($options{-data},$options{-mask}, $options{-x},$options{-y}); + croak SDL::GetError() unless $$self; bless $self, $class; $self; } @@ -68,66 +69,8 @@ sub get () { sub show ($;$) { my ($self,$toggle) = @_; + $toggle = 0 unless defined $toggle; SDL::ShowCursor($toggle); } 1; - -__END__; - -=pod - - - -=head1 NAME - -SDL::Cursor - a SDL perl extension - -=head1 SYNOPSIS - - $cursor = SDL::Cursor->new( - -data => new SDL::Surface "cursor.png", - -mask => new SDL::Surface "mask.png", - -x => 0, -y => 0 ); - $cusor->use; - -=head1 DESCRIPTION - -the SDL::Cursor module handles mouse cursors, and provide the developer to -use custom made cursors. Note that the cursors can only be in black and -white. - -=head1 METHODS - -=head2 new( -data => $surface_data, -mask => $surface_mask, x => $x, y => $y) - -Creates a new cursor. The -data and -mask parameters should be both black and white pictures. The height and width of these surfaces should be a multiple of 8. The -x and -y are the coordinates of the cursor 'hot spot'. - -=head2 warp($x, $y) - -Set the position of the cursor at the $x, $y coordinates in the application window. - -=head2 use() - -Set the cursor as the active cursor. - -=head2 get() - -When used statically SDL::Cursor::get(), it will return the instance of the current cursor in use. Called as a method, it will return itself. - -This method can be useful if you are dealing with several cursors. - -=head2 show($toggle) - -Set the visibility of the cursor. A false value will make the cursor -invisible in the Application window. A true value will show it back. - -=head1 AUTHOR - -David J. Goehrig - -=head1 SEE ALSO - -L L - -=cut