X-Git-Url: http://git.hungrycats.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=hacks%2Fstrange.c;h=b5f3795092ca94ec1a4b837352347a83652c24c2;hb=c1b9b55ad8d59dc05ef55e316aebf5863e7dfa56;hp=f8f88a663c4ab5fe95e6509fd42422a15d37d1f8;hpb=a94197e76a5dea5cb60542840809d6c20d0abbf3;p=xscreensaver diff --git a/hacks/strange.c b/hacks/strange.c index f8f88a66..b5f37950 100644 --- a/hacks/strange.c +++ b/hacks/strange.c @@ -1,9 +1,8 @@ /* -*- Mode: C; tab-width: 4 -*- */ /* strange --- strange attractors */ -#if !defined( lint ) && !defined( SABER ) +#if 0 static const char sccsid[] = "@(#)strange.c 5.00 2000/11/01 xlockmore"; - #endif /*- @@ -31,22 +30,23 @@ static const char sccsid[] = "@(#)strange.c 5.00 2000/11/01 xlockmore"; */ #ifdef STANDALONE -#define MODE_strange -#define PROGCLASS "Strange" -#define HACK_INIT init_strange -#define HACK_DRAW draw_strange -#define strange_opts xlockmore_opts -#define DEFAULTS "*delay: 2000 \n" \ - "*ncolors: 100 \n" -#define SMOOTH_COLORS -#include "xlockmore.h" /* from the xscreensaver distribution */ +# define MODE_strange +# define DEFAULTS "*delay: 10000 \n" \ + "*ncolors: 100 \n" \ + "*fpsClear: True \n" + +# define SMOOTH_COLORS +# define refresh_strange 0 +# define reshape_strange 0 +# define strange_handle_event 0 +# include "xlockmore.h" /* from the xscreensaver distribution */ #else /* !STANDALONE */ -#include "xlock.h" /* from the xlockmore distribution */ +# include "xlock.h" /* from the xlockmore distribution */ #endif /* !STANDALONE */ #ifdef MODE_strange -ModeSpecOpt strange_opts = +ENTRYPOINT ModeSpecOpt strange_opts = {0, (XrmOptionDescRec *) NULL, 0, (argtype *) NULL, (OptionStruct *) NULL}; #ifdef USE_MODULES @@ -58,6 +58,10 @@ ModStruct strange_description = #endif +#ifdef HAVE_COCOA +# define NO_DBUF +#endif + typedef float DBL; typedef int PRM; @@ -215,7 +219,7 @@ free_strange(Display *display, ATTRACTOR *A) } } -void +ENTRYPOINT void draw_strange(ModeInfo * mi) { int i, j, n, Cur_Pt; @@ -322,12 +326,14 @@ draw_strange(ModeInfo * mi) /***************************************************************/ -void +ENTRYPOINT void init_strange(ModeInfo * mi) { Display *display = MI_DISPLAY(mi); +#ifndef NO_DBUF Window window = MI_WINDOW(mi); GC gc = MI_GC(mi); +#endif ATTRACTOR *Attractor; if (Root == NULL) { @@ -393,14 +399,19 @@ init_strange(ModeInfo * mi) gcv.foreground = 0; gcv.background = 0; +#ifndef HAVE_COCOA gcv.graphics_exposures = False; +#endif /* HAVE_COCOA */ gcv.function = GXcopy; if (Attractor->dbuf_gc != None) XFreeGC(display, Attractor->dbuf_gc); if ((Attractor->dbuf_gc = XCreateGC(display, Attractor->dbuf, - GCForeground | GCBackground | GCGraphicsExposures | GCFunction, +#ifndef HAVE_COCOA + GCGraphicsExposures | +#endif /* HAVE_COCOA */ + GCFunction | GCForeground | GCBackground, &gcv)) == None) { XFreePixmap(display, Attractor->dbuf); Attractor->dbuf = None; @@ -421,7 +432,7 @@ init_strange(ModeInfo * mi) /***************************************************************/ -void +ENTRYPOINT void release_strange(ModeInfo * mi) { if (Root != NULL) { @@ -434,4 +445,6 @@ release_strange(ModeInfo * mi) } } +XSCREENSAVER_MODULE ("Strange", strange) + #endif /* MODE_strange */