rnd-20030404-4-src
[rocksndiamonds.git] / src / libgame / sdl.h
index 8507398631f02979dba99b5d85642f24e35b34e6..c2f55ee9e56e645378ae0e8d1851738e7ff25d9c 100644 (file)
@@ -1,7 +1,7 @@
 /***********************************************************
 * Artsoft Retro-Game Library                               *
 *----------------------------------------------------------*
-* (c) 1994-2001 Artsoft Entertainment                      *
+* (c) 1994-2002 Artsoft Entertainment                      *
 *               Holger Schemel                             *
 *               Detmolder Strasse 189                      *
 *               33604 Bielefeld                            *
@@ -23,9 +23,6 @@
 
 #define SURFACE_FLAGS          (SDL_SWSURFACE)
 
-#define SDLCOPYAREA_OPAQUE     0
-#define SDLCOPYAREA_MASKED     1
-
 /* system dependent definitions */
 
 #define TARGET_STRING          "SDL"
@@ -38,6 +35,7 @@ typedef struct SDLSurfaceInfo Bitmap;
 typedef struct SDLSurfaceInfo  DrawBuffer;
 typedef struct SDLSurfaceInfo  DrawWindow;
 typedef Uint32                 Pixel;
+typedef SDL_Cursor            *Cursor;
 
 typedef SDLKey                 Key;
 
@@ -61,6 +59,7 @@ typedef int                   Colormap;
 struct SDLSurfaceInfo
 {
   char *source_filename;
+
   int width, height;
   SDL_Surface *surface;
   SDL_Surface *surface_masked;
@@ -78,6 +77,9 @@ struct XY
 
 #define None                   0L
 
+#define BLACK_PIXEL            0x000000
+#define WHITE_PIXEL            0xffffff
+
 #define EVENT_BUTTONPRESS      SDL_MOUSEBUTTONDOWN
 #define EVENT_BUTTONRELEASE    SDL_MOUSEBUTTONUP
 #define EVENT_MOTIONNOTIFY     SDL_MOUSEMOTION
@@ -313,20 +315,32 @@ struct XY
 #define KSYM_F23               KSYM_UNDEFINED
 #define KSYM_F24               KSYM_UNDEFINED
 
+#define KSYM_FKEY_FIRST                KSYM_F1
+#define KSYM_FKEY_LAST         KSYM_F15
+#define KSYM_NUM_FKEYS         (KSYM_FKEY_LAST - KSYM_FKEY_FIRST + 1)
+
 
 /* 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, unsigned int);
-inline void SDLDrawSimpleLine(Bitmap *, int, int, int, int, unsigned 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 SDLInvertArea(Bitmap *, int, int, int, int, Uint32);
+
+void SDLZoomBitmap(Bitmap *, Bitmap *);
+
 Bitmap *SDLLoadImage(char *);
 
+void SDLSetMouseCursor(const char **);
+
 inline void SDLOpenAudio(void);
 inline void SDLCloseAudio(void);