/* bubbles.h - definitions for bubbles screensaver */
-/* $Id: bubbles.h,v 1.2 1997/05/19 03:26:05 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_COCOA
+# include "jwxyz.h"
+# define HAVE_XPM
+#else
+# include <X11/Xlib.h>
#endif
/***************************************************************************
/* 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 *
****************************************************************************/
* 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
+#if !defined(HAVE_XPM) && !defined(HAVE_GDK_PIXBUF)
# define NO_DEFAULT_BUBBLE
# undef BUBBLES_IO
-#endif /* HAVE_XPM */
+#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
+#if defined(HAVE_XPM) || defined(HAVE_GDK_PIXBUF)
# ifndef BUBBLES_IO
# undef NO_DEFAULT_BUBBLE
# endif /* BUBBLES_IO */
-#endif /* HAVE_XPM */
+#endif /* HAVE_XPM || HAVE_GDK_PIXBUF */
+
+extern void init_default_bubbles(void);
+extern int num_default_bubbles;
+extern char **default_bubbles[];
#endif /* _BUBBLES_H_ */