rnd-20140114-1-src
[rocksndiamonds.git] / src / libgame / x11.h
index 99dc4c9cf6cdb0f4f909a5ab64f67cd6a492bd00..dc22d353d50af81e00266b27375034dd7399b0a0 100644 (file)
@@ -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                            *
@@ -43,6 +43,7 @@
 #define TARGET_X11_NATIVE_PERFORMANCE_WORKAROUND
 #endif
 
+#define WINDOW_SCALING_STATUS  WINDOW_SCALING_NOT_AVAILABLE
 #define FULLSCREEN_STATUS      FULLSCREEN_NOT_AVAILABLE
 
 #define CURSOR_MAX_WIDTH       32
@@ -75,7 +76,7 @@ struct X11DrawableInfo
 {
   char *source_filename;
 
-  int width, height;
+  unsigned int width, height;
   Drawable drawable;
   Drawable clip_mask;
   GC gc;               /* GC for normal drawing (inheritated from 'window') */
@@ -93,11 +94,6 @@ struct MouseCursorInfo
   char mask[CURSOR_MAX_WIDTH * CURSOR_MAX_HEIGHT / 8];
 };
 
-struct XY
-{
-  short x, y;
-};
-
 
 /* X11 symbol definitions */
 
@@ -203,6 +199,7 @@ struct XY
 #define KSYM_braceright                XK_braceright
 #define KSYM_asciitilde                XK_asciitilde
 
+#define KSYM_degree            XK_degree
 #define KSYM_Adiaeresis                XK_Adiaeresis
 #define KSYM_Odiaeresis                XK_Odiaeresis
 #define KSYM_Udiaeresis                XK_Udiaeresis
@@ -334,19 +331,24 @@ struct XY
 
 /* X11 function definitions */
 
-inline void X11InitVideoDisplay(void);
-inline void X11InitVideoBuffer(DrawBuffer **, DrawWindow **);
+void X11InitVideoDisplay(void);
+void X11InitVideoBuffer(DrawBuffer **, DrawWindow **);
+
+void X11CloseWindow(DrawWindow *);
 
 void X11ZoomBitmap(Bitmap *, Bitmap *);
 Bitmap *X11LoadImage(char *);
 
-inline void X11CreateBitmapContent(Bitmap *, int, int, int);
-inline void X11FreeBitmapPointers(Bitmap *);
-inline void X11CopyArea(Bitmap *, Bitmap *, int, int, int, int, int, int, int);
-inline void X11FillRectangle(Bitmap *, int, int, int, int, Pixel);
-inline void X11DrawSimpleLine(Bitmap *, int, int, int, int, Pixel);
-inline Pixel X11GetPixel(Bitmap *, int, int);
-inline Pixel X11GetPixelFromRGB(unsigned int, unsigned int, unsigned int);
+void X11CreateBitmapContent(Bitmap *, int, int, int);
+void X11FreeBitmapPointers(Bitmap *);
+void X11CopyArea(Bitmap *, Bitmap *, int, int, int, int, int, int, int);
+void X11FillRectangle(Bitmap *, int, int, int, int, Pixel);
+void X11FadeRectangle(Bitmap *, int, int, int, int, int, int, int,
+                     void (*draw_border_function)(void));
+void X11DrawSimpleLine(Bitmap *, int, int, int, int, Pixel);
+Pixel X11GetPixel(Bitmap *, int, int);
+Pixel X11GetPixelFromRGB(unsigned int, unsigned int, unsigned int);
+void X11DestroyImage(XImage *);
 
 #if defined(TARGET_X11_NATIVE)
 void X11SetMouseCursor(struct MouseCursorInfo *);