http://packetstormsecurity.org/UNIX/admin/xscreensaver-4.00.tar.gz
[xscreensaver] / hacks / xlockmore.h
index 4274aa63e9b6f35b371b765c1cff22ebf0459736..b6ae538db35c125d0dee66e717ee2a1bf941fbb6 100644 (file)
@@ -1,5 +1,5 @@
 /* xlockmore.h --- xscreensaver compatibility layer for xlockmore modules.
- * xscreensaver, Copyright (c) 1997, 1998 Jamie Zawinski <jwz@jwz.org>
+ * xscreensaver, Copyright (c) 1997, 1998, 2001 Jamie Zawinski <jwz@jwz.org>
  *
  * Permission to use, copy, modify, distribute, and sell this software and its
  * documentation for any purpose is hereby granted without fee, provided that
@@ -35,8 +35,11 @@ ERROR!  Sorry, xlockmore.h requires ANSI C (gcc, for example.)
 #ifdef USE_GL
 # include <GL/glx.h>
   extern GLXContext *init_GL (ModeInfo *);
+  extern void clear_gl_error (void);
+  extern void check_gl_error (const char *type);
+  extern void do_fps (ModeInfo *);
 # define FreeAllGL(dpy) /* */
-#endif
+#endif /* !USE_GL */
 
 /* Accessor macros for the ModeInfo structure
  */
@@ -74,9 +77,11 @@ ERROR!  Sorry, xlockmore.h requires ANSI C (gcc, for example.)
 #define MI_BATCHCOUNT(MI)      ((MI)->batchcount)
 #define MI_SIZE(MI)            ((MI)->size)
 #define MI_IS_DRAWN(MI)                ((MI)->is_drawn)
-#define MI_IS_DEBUG(MI)                (False)
+#define MI_IS_FPS(MI)          ((MI)->fps_p)
+#define MI_NCOLORS(MI)         ((MI)->npixels)
 #define MI_NAME(MI)            (progname)
 
+#define MI_COLORMAP(MI)                (MI_WIN_COLORMAP((MI)))
 #define MI_WIDTH(MI)           (MI_WIN_WIDTH((MI)))
 #define MI_HEIGHT(MI)          (MI_WIN_HEIGHT((MI)))
 #define MI_IS_ICONIC(MI)       (MI_WIN_IS_ICONIC((MI)))
@@ -87,6 +92,9 @@ ERROR!  Sorry, xlockmore.h requires ANSI C (gcc, for example.)
 #define MI_WHITE_PIXEL(MI)     (MI_WIN_WHITE_PIXEL(MI))
 #define MI_IS_FULLRANDOM(MI)   (MI_WIN_IS_FULLRANDOM(MI))
 #define MI_IS_VERBOSE(MI)      (MI_WIN_IS_VERBOSE(MI))
+#define MI_IS_INSTALL(MI)      (MI_WIN_IS_INSTALL(MI))
+#define MI_IS_DEBUG(MI)                (False)
+#define MI_IS_MOUSE(MI)                (False)
 
 #define MI_CLEARWINDOW(mi) XClearWindow(MI_DISPLAY(mi), MI_WINDOW(mi))
 
@@ -122,6 +130,12 @@ extern void HACK_DRAW(ModeInfo *);
 # define HACK_FREE 0
 #endif
 
+#ifdef HACK_RESHAPE
+  extern void HACK_RESHAPE(ModeInfo *, int width, int height);
+#else
+# define HACK_RESHAPE 0
+#endif
+
 
 /* Emit code for the entrypoint used by screenhack.c, and pass control
    down into xlockmore.c with the appropriate parameters.
@@ -159,6 +173,7 @@ void screenhack (Display *dpy, Window window)
 
                        HACK_INIT,
                        HACK_DRAW,
+                       HACK_RESHAPE,
                        HACK_FREE);
 }