http://apple.doit.wisc.edu/mirrors/amug/linux/linuxppc/sources/tarballs/xscreensaver...
[xscreensaver] / hacks / rorschach.c
index 32b5aba8a1bc1acb3201a2b9d68f2f6068135b04..430fa9dfb3373464428651dd90fd56ddef1da39e 100644 (file)
@@ -1,4 +1,4 @@
-/* xscreensaver, Copyright (c) 1992, 1996 Jamie Zawinski <jwz@netscape.com>
+/* xscreensaver, Copyright (c) 1992, 1996, 1998 Jamie Zawinski <jwz@jwz.org>
  *
  * Permission to use, copy, modify, distribute, and sell this software and its
  * documentation for any purpose is hereby granted without fee, provided that
@@ -19,7 +19,7 @@ static GC draw_gc, erase_gc;
 static unsigned int default_fg_pixel;
 static int iterations, offset;
 static Bool xsym, ysym;
-static int erase_speed, sleep_time, erase_mode;
+static int sleep_time;
 
 static void
 init_rorschach (Display *dpy, Window window)
@@ -92,7 +92,8 @@ hurm (Display *dpy, Window window)
          j++;
        }
       XDrawPoints (dpy, window, draw_gc, points, j, CoordModeOrigin);
-      XSync (dpy, True);
+      XSync (dpy, False);
+      screenhack_handle_events (dpy);
     }
   sleep ( sleep_time );
 
@@ -100,7 +101,8 @@ hurm (Display *dpy, Window window)
 
   XClearWindow (dpy, window);
   if (got_color) XFreeColors (dpy, cmap, &color.pixel, 1, 0);
-  XSync (dpy, True);
+  XSync (dpy, False);
+  screenhack_handle_events (dpy);
   sleep (1);
 }
 
@@ -108,15 +110,13 @@ hurm (Display *dpy, Window window)
 char *progclass = "Rorschach";
 
 char *defaults [] = {
-  "Rorschach.background:       black",         /* to placate SGI */
-  "Rorschach.foreground:       white",
+  ".background:        black",
+  ".foreground:        white",
   "*xsymmetry: true",
   "*ysymmetry: false",
   "*iterations:        4000",
   "*offset:    4",
   "*delay:     5",
-  "*eraseSpeed: 400",
-  "*eraseMode: -1",
   0
 };
 
@@ -127,16 +127,13 @@ XrmOptionDescRec options [] = {
   { "-ysymmetry",      ".ysymmetry",   XrmoptionNoArg, "true" },
   { "-erase-speed",    ".eraseSpeed",          XrmoptionSepArg, 0 },
   { "-delay",           ".delay",               XrmoptionSepArg, 0 },
-  { "-erase-mode",      ".eraseMode",           XrmoptionSepArg, 0 },
   { 0, 0, 0, 0 }
 };
 
 void
 screenhack (Display *dpy, Window window)
 {
-  erase_speed = get_integer_resource("eraseSpeed", "Integer");
   sleep_time = get_integer_resource("delay", "Integer");
-  erase_mode = get_integer_resource("eraseMode", "Integer");
   init_rorschach (dpy, window);
   while (1)
     hurm (dpy, window);