X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Flibgame%2Fsdl.h;h=62196e1aadff8bc25ca1b67a080eb4b4bd35c0b2;hb=95e671b15104bb05c8302000facc906cbf0b133e;hp=4ea00b5fa27a7cfeac4e9fcf40f361bfa42a875f;hpb=e57078603232563176d90bb543ce2bc3a15b889e;p=rocksndiamonds.git diff --git a/src/libgame/sdl.h b/src/libgame/sdl.h index 4ea00b5f..62196e1a 100644 --- a/src/libgame/sdl.h +++ b/src/libgame/sdl.h @@ -1,7 +1,7 @@ /*********************************************************** * Artsoft Retro-Game Library * *----------------------------------------------------------* -* (c) 1994-2002 Artsoft Entertainment * +* (c) 1994-2006 Artsoft Entertainment * * Holger Schemel * * Detmolder Strasse 189 * * 33604 Bielefeld * @@ -14,10 +14,14 @@ #ifndef SDL_H #define SDL_H -#include "SDL.h" -#include "SDL_image.h" -#include "SDL_mixer.h" - +#include +#include +#include +#include +#include +#if defined(PLATFORM_WIN32) +#include +#endif /* definitions needed for "system.c" */ @@ -41,6 +45,7 @@ typedef Uint32 Pixel; typedef SDL_Cursor *Cursor; typedef SDLKey Key; +typedef unsigned int KeyMod; typedef SDL_Event Event; typedef SDL_MouseButtonEvent ButtonEvent; @@ -75,13 +80,8 @@ 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; + byte data[CURSOR_MAX_WIDTH * CURSOR_MAX_HEIGHT / 8]; + byte mask[CURSOR_MAX_WIDTH * CURSOR_MAX_HEIGHT / 8]; }; @@ -189,6 +189,7 @@ struct XY #define KSYM_braceright KSYM_UNDEFINED /* undefined */ #define KSYM_asciitilde KSYM_UNDEFINED /* undefined */ +#define KSYM_degree SDLK_WORLD_16 #define KSYM_Adiaeresis SDLK_WORLD_36 #define KSYM_Odiaeresis SDLK_WORLD_54 #define KSYM_Udiaeresis SDLK_WORLD_60 @@ -331,24 +332,40 @@ struct XY #define KSYM_FKEY_LAST KSYM_F15 #define KSYM_NUM_FKEYS (KSYM_FKEY_LAST - KSYM_FKEY_FIRST + 1) +#define KMOD_None None +#define KMOD_Shift_L KMOD_LSHIFT +#define KMOD_Shift_R KMOD_RSHIFT +#define KMOD_Control_L KMOD_LCTRL +#define KMOD_Control_R KMOD_RCTRL +#define KMOD_Meta_L KMOD_LMETA +#define KMOD_Meta_R KMOD_RMETA +#define KMOD_Alt_L KMOD_LALT +#define KMOD_Alt_R KMOD_RALT + +#define KMOD_Shift (KMOD_Shift_L | KMOD_Shift_R) +#define KMOD_Control (KMOD_Control_L | KMOD_Control_R) +#define KMOD_Meta (KMOD_Meta_L | KMOD_Meta_R) +#define KMOD_Alt (KMOD_Alt_L | KMOD_Alt_R) + /* SDL function definitions */ -inline void SDLInitVideoDisplay(void); -inline void SDLInitVideoBuffer(DrawBuffer **, DrawWindow **, boolean); -inline boolean SDLSetVideoMode(DrawBuffer **, boolean); -inline void SDLCreateBitmapContent(Bitmap *, int, int, int); -inline void SDLFreeBitmapPointers(Bitmap *); -inline void SDLCopyArea(Bitmap *, Bitmap *, int, int, int, int, int, int, int); -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 SDLInitVideoDisplay(void); +void SDLInitVideoBuffer(DrawBuffer **, DrawWindow **, boolean); +boolean SDLSetVideoMode(DrawBuffer **, boolean); +void SDLCreateBitmapContent(Bitmap *, int, int, int); +void SDLFreeBitmapPointers(Bitmap *); +void SDLCopyArea(Bitmap *, Bitmap *, int, int, int, int, int, int, int); +void SDLFillRectangle(Bitmap *, int, int, int, int, Uint32); +void SDLFadeRectangle(Bitmap *, int, int, int, int, int, int, int, + void (*draw_border_function)(void)); +void SDLDrawSimpleLine(Bitmap *, int, int, int, int, Uint32); +void SDLDrawLine(Bitmap *, int, int, int, int, Uint32); +Pixel SDLGetPixel(Bitmap *, int, int); +void SDLPutPixel(Bitmap *, int, int, Pixel); + +void SDLInvertArea(Bitmap *, int, int, int, int, Uint32); +void SDLCopyInverseMasked(Bitmap *, Bitmap *, int, int, int, int, int, int); void SDLZoomBitmap(Bitmap *, Bitmap *); @@ -356,10 +373,11 @@ Bitmap *SDLLoadImage(char *); void SDLSetMouseCursor(struct MouseCursorInfo *); -inline void SDLOpenAudio(void); -inline void SDLCloseAudio(void); +void SDLOpenAudio(void); +void SDLCloseAudio(void); -inline void SDLNextEvent(Event *); +void SDLNextEvent(Event *); +void SDLHandleWindowManagerEvent(Event *); void HandleJoystickEvent(Event *); void SDLInitJoysticks(void);