From http://www.jwz.org/xscreensaver/xscreensaver-5.39.tar.gz
[xscreensaver] / hacks / bubbles.h
index 6bca1c67543aba8c6a3a7cc4488251a3808232fb..24872e37ebf0372e813a90755ac16f939419f778 100644 (file)
@@ -1,12 +1,14 @@
 /* bubbles.h - definitions for bubbles screensaver */
 
-/* $Id: bubbles.h,v 1.3 2000/07/19 06:38:42 jwz Exp $ */
+/* $Id: bubbles.h,v 1.6 2006/02/25 20:11:57 jwz Exp $ */
 
 #ifndef _BUBBLES_H_
 #define _BUBBLES_H_
 
-#ifdef HAVE_XPM
-#include <X11/xpm.h>
+#ifdef HAVE_JWXYZ
+# include "jwxyz.h"
+#else
+# include <X11/Xlib.h>
 #endif
 
 /***************************************************************************
@@ -187,32 +189,20 @@ typedef struct bub Bubble;
  * better name...)
  */
 
-#ifdef HAVE_XPM
 struct bub_step {
   int radius;
   long area;
   int droppage;
   Pixmap ball, shape_mask;
   GC draw_gc, erase_gc;
-  XpmAttributes xpmattrs;
   struct bub_step *next;
 };
 
 typedef struct bub_step Bubble_Step;
-#endif /* HAVE_XPM */
-
-/* Make sure default bubble isn't compiled when we don't have XPM
-Disable file I/O code too. */
-#ifndef HAVE_XPM
-# define NO_DEFAULT_BUBBLE
-# undef BUBBLES_IO
-#endif /* HAVE_XPM */
-
-/* Make sure default bubble is compiled in when we have XPM and no file I/O */
-#ifdef HAVE_XPM
-# ifndef BUBBLES_IO
-#  undef NO_DEFAULT_BUBBLE
-# endif /* BUBBLES_IO */
-#endif /* HAVE_XPM */
+
+extern void init_default_bubbles(void);
+extern int num_default_bubbles;
+typedef struct { const unsigned char *png; unsigned long size; } bubble_png;
+extern bubble_png default_bubbles[];
 
 #endif /* _BUBBLES_H_ */