X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Flibgame%2Fsdl.h;h=4ea00b5fa27a7cfeac4e9fcf40f361bfa42a875f;hb=e57078603232563176d90bb543ce2bc3a15b889e;hp=c2f55ee9e56e645378ae0e8d1851738e7ff25d9c;hpb=de8b3ae622eae10f1caf96872fb1790f7bd9644b;p=rocksndiamonds.git diff --git a/src/libgame/sdl.h b/src/libgame/sdl.h index c2f55ee9..4ea00b5f 100644 --- a/src/libgame/sdl.h +++ b/src/libgame/sdl.h @@ -28,6 +28,9 @@ #define TARGET_STRING "SDL" #define FULLSCREEN_STATUS FULLSCREEN_AVAILABLE +#define CURSOR_MAX_WIDTH 32 +#define CURSOR_MAX_HEIGHT 32 + /* SDL type definitions */ @@ -67,6 +70,15 @@ struct SDLSurfaceInfo GC stored_clip_gc; }; +struct MouseCursorInfo +{ + int width, height; + int hot_x, hot_y; + + char data[CURSOR_MAX_WIDTH * CURSOR_MAX_HEIGHT / 8]; + char mask[CURSOR_MAX_WIDTH * CURSOR_MAX_HEIGHT / 8]; +}; + struct XY { short x, y; @@ -332,14 +344,17 @@ inline void SDLFillRectangle(Bitmap *, int, int, int, int, Uint32); inline void SDLDrawSimpleLine(Bitmap *, int, int, int, int, Uint32); inline void SDLDrawLine(Bitmap *, int, int, int, int, Uint32); inline Pixel SDLGetPixel(Bitmap *, int, int); +inline void SDLPutPixel(Bitmap *, int, int, Pixel); inline void SDLInvertArea(Bitmap *, int, int, int, int, Uint32); +inline void SDLCopyInverseMasked(Bitmap *, Bitmap *, int, int, int, int, + int, int); void SDLZoomBitmap(Bitmap *, Bitmap *); Bitmap *SDLLoadImage(char *); -void SDLSetMouseCursor(const char **); +void SDLSetMouseCursor(struct MouseCursorInfo *); inline void SDLOpenAudio(void); inline void SDLCloseAudio(void);