fixed url-generator
[sdlgit/SDL-Site.git] / pages / SDL-Cursor.html-inc
index 4548015..289bf2e 100644 (file)
@@ -3,6 +3,7 @@
 <h3 id="TOP">Index</h3>
 
 <ul><li><a href="#NAME">NAME</a></li>
+<li><a href="#CATEGORY">CATEGORY</a></li>
 <li><a href="#SYNOPSIS">SYNOPSIS</a></li>
 <li><a href="#DESCRIPTION">DESCRIPTION</a></li>
 <li><a href="#METHODS">METHODS</a>
 
 <h1 id="NAME">NAME</h1><p><a href="#TOP" class="toplink">Top</a></p>
 <div id="NAME_CONTENT">
-<p>SDL::Cursor - a SDL perl extension</p>
+<p>SDL::Cursor -- Mouse cursor structure</p>
+
+</div>
+<h1 id="CATEGORY">CATEGORY</h1><p><a href="#TOP" class="toplink">Top</a></p>
+<div id="CATEGORY_CONTENT">
+<p>Core, Mouse, Structure</p>
 
 </div>
 <h1 id="SYNOPSIS">SYNOPSIS</h1><p><a href="#TOP" class="toplink">Top</a></p>
 <div id="SYNOPSIS_CONTENT">
 <pre> my $cursor = SDL::Cursor-&gt;new(
-     SDL::Video::load_BMP(&quot;cursor.png&quot;),
-     SDL::Video::load_BMP(&quot;mask.png&quot;),
-        0, 0 );
+     \@data,
+     \@mask,
+     $width,
+     $height,
+     $hotspot_left,
+     $hotspot_top );
+
  SDL::Mouse::set_cursor($cursor);
 
 </pre>
@@ -44,11 +54,57 @@ white.</p>
 </div>
 <h2 id="new">new</h2>
 <div id="new_CONTENT">
-<pre> object new( object $data, object $mask, int $x, int $y )
+<p>Create a cursor using the specified data and mask (in MSB format). The cursor width must be a multiple of 8 bits.</p>
+<p>The cursor is created in black and white according to the following:</p>
+<pre> Data / Mask   Resulting pixel on screen
+    0 / 1      White
+    1 / 1      Black
+    0 / 0      Transparent
+    1 / 0      Inverted color if possible, black if not.
+
+</pre>
+<p>Cursors created with this function must be freed with SDL_FreeCursor.</p>
+<p>If you want to have color cursor, then this function is not for you; instead, you must hide normal system cursor with <code>SDL::Cursor-</code>new&gt;
+and in your main loop, when you draw graphics, also draw a <code>SDL::Surface</code> at the location of the mouse cursor. </p>
+<p>Example:</p>
+<pre> use SDL;
+ use SDL::Cursor;
+ use SDL::Mouse;
+ use SDL::Video;
+
+ SDL::init(SDL_INIT_VIDEO);
+ SDL::Video::set_video_mode( 640, 480, 16, SDL_SWSURFACE);
+
+ my @data = (
+     0b00000000,
+     0b00111100,
+     0b01111110,
+     0b01111110,
+     0b01111110,
+     0b01111110,
+     0b00111100,
+     0b00000000
+ );
+
+ my @mask = (
+     0b00111100,
+     0b01111110,
+     0b11100111,
+     0b11000011,
+     0b11000011,
+     0b11100111,
+     0b01111110,
+     0b00111100
+ );
+
+ my $cursor = SDL::Cursor-&gt;new( \@data, \@mask, 8, 8, 0, 0 );
+
+ sleep(1);
+ SDL::Mouse::set_cursor($cursor);
+
+ sleep(5);
 
 </pre>
-<p>Creates a new cursor. The <code>data</code> and <code>mask</code> parameters should be both black and white pictures. The height and width of these surfaces 
-should be a multiple of 8. The <code>x</code> and <code>y</code> are the coordinates of the cursor 'hot spot'.</p>
 
 </div>
 <h1 id="AUTHOR">AUTHOR</h1><p><a href="#TOP" class="toplink">Top</a></p>
@@ -58,7 +114,7 @@ should be a multiple of 8. The <code>x</code> and <code>y</code> are the coordin
 </div>
 <h1 id="SEE_ALSO">SEE ALSO</h1><p><a href="#TOP" class="toplink">Top</a></p>
 <div id="SEE_ALSO_CONTENT">
-<p><cite>perl</cite> <cite>SDL::Mouse</cite></p>
+<p><a href="http://search.cpan.org/perldoc?perl">perl</a> <a href="SDL-Mouse.html">SDL::Mouse</a></p>
 
 </div>
 </div>
\ No newline at end of file