X-Git-Url: http://git.hungrycats.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=hacks%2Fbubbles.h;h=24872e37ebf0372e813a90755ac16f939419f778;hb=78add6e627ee5f10e1fa6f3852602ea5066eee5a;hp=43f194075123c6e766d61703785752fc7d56aaac;hpb=b08b6f995f8d5e0ff37d2f627bff3f61dcb75ac5;p=xscreensaver diff --git a/hacks/bubbles.h b/hacks/bubbles.h index 43f19407..24872e37 100644 --- a/hacks/bubbles.h +++ b/hacks/bubbles.h @@ -1,12 +1,14 @@ /* 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.6 2006/02/25 20:11:57 jwz Exp $ */ #ifndef _BUBBLES_H_ #define _BUBBLES_H_ -#ifdef HAVE_XPM -#include +#ifdef HAVE_JWXYZ +# include "jwxyz.h" +#else +# include #endif /*************************************************************************** @@ -110,11 +112,10 @@ #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 +131,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 +141,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 +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 -#ifdef BUBBLES_IO -#undef BUBBLES_IO -#endif /* 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_ */