http://packetstormsecurity.org/UNIX/admin/xscreensaver-4.01.tar.gz
[xscreensaver] / hacks / bubbles.h
index 43f194075123c6e766d61703785752fc7d56aaac..18d9f2b52248c11e99d487dccac4d9f92d273e22 100644 (file)
@@ -1,14 +1,10 @@
 /* bubbles.h - definitions for bubbles screensaver */
 
-/* $Id: bubbles.h,v 1.1 1996/09/08 01:35:40 jwz Exp $ */
+/* $Id: bubbles.h,v 1.4 2002/01/17 02:16:04 jwz Exp $ */
 
 #ifndef _BUBBLES_H_
 #define _BUBBLES_H_
 
-#ifdef HAVE_XPM
-#include <X11/xpm.h>
-#endif
-
 /***************************************************************************
  *   Options you might like to change to affect the program's behaviour    *
  ***************************************************************************/
 #define DIRENT_NAME       dp->name
 #endif
 
-/*
- * I don't know why this isn't defined.
- */
+/* I don't know why this isn't defined. */
 #ifdef linux
-extern char *tempnam(char *, char *);
+/* apparently it is defined in recent linuxes.  who knows. */
+/*extern char *tempnam(char *, char *);*/
 #endif
 
 /****************************************************************************
@@ -130,6 +125,9 @@ extern char *tempnam(char *, char *);
 /* Size increments for read_line() buffers */
 #define READ_LINE_BUF_SIZE 24
 
+/* Maximum amount to drop a bubble */
+#define MAX_DROPPAGE 20
+
 /****************************************************************************
  *                        End of options                                    *
  ****************************************************************************/
@@ -137,10 +135,10 @@ extern char *tempnam(char *, char *);
 /* Some machines define M_PI and not PI.  If they don't define either, use
 own own.  Really, the accuracy of this is _not_ very important. */
 #ifndef PI
-#define PI  M_PI
-#ifndef M_PI
-#define M_PI 3.1415926535
-#endif
+# define PI  M_PI
+# ifndef M_PI
+#  define M_PI 3.1415926535
+# endif
 #endif
 
 /* for delete_bubble_in_mesh() */
@@ -185,33 +183,31 @@ typedef struct bub Bubble;
  * better name...)
  */
 
-#ifdef HAVE_XPM
+#if defined(HAVE_GDK_PIXBUF) || defined(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 */
+#endif /* HAVE_XPM || HAVE_GDK_PIXBUF */
 
 /* 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
-#ifdef BUBBLES_IO
-#undef BUBBLES_IO
-#endif /* BUBBLES_IO */
-#endif /* HAVE_XPM */
+#if !defined(HAVE_XPM) && !defined(HAVE_GDK_PIXBUF)
+# define NO_DEFAULT_BUBBLE
+# undef BUBBLES_IO
+#endif /* !HAVE_XPM && !HAVE_GDK_PIXBUF */
 
 /* 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 */
+#if defined(HAVE_XPM) || defined(HAVE_GDK_PIXBUF)
+# ifndef BUBBLES_IO
+#  undef NO_DEFAULT_BUBBLE
+# endif /* BUBBLES_IO */
+#endif /* HAVE_XPM || HAVE_GDK_PIXBUF */
 
 #endif /* _BUBBLES_H_ */