diff docs/html/sdlcreatecursor.html @ 0:74212992fb08

Initial revision
author Sam Lantinga <slouken@lokigames.com>
date Thu, 26 Apr 2001 16:45:43 +0000
parents
children 55f1f1b3e27d
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/docs/html/sdlcreatecursor.html	Thu Apr 26 16:45:43 2001 +0000
@@ -0,0 +1,390 @@
+<HTML
+><HEAD
+><TITLE
+>SDL_CreateCursor</TITLE
+><META
+NAME="GENERATOR"
+CONTENT="Modular DocBook HTML Stylesheet Version 1.61
+"><LINK
+REL="HOME"
+TITLE="SDL Library Documentation"
+HREF="index.html"><LINK
+REL="UP"
+TITLE="Video"
+HREF="video.html"><LINK
+REL="PREVIOUS"
+TITLE="SDL_WarpMouse"
+HREF="sdlwarpmouse.html"><LINK
+REL="NEXT"
+TITLE="SDL_FreeCursor"
+HREF="sdlfreecursor.html"></HEAD
+><BODY
+CLASS="REFENTRY"
+BGCOLOR="#FFF8DC"
+TEXT="#000000"
+LINK="#0000ee"
+VLINK="#551a8b"
+ALINK="#ff0000"
+><DIV
+CLASS="NAVHEADER"
+><TABLE
+WIDTH="100%"
+BORDER="0"
+CELLPADDING="0"
+CELLSPACING="0"
+><TR
+><TH
+COLSPAN="3"
+ALIGN="center"
+>SDL Library Documentation</TH
+></TR
+><TR
+><TD
+WIDTH="10%"
+ALIGN="left"
+VALIGN="bottom"
+><A
+HREF="sdlwarpmouse.html"
+>Prev</A
+></TD
+><TD
+WIDTH="80%"
+ALIGN="center"
+VALIGN="bottom"
+></TD
+><TD
+WIDTH="10%"
+ALIGN="right"
+VALIGN="bottom"
+><A
+HREF="sdlfreecursor.html"
+>Next</A
+></TD
+></TR
+></TABLE
+><HR
+ALIGN="LEFT"
+WIDTH="100%"></DIV
+><H1
+><A
+NAME="SDLCREATECURSOR"
+>SDL_CreateCursor</A
+></H1
+><DIV
+CLASS="REFNAMEDIV"
+><A
+NAME="AEN1989"
+></A
+><H2
+>Name</H2
+>SDL_CreateCursor&nbsp;--&nbsp;Creates a new mouse cursor.</DIV
+><DIV
+CLASS="REFSYNOPSISDIV"
+><A
+NAME="AEN1992"
+></A
+><H2
+>Synopsis</H2
+><DIV
+CLASS="FUNCSYNOPSIS"
+><A
+NAME="AEN1993"
+></A
+><P
+></P
+><PRE
+CLASS="FUNCSYNOPSISINFO"
+>#include "SDL.h"</PRE
+><P
+><CODE
+><CODE
+CLASS="FUNCDEF"
+>SDL_Cursor *<B
+CLASS="FSFUNC"
+>SDL_CreateCursor</B
+></CODE
+>(Uint8 *data, Uint8 *mask, int w, int h, int hot_x, int hot_y);</CODE
+></P
+><P
+></P
+></DIV
+></DIV
+><DIV
+CLASS="REFSECT1"
+><A
+NAME="AEN1999"
+></A
+><H2
+>Description</H2
+><P
+>Create a cursor using the specified <TT
+CLASS="PARAMETER"
+><I
+>data</I
+></TT
+> and <TT
+CLASS="PARAMETER"
+><I
+>mask</I
+></TT
+> (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:
+<DIV
+CLASS="INFORMALTABLE"
+><A
+NAME="AEN2005"
+></A
+><P
+></P
+><TABLE
+BORDER="1"
+CLASS="CALSTABLE"
+><THEAD
+><TR
+><TH
+ALIGN="LEFT"
+VALIGN="TOP"
+>Data / Mask</TH
+><TH
+ALIGN="LEFT"
+VALIGN="TOP"
+>Resulting pixel on screen</TH
+></TR
+></THEAD
+><TBODY
+><TR
+><TD
+ALIGN="LEFT"
+VALIGN="TOP"
+>0 / 1</TD
+><TD
+ALIGN="LEFT"
+VALIGN="TOP"
+>White</TD
+></TR
+><TR
+><TD
+ALIGN="LEFT"
+VALIGN="TOP"
+>1 / 1</TD
+><TD
+ALIGN="LEFT"
+VALIGN="TOP"
+>Black</TD
+></TR
+><TR
+><TD
+ALIGN="LEFT"
+VALIGN="TOP"
+>0 / 0</TD
+><TD
+ALIGN="LEFT"
+VALIGN="TOP"
+>Transparent</TD
+></TR
+><TR
+><TD
+ALIGN="LEFT"
+VALIGN="TOP"
+>1 / 0</TD
+><TD
+ALIGN="LEFT"
+VALIGN="TOP"
+>Inverted color if possible, black if not.</TD
+></TR
+></TBODY
+></TABLE
+><P
+></P
+></DIV
+></P
+><P
+>Cursors created with this function must be freed with
+<A
+HREF="sdlfreecursor.html"
+>SDL_FreeCursor</A
+>.</P
+></DIV
+><DIV
+CLASS="REFSECT1"
+><A
+NAME="AEN2026"
+></A
+><H2
+>Example</H2
+><PRE
+CLASS="PROGRAMLISTING"
+>/* Stolen from the mailing list */
+/* Creates a new mouse cursor from an XPM */
+
+
+/* XPM */
+static const char *arrow[] = {
+  /* width height num_colors chars_per_pixel */
+  "    32    32        3            1",
+  /* colors */
+  "X c #000000",
+  ". c #ffffff",
+  "  c None",
+  /* pixels */
+  "X                               ",
+  "XX                              ",
+  "X.X                             ",
+  "X..X                            ",
+  "X...X                           ",
+  "X....X                          ",
+  "X.....X                         ",
+  "X......X                        ",
+  "X.......X                       ",
+  "X........X                      ",
+  "X.....XXXXX                     ",
+  "X..X..X                         ",
+  "X.X X..X                        ",
+  "XX  X..X                        ",
+  "X    X..X                       ",
+  "     X..X                       ",
+  "      X..X                      ",
+  "      X..X                      ",
+  "       XX                       ",
+  "                                ",
+  "                                ",
+  "                                ",
+  "                                ",
+  "                                ",
+  "                                ",
+  "                                ",
+  "                                ",
+  "                                ",
+  "                                ",
+  "                                ",
+  "                                ",
+  "                                ",
+  "0,0"
+};
+
+static SDL_Cursor *init_system_cursor(const char *image[])
+{
+  int i, row, col;
+  Uint8 data[4*32];
+  Uint8 mask[4*32];
+  int hot_x, hot_y;
+
+  i = -1;
+  for ( row=0; row&#60;32; ++row ) {
+    for ( col=0; col&#60;32; ++col ) {
+      if ( col % 8 ) {
+        data[i] &#60;&#60;= 1;
+        mask[i] &#60;&#60;= 1;
+      } else {
+        ++i;
+        data[i] = mask[i] = 0;
+      }
+      switch (image[4+row][col]) {
+        case 'X':
+          data[i] |= 0x01;
+          k[i] |= 0x01;
+          break;
+        case '.':
+          mask[i] |= 0x01;
+          break;
+        case ' ':
+          break;
+      }
+    }
+  }
+  sscanf(image[4+row], "%d,%d", &#38;hot_x, &#38;hot_y);
+  return SDL_CreateCursor(data, mask, 32, 32, hot_x, hot_y);
+}</PRE
+></DIV
+><DIV
+CLASS="REFSECT1"
+><A
+NAME="AEN2029"
+></A
+><H2
+>See Also</H2
+><P
+><A
+HREF="sdlfreecursor.html"
+><TT
+CLASS="FUNCTION"
+>SDL_FreeCursor</TT
+></A
+>,
+<A
+HREF="sdlsetcursor.html"
+><TT
+CLASS="FUNCTION"
+>SDL_SetCursor</TT
+></A
+>,
+<A
+HREF="sdlshowcursor.html"
+><TT
+CLASS="FUNCTION"
+>SDL_ShowCursor</TT
+></A
+></P
+></DIV
+><DIV
+CLASS="NAVFOOTER"
+><HR
+ALIGN="LEFT"
+WIDTH="100%"><TABLE
+WIDTH="100%"
+BORDER="0"
+CELLPADDING="0"
+CELLSPACING="0"
+><TR
+><TD
+WIDTH="33%"
+ALIGN="left"
+VALIGN="top"
+><A
+HREF="sdlwarpmouse.html"
+>Prev</A
+></TD
+><TD
+WIDTH="34%"
+ALIGN="center"
+VALIGN="top"
+><A
+HREF="index.html"
+>Home</A
+></TD
+><TD
+WIDTH="33%"
+ALIGN="right"
+VALIGN="top"
+><A
+HREF="sdlfreecursor.html"
+>Next</A
+></TD
+></TR
+><TR
+><TD
+WIDTH="33%"
+ALIGN="left"
+VALIGN="top"
+>SDL_WarpMouse</TD
+><TD
+WIDTH="34%"
+ALIGN="center"
+VALIGN="top"
+><A
+HREF="video.html"
+>Up</A
+></TD
+><TD
+WIDTH="33%"
+ALIGN="right"
+VALIGN="top"
+>SDL_FreeCursor</TD
+></TR
+></TABLE
+></DIV
+></BODY
+></HTML
+>
\ No newline at end of file