/*
SDL - Simple DirectMedia Layer
- Copyright (C) 1997-2006 Sam Lantinga
+ Copyright (C) 1997-2009 Sam Lantinga
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
slouken@libsdl.org
*/
-/* Include file for SDL mouse event handling */
+/** @file SDL_mouse.h
+ * Include file for SDL mouse event handling
+ */
#ifndef _SDL_mouse_h
#define _SDL_mouse_h
extern "C" {
#endif
-typedef struct WMcursor WMcursor; /* Implementation dependent */
+typedef struct WMcursor WMcursor; /**< Implementation dependent */
typedef struct SDL_Cursor {
- SDL_Rect area; /* The area of the mouse cursor */
- Sint16 hot_x, hot_y; /* The "tip" of the cursor */
- Uint8 *data; /* B/W cursor data */
- Uint8 *mask; /* B/W cursor mask */
- Uint8 *save[2]; /* Place to save cursor area */
- WMcursor *wm_cursor; /* Window-manager cursor */
+ SDL_Rect area; /**< The area of the mouse cursor */
+ Sint16 hot_x, hot_y; /**< The "tip" of the cursor */
+ Uint8 *data; /**< B/W cursor data */
+ Uint8 *mask; /**< B/W cursor mask */
+ Uint8 *save[2]; /**< Place to save cursor area */
+ WMcursor *wm_cursor; /**< Window-manager cursor */
} SDL_Cursor;
/* Function prototypes */
-/*
+/**
* Retrieve the current state of the 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
*/
extern DECLSPEC Uint8 SDLCALL SDL_GetMouseState(int *x, int *y);
-/*
+/**
* Retrieve the current state of the 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
*/
extern DECLSPEC Uint8 SDLCALL SDL_GetRelativeMouseState(int *x, int *y);
-/*
+/**
* Set the position of the mouse cursor (generates a mouse motion event)
*/
extern DECLSPEC void SDLCALL SDL_WarpMouse(Uint16 x, Uint16 y);
-/*
+/**
* Create a cursor using the specified data and mask (in MSB format).
* The cursor width must be a multiple of 8 bits.
*
extern DECLSPEC SDL_Cursor * SDLCALL SDL_CreateCursor
(Uint8 *data, Uint8 *mask, int w, int h, int hot_x, int hot_y);
-/*
+/**
* Set the currently active cursor to the specified one.
* If the cursor is currently visible, the change will be immediately
* represented on the display.
*/
extern DECLSPEC void SDLCALL SDL_SetCursor(SDL_Cursor *cursor);
-/*
+/**
* Returns the currently active cursor.
*/
extern DECLSPEC SDL_Cursor * SDLCALL SDL_GetCursor(void);
-/*
+/**
* Deallocates a cursor created with SDL_CreateCursor().
*/
extern DECLSPEC void SDLCALL SDL_FreeCursor(SDL_Cursor *cursor);
-/*
+/**
* Toggle whether or not the cursor is shown on the screen.
* The cursor start off displayed, but can be turned off.
* SDL_ShowCursor() returns 1 if the cursor was being displayed
*/
extern DECLSPEC int SDLCALL SDL_ShowCursor(int toggle);
-/* Used as a mask when testing buttons in buttonstate
- Button 1: Left mouse button
- Button 2: Middle mouse button
- Button 3: Right mouse button
- Button 4: Mouse wheel up (may also be a real button)
- Button 5: Mouse wheel down (may also be a real button)
+/*@{*/
+/** Used as a mask when testing buttons in buttonstate
+ * Button 1: Left mouse button
+ * Button 2: Middle mouse button
+ * Button 3: Right mouse button
+ * Button 4: Mouse wheel up (may also be a real button)
+ * Button 5: Mouse wheel down (may also be a real button)
*/
#define SDL_BUTTON(X) (1 << ((X)-1))
#define SDL_BUTTON_LEFT 1
#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)
-
+/*@}*/
/* Ends C function definitions when using C++ */
#ifdef __cplusplus