aboutsummaryrefslogtreecommitdiffstats
path: root/distrib/sdl-1.2.15/docs/man3/SDL_CreateCursor.3
diff options
context:
space:
mode:
Diffstat (limited to 'distrib/sdl-1.2.15/docs/man3/SDL_CreateCursor.3')
-rw-r--r--distrib/sdl-1.2.15/docs/man3/SDL_CreateCursor.3120
1 files changed, 120 insertions, 0 deletions
diff --git a/distrib/sdl-1.2.15/docs/man3/SDL_CreateCursor.3 b/distrib/sdl-1.2.15/docs/man3/SDL_CreateCursor.3
new file mode 100644
index 0000000..ef205c3
--- /dev/null
+++ b/distrib/sdl-1.2.15/docs/man3/SDL_CreateCursor.3
@@ -0,0 +1,120 @@
+.TH "SDL_CreateCursor" "3" "Tue 11 Sep 2001, 23:01" "SDL" "SDL API Reference"
+.SH "NAME"
+SDL_CreateCursor \- Creates a new mouse cursor\&.
+.SH "SYNOPSIS"
+.PP
+\fB#include "SDL\&.h"
+.sp
+\fBSDL_Cursor *\fBSDL_CreateCursor\fP\fR(\fBUint8 *data, Uint8 *mask, int w, int h, int hot_x, int hot_y\fR);
+.SH "DESCRIPTION"
+.PP
+Create a cursor using the specified \fBdata\fR and \fBmask\fR (in MSB format)\&. The cursor width must be a multiple of 8 bits\&.
+.PP
+The cursor is created in black and white according to the following:
+.TP 20
+\fBData / Mask\fR
+\fBResulting pixel on screen\fR
+.TP 20
+0 / 1
+White
+.TP 20
+1 / 1
+Black
+.TP 20
+0 / 0
+Transparent
+.TP 20
+1 / 0
+Inverted color if possible, black if not\&.
+.PP
+Cursors created with this function must be freed with \fISDL_FreeCursor\fR\&.
+.SH "EXAMPLE"
+.PP
+.nf
+\f(CW/* 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<32; ++row ) {
+ for ( col=0; col<32; ++col ) {
+ if ( col % 8 ) {
+ data[i] <<= 1;
+ mask[i] <<= 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", &hot_x, &hot_y);
+ return SDL_CreateCursor(data, mask, 32, 32, hot_x, hot_y);
+}\fR
+.fi
+.PP
+.SH "SEE ALSO"
+.PP
+\fI\fBSDL_FreeCursor\fP\fR, \fI\fBSDL_SetCursor\fP\fR, \fI\fBSDL_ShowCursor\fP\fR
+.\" created by instant / docbook-to-man, Tue 11 Sep 2001, 23:01