rnd-20001203-2-src
[rocksndiamonds.git] / src / libgame / x11.h
index 783deb3ebb5c10dfd458450b100260875cbfaa4c..f48584215ffb9440e2f5f60cd3d8c11155b1e7b3 100644 (file)
@@ -40,9 +40,9 @@
 
 /* X11 type definitions */
 
-typedef Pixmap                 Bitmap;
-typedef Window                 DrawWindow;
-typedef Drawable               DrawBuffer;
+typedef struct X11DrawableInfo *Bitmap;
+typedef struct X11DrawableInfo *DrawWindow;
+typedef struct X11DrawableInfo *DrawBuffer;
 
 typedef KeySym                 Key;
 
@@ -55,6 +55,18 @@ typedef XFocusChangeEvent    FocusChangeEvent;
 typedef XClientMessageEvent    ClientMessageEvent;
 
 
+/* structure definitions */
+
+struct X11DrawableInfo
+{
+  Drawable drawable;
+  Drawable clip_mask;
+  GC gc;               /* GC for normal drawing (inheritated from 'window') */
+  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  */
+};
+
+
 /* X11 symbol definitions */
 
 #define EVENT_BUTTONPRESS      ButtonPress