rnd-20020424-1-src
[rocksndiamonds.git] / src / libgame / x11.h
index f27907a74246db374d81fe7a5cacc5e50f507c5d..3ccac7953c86d0da6350e4146bef303b3f03d511 100644 (file)
@@ -1,7 +1,7 @@
 /***********************************************************
 * Artsoft Retro-Game Library                               *
 *----------------------------------------------------------*
-* (c) 1994-2000 Artsoft Entertainment                      *
+* (c) 1994-2001 Artsoft Entertainment                      *
 *               Holger Schemel                             *
 *               Detmolder Strasse 189                      *
 *               33604 Bielefeld                            *
 
 /* X11 type definitions */
 
-typedef struct X11DrawableInfo *Bitmap;
-typedef struct X11DrawableInfo *DrawWindow;
-typedef struct X11DrawableInfo *DrawBuffer;
+typedef struct X11DrawableInfo Bitmap;
+typedef struct X11DrawableInfo DrawWindow;
+typedef struct X11DrawableInfo DrawBuffer;
+/* "Pixel" is already defined in X11/Intrinsic.h */
 
 typedef KeySym                 Key;
 
@@ -58,13 +59,22 @@ typedef XClientMessageEvent ClientMessageEvent;
 
 struct X11DrawableInfo
 {
+  char *source_filename;
+
+  int width, height;
   Drawable drawable;
   Drawable clip_mask;
   GC gc;               /* GC for normal drawing (inheritated from 'window') */
+  GC line_gc[2];       /* GC for foreground and background line drawing     */
   GC stored_clip_gc;   /* GC for masked drawing (used for whole Pixmap)     */
   GC clip_gc;          /* can be 'stored_clip_gc' or one-tile-only clip GC  */
 };
 
+struct XY
+{
+  short x, y;
+};
+
 
 /* X11 symbol definitions */
 
@@ -280,6 +290,7 @@ struct X11DrawableInfo
 /* X11 function definitions */
 
 inline void X11InitVideoDisplay(void);
-inline void X11InitVideoBuffer(DrawBuffer *, DrawWindow *);
+inline void X11InitVideoBuffer(DrawBuffer **, DrawWindow **);
+Bitmap *X11LoadImage(char *);
 
 #endif /* X11_H */