X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Flibgame%2Fsdl.h;h=c3c46682d51413330fcbfeb3bd7610c204a72332;hb=1465ca1ffdf2104d25b9a46ca9bf8a3f175403fd;hp=a7147130fc0b06ed4f3700bc45ef94f480940fe9;hpb=e6bde4abb3952d4689917ce66d6bde79cd8df7fc;p=rocksndiamonds.git diff --git a/src/libgame/sdl.h b/src/libgame/sdl.h index a7147130..c3c46682 100644 --- a/src/libgame/sdl.h +++ b/src/libgame/sdl.h @@ -24,6 +24,8 @@ #define SURFACE_FLAGS (SDL_SWSURFACE) +#define SDLCOPYAREA_OPAQUE 0 +#define SDLCOPYAREA_MASKED 1 /* system dependent definitions */ @@ -33,9 +35,9 @@ /* SDL type definitions */ -typedef SDL_Surface *Bitmap; -typedef SDL_Surface *DrawWindow; -typedef SDL_Surface *DrawBuffer; +typedef struct SDLSurfaceInfo *Bitmap; +typedef struct SDLSurfaceInfo *DrawBuffer; +typedef struct SDLSurfaceInfo *DrawWindow; typedef SDLKey Key; @@ -54,6 +56,17 @@ typedef int Visual; typedef int Colormap; +/* structure definitions */ + +struct SDLSurfaceInfo +{ + SDL_Surface *surface; + SDL_Surface *surface_masked; + GC gc; + GC stored_clip_gc; +}; + + /* SDL symbol definitions */ #define None 0L @@ -297,11 +310,10 @@ typedef int Colormap; /* SDL function definitions */ inline void SDLInitVideoDisplay(void); -inline void SDLInitVideoBuffer(DrawBuffer *, DrawWindow *); +inline void SDLInitVideoBuffer(DrawBuffer *, DrawWindow *, boolean); inline boolean SDLSetVideoMode(DrawBuffer *, boolean); -inline void SDLCopyArea(SDL_Surface *, SDL_Surface *, - int, int, int, int, int, int); -inline void SDLFillRectangle(SDL_Surface *, int, int, int, int, unsigned int); +inline void SDLCopyArea(Bitmap, Bitmap, int, int, int, int, int, int, int); +inline void SDLFillRectangle(Bitmap, int, int, int, int, unsigned int); inline void SDLDrawSimpleLine(SDL_Surface *, int, int, int, int, unsigned int); inline boolean SDLOpenAudio(void);