X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Flibgame%2Fsdl.h;h=3b3266178c56aed9820ace30e8e7d0bc2b76b1d7;hb=30512b15037dcc2cd5056fb328f1bc93b6d03394;hp=ef2cfd25e243a7085e96e50de988fc358d5c4861;hpb=c3c190ae0fb103b7843b84b964bdfa1acb9b0091;p=rocksndiamonds.git diff --git a/src/libgame/sdl.h b/src/libgame/sdl.h index ef2cfd25..3b326617 100644 --- a/src/libgame/sdl.h +++ b/src/libgame/sdl.h @@ -1,15 +1,13 @@ -/*********************************************************** -* Artsoft Retro-Game Library * -*----------------------------------------------------------* -* (c) 1994-2006 Artsoft Entertainment * -* Holger Schemel * -* Detmolder Strasse 189 * -* 33604 Bielefeld * -* Germany * -* e-mail: info@artsoft.org * -*----------------------------------------------------------* -* sdl.h * -***********************************************************/ +// ============================================================================ +// Artsoft Retro-Game Library +// ---------------------------------------------------------------------------- +// (c) 1995-2014 by Artsoft Entertainment +// Holger Schemel +// info@artsoft.org +// http://www.artsoft.org/ +// ---------------------------------------------------------------------------- +// sdl.h +// ============================================================================ #ifndef SDL_H #define SDL_H @@ -50,16 +48,20 @@ #if defined(PLATFORM_ANDROID) #define WINDOW_SCALING_STATUS WINDOW_SCALING_NOT_AVAILABLE #define FULLSCREEN_STATUS FULLSCREEN_AVAILABLE -#define USE_DESKTOP_FULLSCREEN TRUE #elif defined(TARGET_SDL2) #define WINDOW_SCALING_STATUS WINDOW_SCALING_AVAILABLE #define FULLSCREEN_STATUS FULLSCREEN_AVAILABLE -#define USE_DESKTOP_FULLSCREEN TRUE #else // SDL 1.2 #define WINDOW_SCALING_STATUS WINDOW_SCALING_NOT_AVAILABLE #define FULLSCREEN_STATUS FULLSCREEN_AVAILABLE #endif +#if defined(TARGET_SDL2) +#define USE_FINAL_SCREEN_BITMAP FALSE +#else +#define USE_FINAL_SCREEN_BITMAP TRUE +#endif + #define CURSOR_MAX_WIDTH 32 #define CURSOR_MAX_HEIGHT 32 @@ -94,12 +96,6 @@ typedef SDL_Event ExposeEvent; typedef SDL_Event FocusChangeEvent; typedef SDL_Event ClientMessageEvent; -typedef int GC; -typedef int Pixmap; -typedef int Display; -typedef int Visual; -typedef int Colormap; - /* structure definitions */ @@ -110,8 +106,10 @@ struct SDLSurfaceInfo int width, height; SDL_Surface *surface; SDL_Surface *surface_masked; - GC gc; - GC stored_clip_gc; +#if defined(TARGET_SDL2) + SDL_Texture *texture; + SDL_Texture *texture_masked; +#endif }; struct MouseCursorInfo @@ -438,6 +436,8 @@ struct MouseCursorInfo boolean SDLSetNativeSurface(SDL_Surface **); SDL_Surface *SDLGetNativeSurface(SDL_Surface *); +void SDLCreateBitmapTextures(Bitmap *); +void SDLFreeBitmapTextures(Bitmap *); #if defined(TARGET_SDL2) SDL_Surface *SDL_DisplayFormat(SDL_Surface *); @@ -451,11 +451,12 @@ void SDLSetWindowTitle(void); void SDLLimitScreenUpdates(boolean); void SDLInitVideoDisplay(void); -void SDLInitVideoBuffer(DrawBuffer **, DrawWindow **, boolean); -boolean SDLSetVideoMode(DrawBuffer **, boolean); +void SDLInitVideoBuffer(boolean); +boolean SDLSetVideoMode(boolean); void SDLCreateBitmapContent(Bitmap *, int, int, int); void SDLFreeBitmapPointers(Bitmap *); void SDLCopyArea(Bitmap *, Bitmap *, int, int, int, int, int, int, int); +void SDLBlitTexture(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)); @@ -467,11 +468,7 @@ void SDLPutPixel(Bitmap *, int, int, Pixel); void SDLInvertArea(Bitmap *, int, int, int, int, Uint32); void SDLCopyInverseMasked(Bitmap *, Bitmap *, int, int, int, int, int, int); -#if 1 Bitmap *SDLZoomBitmap(Bitmap *, int, int); -#else -void SDLZoomBitmap(Bitmap *, Bitmap *); -#endif Bitmap *SDLLoadImage(char *);