SDL_CreateCursor.3
资源名称:NETVIDEO.rar [点击查看]
上传用户:sun1608
上传日期:2007-02-02
资源大小:6116k
文件大小:3k
源码类别:
流媒体/Mpeg4/MP4
开发平台:
Visual C++
- .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_CreateCursorfPfR(fBUint8 *data, Uint8 *mask, int w, int h, int hot_x, int hot_yfR);
- .SH "DESCRIPTION"
- .PP
- Create a cursor using the specified fBdatafR and fBmaskfR (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 / MaskfR
- fBResulting pixel on screenfR
- .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_FreeCursorfR&.
- .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
- fIfBSDL_FreeCursorfPfR, fIfBSDL_SetCursorfPfR, fIfBSDL_ShowCursorfPfR
- ..." created by instant / docbook-to-man, Tue 11 Sep 2001, 23:01