/Users/hercules/trunk/SDL/include/SDL_mouse.h File Reference

#include "SDL_stdinc.h"
#include "SDL_error.h"
#include "SDL_video.h"
#include "begin_code.h"
#include "close_code.h"

Go to the source code of this file.

Defines

#define SDL_BUTTON(X)   (1 << ((X)-1))
#define SDL_BUTTON_LEFT   1
#define SDL_BUTTON_MIDDLE   2
#define SDL_BUTTON_RIGHT   3
#define SDL_BUTTON_X1   4
#define SDL_BUTTON_X2   5
#define SDL_BUTTON_LMASK   SDL_BUTTON(SDL_BUTTON_LEFT)
#define SDL_BUTTON_MMASK   SDL_BUTTON(SDL_BUTTON_MIDDLE)
#define SDL_BUTTON_RMASK   SDL_BUTTON(SDL_BUTTON_RIGHT)
#define SDL_BUTTON_X1MASK   SDL_BUTTON(SDL_BUTTON_X1)
#define SDL_BUTTON_X2MASK   SDL_BUTTON(SDL_BUTTON_X2)

Typedefs

typedef struct SDL_Cursor SDL_Cursor

Functions

DECLSPEC int SDLCALL SDL_GetNumMice (void)
 Get the number of mouse input devices available.
DECLSPEC char *SDLCALL SDL_GetMouseName (int index)
 Gets the name of a mouse with the given index.
DECLSPEC int SDLCALL SDL_SelectMouse (int index)
 Set the index of the currently selected mouse.
DECLSPEC SDL_WindowID SDLCALL SDL_GetMouseFocusWindow (int index)
 Get the window which currently has focus for the currently selected mouse.
DECLSPEC int SDLCALL SDL_SetRelativeMouseMode (int index, SDL_bool enabled)
 Set relative mouse mode for the currently selected mouse.
DECLSPEC SDL_bool SDLCALL SDL_GetRelativeMouseMode (int index)
 Query whether relative mouse mode is enabled for the currently selected mouse.
DECLSPEC Uint8 SDLCALL SDL_GetMouseState (int index, int *x, int *y)
 Retrieve the current state of the currently selected mouse.
DECLSPEC Uint8 SDLCALL SDL_GetRelativeMouseState (int index, int *x, int *y)
 Retrieve the state of the currently selected mouse.
DECLSPEC void SDLCALL SDL_WarpMouseInWindow (SDL_WindowID windowID, int x, int y)
 Moves the currently selected mouse to the given position within the window.
DECLSPEC SDL_Cursor *SDLCALL SDL_CreateCursor (const Uint8 *data, const Uint8 *mask, int w, int h, int hot_x, int hot_y)
 Create a cursor for the currently selected mouse, using the specified bitmap data and mask (in MSB format).
DECLSPEC void SDLCALL SDL_SetCursor (SDL_Cursor *cursor)
 Set the active cursor for the currently selected mouse.
DECLSPEC SDL_Cursor *SDLCALL SDL_GetCursor (void)
 Return the active cursor for the currently selected mouse.
DECLSPEC void SDLCALL SDL_FreeCursor (SDL_Cursor *cursor)
 Frees a cursor created with SDL_CreateCursor().
DECLSPEC int SDLCALL SDL_ShowCursor (int toggle)
 Toggle whether or not the cursor is shown for the currently selected mouse.
DECLSPEC int SDLCALL SDL_GetCursorsNumber (int index)
 Gets the number of cursors a pointing device supports. Useful for tablet users. Useful only under Windows.
DECLSPEC int SDLCALL SDL_GetCurrentCursor (int index)
 Returns the index of the current cursor used by a specific pointing device. Useful only under Windows.


Detailed Description

Include file for SDL mouse event handling

Function Documentation

SDL_Cursor * SDL_CreateCursor ( const Uint8 data,
const Uint8 mask,
int  w,
int  h,
int  hot_x,
int  hot_y 
)

Create a cursor for the currently selected mouse, using the specified bitmap data and mask (in MSB format).

The cursor width must be a multiple of 8 bits.

The cursor is created in black and white according to the following: data mask resulting pixel on screen 0 1 White 1 1 Black 0 0 Transparent 1 0 Inverted color if possible, black if not.

See also:
SDL_FreeCursor()

void SDL_FreeCursor ( SDL_Cursor *  cursor  ) 

Frees a cursor created with SDL_CreateCursor().

See also:
SDL_CreateCursor()

int SDL_GetCurrentCursor ( int  index  ) 

Returns the index of the current cursor used by a specific pointing device. Useful only under Windows.

Parameters:
index is the index of the pointing device, which cursor index we want to receive.
Returns:
the index of the cursor currently used by a specific pointing device. Always 0 under Linux. On Windows if the device isn't a tablet it returns 0. If the device is the tablet it returns the cursor index. 0 - stylus, 1 - eraser, 2 - cursor.

int SDL_GetCursorsNumber ( int  index  ) 

Gets the number of cursors a pointing device supports. Useful for tablet users. Useful only under Windows.

Parameters:
index is the index of the pointing device, which number of cursors we want to receive.
Returns:
the number of cursors supported by the pointing device. On Windows if a device is a tablet it returns a number >=1. Normal mice always return 1. On Linux every device reports one cursor.

char * SDL_GetMouseName ( int  index  ) 

Gets the name of a mouse with the given index.

Parameters:
index is the index of the mouse, which name is to be returned.
Returns:
the name of the mouse with the specified index

Uint8 SDL_GetMouseState ( int  index,
int *  x,
int *  y 
)

Retrieve the current state of the currently selected mouse.

The current button state is returned as a button bitmask, which can be tested using the SDL_BUTTON(X) macros, and x and y are set to the mouse cursor position relative to the focus window for the currently selected mouse. You can pass NULL for either x or y.

int SDL_GetNumMice ( void   ) 

Get the number of mouse input devices available.

See also:
SDL_SelectMouse()

SDL_bool SDL_GetRelativeMouseMode ( int  index  ) 

Query whether relative mouse mode is enabled for the currently selected mouse.

See also:
SDL_SetRelativeMouseMode()

Uint8 SDL_GetRelativeMouseState ( int  index,
int *  x,
int *  y 
)

Retrieve the state of the currently selected mouse.

The current button state is returned as a button bitmask, which can be tested using the SDL_BUTTON(X) macros, and x and y are set to the mouse deltas since the last call to SDL_GetRelativeMouseState().

int SDL_SelectMouse ( int  index  ) 

Set the index of the currently selected mouse.

Returns:
The index of the previously selected mouse.
Note:
You can query the currently selected mouse by passing an index of -1.
See also:
SDL_GetNumMice()

void SDL_SetCursor ( SDL_Cursor *  cursor  ) 

Set the active cursor for the currently selected mouse.

Note:
The cursor must have been created for the selected mouse.

int SDL_SetRelativeMouseMode ( int  index,
SDL_bool  enabled 
)

Set relative mouse mode for the currently selected mouse.

Parameters:
enabled Whether or not to enable relative mode
Returns:
0 on success, or -1 if relative mode is not supported.
While the mouse is in relative mode, the cursor is hidden, and the driver will try to report continuous motion in the current window. Only relative motion events will be delivered, the mouse position will not change.

Note:
This function will flush any pending mouse motion.
See also:
SDL_GetRelativeMouseMode()

int SDL_ShowCursor ( int  toggle  ) 

Toggle whether or not the cursor is shown for the currently selected mouse.

Parameters:
toggle 1 to show the cursor, 0 to hide it, -1 to query the current state.
Returns:
1 if the cursor is shown, or 0 if the cursor is hidden.

void SDL_WarpMouseInWindow ( SDL_WindowID  windowID,
int  x,
int  y 
)

Moves the currently selected mouse to the given position within the window.

Parameters:
windowID The window to move the mouse into, or 0 for the current mouse focus
x The x coordinate within the window
y The y coordinate within the window
Note:
This function generates a mouse motion event


Generated on Mon Sep 21 21:32:25 2009 for Simple DirectMedia Layer by  doxygen 1.5.8