]> git.hungrycats.org Git - xscreensaver/commitdiff
From https://www.jwz.org/xscreensaver/xscreensaver-6.05.tar.gz
authorZygo Blaxell <zblaxell@waya.furryterror.org>
Sat, 10 Sep 2022 02:52:30 +0000 (22:52 -0400)
committerZygo Blaxell <xss@mirrors.furryterror.org>
Sat, 10 Sep 2022 02:52:58 +0000 (22:52 -0400)
-rw-rw-r-- 1 zblaxell zblaxell 26109536 Sep  9 21:41 xscreensaver-6.05.tar.gz
719e518de9a1223fd4071f5c49b09c0a6b23550b  xscreensaver-6.05.tar.gz

601 files changed:
Makefile.in
OSX/Randomizer.m
OSX/XScreenSaverView.m
OSX/bindist.rtf
OSX/grabclient-osx.m
README
android/gradle/wrapper/gradle-wrapper.properties
config.h.in
configure
configure.ac
driver/.gdbinit [deleted file]
driver/Makefile.in
driver/XScreenSaver_ad.h
driver/blurb.c
driver/clientmsg.c
driver/demo-Gtk-conf.c
driver/demo-Gtk-conf.h
driver/demo-Gtk.c
driver/demo.ui [new file with mode: 0644]
driver/dpms.c
driver/fade.c
driver/gresource.xml [new file with mode: 0644]
driver/passwd-pwent.c
driver/prefs.ui [new file with mode: 0644]
driver/prefsw.c
driver/subprocs.c
driver/types.h
driver/windows.c
driver/xscreensaver-auth.c
driver/xscreensaver-auth.man
driver/xscreensaver-command.man
driver/xscreensaver-gfx.man
driver/xscreensaver-settings.man
driver/xscreensaver-systemd.c
driver/xscreensaver-systemd.man
driver/xscreensaver.c
driver/xscreensaver.man
driver/xscreensaver.ui [deleted file]
hacks/abstractile.man
hacks/anemone.man
hacks/anemotaxis.man
hacks/ant.man
hacks/apollonian.man
hacks/apple2.man
hacks/attraction.man
hacks/barcode.man
hacks/binaryhorizon.man
hacks/binaryring.man
hacks/blaster.man
hacks/blitspin.man
hacks/bouboule.man
hacks/boxfit.man
hacks/braid.man
hacks/bsod.c
hacks/bsod.man
hacks/bubbles.man
hacks/bumps.man
hacks/ccurve.man
hacks/celtic.man
hacks/cloudlife.man
hacks/compass.man
hacks/config/abstractile.xml
hacks/config/anemone.xml
hacks/config/anemotaxis.xml
hacks/config/ant.xml
hacks/config/antinspect.xml
hacks/config/antmaze.xml
hacks/config/antspotlight.xml
hacks/config/apollonian.xml
hacks/config/apple2.xml
hacks/config/atlantis.xml
hacks/config/attraction.xml
hacks/config/atunnel.xml
hacks/config/barcode.xml
hacks/config/beats.xml
hacks/config/binaryhorizon.xml
hacks/config/binaryring.xml
hacks/config/blaster.xml
hacks/config/blinkbox.xml
hacks/config/blitspin.xml
hacks/config/blocktube.xml
hacks/config/boing.xml
hacks/config/bouboule.xml
hacks/config/bouncingcow.xml
hacks/config/boxed.xml
hacks/config/boxfit.xml
hacks/config/braid.xml
hacks/config/bsod.xml
hacks/config/bubble3d.xml
hacks/config/bubbles.xml
hacks/config/bumps.xml
hacks/config/cage.xml
hacks/config/carousel.xml
hacks/config/ccurve.xml
hacks/config/celtic.xml
hacks/config/chompytower.xml
hacks/config/circuit.xml
hacks/config/cityflow.xml
hacks/config/cloudlife.xml
hacks/config/co____9.xml
hacks/config/companioncube.xml
hacks/config/compass.xml
hacks/config/coral.xml
hacks/config/covid19.xml
hacks/config/crackberg.xml
hacks/config/critical.xml
hacks/config/crumbler.xml
hacks/config/crystal.xml
hacks/config/cube21.xml
hacks/config/cubenetic.xml
hacks/config/cubestack.xml
hacks/config/cubestorm.xml
hacks/config/cubetwist.xml
hacks/config/cubicgrid.xml
hacks/config/cwaves.xml
hacks/config/cynosure.xml
hacks/config/dangerball.xml
hacks/config/decayscreen.xml
hacks/config/deco.xml
hacks/config/deepstars.xml
hacks/config/deluxe.xml
hacks/config/demon.xml
hacks/config/discoball.xml
hacks/config/discrete.xml
hacks/config/distort.xml
hacks/config/dnalogo.xml
hacks/config/drift.xml
hacks/config/dymaxionmap.xml
hacks/config/endgame.xml
hacks/config/energystream.xml
hacks/config/engine.xml
hacks/config/epicycle.xml
hacks/config/eruption.xml
hacks/config/esper.xml
hacks/config/etruscanvenus.xml
hacks/config/euler2d.xml
hacks/config/extrusion.xml
hacks/config/fadeplot.xml
hacks/config/fiberlamp.xml
hacks/config/filmleader.xml
hacks/config/fireworkx.xml
hacks/config/flag.xml
hacks/config/flame.xml
hacks/config/flipflop.xml
hacks/config/flipscreen3d.xml
hacks/config/fliptext.xml
hacks/config/flow.xml
hacks/config/fluidballs.xml
hacks/config/flurry.xml
hacks/config/flyingtoasters.xml
hacks/config/fontglide.xml
hacks/config/forest.xml
hacks/config/fuzzyflakes.xml
hacks/config/galaxy.xml
hacks/config/gears.xml
hacks/config/geodesic.xml
hacks/config/geodesicgears.xml
hacks/config/gflux.xml
hacks/config/gibson.xml
hacks/config/glblur.xml
hacks/config/glcells.xml
hacks/config/gleidescope.xml
hacks/config/glforestfire.xml
hacks/config/glhanoi.xml
hacks/config/glitchpeg.xml
hacks/config/glknots.xml
hacks/config/glmatrix.xml
hacks/config/glplanet.xml
hacks/config/glschool.xml
hacks/config/glslideshow.xml
hacks/config/glsnake.xml
hacks/config/gltext.xml
hacks/config/goop.xml
hacks/config/grav.xml
hacks/config/gravitywell.xml
hacks/config/greynetic.xml
hacks/config/halftone.xml
hacks/config/halo.xml
hacks/config/handsy.xml
hacks/config/headroom.xml
hacks/config/helix.xml
hacks/config/hexadrop.xml
hacks/config/hexstrut.xml
hacks/config/hilbert.xml
hacks/config/hopalong.xml
hacks/config/hydrostat.xml
hacks/config/hyperball.xml
hacks/config/hypercube.xml
hacks/config/hypertorus.xml
hacks/config/hypnowheel.xml
hacks/config/ifs.xml
hacks/config/imsmap.xml
hacks/config/interaggregate.xml
hacks/config/interference.xml
hacks/config/intermomentary.xml
hacks/config/jigglypuff.xml
hacks/config/jigsaw.xml
hacks/config/juggle.xml
hacks/config/juggler3d.xml
hacks/config/julia.xml
hacks/config/kaleidescope.xml
hacks/config/kaleidocycle.xml
hacks/config/klein.xml
hacks/config/kumppa.xml
hacks/config/lament.xml
hacks/config/laser.xml
hacks/config/lavalite.xml
hacks/config/lcdscrub.xml
hacks/config/lightning.xml
hacks/config/lisa.xml
hacks/config/lissie.xml
hacks/config/lmorph.xml
hacks/config/lockward.xml
hacks/config/loop.xml
hacks/config/m6502.xml
hacks/config/mapscroller.xml
hacks/config/marbling.xml
hacks/config/maze.xml
hacks/config/maze3d.xml
hacks/config/memscroller.xml
hacks/config/menger.xml
hacks/config/metaballs.xml
hacks/config/mirrorblob.xml
hacks/config/mismunch.xml
hacks/config/moebius.xml
hacks/config/moebiusgears.xml
hacks/config/moire.xml
hacks/config/moire2.xml
hacks/config/molecule.xml
hacks/config/morph3d.xml
hacks/config/mountain.xml
hacks/config/munch.xml
hacks/config/nakagin.xml
hacks/config/nerverot.xml
hacks/config/noof.xml
hacks/config/noseguy.xml
hacks/config/pacman.xml
hacks/config/pedal.xml
hacks/config/peepers.xml
hacks/config/penetrate.xml
hacks/config/penrose.xml
hacks/config/petri.xml
hacks/config/phosphor.xml
hacks/config/photopile.xml
hacks/config/piecewise.xml
hacks/config/pinion.xml
hacks/config/pipes.xml
hacks/config/polyhedra.xml
hacks/config/polyominoes.xml
hacks/config/polytopes.xml
hacks/config/pong.xml
hacks/config/popsquares.xml
hacks/config/projectiveplane.xml
hacks/config/providence.xml
hacks/config/pulsar.xml
hacks/config/pyro.xml
hacks/config/qix.xml
hacks/config/quasicrystal.xml
hacks/config/queens.xml
hacks/config/raverhoop.xml
hacks/config/razzledazzle.xml
hacks/config/rdbomb.xml
hacks/config/ripples.xml
hacks/config/rocks.xml
hacks/config/romanboy.xml
hacks/config/rorschach.xml
hacks/config/rotor.xml
hacks/config/rotzoomer.xml
hacks/config/rubik.xml
hacks/config/rubikblocks.xml
hacks/config/sballs.xml
hacks/config/scooter.xml
hacks/config/shadebobs.xml
hacks/config/sierpinski.xml
hacks/config/sierpinski3d.xml
hacks/config/skytentacles.xml
hacks/config/slidescreen.xml
hacks/config/slip.xml
hacks/config/sonar.xml
hacks/config/speedmine.xml
hacks/config/sphere.xml
hacks/config/sphereeversion.xml
hacks/config/spheremonics.xml
hacks/config/spiral.xml
hacks/config/splitflap.xml
hacks/config/splodesic.xml
hacks/config/spotlight.xml
hacks/config/sproingies.xml
hacks/config/squiral.xml
hacks/config/squirtorus.xml
hacks/config/stairs.xml
hacks/config/starfish.xml
hacks/config/starwars.xml
hacks/config/stonerview.xml
hacks/config/strange.xml
hacks/config/substrate.xml
hacks/config/superquadrics.xml
hacks/config/surfaces.xml
hacks/config/swirl.xml
hacks/config/t3d.xml
hacks/config/tangram.xml
hacks/config/tessellimage.xml
hacks/config/testx11.xml
hacks/config/thornbird.xml
hacks/config/timetunnel.xml
hacks/config/topblock.xml
hacks/config/triangle.xml
hacks/config/tronbit.xml
hacks/config/truchet.xml
hacks/config/twang.xml
hacks/config/unicrud.xml
hacks/config/unknownpleasures.xml
hacks/config/vermiculate.xml
hacks/config/vfeedback.xml
hacks/config/vidwhacker.xml
hacks/config/vigilance.xml
hacks/config/vines.xml
hacks/config/voronoi.xml
hacks/config/wander.xml
hacks/config/webcollage.xml
hacks/config/whirlwindwarp.xml
hacks/config/whirlygig.xml
hacks/config/winduprobot.xml
hacks/config/worm.xml
hacks/config/wormhole.xml
hacks/config/xanalogtv.xml
hacks/config/xflame.xml
hacks/config/xjack.xml
hacks/config/xlyap.xml
hacks/config/xmatrix.xml
hacks/config/xrayswarm.xml
hacks/config/xspirograph.xml
hacks/config/zoom.xml
hacks/coral.man
hacks/critical.man
hacks/crystal.man
hacks/cwaves.man
hacks/cynosure.man
hacks/decayscreen.man
hacks/deco.man
hacks/deluxe.man
hacks/demon.man
hacks/discrete.man
hacks/distort.man
hacks/drift.man
hacks/epicycle.man
hacks/eruption.man
hacks/euler2d.man
hacks/fadeplot.man
hacks/fiberlamp.man
hacks/filmleader.man
hacks/fireworkx.man
hacks/flag.man
hacks/flame.man
hacks/flow.man
hacks/fluidballs.c
hacks/fluidballs.man
hacks/fontglide.man
hacks/forest.man
hacks/fuzzyflakes.man
hacks/galaxy.man
hacks/glitchpeg.man
hacks/glx/antinspect.man
hacks/glx/antmaze.man
hacks/glx/antspotlight.man
hacks/glx/atlantis.man
hacks/glx/atunnel.man
hacks/glx/beats.man
hacks/glx/blinkbox.man
hacks/glx/blocktube.man
hacks/glx/boing.man
hacks/glx/bouncingcow.man
hacks/glx/boxed.man
hacks/glx/bubble3d.man
hacks/glx/cage.man
hacks/glx/carousel.man
hacks/glx/chompytower.man
hacks/glx/circuit.man
hacks/glx/cityflow.man
hacks/glx/companioncube.man
hacks/glx/covid19.man
hacks/glx/crackberg.man
hacks/glx/crumbler.man
hacks/glx/cube21.man
hacks/glx/cubenetic.man
hacks/glx/cubestack.man
hacks/glx/cubestorm.man
hacks/glx/cubetwist.man
hacks/glx/cubicgrid.man
hacks/glx/dangerball.man
hacks/glx/deepstars.man
hacks/glx/discoball.man
hacks/glx/dymaxionmap.man
hacks/glx/endgame.man
hacks/glx/energystream.man
hacks/glx/engine.man
hacks/glx/esper.man
hacks/glx/etruscanvenus.man
hacks/glx/extrusion.man
hacks/glx/flipflop.man
hacks/glx/flipscreen3d.man
hacks/glx/fliptext.man
hacks/glx/flurry.man
hacks/glx/flyingtoasters.man
hacks/glx/gears.man
hacks/glx/geodesic.man
hacks/glx/geodesicgears.man
hacks/glx/gflux.man
hacks/glx/gibson.man
hacks/glx/glblur.man
hacks/glx/glcells.man
hacks/glx/gleidescope.man
hacks/glx/glforestfire.man
hacks/glx/glhanoi.man
hacks/glx/glknots.man
hacks/glx/glmatrix.man
hacks/glx/glplanet.man
hacks/glx/glschool.man
hacks/glx/glslideshow.man
hacks/glx/glsnake.man
hacks/glx/gltext.man
hacks/glx/gravitywell.man
hacks/glx/handsy.man
hacks/glx/headroom.man
hacks/glx/hexstrut.man
hacks/glx/hilbert.man
hacks/glx/hydrostat.man
hacks/glx/hypertorus.man
hacks/glx/hypnowheel.man
hacks/glx/jigglypuff.man
hacks/glx/jigsaw.man
hacks/glx/juggler3d.man
hacks/glx/kaleidocycle.man
hacks/glx/klein.man
hacks/glx/lament.man
hacks/glx/lavalite.man
hacks/glx/lockward.man
hacks/glx/mapscroller.man
hacks/glx/maze3d.man
hacks/glx/menger.man
hacks/glx/mirrorblob.man
hacks/glx/moebius.man
hacks/glx/moebiusgears.man
hacks/glx/molecule.c
hacks/glx/molecule.man
hacks/glx/morph3d.man
hacks/glx/nakagin.man
hacks/glx/noof.man
hacks/glx/peepers.man
hacks/glx/photopile.man
hacks/glx/pinion.man
hacks/glx/pipes.man
hacks/glx/polyhedra.man
hacks/glx/polytopes.man
hacks/glx/projectiveplane.man
hacks/glx/providence.man
hacks/glx/pulsar.man
hacks/glx/quasicrystal.man
hacks/glx/queens.man
hacks/glx/raverhoop.man
hacks/glx/razzledazzle.man
hacks/glx/romanboy.man
hacks/glx/rubik.man
hacks/glx/rubikblocks.man
hacks/glx/sballs.man
hacks/glx/sierpinski3d.man
hacks/glx/skytentacles.man
hacks/glx/sonar.man
hacks/glx/sphereeversion.man
hacks/glx/spheremonics.man
hacks/glx/splitflap.man
hacks/glx/splodesic.man
hacks/glx/sproingies.man
hacks/glx/squirtorus.man
hacks/glx/stairs.man
hacks/glx/starwars.man
hacks/glx/stonerview.man
hacks/glx/superquadrics.man
hacks/glx/surfaces.man
hacks/glx/tangram.man
hacks/glx/timetunnel.man
hacks/glx/topblock.man
hacks/glx/trackball.h
hacks/glx/tronbit.man
hacks/glx/unicrud.man
hacks/glx/unknownpleasures.man
hacks/glx/vigilance.man
hacks/glx/voronoi.man
hacks/glx/winduprobot.man
hacks/glx/xscreensaver-gl-visual.man
hacks/goop.man
hacks/grav.man
hacks/greynetic.man
hacks/halftone.man
hacks/halo.man
hacks/helix.man
hacks/hexadrop.man
hacks/hopalong.man
hacks/hyperball.man
hacks/hypercube.man
hacks/ifs.man
hacks/imsmap.man
hacks/interaggregate.man
hacks/interference.man
hacks/intermomentary.man
hacks/juggle.man
hacks/julia.man
hacks/kaleidescope.man
hacks/kumppa.man
hacks/laser.man
hacks/lcdscrub.man
hacks/lightning.man
hacks/lisa.man
hacks/lissie.man
hacks/lmorph.man
hacks/loop.man
hacks/marbling.man
hacks/maze.man
hacks/memscroller.man
hacks/metaballs.man
hacks/moire.man
hacks/moire2.man
hacks/mountain.man
hacks/munch.man
hacks/munge-ad.pl
hacks/nerverot.man
hacks/noseguy.man
hacks/pacman.man
hacks/pedal.man
hacks/penetrate.man
hacks/penrose.man
hacks/petri.man
hacks/phosphor.man
hacks/piecewise.man
hacks/polyominoes.man
hacks/pong.man
hacks/pyro.man
hacks/qix.man
hacks/rdbomb.man
hacks/recanim.c
hacks/ripples.man
hacks/rocks.man
hacks/rorschach.man
hacks/rotor.man
hacks/rotzoomer.man
hacks/scooter.man
hacks/screenhack.c
hacks/shadebobs.man
hacks/sierpinski.man
hacks/slidescreen.man
hacks/slip.man
hacks/speedmine.man
hacks/sphere.man
hacks/spiral.man
hacks/spotlight.man
hacks/squiral.man
hacks/starfish.man
hacks/strange.man
hacks/substrate.man
hacks/swirl.man
hacks/t3d.man
hacks/tessellimage.man
hacks/thornbird.man
hacks/triangle.man
hacks/truchet.man
hacks/twang.man
hacks/vermiculate.man
hacks/vfeedback.man
hacks/vidwhacker.man
hacks/vines.man
hacks/wander.man
hacks/webcollage.man
hacks/whirlwindwarp.man
hacks/whirlygig.man
hacks/worm.man
hacks/wormhole.man
hacks/xanalogtv.man
hacks/xflame.man
hacks/ximage-loader.c
hacks/xjack.man
hacks/xlyap.man
hacks/xmatrix.man
hacks/xml2man.pl
hacks/xrayswarm.man
hacks/xscreensaver-getimage-file
hacks/xscreensaver-getimage.c
hacks/xscreensaver-getimage.man
hacks/xscreensaver-text
hacks/xscreensaver-text.man
hacks/xspirograph.man
hacks/xsublim.man
hacks/zoom.man
utils/async_netdb.c
utils/images/screensaver-cmndln.png [deleted file]
utils/images/screensaver-colorselector.png [deleted file]
utils/images/screensaver-diagnostic.png [deleted file]
utils/images/screensaver-locking.png [deleted file]
utils/images/screensaver-power.png [deleted file]
utils/images/screensaver-snap.png [deleted file]
utils/resources.c
utils/version.h

index 9de79b20ce0bbd3a23573a4b2fe5c2adf51639ec..fa033cf94ccdf13334058df1f96ced497a0df6e8 100644 (file)
@@ -286,6 +286,22 @@ dmg::
 apk::
        $(MAKE2) -C android apk
 
+# Update the version numbers in faq.html, bugs.html, etc.
+www_versions::
+       @                                                                   \
+  DEST=$$HOME/www/xscreensaver ;                                           \
+  VERS=`sed -n 's/[^0-9]*\([0-9]\.[0-9][^. ]*\).*/\1/p' utils/version.h |   \
+         head -1` ;                                                        \
+  TMP=/tmp/xd.$$$$ ;                                                       \
+  for f in $$DEST/*.html ; do                                              \
+    sed "s/\(CLASS=.latest.>\)[^<>]*\(<\)/\1$$VERS\2/gi" < "$$f" > "$$TMP" ;\
+    if ! cmp -s "$$f" "$$TMP" ; then                                       \
+      diff -U0 "$$f" "$$TMP" ;                                             \
+      cp -p "$$TMP" "$$f" ;                                                \
+    fi ;                                                                   \
+    rm -f "$$TMP" ;                                                        \
+  done
+
 www::
        @                                                                   \
   DEST=$$HOME/www/xscreensaver ;                                           \
@@ -308,6 +324,7 @@ www::
     exit 1 ;                                                               \
   fi ;                                                                     \
                                                                            \
+  $(MAKE2) www_versions ;                                                  \
   $(MAKE2) -C OSX updates.xml ;                                                    \
                                                                            \
   if [ ! -f $$NAME ]; then                                                 \
index be302f89fb3b2f3db4bc29ea9476c7e7b7f8a6e8..e055f737f7efb5d04769065e17d7d886ef008b06 100644 (file)
@@ -1,4 +1,4 @@
-/* xscreensaver, Copyright © 2020-2021 Jamie Zawinski <jwz@jwz.org>
+/* xscreensaver, Copyright © 2020-2022 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
 #define CYCLE_DEFAULT (5 * 60)
 
 
-// Returns a string that (hopefully) uniquely identifies the NSScreen,
-// and will survive reboots.  Also the pretty name of that screen.
+// Returns a string that (hopefully) uniquely identifies the display hardware
+// associated with this NSScreen in such a way that it will persist across
+// reboots.  Also the pretty name of that screen.
 //
 static NSArray *
 screen_id (NSScreen *screen)
 {
+  NSData   *edid = NULL;
+  NSString *name = NULL;
+
   NSDictionary *d = [screen deviceDescription];
 
-  // This is the CGDirectDisplayID. "A display ID can persist across
-  // processes and typically remains constant until the machine is
-  // restarted."  It does not always persist across reboots.
+  // This is the CGDirectDisplayID. "A display ID can persist across processes
+  // and typically remains constant until the machine is restarted."  It does
+  // not always persist across reboots.
   //
   unsigned long id = [[d objectForKey:@"NSScreenNumber"] unsignedLongValue];
 
-  // The EDID of a display contains manufacturer, product ID, and most
-  // importantly, serial number.  So that should persist.
+  // Aug 2022: CGDisplayIOServicePort has been deprecated since 10.9, and as
+  // of 12.5, it always returns NULL, at least on M1 hardware.  Perhaps this
+  // should be #if __x86_64__ or !__arm64__?
   //
 # pragma clang diagnostic push   // "CGDisplayIOServicePort deprecated in 10.9"
 # pragma clang diagnostic ignored "-Wdeprecated-declarations"
-  io_service_t display_port = CGDisplayIOServicePort(id);
+  io_service_t dport = CGDisplayIOServicePort (id);
 # pragma clang diagnostic pop
 
-  if (display_port == MACH_PORT_NULL) {
-    // No physical device to get a name from... are we in Screen Sharing?
-    NSLog(@"no device for display %lu", id);
-    return @[ [NSString stringWithFormat:@"%08lX", id],
-              @"unknown" ];
+  if (dport != MACH_PORT_NULL) {
+    NSDictionary *d2 = (NSDictionary *)  // CFDictionaryRef
+      IODisplayCreateInfoDictionary (dport, kIODisplayOnlyPreferredName);
+
+    // This returns the EDID as a 256-bytes binary blob that contains, among
+    // other things, the manufacturer, product ID, and unique serial number.
+    //
+    edid = [d2 objectForKey:[NSString stringWithUTF8String:kIODisplayEDIDKey]];
+
+    // Now get the human-readable name of the screen.
+    // The dict has an entry like: "DisplayProductName": { "en_US": "iMac" };
+    //
+    NSDictionary *names =
+      [d2 objectForKey: [NSString stringWithUTF8String:kDisplayProductName]];
+    if (names && [names count] > 0)
+      name = [[names objectForKey:[[names allKeys] objectAtIndex:0]] retain];
+
+    [d2 release];
   }
 
-  NSDictionary *d2 = (NSDictionary *)  // CFDictionaryRef
-    IODisplayCreateInfoDictionary (display_port, kIODisplayOnlyPreferredName);
-  NSData *edid = [d2 objectForKey:
-                       [NSString stringWithUTF8String:kIODisplayEDIDKey]];
-  NSString *b64;
-  if (!edid) {
-    // For ancient monitors and safe-mode graphics drivers.
-    b64 = [NSString stringWithFormat:@"%08lX", id];
-  } else {
-    // But the EDID is 256 binary bytes. That's annoyingly big.
-    // So let's hash and base64 it for use as the resource key.
-    // That's 43 characters.
+  if (! edid) {
+    //
+    // If we weren't able to retrieve the full 256-byte EDID above, hopefully
+    // these three numbers also uniquely identify the hardware.
+    //
+    // However, they won't always.  I have an "EDID Ghost" adapter (a dongle
+    // to prevent resolution negotiation) whose serial number is 0.  Maybe if
+    // I had two of them, even the 256-byte version would be non-unique.
+    //
+    // We could also dig through IOServiceMatching("IOMobileFramebuffer") in
+    // order to find more info about the displays in the "DisplayAttributes"
+    // dictionary (see "ioreg -lw0") but that probably won't give us anything
+    // more unique than the above.  In particular, that dict contains an
+    // entry for "EDID UUID" which is a hex string of 16 bytes that does
+    // *not* distinguish between two different monitors of the same model.
     //
+    uint32_t bin[3];
+    bin[0] = CGDisplayVendorNumber (id);
+    bin[1] = CGDisplayModelNumber  (id);
+    bin[2] = CGDisplaySerialNumber (id);
+    if (bin[0] || bin[1] || bin[2])
+      edid = [NSData dataWithBytes:bin length:sizeof(bin)];
+  }
+
+  if (!name || !name.length) {
+    //
+    // We might have gotten the name from CGDisplayIOServicePort ->
+    // kIODisplayOnlyPreferredName.  If not, use the localized display name.
+    // which was introduced in macOS 10.15.  Maybe those are identical?
+    //
+    if (@available (macOS 10.15, *))
+      name = [screen localizedName];
+    if (!name || !name.length)
+      name = @"unknown";
+  }
+
+  if (! edid) {
+    //
+    // If we weren't able to find the EDID at all, use the display name, size
+    // and position, and hope that is invariant across boots.  Good luck!
+    //
+    edid = [[NSString stringWithFormat:@"%dx%d @ %d+%d, %@",
+                      (int) screen.frame.size.width,
+                      (int) screen.frame.size.height,
+                      (int) screen.frame.origin.x, 
+                      (int) screen.frame.origin.y,
+                      name]
+             dataUsingEncoding: NSUTF8StringEncoding];
+  }
+
+  //
+  // The EDID might be only 12 bytes, or it might be 256 bytes, which is
+  // annoyingly big.  Or somewhere in between.  So if it's more than 32 bytes,
+  // hash it first.  After base64, the resource key will be no more than 43
+  // characters.
+  //
+  if (edid.length > CC_SHA256_DIGEST_LENGTH) {
     const char *bytes = [edid bytes];
     unsigned char out[CC_SHA256_DIGEST_LENGTH + 1];
     CC_SHA256 (bytes, edid.length, out);
-    b64 = [[NSData dataWithBytes:bytes length:CC_SHA256_DIGEST_LENGTH]
-           base64EncodedStringWithOptions:0];
-    // Replace irritating b64 characters with safer ones.
-    b64 = [[[b64 stringByReplacingOccurrencesOfString:@"+" withString:@"-"]
-                 stringByReplacingOccurrencesOfString:@"/" withString:@"_"]
-                 stringByReplacingOccurrencesOfString:@"=" withString:@""];
+    edid = [NSData dataWithBytes: out
+                          length: CC_SHA256_DIGEST_LENGTH];
   }
 
-  // Now get the human-readable name of the screen.
-  // The dict has an entry like: "DisplayProductName": { "en_US": "iMac" };
-  //
-  NSString *name = @"unknown";
-  NSDictionary *names =
-    [d2 objectForKey: [NSString stringWithUTF8String:kDisplayProductName]];
-  if (names && [names count] > 0)
-    name = [[names objectForKey:[[names allKeys] objectAtIndex:0]] retain];
+  NSString *b64 = [edid base64EncodedStringWithOptions:0];
 
-  [d2 release];
+  // Replace irritating b64 characters with safer ones.
+  b64 = [[[b64 stringByReplacingOccurrencesOfString:@"+" withString:@"-"]
+               stringByReplacingOccurrencesOfString:@"/" withString:@"_"]
+               stringByReplacingOccurrencesOfString:@"=" withString:@""];
 
   return @[ b64, name ];  // Analyzer says name leaks?
 }
@@ -118,21 +172,11 @@ get_boolean (NSString *key, NSUserDefaultsController *prefs)
 
 
 static NSString *
-resource_key_for_name (NSString *s, BOOL screen_p)
+resource_key_for_name (NSString *s, BOOL screen_p, NSDictionary *screen_ids)
 {
   if (screen_p) {
-    const char *name = [s UTF8String];
-    int n;
-    char dummy;
-    if (2 != sscanf (name, "Screen %d %c", &n, &dummy))
-      return 0;
-
-    NSArray *dscreens = [NSScreen screens];
-    NSScreen *sc = [dscreens objectAtIndex: n-1];
-    NSArray  *aa = screen_id (sc);
-    NSString *id = [aa objectAtIndex:0];
+    NSString *id = [screen_ids objectForKey: s];
     return [NSString stringWithFormat:@"screen_%@_disabled", id];
-
   } else {
     // Keep risky characters out of the preferences database.
     NSMutableCharacterSet *set =
@@ -184,8 +228,8 @@ resource_key_for_name (NSString *s, BOOL screen_p)
   if (p && frame.size.width >= 640)
     p = NO;
 
-  if (p && getenv("SELECTED_SAVER")) // Running under SaverTester
-    p = NO;
+//  if (p && getenv("SELECTED_SAVER")) // Running under SaverTester
+//    p = NO;
 
   self = [super initWithFrame:frame isPreview:p];
   if (! self) return 0;
@@ -313,7 +357,7 @@ resource_key_for_name (NSString *s, BOOL screen_p)
 
       [seen setObject:p forKey: [name lowercaseString]];
 
-      NSString *res = resource_key_for_name (name, FALSE);
+      NSString *res = resource_key_for_name (name, FALSE, NULL);
       BOOL disabled = get_boolean (res, prefs);
       if (disabled) {
         // NSLog(@"disabled: %@", name);
@@ -1000,7 +1044,9 @@ catch_signal (int sig, void (*handler) (int))
 {
   NSTableView *screen_table, *saver_table;
   NSTextField *timerLabel;
-  NSArray *screens, *savers;
+  NSArray *savers;
+  NSArray *screen_names;     // Readable, sortable strings printed in the list
+  NSDictionary *screen_ids;  // screen_names -> resource id
   NSUserDefaultsController *prefs;
 }
 
@@ -1017,8 +1063,8 @@ catch_signal (int sig, void (*handler) (int))
   NSRect frame;
   frame.origin.x = 0;
   frame.origin.y = 0;
-  frame.size.width  = 400;
-  frame.size.height = 480;
+  frame.size.width  = 460;
+  frame.size.height = 520;
   [self setFrame:frame display:NO];
   self.minSize = frame.size;
   frame.size.height = 99999;
@@ -1177,23 +1223,57 @@ catch_signal (int sig, void (*handler) (int))
 
   // Screen table view
 
+  NSArray *dscreens = [NSScreen screens];
+
+  NSMutableDictionary *screen_ords =
+    [NSMutableDictionary dictionaryWithCapacity: [dscreens count]];
+
   {
-    NSArray *dscreens = [NSScreen screens];
-    NSMutableArray *s2 = [NSMutableArray arrayWithCapacity: [dscreens count]];
+    // Save the original number of the screens.
     for (int i = 0; i < [dscreens count]; i++) {
       NSScreen *sc = [dscreens objectAtIndex: i];
+      NSDictionary *d = [sc deviceDescription];
+      NSNumber *sid = [d objectForKey:@"NSScreenNumber"];
+      [screen_ords setObject: [NSNumber numberWithInteger:i] forKey: sid];
+    }
+
+    // Sort the screens left to right, then top to bottom.
+    dscreens = [dscreens sortedArrayUsingComparator:
+                           ^ NSComparisonResult (id a, id b) {
+        NSScreen *sa = a;
+        NSScreen *sb = b;
+        return (sa.frame.origin.x > sb.frame.origin.x ? NSOrderedDescending :
+                sa.frame.origin.x < sb.frame.origin.x ? NSOrderedAscending  :
+                sa.frame.origin.y > sb.frame.origin.y ? NSOrderedDescending :
+                sa.frame.origin.y < sb.frame.origin.y ? NSOrderedAscending  :
+                NSOrderedSame);
+      }];
+
+    NSMutableArray *sn = [NSMutableArray arrayWithCapacity: [dscreens count]];
+    NSMutableDictionary *si = [NSMutableDictionary
+                                dictionaryWithCapacity:[dscreens count]];
+    for (int i = 0; i < [dscreens count]; i++) {
+      NSScreen *sc = [dscreens objectAtIndex: i];
+      NSDictionary *d = [sc deviceDescription];
+      NSNumber *sid = [d objectForKey:@"NSScreenNumber"];
+      int ord = [(NSNumber *) [screen_ords objectForKey: sid] integerValue];
+
       NSArray  *aa = screen_id (sc);
+      NSString *id   = [aa objectAtIndex:0];
       NSString *desc = [aa objectAtIndex:1];
-      [s2 addObject: [NSString stringWithFormat:
-                                 @"Screen %d - %d x %d @ %d, %d (%@)",
-                               (i + 1),
-                               (int) sc.frame.size.width,
-                               (int) sc.frame.size.height,
-                               (int) sc.frame.origin.x, 
-                               (int) sc.frame.origin.y,
-                               desc]];
+      NSString *name = [NSString stringWithFormat:
+                                   @"Screen %d - %d x %d @ %d, %d (%@)",
+                                 (ord + 1),
+                                 (int) sc.frame.size.width,
+                                 (int) sc.frame.size.height,
+                                 (int) sc.frame.origin.x, 
+                                 (int) sc.frame.origin.y,
+                                 desc];
+      [sn addObject: name];
+      [si setObject:id forKey:name];
     }
-    screens = [s2 retain];
+    screen_names = [sn retain];
+    screen_ids   = [si retain];
   }
 
   NSScrollView *sv = [[NSScrollView alloc] init];
@@ -1233,13 +1313,13 @@ catch_signal (int sig, void (*handler) (int))
   frame.size.width = panel.frame.size.width - margin * 2;
   frame.size.height = stab.frame.size.height;
   frame.size.height += line_height * 2;  // tab headers, sigh
-  int max = line_height * 5;
+  int max = line_height * 10;  // 7 = 3 lines??
   if (frame.size.height > max) frame.size.height = max;
   frame.origin.x = margin;
   frame.origin.y = hlab.frame.origin.y - frame.size.height - margin;
   sv.frame = frame;
 
-  if ([screens count] <= 1) {  // Hide the screens list if there's only one.
+  if ([screen_names count] <= 1) {  // Hide the screens list if only one.
     [sv removeFromSuperview];
     frame.origin.y += frame.size.height + margin;
     frame.size.height = 0;
@@ -1378,7 +1458,7 @@ catch_signal (int sig, void (*handler) (int))
 - (NSInteger)numberOfRowsInTableView:(NSTableView *) tv
 {
   if (tv == screen_table) {
-    return [screens count];
+    return [screen_names count];
   } else if (tv == saver_table) {
     return [savers count];
   } else {
@@ -1416,9 +1496,9 @@ catch_signal (int sig, void (*handler) (int))
 {
   BOOL screen_p = (tv == screen_table);
   NSString *s = (screen_p
-                 ? [screens objectAtIndex: y]
+                 ? [screen_names objectAtIndex: y]
                  : [savers objectAtIndex: y]);
-  return resource_key_for_name (s, screen_p);
+  return resource_key_for_name (s, screen_p, screen_ids);
 }
 
 
@@ -1432,7 +1512,7 @@ catch_signal (int sig, void (*handler) (int))
 
   NSString *s;
   if (tv == screen_table) {
-    s = [screens objectAtIndex: y];
+    s = [screen_names objectAtIndex: y];
   } else {  // if (tv == saver_table) {
     s = [savers objectAtIndex: y];
   }
@@ -1474,7 +1554,7 @@ catch_signal (int sig, void (*handler) (int))
     sortDescriptorsDidChange: (NSArray *) od
 {
   BOOL screen_p = (tv == screen_table);
-  NSArray *aa = (screen_p ? screens : savers);
+  NSArray *aa = (screen_p ? screen_names : savers);
 
   // Only one column should be sorting at a time.  Surely this is the wrong
   // right way to accomplish this, as I don't know which of the two columns
@@ -1499,7 +1579,7 @@ catch_signal (int sig, void (*handler) (int))
 
       NSMutableDictionary *cc = [[NSMutableDictionary alloc] init];
       for (NSString *s in aa) {
-        NSString *res = resource_key_for_name (s, screen_p);
+        NSString *res = resource_key_for_name (s, screen_p, screen_ids);
         BOOL checked = !get_boolean (res, prefs);
         [cc setObject:[NSNumber numberWithBool: checked] forKey:s];
       }
@@ -1518,8 +1598,8 @@ catch_signal (int sig, void (*handler) (int))
 
   [aa retain];
   if (tv == screen_table) {
-    [screens release];
-    screens = aa;
+    [screen_names release];
+    screen_names = aa;
   } else if (tv == saver_table) {
     [savers release];
     savers = aa;
@@ -1532,7 +1612,7 @@ catch_signal (int sig, void (*handler) (int))
 - (void) selectAllAction:(NSObject *)arg selected:(BOOL)selected
 {
   for (NSString *s in savers) {
-    NSString *res = resource_key_for_name (s, NO);
+    NSString *res = resource_key_for_name (s, NO, screen_ids);
     if (selected)  // checkmark means no "disabled" entry in prefs
       [[prefs defaults] removeObjectForKey: res];
     else
@@ -1564,7 +1644,8 @@ catch_signal (int sig, void (*handler) (int))
 
 - (void) dealloc
 {
-  [screens release];
+  [screen_names release];
+  [screen_ids release];
   [savers release];
   [super dealloc];
 }
index 3b395e88d984ea4eeadd961108abba7a4d75eef0..92d46b4f5d1a3136d647b97f3b95246e07420f85 100644 (file)
@@ -1642,7 +1642,7 @@ gl_check_ver (const struct gl_version *caps,
   jwxyz_window_resized (xdpy);
 
 # if !defined __OPTIMIZE__ || TARGET_IPHONE_SIMULATOR
-  NSLog(@"reshape %.0fx%.0f", new_size.width, new_size.height);
+  NSLog(@"reshape %.0fx%.0f %.1fx", new_size.width, new_size.height, s);
 # endif
 
   // Next time render_x11 is called, run the saver's reshape_cb.
index 28bf0deccce2db9e5472344db8a214e785208779..bbef05fcd2f8146c11e8dc6bbf95c234917889a2 100644 (file)
@@ -23,7 +23,7 @@ version 6.04\
 \pard\pardeftab720
 \cf0 \
 
-\b To install all 240+ screen savers:\
+\b To install all 250+ screen savers:\
 \pard\pardeftab720\li360
 
 \b0 \cf0 \
index e29e8da1c69a4c986936288b150ce796db4cd8e2..ca30251eccca3bf893d4b685f961024bbf6fdf18 100644 (file)
@@ -1,4 +1,4 @@
-/* xscreensaver, Copyright © 1992-2021 Jamie Zawinski <jwz@jwz.org>
+/* xscreensaver, Copyright © 1992-2022 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
@@ -65,10 +65,74 @@ osx_grab_desktop_image (Screen *screen, Window xwindow, Drawable drawable,
 }
 
 
-#else /* macOS 10.5+ */
+#else /* !HAVE_IPHONE */
 
 extern float jwxyz_scale (Window);  /* jwxyzI.h */
 
+static void
+authorize_screen_capture (void)
+{
+  static Bool done_once = False;
+  if (done_once) return;
+  done_once = True;
+
+  /* The following nonsense is intended to get the system to pop up the dialog
+     saying "do you want to allow legacyScreenSaver to be able to record your
+     screen?"  Without the user saying yes to that, we are only able to get
+     the desktop background image instead of a screen shot.  Also this is
+     async, so if that dialog has popped up, the *current* screen grab will
+     still fail.
+
+     To reset answers given to that dialog: "tccutil reset ScreenCapture".
+
+     Sadly, this is not working at all.  If the .saver bundle is launched by
+     SaverTester, the dialog is triggered on behalf of SaverTester, and works.
+     But if it the bundle is launched by the real screen saver, or by System
+     Preferences, the dialog is not triggered.
+
+     Manually dragging "/System/Library/Frameworks/ScreenSaver.framework/
+     PlugIns/legacyScreenSaver.appex" onto the "System Preferences / Security /
+     Privacy / Screen Recording" list makes screen grabbing work, but that's
+     a lot to ask of the end user.  And, oddly, after dragging it there, it
+     does not appear in the list at all (and there's no way to un-check it).
+
+     We can open that preferences pane with
+     "open x-apple.systempreferences:com.apple.preference.security?Privacy_ScreenCapture"
+     but there's no way to auto-add legacyScreenSaver to it, even unchecked.
+  */
+
+# if 1
+  /* CGDisplayStreamRef stream = */  /* Just leak it, I guess? */
+  CGDisplayStreamCreateWithDispatchQueue (CGMainDisplayID(), 
+                                          1, 1, kCVPixelFormatType_32BGRA,
+                                          nil,
+                                          dispatch_get_main_queue(),
+                                          nil);
+  /* I think that if the returned value is nil, it means the screen grab
+     will be returning just the background image instead of the desktop.
+     So in that case we could return False here to go with colorbars.
+     But the desktop background image is still more interesting than
+     colorbars, so let's just use that. */
+
+# elif 0
+  /* This also does not work. */
+  if (@available (macos 10.15, *)) {
+    CGImageRef img =
+      CGWindowListCreateImage (CGRectMake(0, 0, 1, 1),
+                               kCGWindowListOptionOnScreenOnly,
+                               kCGNullWindowID,
+                               kCGWindowImageDefault);
+    CFRelease (img);
+  }
+
+# elif 0
+  /* This also does not work. */
+  if (@available (macos 10.15, *))
+    CGRequestScreenCaptureAccess();
+# endif
+}
+
+
 /* Loads an image into the Drawable, returning once the image is loaded.
  */
 Bool
@@ -81,6 +145,8 @@ osx_grab_desktop_image (Screen *screen, Window xwindow, Drawable drawable,
   int window_x, window_y;
   Window unused;
 
+  authorize_screen_capture();
+
   // Figure out where this window is on the screen.
   //
   XGetWindowAttributes (dpy, xwindow, &xgwa);
@@ -96,44 +162,6 @@ osx_grab_desktop_image (Screen *screen, Window xwindow, Drawable drawable,
   cgrect.size.width  = xgwa.width  / s;
   cgrect.size.height = xgwa.height / s;
 
-  /* The following nonsense is intended to get the system to pop up the dialog
-     saying "do you want to allow legacyScreenSaver to be able to record your
-     screen?"  Without the user saying yes to that, we are only able to get
-     the desktop background image instead of a screen shot.  Also this is
-     async, so if that dialog has popped up, the *current* screen grab will
-     still fail.
-
-     To reset answers given to that dialog: "tccutil reset ScreenCapture".
-
-     Sadly, this is not working at all.  If the .saver bundle is launched by
-     SaverTester, the dialog is triggered on behalf of SaverTester, but it is
-     not triggered on behalf of ScreenSaverEngine or System Preferences.
-
-     Manually dragging "/System/Library/Frameworks/ScreenSaver.framework/
-     PlugIns/legacyScreenSaver.appex" onto the "System Preferences / Security /
-     Privacy / Screen Recording" list makes screen grabbing work, but that's
-     a lot to ask of the end user.  And, oddly, after dragging it there, it
-     does not appear in the list.
-   */
-  {
-    static Bool done_once = False;
-    if (! done_once) {
-      done_once = True;
-      /* CGDisplayStreamRef stream = */  /* Just leak it, I guess? */
-      CGDisplayStreamCreateWithDispatchQueue (CGMainDisplayID(), 
-                                              1, 1, kCVPixelFormatType_32BGRA,
-                                              nil,
-                                              dispatch_get_main_queue(),
-                                              nil);
-      /* I think that if the returned value is nil, it means the screen grab
-         will be returning just the background image instead of the desktop.
-         So in that case we could return False here to go with colorbars.
-         But the desktop background image is still more interesting than
-         colorbars, so let's just use that. */
-    }
-  }
-
-
   CGWindowID windowNumber = (CGWindowID) nsview.window.windowNumber;
 
   /* If a password is required to unlock the screen, a large black
@@ -145,8 +173,8 @@ osx_grab_desktop_image (Screen *screen, Window xwindow, Drawable drawable,
 
      Oct 2016: Surprise, this trick no longer works on MacOS 10.12.  Sigh.
 
-     Nov 2021, macOS 11.6, 12.0: I'm pretty sure none of this works this way
-     any more, and so probably the following clause is no longer necessary?
+     Nov 2021, macOS 11.6, 12.0: This works again.  Without the following
+     clause, we do indeed grab a black image.
    */
   {
     CFArrayRef L = CGWindowListCopyWindowInfo (kCGWindowListOptionOnScreenOnly,
@@ -185,20 +213,7 @@ osx_grab_desktop_image (Screen *screen, Window xwindow, Drawable drawable,
   return True;
 }
 
-
-/* Returns the EXIF rotation property of the image, if any.
- */
-static int
-exif_rotation (const char *filename)
-{
-  /* As of 10.6, NSImage rotates according to EXIF by default:
-     http://developer.apple.com/mac/library/releasenotes/cocoa/appkit.html
-     Prior to that, we had to do it by hand.
-   */
-  return -1;
-}
-
-# endif /* macOS 10.5+ */
+# endif /* !HAVE_IPHONE */
 
 
 
@@ -222,8 +237,7 @@ osx_load_image_file (Screen *screen, Window xwindow, Drawable drawable,
     return False;
 
   jwxyz_draw_NSImage_or_CGImage (DisplayOfScreen (screen), drawable, 
-                                 True, img, geom_ret,
-                                 exif_rotation (filename));
+                                 True, img, geom_ret, -1);
   [img release];
   return True;
 
diff --git a/README b/README
index 53490feb33bb80660c38314ca8fb8af00b29fdd2..3bd28c7dc6ada832dda13bc824c1e4ebdcb303d7 100644 (file)
--- a/README
+++ b/README
@@ -33,14 +33,13 @@ To compile for a Unix system with X11:
         xscreensaver &
         xscreensaver-settings
 
-    There are many compilation dependencies.  The configure script will
-    tell you what is missing.  At the least, you will need development
-    versions of these libraries:
+    There are many compilation dependencies.  The configure script will tell
+    you what is missing.  At the least, you will need development versions of
+    these libraries.  Append "-dev" or "-devel" to most of these:
 
         perl pkg-config gettext intltool libx11 libxext libxi libxt libxft
-        libxinerama libxrandr libxxf86vm libgl libglu libgle libgtk2.0
-        libgdk-pixbuf2.0 libgdk-pixbuf-xlib-2.0 libjpeg libxml2 libpam
-        libsystemd elogind
+        libxinerama libxrandr libxxf86vm libgl libglu libgle libgtk-3-0
+        libgdk-pixbuf2.0 libjpeg libxml2 libpam libsystemd elogind
 
     BSD systems might need gmake instead of make.
 
@@ -70,6 +69,14 @@ Interested in writing a new screen saver?
 Version History
 ===============================================================================
 
+6.05   * X11: Cope with dumb DPMS settings that existed pre-startup.
+       * X11: Silence new Perl warnings from `xscreensaver-getimage-file'.
+       * X11: Fix `sonar' pthreads crash on recent Pi systems.
+       * X11: Removed dependence on `gdk-pixbuf-xlib-2.0'.
+       * X11: GTK 3 is now required.
+       * macOS: Fixed the "Run savers on screens" preference in Random mode
+          on multi-screen M1 systems.
+
 6.04   * New hacks, `nakagin' and `chompytower'.
        * Settings dialog shows diagnostics for bad image folders and feeds.
        * URLs for `imageDirectory' can now point at archive.org collections.
@@ -1738,7 +1745,7 @@ Version History
          the parameters which are normally read as minutes can be specified
          in seconds.
        * Added colormap cycling to `imsmap'.
-       * Made hyper work with K&R compilers.
+       * Made `hyper' work with K&R compilers.
 
 1.14   * Added `orbit' option to `attraction' hack.
        * Added `lock-timeout' option.
@@ -1747,14 +1754,26 @@ Version History
 1.09   * Added demo mode, and locking.
        * Added `maze' hack.
        * Added `norotate' option to `rocks' hack.
+       * Uploaded to export.lcs.mit.edu:contrib/xscreensaver.tar.Z and posted
+         to comp.windows.x.announce, 25-Feb-1993.
+       * Added `hypercube' and `slidescreen' (or they may have been added
+         earlier).
 
 1.05   * Works when run from XDM before anyone logs in.
        * Sped up `imsmap'.
        * Can use `xv' as a slideshow without using up colormap entries while
          the screen is not blanked.
        * Fixed a BadDrawable error in non-XIdle mode.
-       * Added `blitspin' and `imsmap'.
+       * Uploaded to export.lcs.mit.edu:contrib/xsaver.tar.Z and posted to
+         comp.windows.x.announce, 30-Nov-1992.
+
+1.04   * Added `blitspin' and `imsmap' (or they may have been earlier).
+       * Appeared on the X11R5 contrib tape, a mirror of export.lcs.mit.edu,
+         29-Nov-1992.
+
+1.00   * Uploaded to export.lcs.mit.edu:contrib/xsaver.tar.Z and posted to
+         comp.windows.x.announce, 17-Aug-1992.
+       * Initial list of included hacks:
+         `qix', `helix', `rorschach', `attraction', `greynetic', `rocks',
+         `pyro', `hopalong', and `noseguy'.
 
-1.01   * Current list of included hacks is now: `qix', `helix', `rorschach',
-         `attraction', `greynetic', `rocks', `pyro', `hopalong', and
-         `noseguy'.
index 5c7399ac8f1364cb1abdd385c767389c9eac4426..0df0bebbe09bc003beb50cac0bc51938a7b7e2ce 100644 (file)
@@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-7.0.2-all.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-7.4.2-all.zip
index 1fb47690a3d67b28ca0a745841badf7b95808e41..568c0ce37ecfdf008e55e832c4b2e672183fd5ba 100644 (file)
@@ -1,7 +1,7 @@
 /* config.h.in.  Generated from configure.ac by autoheader.  */
 
 
-/* xscreensaver, Copyright © 1991-2021 Jamie Zawinski.
+/* xscreensaver, Copyright © 1991-2022 Jamie Zawinski.
  * Generate this file by running 'configure' rather than editing it by hand.
  */
 
 /* Define this if you have forkpty. */
 #undef HAVE_FORKPTY
 
-/* Define this if you have GDK_Pixbuf. */
+/* Define this if you have GDK-Pixbuf. */
 #undef HAVE_GDK_PIXBUF
 
 /* Define this if you have the gdk_pixbuf_apply_embedded_orientation function
    (gdk-pixbuf 2.12). */
 #undef HAVE_GDK_PIXBUF_APPLY_EMBEDDED_ORIENTATION
 
+/* Define this if you have GDK-Pixbuf-Xlib. */
+#undef HAVE_GDK_PIXBUF_XLIB
+
 /* Define to 1 if you have the `getaddrinfo' function. */
 #undef HAVE_GETADDRINFO
 
 /* Define this if OpenGL supports the OpenGL Shading Language. */
 #undef HAVE_GLSL
 
-/* Define this if you have Gtk */
-#undef HAVE_GTK
-
 /* Define this if you have Gtk 2.x. */
-#undef HAVE_GTK2
+#undef HAVE_GTK
 
 /* Define this for HPUX so-called "Secure Passwords". */
 #undef HAVE_HPUX_PASSWD
index 1b945a137dfa327e65928c8f583c0a30a8dc7a81..c087577ac67c6e5319602d7a062ca0d1d4a36e2c 100755 (executable)
--- a/configure
+++ b/configure
@@ -683,6 +683,7 @@ NEW_LOGIN_COMMAND_P
 NEW_LOGIN_COMMAND
 COMMENT_PAM_CHECK_ACCOUNT
 HAVE_PAM_FAIL_DELAY
+GLIB_COMPILE_RESOURCES
 INSTALL_PAM
 INSTALL_DIRS
 SETCAP_HACKS
@@ -6720,6 +6721,9 @@ printf "%s\n" "$ac_macosx" >&6; }
 #
 ###############################################################################
 
+# Note: In the decades since I wrote this, PKG_CHECK_MODULES came into
+# existence, which could probably simplify the following quite a bit.
+
 if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args.
 set dummy ${ac_tool_prefix}pkg-config; ac_word=$2
@@ -14981,13 +14985,14 @@ gtk_halfassed=no
 if test "$with_gtk" = yes; then
   have_gtk=no
 
+  pkgs=''
   ok="yes"
-  pkg_check_version            gtk+-2.0  2.22.0 ; ac_gtk_version_string="$vers"
-  pkg_check_version         gmodule-2.0  2.0.0
-  pkg_check_version          libxml-2.0  2.4.6
-  pkg_check_version      gdk-pixbuf-2.0  2.0.0
-  pkg_check_version gdk-pixbuf-xlib-2.0  2.0.0
+  pkg_check_version       gtk+-3.0  2.22.0 ; ac_gtk_version_string="$vers"
+  pkg_check_version    gmodule-2.0  2.0.0
+  pkg_check_version     libxml-2.0  2.4.6
+  pkg_check_version gdk-pixbuf-2.0  2.0.0
   have_gtk="$ok"
+  gtk_pkgs="$pkgs"
 
   if test "$have_gtk" = no; then
     if test -n "$ac_gtk_version_string" ; then
@@ -15033,11 +15038,24 @@ printf "%s\n" "$ac_cv_gtk_config_libs" >&6; }
     GTK_LIBS="$GTK_LIBS $ac_gtk_config_libs"
     printf "%s\n" "#define HAVE_GTK 1" >>confdefs.h
 
-    printf "%s\n" "#define HAVE_GTK2 1" >>confdefs.h
-
     printf "%s\n" "#define HAVE_XML 1" >>confdefs.h
 
   fi
+
+  if test "$have_gtk" = yes; then
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for Glib resource compiler" >&5
+printf %s "checking for Glib resource compiler... " >&6; }
+if test ${ac_cv_glib_res+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+  ac_cv_glib_res=`$pkg_config --variable=glib_compile_resources gio-2.0`
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_glib_res" >&5
+printf "%s\n" "$ac_cv_glib_res" >&6; }
+    GLIB_COMPILE_RESOURCES="$ac_cv_glib_res"
+  fi
+
 fi
 
 # Check for the various Gnome help and URL loading programs.
@@ -19016,6 +19034,7 @@ fi
 ###############################################################################
 
 have_gdk_pixbuf=no
+have_gdk_pixbuf_xlib=no
 with_gdk_pixbuf_req=unspecified
 
 # Check whether --with-pixbuf was given.
@@ -19090,11 +19109,10 @@ if test "$with_gdk_pixbuf" = yes; then
 
   pkgs=''
   ok="yes"
-
-  pkg_check_version gdk-pixbuf-2.0      2.0.0
-  pkg_check_version gdk-pixbuf-xlib-2.0 2.0.0
-  pkg_check_version gio-2.0             2.0.0
+  pkg_check_version gdk-pixbuf-2.0  2.0.0
+  pkg_check_version gio-2.0         2.0.0
   have_gdk_pixbuf="$ok"
+  pixbuf_pkgs="$pkgs"
 
   if test "$have_gdk_pixbuf" = yes; then
     { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for gdk-pixbuf includes" >&5
@@ -19128,11 +19146,8 @@ printf "%s\n" "$ac_cv_gdk_pixbuf_config_libs" >&6; }
     #
     ac_save_gdk_pixbuf_CPPFLAGS="$CPPFLAGS"
     CPPFLAGS="$CPPFLAGS $ac_gdk_pixbuf_config_cflags"
-
     have_gdk_pixbuf=no
 
-    # check for header A...
-
   ac_save_CPPFLAGS="$CPPFLAGS"
   if test \! -z "$includedir" ; then
     CPPFLAGS="$CPPFLAGS -I$includedir"
@@ -19146,61 +19161,15 @@ then :
 fi
 
   CPPFLAGS="$ac_save_CPPFLAGS"
-
-    # if that worked, check for header B...
-    if test "$have_gdk_pixbuf" = yes; then
-      have_gdk_pixbuf=no
-      gdk_pixbuf_halfassed=yes
-
-  ac_save_CPPFLAGS="$CPPFLAGS"
-  if test \! -z "$includedir" ; then
-    CPPFLAGS="$CPPFLAGS -I$includedir"
-  fi
-  CPPFLAGS="$CPPFLAGS $X_CFLAGS"
-  CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS`
-  ac_fn_c_check_header_compile "$LINENO" "gdk-pixbuf/gdk-pixbuf-xlib.h" "ac_cv_header_gdk_pixbuf_gdk_pixbuf_xlib_h" "$ac_includes_default"
-if test "x$ac_cv_header_gdk_pixbuf_gdk_pixbuf_xlib_h" = xyes
-then :
-  have_gdk_pixbuf=yes
-                         gdk_pixbuf_halfassed=no
-fi
-
-  CPPFLAGS="$ac_save_CPPFLAGS"
-
-      # yay, it has a new name in Gtk 2.x...
-      if test "$have_gdk_pixbuf" = no; then
-        have_gdk_pixbuf=no
-        gdk_pixbuf_halfassed=yes
-
-  ac_save_CPPFLAGS="$CPPFLAGS"
-  if test \! -z "$includedir" ; then
-    CPPFLAGS="$CPPFLAGS -I$includedir"
-  fi
-  CPPFLAGS="$CPPFLAGS $X_CFLAGS"
-  CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS`
-  ac_fn_c_check_header_compile "$LINENO" "gdk-pixbuf-xlib/gdk-pixbuf-xlib.h" "ac_cv_header_gdk_pixbuf_xlib_gdk_pixbuf_xlib_h" "$ac_includes_default"
-if test "x$ac_cv_header_gdk_pixbuf_xlib_gdk_pixbuf_xlib_h" = xyes
-then :
-  have_gdk_pixbuf=yes
-                           gdk_pixbuf_halfassed=no
-fi
-
-  CPPFLAGS="$ac_save_CPPFLAGS"
-      fi
-    fi
     CPPFLAGS="$ac_save_gdk_pixbuf_CPPFLAGS"
   fi
 
   if test "$have_gdk_pixbuf" = yes; then
     # we have the headers, now check for the libraries
     have_gdk_pixbuf=no
-    gdk_pixbuf_halfassed=yes
-
     { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: checking for gdk_pixbuf usability..." >&5
 printf "%s\n" "checking for gdk_pixbuf usability..." >&6; }
 
-    # library A...
-
   ac_save_CPPFLAGS="$CPPFLAGS"
   ac_save_LDFLAGS="$LDFLAGS"
 #  ac_save_LIBS="$LIBS"
   LDFLAGS="$ac_save_LDFLAGS"
 #  LIBS="$ac_save_LIBS"
 
-    # library B...
-    if test "$have_gdk_pixbuf" = yes; then
-      have_gdk_pixbuf=no
-
-  ac_save_CPPFLAGS="$CPPFLAGS"
-  ac_save_LDFLAGS="$LDFLAGS"
-#  ac_save_LIBS="$LIBS"
-
-  if test \! -z "$includedir" ; then
-    CPPFLAGS="$CPPFLAGS -I$includedir"
-  fi
-  # note: $X_CFLAGS includes $x_includes
-  CPPFLAGS="$CPPFLAGS $X_CFLAGS"
-
-  if test \! -z "$libdir" ; then
-    LDFLAGS="$LDFLAGS -L$libdir"
-  fi
-  # note: $X_LIBS includes $x_libraries
-  LDFLAGS="$LDFLAGS $X_LIBS $X_EXTRA_LIBS"
-
-  CPPFLAGS=`eval eval eval eval eval eval eval eval eval echo $CPPFLAGS`
-  LDFLAGS=`eval eval eval eval eval eval eval eval eval echo $LDFLAGS`
-  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for gdk_pixbuf_xlib_init in -lc" >&5
-printf %s "checking for gdk_pixbuf_xlib_init in -lc... " >&6; }
-if test ${ac_cv_lib_c_gdk_pixbuf_xlib_init+y}
-then :
-  printf %s "(cached) " >&6
-else $as_nop
-  ac_check_lib_save_LIBS=$LIBS
-LIBS="-lc $ac_gdk_pixbuf_config_libs -lX11 -lXext -lm $LIBS"
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-/* Override any GCC internal prototype to avoid an error.
-   Use char because int might match the return type of a GCC
-   builtin and then its argument prototype would still apply.  */
-char gdk_pixbuf_xlib_init ();
-int
-main (void)
-{
-return gdk_pixbuf_xlib_init ();
-  ;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"
-then :
-  ac_cv_lib_c_gdk_pixbuf_xlib_init=yes
-else $as_nop
-  ac_cv_lib_c_gdk_pixbuf_xlib_init=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.beam \
-    conftest$ac_exeext conftest.$ac_ext
-LIBS=$ac_check_lib_save_LIBS
-fi
-{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_c_gdk_pixbuf_xlib_init" >&5
-printf "%s\n" "$ac_cv_lib_c_gdk_pixbuf_xlib_init" >&6; }
-if test "x$ac_cv_lib_c_gdk_pixbuf_xlib_init" = xyes
-then :
-  have_gdk_pixbuf=yes
-                      gdk_pixbuf_halfassed=no
-fi
-
-  CPPFLAGS="$ac_save_CPPFLAGS"
-  LDFLAGS="$ac_save_LDFLAGS"
-#  LIBS="$ac_save_LIBS"
-
-    fi
   fi
 
   if test "$have_gdk_pixbuf" = yes; then
   fi
 fi
 
+# Now that we have checked for gdk_pixbuf, check for gdk_pixbuf_xlib
+# separately, since it has fallen out of fashion in recent years.
+#
+#have_gdk_pixbuf_xlib=no
+#gdk_pixbuf_xlib_halfassed=no
+#if test "$with_gdk_pixbuf" = yes -a "$have_gdk_pixbuf" = yes; then
+#
+#  have_gdk_pixbuf_xlib=no
+#  pkgs="$pixbuf_pkgs"
+#  ok="yes"
+#  pkg_check_version gdk-pixbuf-xlib-2.0 2.0.0
+#  pkg_check_version gdk-pixbuf-2.0      2.0.0
+#  have_gdk_pixbuf_xlib="$ok"
+#  pixbuf_xlib_pkgs="$pkgs"
+#
+#  if test "$have_gdk_pixbuf_xlib" = yes; then
+#    AC_CACHE_CHECK([for gdk-pixbuf-xlib includes],
+#                   ac_cv_gdk_pixbuf_xlib_config_cflags,
+#            [ac_cv_gdk_pixbuf_xlib_config_cflags=`$pkg_config --cflags $pkgs`])
+#    AC_CACHE_CHECK([for gdk-pixbuf-xlib libs],
+#                   ac_cv_gdk_pixbuf_xlib_config_libs,
+#               [ac_cv_gdk_pixbuf_xlib_config_libs=`$pkg_config --libs $pkgs`])
+#  fi
+#
+#  ac_gdk_pixbuf_xlib_config_cflags=$ac_cv_gdk_pixbuf_xlib_config_cflags
+#  ac_gdk_pixbuf_xlib_config_libs=$ac_cv_gdk_pixbuf_xlib_config_libs
+#
+#  if test "$have_gdk_pixbuf_xlib" = yes; then
+#    #
+#    # we appear to have pixbuf_xlib; check for headers/libs to be sure.
+#    #
+#    ac_save_gdk_pixbuf_xlib_CPPFLAGS="$CPPFLAGS"
+#    CPPFLAGS="$CPPFLAGS $ac_gdk_pixbuf_xlib_config_cflags"
+#    have_gdk_pixbuf_xlib=no
+#    gdk_pixbuf_xlib_halfassed=yes
+#    AC_CHECK_X_HEADER(gdk-pixbuf-xlib/gdk-pixbuf-xlib.h,
+#                      [have_gdk_pixbuf_xlib=yes
+#                       gdk_pixbuf_xlib_halfassed=no])
+#    CPPFLAGS="$ac_save_gdk_pixbuf_xlib_CPPFLAGS"
+#  fi
+#
+#  if test "$have_gdk_pixbuf_xlib" = yes; then
+#    # we have the headers, now check for the libraries
+#    have_gdk_pixbuf_xlib=no
+#    gdk_pixbuf_xlib_halfassed=yes
+#
+#    AC_MSG_RESULT(checking for gdk_pixbuf_xlib usability...)
+#    AC_CHECK_X_LIB(c, gdk_pixbuf_xlib_init,
+#                   [have_gdk_pixbuf_xlib=yes
+#                    gdk_pixbuf_xlib_halfassed=no],,
+#                    $ac_gdk_pixbuf_xlib_config_libs -lX11 -lXext -lm)
+#  fi
+#
+#  if test "$have_gdk_pixbuf_xlib" = yes; then
+#    INCLUDES="$INCLUDES $ac_gdk_pixbuf_xlib_config_cflags"
+#    PNG_LIBS="$ac_gdk_pixbuf_xlib_config_libs"
+#    AC_DEFINE(HAVE_GDK_PIXBUF_XLIB)
+#  else
+#    AC_MSG_RESULT(checking for gdk_pixbuf_xlib usability... no)
+#  fi
+#fi
+
 ###############################################################################
 #
 #       Check for -lXft
@@ -21799,13 +21762,6 @@ if test "$gtk_halfassed" != no ; then
   warnL "GTK was found, but $gtk_halfassed_lib was not, so GTK"
   warn2 "can't be used."
   CONF_STATUS=1
-
-  if ( echo $gtk_halfassed_lib | grep -qi pixbuf-xlib ); then
-    echo ''
-    warn2 "Recently, some distros have stopped distributing"
-    warn2 "gdk-pixbuf-xlib entirely.  So good luck with that."
-  fi
-
 fi
 
 motif_warn2() {
@@ -21890,8 +21846,7 @@ if test "$with_gdk_pixbuf_req" = yes  -a "$have_gdk_pixbuf" = no; then
   CONF_STATUS=1
 fi
 
-if test "$have_gdk_pixbuf" = no -o "$gdk_pixbuf_halfassed" = yes || \
-   test "$have_gdk_pixbuf" = no ; then
+if test "$have_gdk_pixbuf" = no -o "$gdk_pixbuf_halfassed" = yes ; then
 
   if test "$with_gdk_pixbuf_req" = yes ; then
     true
@@ -21913,6 +21868,25 @@ if test "$have_gdk_pixbuf" = no -o "$gdk_pixbuf_halfassed" = yes || \
   warn2 'configure.'
 fi
 
+#if test "$have_gdk_pixbuf" = yes -a "$have_gdk_pixbuf_xlib" = no ; then
+#
+#  warnL 'The GDK-Pixbuf-Xlib library was not found.'
+#
+#  if test "$gdk_pixbuf_xlib_halfassed" = yes ; then halfassery ; fi
+#  if test "$have_png" = yes ; then
+#    echo ''
+#    warn2 'The PNG library is being used instead.'
+#  fi
+#
+#  echo ''
+#  warn2 'Some of the demos will not use images as much as they could.'
+#  warn2 'You should consider installing GDK-Pixbuf-Xlib and re-running'
+#  warn2 'configure.'
+#  echo ''
+#  warn2 "Recently, some distros have stopped distributing"
+#  warn2 "GDK-Pixbuf-Xlib entirely.  So good luck with that."
+#fi
+
 if test "$have_jpeg" = no ; then
   if test "$with_jpeg_req" = yes ; then
     warnL 'Use of libjpeg was requested, but it was not found.'
index 1c143b24516aff12da8f4be29d1a2030706d14bc..9998d0518f8635b1f93850d2b48050ed76f4c0c4 100644 (file)
@@ -32,7 +32,7 @@ fi
 ###############################################################################
 
 AH_TOP([
-/* xscreensaver, Copyright © 1991-2021 Jamie Zawinski.
+/* xscreensaver, Copyright © 1991-2022 Jamie Zawinski.
  * Generate this file by running 'configure' rather than editing it by hand.
  */
 ])
@@ -163,15 +163,15 @@ AH_TEMPLATE([HAVE_XMCOMBOBOX],
            [Define this if you have the XmComboBox Motif 2.0 widget.])
 
 AH_TEMPLATE([HAVE_GTK],
-            [Define this if you have Gtk])
-AH_TEMPLATE([HAVE_GTK2],
             [Define this if you have Gtk 2.x.])
 
 AH_TEMPLATE([HAVE_XML],
             [Define this if you have the XML library.])
 
 AH_TEMPLATE([HAVE_GDK_PIXBUF],
-           [Define this if you have GDK_Pixbuf.])
+           [Define this if you have GDK-Pixbuf.])
+AH_TEMPLATE([HAVE_GDK_PIXBUF_XLIB],
+           [Define this if you have GDK-Pixbuf-Xlib.])
 
 AH_TEMPLATE([HAVE_GDK_PIXBUF_APPLY_EMBEDDED_ORIENTATION],
            [Define this if you have the gdk_pixbuf_apply_embedded_orientation
@@ -1127,6 +1127,9 @@ AC_MSG_RESULT($ac_macosx)
 #
 ###############################################################################
 
+# Note: In the decades since I wrote this, PKG_CHECK_MODULES came into
+# existence, which could probably simplify the following quite a bit.
+
 AC_PATH_TOOL(pkg_config, pkg-config)
 
 if test -z "$pkg_config" ; then
@@ -2791,13 +2794,14 @@ gtk_halfassed=no
 if test "$with_gtk" = yes; then
   have_gtk=no
   
+  pkgs=''
   ok="yes"
-  pkg_check_version            gtk+-2.0  2.22.0 ; ac_gtk_version_string="$vers"
-  pkg_check_version         gmodule-2.0  2.0.0
-  pkg_check_version          libxml-2.0  2.4.6
-  pkg_check_version      gdk-pixbuf-2.0  2.0.0
-  pkg_check_version gdk-pixbuf-xlib-2.0  2.0.0
+  pkg_check_version       gtk+-3.0  2.22.0 ; ac_gtk_version_string="$vers"
+  pkg_check_version    gmodule-2.0  2.0.0
+  pkg_check_version     libxml-2.0  2.4.6
+  pkg_check_version gdk-pixbuf-2.0  2.0.0
   have_gtk="$ok"
+  gtk_pkgs="$pkgs"
 
   if test "$have_gtk" = no; then
     if test -n "$ac_gtk_version_string" ; then
@@ -2826,9 +2830,15 @@ if test "$with_gtk" = yes; then
     INCLUDES="$INCLUDES $ac_gtk_config_cflags"
     GTK_LIBS="$GTK_LIBS $ac_gtk_config_libs"
     AC_DEFINE(HAVE_GTK)
-    AC_DEFINE(HAVE_GTK2)
     AC_DEFINE(HAVE_XML)
   fi
+
+  if test "$have_gtk" = yes; then
+    AC_CACHE_CHECK([for Glib resource compiler], ac_cv_glib_res,
+     [ac_cv_glib_res=`$pkg_config --variable=glib_compile_resources gio-2.0`])
+    GLIB_COMPILE_RESOURCES="$ac_cv_glib_res"
+  fi
+
 fi
 
 
@@ -3779,6 +3789,7 @@ fi
 ###############################################################################
 
 have_gdk_pixbuf=no
+have_gdk_pixbuf_xlib=no
 with_gdk_pixbuf_req=unspecified
 AC_ARG_WITH(pixbuf,
 [  --with-pixbuf           Include support for the GDK-Pixbuf library, which
@@ -3809,11 +3820,10 @@ if test "$with_gdk_pixbuf" = yes; then
 
   pkgs=''
   ok="yes"
-
-  pkg_check_version gdk-pixbuf-2.0      2.0.0
-  pkg_check_version gdk-pixbuf-xlib-2.0 2.0.0
-  pkg_check_version gio-2.0             2.0.0
+  pkg_check_version gdk-pixbuf-2.0  2.0.0
+  pkg_check_version gio-2.0         2.0.0
   have_gdk_pixbuf="$ok"
+  pixbuf_pkgs="$pkgs"
 
   if test "$have_gdk_pixbuf" = yes; then
     AC_CACHE_CHECK([for gdk-pixbuf includes], ac_cv_gdk_pixbuf_config_cflags,
@@ -3832,50 +3842,17 @@ if test "$with_gdk_pixbuf" = yes; then
     #
     ac_save_gdk_pixbuf_CPPFLAGS="$CPPFLAGS"
     CPPFLAGS="$CPPFLAGS $ac_gdk_pixbuf_config_cflags"
-
     have_gdk_pixbuf=no
-
-    # check for header A...
     AC_CHECK_X_HEADER(gdk-pixbuf/gdk-pixbuf.h, [have_gdk_pixbuf=yes])
-
-    # if that worked, check for header B...
-    if test "$have_gdk_pixbuf" = yes; then
-      have_gdk_pixbuf=no
-      gdk_pixbuf_halfassed=yes
-      AC_CHECK_X_HEADER(gdk-pixbuf/gdk-pixbuf-xlib.h,
-                        [have_gdk_pixbuf=yes
-                         gdk_pixbuf_halfassed=no])
-
-      # yay, it has a new name in Gtk 2.x...
-      if test "$have_gdk_pixbuf" = no; then
-        have_gdk_pixbuf=no
-        gdk_pixbuf_halfassed=yes
-        AC_CHECK_X_HEADER(gdk-pixbuf-xlib/gdk-pixbuf-xlib.h,
-                          [have_gdk_pixbuf=yes
-                           gdk_pixbuf_halfassed=no])
-      fi
-    fi
     CPPFLAGS="$ac_save_gdk_pixbuf_CPPFLAGS"
   fi
 
   if test "$have_gdk_pixbuf" = yes; then
     # we have the headers, now check for the libraries
     have_gdk_pixbuf=no
-    gdk_pixbuf_halfassed=yes
-
     AC_MSG_RESULT(checking for gdk_pixbuf usability...)
-
-    # library A...
     AC_CHECK_X_LIB(c, gdk_pixbuf_new_from_file, [have_gdk_pixbuf=yes],,
                    $ac_gdk_pixbuf_config_libs -lX11 -lXext -lm)
-    # library B...
-    if test "$have_gdk_pixbuf" = yes; then
-      have_gdk_pixbuf=no
-      AC_CHECK_X_LIB(c, gdk_pixbuf_xlib_init,
-                     [have_gdk_pixbuf=yes
-                      gdk_pixbuf_halfassed=no],,
-                     $ac_gdk_pixbuf_config_libs -lX11 -lXext -lm)
-    fi
   fi
 
   if test "$have_gdk_pixbuf" = yes; then
@@ -3894,6 +3871,69 @@ if test "$with_gdk_pixbuf" = yes; then
 fi
 
 
+# Now that we have checked for gdk_pixbuf, check for gdk_pixbuf_xlib
+# separately, since it has fallen out of fashion in recent years.
+#
+#have_gdk_pixbuf_xlib=no
+#gdk_pixbuf_xlib_halfassed=no
+#if test "$with_gdk_pixbuf" = yes -a "$have_gdk_pixbuf" = yes; then
+#
+#  have_gdk_pixbuf_xlib=no
+#  pkgs="$pixbuf_pkgs"
+#  ok="yes"
+#  pkg_check_version gdk-pixbuf-xlib-2.0 2.0.0
+#  pkg_check_version gdk-pixbuf-2.0      2.0.0
+#  have_gdk_pixbuf_xlib="$ok"
+#  pixbuf_xlib_pkgs="$pkgs"
+#
+#  if test "$have_gdk_pixbuf_xlib" = yes; then
+#    AC_CACHE_CHECK([for gdk-pixbuf-xlib includes],
+#                   ac_cv_gdk_pixbuf_xlib_config_cflags,
+#            [ac_cv_gdk_pixbuf_xlib_config_cflags=`$pkg_config --cflags $pkgs`])
+#    AC_CACHE_CHECK([for gdk-pixbuf-xlib libs],
+#                   ac_cv_gdk_pixbuf_xlib_config_libs,
+#               [ac_cv_gdk_pixbuf_xlib_config_libs=`$pkg_config --libs $pkgs`])
+#  fi
+#
+#  ac_gdk_pixbuf_xlib_config_cflags=$ac_cv_gdk_pixbuf_xlib_config_cflags
+#  ac_gdk_pixbuf_xlib_config_libs=$ac_cv_gdk_pixbuf_xlib_config_libs
+#
+#  if test "$have_gdk_pixbuf_xlib" = yes; then
+#    #
+#    # we appear to have pixbuf_xlib; check for headers/libs to be sure.
+#    #
+#    ac_save_gdk_pixbuf_xlib_CPPFLAGS="$CPPFLAGS"
+#    CPPFLAGS="$CPPFLAGS $ac_gdk_pixbuf_xlib_config_cflags"
+#    have_gdk_pixbuf_xlib=no
+#    gdk_pixbuf_xlib_halfassed=yes
+#    AC_CHECK_X_HEADER(gdk-pixbuf-xlib/gdk-pixbuf-xlib.h,
+#                      [have_gdk_pixbuf_xlib=yes
+#                       gdk_pixbuf_xlib_halfassed=no])
+#    CPPFLAGS="$ac_save_gdk_pixbuf_xlib_CPPFLAGS"
+#  fi
+#
+#  if test "$have_gdk_pixbuf_xlib" = yes; then
+#    # we have the headers, now check for the libraries
+#    have_gdk_pixbuf_xlib=no
+#    gdk_pixbuf_xlib_halfassed=yes
+#
+#    AC_MSG_RESULT(checking for gdk_pixbuf_xlib usability...)
+#    AC_CHECK_X_LIB(c, gdk_pixbuf_xlib_init,
+#                   [have_gdk_pixbuf_xlib=yes
+#                    gdk_pixbuf_xlib_halfassed=no],,
+#                    $ac_gdk_pixbuf_xlib_config_libs -lX11 -lXext -lm)
+#  fi
+#
+#  if test "$have_gdk_pixbuf_xlib" = yes; then
+#    INCLUDES="$INCLUDES $ac_gdk_pixbuf_xlib_config_cflags"
+#    PNG_LIBS="$ac_gdk_pixbuf_xlib_config_libs"
+#    AC_DEFINE(HAVE_GDK_PIXBUF_XLIB)
+#  else
+#    AC_MSG_RESULT(checking for gdk_pixbuf_xlib usability... no)
+#  fi
+#fi
+
+
 ###############################################################################
 #
 #       Check for -lXft
@@ -4306,6 +4346,7 @@ AC_SUBST(SETUID_HACKS)
 AC_SUBST(SETCAP_HACKS)
 AC_SUBST(INSTALL_DIRS)
 AC_SUBST(INSTALL_PAM)
+AC_SUBST(GLIB_COMPILE_RESOURCES)
 AC_SUBST(HAVE_PAM_FAIL_DELAY)
 AC_SUBST(COMMENT_PAM_CHECK_ACCOUNT)
 AC_SUBST(NEW_LOGIN_COMMAND)
@@ -4528,13 +4569,6 @@ if test "$gtk_halfassed" != no ; then
   warnL "GTK was found, but $gtk_halfassed_lib was not, so GTK"
   warn2 "can't be used."
   CONF_STATUS=1
-
-  if ( echo $gtk_halfassed_lib | grep -qi pixbuf-xlib ); then
-    echo ''
-    warn2 "Recently, some distros have stopped distributing"
-    warn2 "gdk-pixbuf-xlib entirely.  So good luck with that."
-  fi
-
 fi
 
 motif_warn2() {
@@ -4621,8 +4655,7 @@ if test "$with_gdk_pixbuf_req" = yes  -a "$have_gdk_pixbuf" = no; then
   CONF_STATUS=1
 fi
 
-if test "$have_gdk_pixbuf" = no -o "$gdk_pixbuf_halfassed" = yes || \
-   test "$have_gdk_pixbuf" = no ; then
+if test "$have_gdk_pixbuf" = no -o "$gdk_pixbuf_halfassed" = yes ; then
 
   if test "$with_gdk_pixbuf_req" = yes ; then
     true
@@ -4645,6 +4678,26 @@ if test "$have_gdk_pixbuf" = no -o "$gdk_pixbuf_halfassed" = yes || \
 fi
 
 
+#if test "$have_gdk_pixbuf" = yes -a "$have_gdk_pixbuf_xlib" = no ; then
+#
+#  warnL 'The GDK-Pixbuf-Xlib library was not found.'
+#
+#  if test "$gdk_pixbuf_xlib_halfassed" = yes ; then halfassery ; fi
+#  if test "$have_png" = yes ; then
+#    echo ''
+#    warn2 'The PNG library is being used instead.'
+#  fi
+#
+#  echo ''
+#  warn2 'Some of the demos will not use images as much as they could.'
+#  warn2 'You should consider installing GDK-Pixbuf-Xlib and re-running'
+#  warn2 'configure.'
+#  echo ''
+#  warn2 "Recently, some distros have stopped distributing"
+#  warn2 "GDK-Pixbuf-Xlib entirely.  So good luck with that."
+#fi
+
+
 if test "$have_jpeg" = no ; then
   if test "$with_jpeg_req" = yes ; then
     warnL 'Use of libjpeg was requested, but it was not found.'
diff --git a/driver/.gdbinit b/driver/.gdbinit
deleted file mode 100644 (file)
index a585259..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-# If you're debugging xscreensaver and you are running a virtual root window
-# manager, you'd better let the process handle these signals: it remaps the
-# virtual root window when they arrive.  If you don't do this, your window
-# manager will be hosed.
-#
-# Also, gdb copes badly with breakpoints in functions that are called on the
-# other side of a fork().  The Trace/BPT traps cause the spawned process to
-# die.
-#
-#handle 1 pass nostop
-#handle 3 pass nostop
-#handle 4 pass nostop
-#handle 6 pass nostop
-#handle 7 pass nostop
-#handle 8 pass nostop
-#handle 9 pass nostop
-#handle 10 pass nostop
-#handle 11 pass nostop
-#handle 12 pass nostop
-#handle 13 pass nostop
-#handle 15 pass nostop
-#handle 19 pass nostop
-set env MallocGuardEdges 1
-set env MallocPreScribble 1
-set env MallocScribble 1
-b exit
-set args -debug
index e1fa1b22f1524eaa7155ab2e31397f8c9bd74c50..c25494acd24221364c08b2812a2691e97fbaf9cd 100644 (file)
@@ -30,7 +30,8 @@ GTK_DATADIR   = @GTK_DATADIR@
 GTK_APPDIR     = $(GTK_DATADIR)/applications
 GTK_ICONDIR    = $(GTK_DATADIR)/pixmaps
 GTK_SHAREDIR   = $(GTK_DATADIR)/xscreensaver
-GTK_UIDIR      = $(GTK_SHAREDIR)/ui
+UPDATE_ICON_CACHE = gtk-update-icon-cache
+GLIB_COMPILE_RESOURCES = @GLIB_COMPILE_RESOURCES@
 
 HACKDIR                = @HACKDIR@
 HACK_CONF_DIR  = @HACK_CONF_DIR@
@@ -84,7 +85,6 @@ PAM_CONF      = $(PAM_ROOT)/pam.conf
 
 ICON_SRC        = $(UTILS_SRC)/images
 LOGO           = $(ICON_SRC)/logo-512.png
-GTK_ICONS      = $(ICON_SRC)/screensaver-*.png
 
 UTILS_SRC      = $(srcdir)/../utils
 UTILS_BIN      = ../utils
@@ -159,7 +159,7 @@ AUTH_OBJS_1 = dialog.o passwd.o setuid.o \
                  $(UTILS_BIN)/logo.o \
                  $(UTILS_BIN)/minixpm.o
 AUTH_LIBS      = $(LIBS_PRE) $(XFT_LIBS) $(XINPUT_LIBS) $(XINERAMA_LIBS) \
-                 @SAVER_LIBS@ -lXt -lX11 -lXext -lXi \
+                 $(XDPMS_LIBS) @SAVER_LIBS@ -lXt -lX11 -lXext -lXi \
                  @PASSWD_LIBS@ $(LIBS_POST) $(INTL_LIBS)
 
 SYSTEMD_DEFS   = 
@@ -174,11 +174,10 @@ CMD_LIBS  = $(LIBS_PRE) $(XINPUT_LIBS) -lX11 -lXext $(LIBS_POST)
 
 GTK_DEFS       = -DHACK_CONFIGURATION_PATH='"$(HACK_CONF_DIR)"' \
                  -DDEFAULT_PATH_PREFIX='"@HACKDIR@"' \
-                 -DDEFAULT_ICONDIR='"$(GTK_UIDIR)"' \
                  -DLOCALEDIR=\"$(localedir)\" \
                  -I$(ICON_SRC)
 GTK_SRCS       = demo-Gtk.c demo-Gtk-conf.c
-GTK_OBJS       = demo-Gtk.o demo-Gtk-conf.o \
+GTK_OBJS       = demo-Gtk.o demo-Gtk-conf.o demo-Gtk-resources.o \
                  blurb.o exec.o prefs.o prefsw.o dpms.o remote.o screens.o \
                  clientmsg.o atoms.o \
                  $(UTILS_BIN)/xmu.o \
@@ -229,8 +228,8 @@ MENB                = xscreensaver-gfx.man xscreensaver-auth.man \
 
 EXTRAS         = README Makefile.in \
                  XScreenSaver.ad.in XScreenSaver-Xm.ad xscreensaver.pam.in \
-                 xscreensaver.ui xscreensaver-settings.desktop.in \
-                 xscreensaver.desktop.in xscreensaver.service.in .gdbinit
+                 demo.ui prefs.ui gresource.xml xscreensaver.desktop.in \
+                 xscreensaver-settings.desktop.in xscreensaver.service.in
 
 TARFILES       = $(DAEMON_SRCS) $(GFX_SRCS) $(AUTH_SRCS) $(SYSTEMD_SRCS) \
                  $(CMD_SRCS) $(GTK_SRCS) $(MOTIF_SRCS) $(PWENT_SRCS) \
@@ -536,6 +535,10 @@ install-gnome:: xscreensaver.desktop xscreensaver-settings.desktop
 
 # xscreensaver.service
 # into /usr/share/xscreensaver/
+# But maybe it should instead be installed as:
+# $(prefix)/share/dbus-1/system-services/org.jwz.xscreensaver.service
+# Or would that make it be enabled by default?
+#
 install-gnome:: xscreensaver.service
        @if [ ! -d "$(install_prefix)$(GTK_SHAREDIR)" ]; then                 \
           echo $(INSTALL_DIRS) "$(install_prefix)$(GTK_SHAREDIR)"           ;\
@@ -560,55 +563,21 @@ install-gnome:: $(LOGO)
                  $(install_prefix)$(GTK_ICONDIR)/$$target                   ;\
         fi
 
-# ../utils/images/screensaver-*.png
-# into /usr/share/xscreensaver/ui/
-install-gnome::
-       @if [ "$(GTK_DATADIR)" != "" ]; then                                  \
-           if [ ! -d "$(install_prefix)$(GTK_UIDIR)" ]; then                  \
-             echo $(INSTALL_DIRS) "$(install_prefix)$(GTK_UIDIR)"           ;\
-                  $(INSTALL_DIRS) "$(install_prefix)$(GTK_UIDIR)"           ;\
-           fi                                                                ;\
-          for target in $(GTK_ICONS) ; do                                    \
-            dest=`echo $$target | sed 's@^.*/@@'`                           ;\
-            echo $(INSTALL_DATA) $$target                                    \
-                 $(install_prefix)$(GTK_UIDIR)/$$dest                       ;\
-                 $(INSTALL_DATA) $$target                                    \
-                 $(install_prefix)$(GTK_UIDIR)/$$dest                       ;\
-          done                                                              ;\
-        fi
-
-# xscreensaver.ui
-# into /usr/share/xscreensaver/ui/
-install-gnome:: xscreensaver.ui
-       @if [ "$(GTK_DATADIR)" != "" ]; then                                  \
-         if [ ! -d "$(install_prefix)$(GTK_UIDIR)" ]; then                   \
-           echo $(INSTALL_DIRS) "$(install_prefix)$(GTK_UIDIR)"             ;\
-                $(INSTALL_DIRS) "$(install_prefix)$(GTK_UIDIR)"             ;\
-         fi                                                                 ;\
-         target=xscreensaver.ui                                             ;\
-         echo $(INSTALL_DATA) $(srcdir)/$$target                             \
-           $(install_prefix)$(GTK_UIDIR)/$$target                           ;\
-         if   $(INSTALL_DATA) $(srcdir)/$$target                             \
-           $(install_prefix)$(GTK_UIDIR)/$$target                           ;\
-           then true                                                        ;\
-          else                                                                \
-           e=echo ;                                                          \
- $$e ""                                                                      ;\
- $$e "  ####################################################################";\
- $$e "  Warning: unable to install $$target into"                           ;\
- $$e "           $(install_prefix)$(GTK_UIDIR)/."                           ;\
- $$e "           Without this file, xscreensaver-settings will not"          ;\
- $$e "           be able to run properly."                                   ;\
- $$e "  ####################################################################";\
- $$e ""                                                                      ;\
-             exit 1 ;                                                         \
-          fi ;                                                               \
-        fi
-
 install-gnome:: uninstall-old-gnome-icons
-       -update-icon-caches $(install_prefix)$(GTK_DATADIR)/icons
-       -update-icon-caches $(install_prefix)$(GTK_ICONDIR)
-#      -update-icon-caches $(install_prefix)$(GTK_DATADIR)/pixmaps
+install-gnome:: update-icon-caches
+
+update-icon-caches::
+       @for f in /usr/share/icons/index.theme                                \
+                 /usr/share/icons/*/index.theme                              \
+                 /usr/share/pixmaps/index.theme                              \
+                 /usr/share/pixmaps/*/index.theme                            \
+        ; do                                                                 \
+          if [ -f $$f ]; then                                                \
+            f=`dirname $$f`                                                 ;\
+            echo $(UPDATE_ICON_CACHE) --force --quiet $$f                   ;\
+                 $(UPDATE_ICON_CACHE) --force --quiet $$f                   ;\
+          fi                                                                ;\
+        done
 
 # xscreensaver.desktop
 # xscreensaver-settings.desktop
@@ -620,14 +589,14 @@ uninstall-gnome::
            echo rm -f $(install_prefix)$(GTK_APPDIR)/$$old                  ;\
                 rm -f $(install_prefix)$(GTK_APPDIR)/$$old                  ;\
          fi                                                                 ;\
-         for f in xscreensaver.desktop xscreensaver-settings.desktop; do    ;\
+         for f in xscreensaver.desktop xscreensaver-settings.desktop; do     \
            echo rm -f $(install_prefix)$(GTK_APPDIR)/$$f                    ;\
                 rm -f $(install_prefix)$(GTK_APPDIR)/$$f                    ;\
          done                                                               ;\
        fi
 
-# xscreensaver.xpm
-# into /usr/share/pixmaps/
+# xscreensaver.xpm (pre-2022)
+# from /usr/share/pixmaps/
 uninstall-gnome::
        @if [ "$(GTK_ICONDIR)" != "" ]; then                                  \
          target=xscreensaver.xpm                                            ;\
@@ -635,16 +604,12 @@ uninstall-gnome::
               rm -f $(install_prefix)$(GTK_ICONDIR)/$$target                ;\
         fi
 
-# ../utils/images/screensaver-*.png
-# into /usr/share/xscreensaver/ui/
+# /usr/share/xscreensaver/ui/*.png and *.ui no longer used as of 2022, 6.05.
 uninstall-gnome::
-       @if [ "$(GTK_DATADIR)" != "" ]; then                                  \
-          for target in $(GTK_ICONS) ; do                                    \
-            dest=`echo $$target | sed 's@^.*/@@'`                           ;\
-            echo rm -f $(install_prefix)$(GTK_UIDIR)/$$dest                 ;\
-                 rm -f $(install_prefix)$(GTK_UIDIR)/$$dest                 ;\
-          done                                                              ;\
-        fi
+       @if [ "$(GTK_ICONDIR)" != "" ]; then                                  \
+         echo rm -rf $(install_prefix)$(GTK_SHAREDIR)/ui                    ;\
+              rm -rf $(install_prefix)$(GTK_SHAREDIR)/ui                    ;\
+        fi
 
 # What is all this crap with the wrong logo?
 # /usr/share/icons/nuoveXT2/16x16/apps/xscreensaver.png through
@@ -663,20 +628,7 @@ uninstall-old-gnome-icons::
           fi                                                                ;\
         done
 
-# xscreensaver.ui
-# into /usr/share/xscreensaver/ui/
-uninstall-gnome::
-       @if [ "$(GTK_DATADIR)" != "" ]; then                                  \
-         for target in xscreensaver.ui xscreensaver-demo.ui ; do             \
-           echo rm -f $(install_prefix)$(GTK_UIDIR)/$$target                ;\
-                rm -f $(install_prefix)$(GTK_UIDIR)/$$target                ;\
-          done                                                              ;\
-         rmdir "$(GTK_UIDIR)"                                               ;\
-         rmdir "$(GTK_DATADIR)/xscreensaver"                                ;\
-         exit 0                                                             ;\
-        fi
-
-# /usr/share/xscreensaver/glade/ no longer used
+# /usr/share/xscreensaver/glade/ no longer used as of 2022.
 uninstall-gnome::
        -rm -rf $(GTK_DATADIR)/xscreensaver/glade
 
@@ -907,6 +859,14 @@ demo-Gtk.o: demo-Gtk.c
 demo-Gtk-conf.o: demo-Gtk-conf.c
        $(CC) -c $(CC_ALL) $(GTK_DEFS) $<
 
+GCRARGS = --sourcedir=$(srcdir) --sourcedir=$(ICON_SRC) --generate-source
+demo-Gtk-resources.c: gresource.xml demo.ui prefs.ui
+       $(GLIB_COMPILE_RESOURCES) gresource.xml --target=$@ $(GCRARGS)
+
+GTK_WARNINGS = -Wno-long-long -Wno-c99-extensions -Wno-pedantic
+demo-Gtk-resources.o: demo-Gtk-resources.c
+       $(CC) -c $(CC_ALL) $(GTK_DEFS) $(GTK_WARNINGS) $<
+
 xscreensaver-settings-Gtk: $(GTK_OBJS)
        $(CC) $(LDFLAGS) -o $@ $(GTK_OBJS) $(GTK_LIBS)
 
index b726096d24d6c80ff94251f8d70e40fb4ca2b8df..8499204c1463a9676bd18f4e659bc04de9a1f877 100644 (file)
 "*textURL:             https://en.wikipedia.org/w/index.php?title=Special:NewPages&feed=rss",
 "*demoCommand: xscreensaver-settings",
 "*helpURL: https://www.jwz.org/xscreensaver/man.html",
-"*loadURL: x-www-browser '%s' || firefox '%s' || chromium-browser '%s'",
-"*manualCommand: xterm -sb -fg black -bg gray75 -T '%s manual' \
-                   -e /bin/sh -c 'man \"%s\" ; read foo'",
+"*loadURL: gnome-open '%s'",
+"*manualCommand: yelp man:%s || \
+                       x-terminal-emulator -t '%s manual' \
+                         -e /bin/sh -c \"man %s; read foo\"",
 "*dateFormat:          %I:%M %p, %a %b %e",
 "*newLoginCommand:     no-such-login-manager",
 "XScreenSaver.pointerHysteresis:               10",
index d732a9b13a1bb736d6080e483513420ed22d022e..ddb8b185c34901d2f67469559e90110ebdd4ce6f 100644 (file)
@@ -1,4 +1,4 @@
-/* xscreensaver, Copyright © 1991-2021 Jamie Zawinski <jwz@jwz.org>
+/* xscreensaver, Copyright © 1991-2022 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
 
 #include <string.h>
 #include <time.h>
+#include <sys/time.h>
 
 const char *progname = "";
 int verbose_p = 0;
 
+/* #define BLURB_CENTISECONDS */
+
 const char *
 blurb (void)
 {
   static char buf[255] = { 0 };
   struct tm tm;
-  time_t now;
+  struct timeval now;
   int i;
 
-  now = time ((time_t *) 0);
-  localtime_r (&now, &tm);
+# ifdef GETTIMEOFDAY_TWO_ARGS
+  struct timezone tzp;
+  gettimeofday (&now, &tzp);
+# else
+  gettimeofday (&now);
+# endif
+
+  localtime_r (&now.tv_sec, &tm);
   i = strlen (progname);
   if (i > 40) i = 40;
   memcpy (buf, progname, i);
@@ -44,6 +53,16 @@ blurb (void)
   buf[i++] = ':';
   buf[i++] = '0' + (tm.tm_sec >= 10 ? tm.tm_sec/10 : 0);
   buf[i++] = '0' + (tm.tm_sec % 10);
+
+# ifdef BLURB_CENTISECONDS
+  {
+    int c = now.tv_usec / 10000;
+    buf[i++] = '.';
+    buf[i++] = '0' + (c >= 10 ? c/10 : 0);
+    buf[i++] = '0' + (c % 10);
+  }
+# endif
+
   buf[i] = 0;
   return buf;
 }
index f407590b77258644fa5a20d6ef4d4403abcbf757..ebfd12da2581653c1ced09c8023fca2b91411906 100644 (file)
@@ -37,7 +37,7 @@ Window
 find_screensaver_window (Display *dpy, char **version)
 {
   int nscreens = ScreenCount (dpy);
-  int i, screen;
+  int screen;
   Window ret = 0;
   XErrorHandler old_handler;
 
@@ -51,6 +51,7 @@ find_screensaver_window (Display *dpy, char **version)
       Window root = RootWindow (dpy, screen);
       Window root2, parent, *kids;
       unsigned int nkids;
+      int i = 0;
 
       if (! XQueryTree (dpy, root, &root2, &parent, &kids, &nkids))
         abort ();
index f7d52031a6217c72b58d34ed0d6d2784974f6cee..c9cd2ab3ed3fa21b5429296fbf0b76b738623ca3 100644 (file)
@@ -46,6 +46,7 @@
 # pragma GCC diagnostic pop
 #endif
 
+#include "blurb.h"
 #include "demo-Gtk-conf.h"
 
 /* Deal with deprecation of direct access to struct fields on the way to GTK3
 #endif
 
 
-extern const char *blurb (void);
-
-
-const char *hack_configuration_path = HACK_CONFIGURATION_PATH;
-
-static gboolean debug_p = FALSE;
+static gboolean debug_p = FALSE;  /* Copied from s->debug_p in parent */
 
 
 #define MIN_SLIDER_WIDTH     150
@@ -139,7 +135,9 @@ typedef struct {
 
 static parameter *make_select_option (const char *file, xmlNodePtr);
 static void make_parameter_widget (const char *filename, 
-                                   parameter *, GtkWidget *);
+                                   parameter *, GtkWidget *,
+                                   void (*changed_cb) (GtkWidget *, gpointer),
+                                   gpointer changed_data);
 static void browse_button_cb (GtkButton *button, gpointer user_data);
 
 
@@ -586,7 +584,6 @@ sanity_check_menu_options (const char *filename, const xmlChar *node_name,
   int nulls = 0;
   char *prefix = 0;
 
-/*  fprintf (stderr, "\n## %s\n", p->id);*/
   for (opts = p->options; opts; opts = opts->next)
     {
       parameter *s = (parameter *) opts->data;
@@ -700,7 +697,9 @@ sanity_check_parameters (const char *filename, GList *parms)
 /* Helper for make_parameters()
  */
 static GList *
-make_parameters_1 (const char *filename, xmlNodePtr node, GtkWidget *parent)
+make_parameters_1 (const char *filename, xmlNodePtr node, GtkWidget *parent,
+                   void (*changed_cb) (GtkWidget *, gpointer),
+                   gpointer changed_data)
 {
   GList *list = 0;
 
@@ -710,14 +709,16 @@ make_parameters_1 (const char *filename, xmlNodePtr node, GtkWidget *parent)
       if (!strcmp (name, "hgroup") ||
           !strcmp (name, "vgroup"))
         {
-          GtkWidget *box = (*name == 'h'
-                            ? gtk_hbox_new (FALSE, 0)
-                            : gtk_vbox_new (FALSE, 0));
+          GtkWidget *box = gtk_box_new (*name == 'h'
+                                        ? GTK_ORIENTATION_HORIZONTAL
+                                        : GTK_ORIENTATION_VERTICAL,
+                                        0);
           GList *list2;
           gtk_widget_show (box);
           gtk_box_pack_start (GTK_BOX (parent), box, FALSE, FALSE, 0);
 
-          list2 = make_parameters_1 (filename, node->xmlChildrenNode, box);
+          list2 = make_parameters_1 (filename, node->xmlChildrenNode, box,
+                                     changed_cb, changed_data);
           if (list2)
             list = g_list_concat (list, list2);
         }
@@ -727,7 +728,8 @@ make_parameters_1 (const char *filename, xmlNodePtr node, GtkWidget *parent)
           if (p)
             {
               list = g_list_append (list, p);
-              make_parameter_widget (filename, p, parent);
+              make_parameter_widget (filename, p, parent,
+                                     changed_cb, changed_data);
             }
         }
     }
@@ -740,13 +742,16 @@ make_parameters_1 (const char *filename, xmlNodePtr node, GtkWidget *parent)
    Returns a GList of `parameter' objects.
  */
 static GList *
-make_parameters (const char *filename, xmlNodePtr node, GtkWidget *parent)
+make_parameters (const char *filename, xmlNodePtr node, GtkWidget *parent,
+                 void (*changed_cb) (GtkWidget *, gpointer),
+                 gpointer changed_data)
 {
   for (; node; node = node->next)
     {
       if (node->type == XML_ELEMENT_NODE &&
           !strcmp ((char *) node->name, "screensaver"))
-        return make_parameters_1 (filename, node->xmlChildrenNode, parent);
+        return make_parameters_1 (filename, node->xmlChildrenNode, parent,
+                                  changed_cb, changed_data);
     }
   return 0;
 }
@@ -843,9 +848,9 @@ make_adjustment (const char *filename, parameter *p)
 static void
 set_widget_min_width (GtkWidget *w, int width)
 {
-  GtkRequisition req;
-  gtk_widget_size_request (GTK_WIDGET (w), &req);
-  if (req.width < width)
+  GtkRequisition min, nat;
+  gtk_widget_get_preferred_size (w, &min, &nat);
+  if (min.width < width)
     gtk_widget_set_size_request (GTK_WIDGET (w), width, -1);
 }
 
@@ -857,9 +862,10 @@ set_widget_min_width (GtkWidget *w, int width)
 static GtkWidget *
 insert_fake_hbox (GtkWidget *parent)
 {
-  if (GTK_IS_VBOX (parent))
+  if (gtk_orientable_get_orientation (GTK_ORIENTABLE (parent)) ==
+      GTK_ORIENTATION_VERTICAL)
     {
-      GtkWidget *hbox = gtk_hbox_new (FALSE, 0);
+      GtkWidget *hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0);
       gtk_box_pack_start (GTK_BOX (parent), hbox, FALSE, FALSE, 4);
       gtk_widget_show (hbox);
       return hbox;
@@ -869,15 +875,15 @@ insert_fake_hbox (GtkWidget *parent)
 
 
 static void
-link_atk_label_to_widget(GtkWidget *label, GtkWidget *widget)
+link_atk_label_to_widget (GtkWidget *label, GtkWidget *widget)
 {
-    AtkObject *atk_label = gtk_widget_get_accessible (label);
-    AtkObject *atk_widget = gtk_widget_get_accessible (widget);
+  AtkObject *atk_label = gtk_widget_get_accessible (label);
+  AtkObject *atk_widget = gtk_widget_get_accessible (widget);
 
-    atk_object_add_relationship (atk_label, ATK_RELATION_LABEL_FOR,
-                                atk_widget);
-    atk_object_add_relationship (atk_widget, ATK_RELATION_LABELLED_BY,
-                                atk_label);
+  atk_object_add_relationship (atk_label, ATK_RELATION_LABEL_FOR,
+                               atk_widget);
+  atk_object_add_relationship (atk_widget, ATK_RELATION_LABELLED_BY,
+                               atk_label);
 }
 
 /* Given a `parameter' struct, allocates an appropriate GtkWidget for it,
@@ -885,7 +891,9 @@ link_atk_label_to_widget(GtkWidget *label, GtkWidget *widget)
    `parent' must be a GtkBox.
  */
 static void
-make_parameter_widget (const char *filename, parameter *p, GtkWidget *parent)
+make_parameter_widget (const char *filename, parameter *p, GtkWidget *parent,
+                       void (*changed_cb) (GtkWidget *, gpointer data),
+                       gpointer changed_data)
 {
   const char *label = (char *) p->label;
   if (p->widget) return;
@@ -901,7 +909,8 @@ make_parameter_widget (const char *filename, parameter *p, GtkWidget *parent)
             GtkWidget *w = gtk_label_new (_(label));
             link_atk_label_to_widget (w, entry);
             gtk_label_set_justify (GTK_LABEL (w), GTK_JUSTIFY_RIGHT);
-            gtk_misc_set_alignment (GTK_MISC (w), 1.0, 0.5);
+            gtk_label_set_xalign (GTK_LABEL (w), 1.0);
+            gtk_label_set_yalign (GTK_LABEL (w), 0.5);
             set_widget_min_width (GTK_WIDGET (w), MIN_LABEL_WIDTH);
             gtk_widget_show (w);
             gtk_box_pack_start (GTK_BOX (parent), w, FALSE, FALSE, 4);
@@ -911,6 +920,8 @@ make_parameter_widget (const char *filename, parameter *p, GtkWidget *parent)
         if (p->string)
           gtk_entry_set_text (GTK_ENTRY (p->widget), (char *) p->string);
         gtk_box_pack_start (GTK_BOX (parent), p->widget, FALSE, FALSE, 4);
+        g_signal_connect (p->widget, "changed", G_CALLBACK (changed_cb),
+                          changed_data);
         break;
       }
     case FILENAME:
@@ -923,12 +934,12 @@ make_parameter_widget (const char *filename, parameter *p, GtkWidget *parent)
         gtk_widget_show (button);
         p->widget = entry;
 
-        gtk_signal_connect (GTK_OBJECT (button),
-                            "clicked", GTK_SIGNAL_FUNC (browse_button_cb),
-                            (gpointer) entry);
+        g_signal_connect (button, "clicked", G_CALLBACK (browse_button_cb),
+                          (gpointer) entry);
 
         gtk_label_set_justify (GTK_LABEL (L), GTK_JUSTIFY_RIGHT);
-        gtk_misc_set_alignment (GTK_MISC (L), 1.0, 0.5);
+        gtk_label_set_xalign (GTK_LABEL (L), 1.0);
+        gtk_label_set_yalign (GTK_LABEL (L), 0.5);
         set_widget_min_width (GTK_WIDGET (L), MIN_LABEL_WIDTH);
         gtk_widget_show (L);
 
@@ -939,12 +950,14 @@ make_parameter_widget (const char *filename, parameter *p, GtkWidget *parent)
         gtk_box_pack_start (GTK_BOX (parent), L,      FALSE, FALSE, 4);
         gtk_box_pack_start (GTK_BOX (parent), entry,  TRUE,  TRUE,  4);
         gtk_box_pack_start (GTK_BOX (parent), button, FALSE, FALSE, 4);
+        g_signal_connect (p->widget, "changed",
+                          G_CALLBACK (changed_cb), changed_data);
         break;
       }
     case SLIDER:
       {
         GtkAdjustment *adj = make_adjustment (filename, p);
-        GtkWidget *scale = gtk_hscale_new (adj);
+        GtkWidget *scale = gtk_scale_new (GTK_ORIENTATION_HORIZONTAL, adj);
         GtkWidget *labelw = 0;
 
         if (label)
@@ -952,7 +965,8 @@ make_parameter_widget (const char *filename, parameter *p, GtkWidget *parent)
             labelw = gtk_label_new (_(label));
             link_atk_label_to_widget (labelw, scale);
             gtk_label_set_justify (GTK_LABEL (labelw), GTK_JUSTIFY_LEFT);
-            gtk_misc_set_alignment (GTK_MISC (labelw), 0.0, 0.5);
+            gtk_label_set_xalign (GTK_LABEL (labelw), 0.0);
+            gtk_label_set_yalign (GTK_LABEL (labelw), 0.5);
             set_widget_min_width (GTK_WIDGET (labelw), MIN_LABEL_WIDTH);
             gtk_widget_show (labelw);
             gtk_box_pack_start (GTK_BOX (parent), labelw, FALSE, FALSE, 2);
@@ -966,18 +980,21 @@ make_parameter_widget (const char *filename, parameter *p, GtkWidget *parent)
             GtkWidget *w = gtk_label_new (_((char *) p->low_label));
             link_atk_label_to_widget (w, scale);
             gtk_label_set_justify (GTK_LABEL (w), GTK_JUSTIFY_RIGHT);
-            gtk_misc_set_alignment (GTK_MISC (w), 1.0, 0.5);
+            gtk_label_set_xalign (GTK_LABEL (w), 1.0);
+            gtk_label_set_yalign (GTK_LABEL (w), 0.5);
             set_widget_min_width (GTK_WIDGET (w), MIN_LABEL_WIDTH);
             gtk_widget_show (w);
             gtk_box_pack_start (GTK_BOX (parent), w, FALSE, FALSE, 4);
           }
 
         gtk_scale_set_value_pos (GTK_SCALE (scale), GTK_POS_BOTTOM);
-        /* This is only in debug mode since it is wrong for "ratio" sliders. */
-        gtk_scale_set_draw_value (GTK_SCALE (scale), debug_p);
         gtk_scale_set_digits (GTK_SCALE (scale), (p->integer_p ? 0 : 2));
         set_widget_min_width (GTK_WIDGET (scale), MIN_SLIDER_WIDTH);
 
+        /* We can't show the value as it is wrong for ratio and inverted
+           sliders. */
+        gtk_scale_set_draw_value (GTK_SCALE (scale), FALSE);
+
         gtk_box_pack_start (GTK_BOX (parent), scale, FALSE, FALSE, 4);
 
         gtk_widget_show (scale);
@@ -987,13 +1004,16 @@ make_parameter_widget (const char *filename, parameter *p, GtkWidget *parent)
             GtkWidget *w = gtk_label_new (_((char *) p->high_label));
             link_atk_label_to_widget (w, scale);
             gtk_label_set_justify (GTK_LABEL (w), GTK_JUSTIFY_LEFT);
-            gtk_misc_set_alignment (GTK_MISC (w), 0.0, 0.5);
+            gtk_label_set_xalign (GTK_LABEL (w), 0.0);
+            gtk_label_set_yalign (GTK_LABEL (w), 0.5);
             set_widget_min_width (GTK_WIDGET (w), MIN_LABEL_WIDTH);
             gtk_widget_show (w);
             gtk_box_pack_start (GTK_BOX (parent), w, FALSE, FALSE, 4);
           }
 
         p->widget = scale;
+        g_signal_connect (adj, "value-changed",
+                          G_CALLBACK (changed_cb), changed_data);
         break;
       }
     case SPINBUTTON:
@@ -1010,7 +1030,8 @@ make_parameter_widget (const char *filename, parameter *p, GtkWidget *parent)
             GtkWidget *w = gtk_label_new (_(label));
             link_atk_label_to_widget (w, spin);
             gtk_label_set_justify (GTK_LABEL (w), GTK_JUSTIFY_RIGHT);
-            gtk_misc_set_alignment (GTK_MISC (w), 1.0, 0.5);
+            gtk_label_set_xalign (GTK_LABEL (w), 1.0);
+            gtk_label_set_yalign (GTK_LABEL (w), 0.5);
             set_widget_min_width (GTK_WIDGET (w), MIN_LABEL_WIDTH);
             gtk_widget_show (w);
             parent = insert_fake_hbox (parent);
@@ -1021,6 +1042,8 @@ make_parameter_widget (const char *filename, parameter *p, GtkWidget *parent)
         gtk_box_pack_start (GTK_BOX (parent), spin, FALSE, FALSE, 4);
 
         p->widget = spin;
+        g_signal_connect (adj, "value-changed",
+                          G_CALLBACK (changed_cb), changed_data);
         break;
       }
     case BOOLEAN:
@@ -1030,26 +1053,37 @@ make_parameter_widget (const char *filename, parameter *p, GtkWidget *parent)
            parent = insert_fake_hbox (parent);
          */
         gtk_box_pack_start (GTK_BOX (parent), p->widget, FALSE, FALSE, 4);
+        g_signal_connect (p->widget, "clicked",
+                          G_CALLBACK (changed_cb), changed_data);
         break;
       }
     case SELECT:
       {
-        GtkWidget *opt = gtk_option_menu_new ();
-        GtkWidget *menu = gtk_menu_new ();
+        GtkComboBox *cbox = GTK_COMBO_BOX (gtk_combo_box_new());
+        GtkListStore *model = gtk_list_store_new (1, G_TYPE_STRING);
+        GtkCellRenderer *view = gtk_cell_renderer_text_new();
+        GtkTreeIter iter;
         GList *opts;
 
+        g_object_set (G_OBJECT (cbox), "model", model, NULL);
+        g_object_unref (model);
+        gtk_cell_layout_pack_start (GTK_CELL_LAYOUT (cbox), view, TRUE);
+        gtk_cell_layout_set_attributes (GTK_CELL_LAYOUT (cbox), view,
+                                        "text", 0, NULL);
+
         for (opts = p->options; opts; opts = opts->next)
           {
             parameter *s = (parameter *) opts->data;
-            GtkWidget *i = gtk_menu_item_new_with_label (_((char *) s->label));
-            gtk_widget_show (i);
-            gtk_menu_append (GTK_MENU (menu), i);
+            const char *name = _((char *) s->label);
+            gtk_list_store_append (model, &iter);
+            gtk_list_store_set (model, &iter, 0, name, -1);
           }
 
-        gtk_option_menu_set_menu (GTK_OPTION_MENU (opt), menu);
-        p->widget = opt;
+        p->widget = GTK_WIDGET (cbox);
         parent = insert_fake_hbox (parent);
         gtk_box_pack_start (GTK_BOX (parent), p->widget, FALSE, FALSE, 4);
+        g_signal_connect (p->widget, "changed",
+                          G_CALLBACK (changed_cb), changed_data);
         break;
       }
 
@@ -1069,76 +1103,28 @@ make_parameter_widget (const char *filename, parameter *p, GtkWidget *parent)
     }
 }
 
-\f
-/* File selection.
-   Absurdly, there is no GTK file entry widget, only a GNOME one,
-   so in order to avoid depending on GNOME in this code, we have
-   to do it ourselves.
- */
-
-/* cancel button on GtkFileSelection: user_data unused */
-static void
-file_sel_cancel (GtkWidget *button, gpointer user_data)
-{
-  GtkWidget *dialog = button;
-  while (GET_PARENT (dialog))
-    dialog = GET_PARENT (dialog);
-  gtk_widget_destroy (dialog);
-}
-
-/* ok button on GtkFileSelection: user_data is the corresponding GtkEntry */
-static void
-file_sel_ok (GtkWidget *button, gpointer user_data)
-{
-  GtkWidget *entry = GTK_WIDGET (user_data);
-  GtkWidget *dialog = button;
-  const char *path;
-
-  while (GET_PARENT (dialog))
-    dialog = GET_PARENT (dialog);
-  gtk_widget_hide (dialog);
-
-  path = gtk_file_selection_get_filename (GTK_FILE_SELECTION (dialog));
-  /* apparently one doesn't free `path' */
-
-  gtk_entry_set_text (GTK_ENTRY (entry), path);
-  gtk_entry_set_position (GTK_ENTRY (entry), strlen (path));
-
-  gtk_widget_destroy (dialog);
-}
-
-/* WM close on GtkFileSelection: user_data unused */
-static void
-file_sel_close (GtkWidget *widget, GdkEvent *event, gpointer user_data)
-{
-  file_sel_cancel (widget, user_data);
-}
 
 /* "Browse" button: user_data is the corresponding GtkEntry */
 static void
 browse_button_cb (GtkButton *button, gpointer user_data)
 {
-  GtkWidget *entry = GTK_WIDGET (user_data);
-  const char *text = gtk_entry_get_text (GTK_ENTRY (entry));
-  GtkFileSelection *selector =
-    GTK_FILE_SELECTION (gtk_file_selection_new (_("Select file.")));
-
-  gtk_file_selection_set_filename (selector, text);
-  gtk_signal_connect (GTK_OBJECT (selector->ok_button),
-                      "clicked", GTK_SIGNAL_FUNC (file_sel_ok),
-                      (gpointer) entry);
-  gtk_signal_connect (GTK_OBJECT (selector->cancel_button),
-                      "clicked", GTK_SIGNAL_FUNC (file_sel_cancel),
-                      (gpointer) entry);
-  gtk_signal_connect (GTK_OBJECT (selector), "delete_event",
-                      GTK_SIGNAL_FUNC (file_sel_close),
-                      (gpointer) entry);
-
-  gtk_window_set_modal (GTK_WINDOW (selector), TRUE);
-  gtk_widget_show (GTK_WIDGET (selector));
+  GtkEntry *entry = GTK_ENTRY (user_data);
+  GtkWindow *win = GTK_WINDOW (gtk_widget_get_toplevel (GTK_WIDGET (button)));
+  const char *ofile = gtk_entry_get_text (entry);
+  char *file = strdup (ofile);
+
+  if (debug_p) fprintf (stderr, "%s: settings browse button\n", blurb());
+  if (file_chooser (win, entry, &file, _("Select file."),
+                    debug_p, FALSE, FALSE))
+    {
+      if (debug_p)
+        fprintf (stderr, "%s:   file: \"%s\" -> \"%s\n", blurb(), ofile, file);
+      gtk_entry_set_text (entry, file);
+    }
+  free (file);
 }
 
-\f
+
 /* Converting to and from command-lines
  */
 
@@ -1341,21 +1327,19 @@ parameter_to_switch (parameter *p)
     case SELECT:
       if (!p->widget) return 0;
       {
-        GtkOptionMenu *opt = GTK_OPTION_MENU (p->widget);
-        GtkMenu *menu = GTK_MENU (gtk_option_menu_get_menu (opt));
-        GtkWidget *selected = gtk_menu_get_active (menu);
-        GList *kids = gtk_container_children (GTK_CONTAINER (menu));
-        int menu_elt = g_list_index (kids, (gpointer) selected);
-        GList *ol = g_list_nth (p->options, menu_elt);
+        GtkComboBox *cbox = GTK_COMBO_BOX (p->widget);
+        int menu_elt = gtk_combo_box_get_active (cbox);
+        GList *ol = (menu_elt >= 0 ? g_list_nth (p->options, menu_elt) : NULL);
         parameter *o = (ol ? (parameter *) ol->data : 0);
         const char *s;
-        if (!o) abort();
-        if (o->type != SELECT_OPTION) abort();
-        s = (char *) o->arg_set;
-        if (s)
-          return strdup (s);
-        else
-          return 0;
+        if (o)
+          {
+            if (o->type != SELECT_OPTION) abort();
+            s = (char *) o->arg_set;
+            if (s)
+              return strdup (s);
+          }
+        return 0;
       }
     default:
       if (p->widget)
@@ -1494,10 +1478,12 @@ parse_command_line_into_parameters (const char *filename,
           if (rest->next)   /* pop off the arg to this option */
             {
               char *s = (char *) rest->next->data;
-              /* the next token is the next switch iff it matches "-[a-z]".
+              /* the next token is the next switch if it matches ^-[-a-z]
                  (To avoid losing on "-x -3.1".)
                */
-              if (s && (s[0] != '-' || !isalpha(s[1])))
+              if (! (s &&
+                     s[0] == '-' &&
+                     (s[1] == '-' || isalpha(s[1]))))
                 {
                   value = s;
                   rest->next->data = 0;
@@ -1519,9 +1505,14 @@ static gboolean
 compare_opts (const char *option, const char *value,
               const char *template)
 {
-  int ol = strlen (option);
+  int ol;
   char *c;
 
+  /* -arg and --arg are the same. */
+  if (option[0]   == '-' && option[1]   == '-') option++;
+  if (template[0] == '-' && template[1] == '-') template++;
+  ol = strlen (option);
+
   if (strncmp (option, template, ol))
     return FALSE;
 
@@ -1686,8 +1677,8 @@ parameter_set_switch (parameter *p, gpointer value)
       }
     case SELECT:
       {
-        gtk_option_menu_set_history (GTK_OPTION_MENU (p->widget),
-                                     GPOINTER_TO_INT(value));
+        GtkComboBox *cbox = GTK_COMBO_BOX (p->widget);
+        gtk_combo_box_set_active (cbox, GPOINTER_TO_INT(value));
         break;
       }
     default:
@@ -1752,7 +1743,7 @@ restore_defaults (const char *progname, GList *parms)
           }
         case SELECT:
           {
-            GtkOptionMenu *opt = GTK_OPTION_MENU (p->widget);
+            GtkComboBox *cbox = GTK_COMBO_BOX (p->widget);
             GList *opts;
             int selected = 0;
             int index;
@@ -1770,7 +1761,7 @@ restore_defaults (const char *progname, GList *parms)
                   }
               }
 
-            gtk_option_menu_set_history (GTK_OPTION_MENU (opt), selected);
+            gtk_combo_box_set_active (cbox, selected);
             break;
           }
         default:
@@ -1780,7 +1771,7 @@ restore_defaults (const char *progname, GList *parms)
 }
 
 
-\f
+
 /* Documentation strings
  */
 
@@ -1890,15 +1881,17 @@ get_year (const char *desc)
 }
 
 
-\f
+
 /* External interface.
  */
 
 static conf_data *
 load_configurator_1 (const char *program, const char *arguments,
+                     void (*changed_cb) (GtkWidget *, gpointer),
+                     gpointer changed_data,
                      gboolean verbose_p)
 {
-  const char *dir = hack_configuration_path;
+  const char *dir = HACK_CONFIGURATION_PATH;
   char *base_program;
   int L = strlen (dir);
   char *file;
@@ -1959,10 +1952,11 @@ load_configurator_1 (const char *program, const char *arguments,
 
       /* Parsed the XML file.  Now make some widgets. */
 
-      vbox0 = gtk_vbox_new (FALSE, 0);
+      vbox0 = gtk_box_new (GTK_ORIENTATION_VERTICAL, 0);
       gtk_widget_show (vbox0);
 
-      parms = make_parameters (file, doc->xmlRootNode, vbox0);
+      parms = make_parameters (file, doc->xmlRootNode, vbox0,
+                               changed_cb, changed_data);
       sanity_check_parameters (file, parms);
 
       xmlFreeDoc (doc);
@@ -2034,14 +2028,17 @@ split_command_line (const char *full_command_line,
 
 
 conf_data *
-load_configurator (const char *full_command_line, gboolean verbose_p)
+load_configurator (const char *full_command_line,
+                   void (*changed_cb) (GtkWidget *, gpointer),
+                   gpointer changed_data,
+                   gboolean verbose_p)
 {
   char *prog;
   char *args;
   conf_data *cd;
   debug_p = verbose_p;
   split_command_line (full_command_line, &prog, &args);
-  cd = load_configurator_1 (prog, args, verbose_p);
+  cd = load_configurator_1 (prog, args, changed_cb, changed_data, verbose_p);
   free (prog);
   free (args);
   return cd;
index 2a660f68396725e79ed532f9c39faad87883c03e..31f7ed8d1741b49d9d9ecc7b2d71a57850013c27 100644 (file)
@@ -22,11 +22,56 @@ typedef struct {
   int year;
 } conf_data;
 
-extern conf_data *load_configurator (const char *cmd_line, gboolean verbose_p);
+/* Referenced by demo-Gtk.c; defined in demo-Gtk-conf.c.
+ */
+extern conf_data *load_configurator (const char *cmd_line,
+                                     void (*changed_cb) (GtkWidget *, gpointer),
+                                     gpointer changed_data,
+                                     gboolean verbose_p);
 extern char *get_configurator_command_line (conf_data *, gboolean default_p);
 extern void  set_configurator_command_line (conf_data *, const char *cmd_line);
 extern void free_conf_data (conf_data *);
 
-extern const char *hack_configuration_path;
+/* Referenced from demo.ui and prefs.ui; defined in demo-Gtk.c.
+ */
+extern void quit_menu_cb (GtkAction *, gpointer user_data);
+extern void about_menu_cb (GtkAction *, gpointer user_data);
+extern void doc_menu_cb (GtkAction *, gpointer user_data);
+extern void file_menu_cb (GtkAction *, gpointer user_data);
+extern void activate_menu_cb (GtkAction *, gpointer user_data);
+extern void lock_menu_cb (GtkAction *, gpointer user_data);
+extern void kill_menu_cb (GtkAction *, gpointer user_data);
+extern void restart_menu_cb (GtkWidget *, gpointer user_data);
+extern void run_this_cb (GtkButton *, gpointer user_data);
+extern void manual_cb (GtkButton *, gpointer user_data);
+extern void run_next_cb (GtkButton *, gpointer user_data);
+extern void run_prev_cb (GtkButton *, gpointer user_data);
+extern gboolean pref_changed_cb (GtkWidget *, gpointer user_data);
+extern gboolean pref_changed_event_cb (GtkWidget *, GdkEvent *, gpointer data);
+extern gboolean image_text_pref_changed_event_cb (GtkWidget *, GdkEvent *,
+                                                  gpointer user_data);
+extern void mode_menu_item_cb (GtkWidget *, gpointer user_data);
+extern void switch_page_cb (GtkNotebook *, GtkWidget *, 
+                            gint page_num, gpointer user_data);
+extern void browse_image_dir_cb (GtkButton *, gpointer user_data);
+extern void browse_text_file_cb (GtkButton *, gpointer user_data);
+extern void browse_text_program_cb (GtkButton *, gpointer user_data);
+extern void settings_cb (GtkButton *, gpointer user_data);
+extern void settings_adv_cb (GtkButton *, gpointer user_data);
+extern void settings_std_cb (GtkButton *, gpointer user_data);
+extern void settings_reset_cb (GtkButton *, gpointer user_data);
+extern void settings_switch_page_cb (GtkNotebook *, GtkWidget *,
+                                     gint page_num, gpointer user_data);
+extern void settings_cancel_cb (GtkWidget *, gpointer user_data);
+extern void settings_ok_cb (GtkWidget *, gpointer user_data);
+extern void preview_theme_cb (GtkWidget *, gpointer user_data);
+
+/* Referenced by demo-Gtk-conf.c; defined in demo-Gtk.c.
+ */
+extern void warning_dialog (GtkWindow *, const char *title, const char *msg);
+extern gboolean file_chooser (GtkWindow *, GtkEntry *, char **retP,
+                              const char *title,
+                              gboolean verbose_p,
+                              gboolean dir_p, gboolean program_p);
 
 #endif /* _DEMO_GTK_CONF_H_ */
index 0406d313a9f3c6d954b5aa9f9055c9aea922b545..442dac1a7c66df2ac3aeb9dd6e1bd919b0c17b09 100644 (file)
 
 #ifdef HAVE_GTK /* whole file */
 
-#include "blurb.h"
-
-#include <xscreensaver-intl.h>
-
-#include <stdlib.h>
-
-#ifdef HAVE_UNISTD_H
-# include <unistd.h>
-#endif
-
-# ifdef __GNUC__
-#  define STFU __extension__  /* ignore gcc -pendantic warnings in next sexp */
-# else
-#  define STFU /* */
-# endif
-
-
 #ifdef ENABLE_NLS
 # include <locale.h>
 #endif /* ENABLE_NLS */
 #endif /* HAVE_UNAME */
 
 #include <stdio.h>
+#include <unistd.h>
+#include <stdlib.h>
+#include <ctype.h>
 #include <time.h>
 #include <pwd.h>               /* for getpwuid() */
 #include <sys/stat.h>
 #include <sys/time.h>
 
-
 #include <signal.h>
 #include <errno.h>
 #ifdef HAVE_SYS_WAIT_H
 # include <sys/wait.h>         /* for waitpid() and associated macros */
 #endif
 
-
-#include <X11/Xproto.h>                /* for CARD32 */
 #include <X11/Xatom.h>         /* for XA_INTEGER */
-#include <X11/Intrinsic.h>
-#include <X11/StringDefs.h>
-
-/* We don't actually use any widget internals, but these are included
-   so that gdb will have debug info for the widgets... */
-#include <X11/IntrinsicP.h>
-#include <X11/ShellP.h>
-
-#ifdef HAVE_XINERAMA
-# include <X11/extensions/Xinerama.h>
-#endif /* HAVE_XINERAMA */
+#include <X11/Shell.h>
 
 #if (__GNUC__ >= 4)    /* Ignore useless warnings generated by gtk.h */
 # undef inline
 #endif
 
 #include <gtk/gtk.h>
-
-#include <gdk/gdkx.h>
-
-#ifndef HAVE_GTK2
-# error GTK 2.x is required
-#endif
-
-#include <gmodule.h>
+#include <gdk/gdkx.h>          /* For gdk_x11_get_default_xdisplay(), etc. */
 
 #if (__GNUC__ >= 4)
 # pragma GCC diagnostic pop
 #endif
 
-
+#include "blurb.h"
+#include "xscreensaver-intl.h"
 #include "version.h"
 #include "types.h"
 #include "resources.h"         /* for parse_time() */
 #include "visual.h"
 #include "atoms.h"
 #include "usleep.h"
+#include "atoms.h"
 #include "xmu.h"
 
-#include "logo-50.xpm"
-#include "logo-180.xpm"
-
 #include "demo-Gtk-conf.h"
-#include "atoms.h"
-
-#include <stdio.h>
-#include <string.h>
-#include <ctype.h>
-
-enum {
-  COL_ENABLED,
-  COL_NAME,
-  COL_LAST
-};
-
-/* Deal with deprecation of direct access to struct fields on the way to GTK3
-   See http://live.gnome.org/GnomeGoals/UseGseal
- */
-#if GTK_CHECK_VERSION(2,14,0)
-# define GET_PARENT(w)          gtk_widget_get_parent (w)
-# define GET_WINDOW(w)          gtk_widget_get_window (w)
-# define GET_ACTION_AREA(d)     gtk_dialog_get_action_area (d)
-# define GET_CONTENT_AREA(d)    gtk_dialog_get_content_area (d)
-# define GET_ADJ_VALUE(a)       gtk_adjustment_get_value (a)
-# define SET_ADJ_VALUE(a,v)     gtk_adjustment_set_value (a, v)
-# define SET_ADJ_UPPER(a,v)     gtk_adjustment_set_upper (a, v)
-#else
-# define GET_PARENT(w)          ((w)->parent)
-# define GET_WINDOW(w)          ((w)->window)
-# define GET_ACTION_AREA(d)     ((d)->action_area)
-# define GET_CONTENT_AREA(d)    ((d)->vbox)
-# define GET_ADJ_VALUE(a)       ((a)->value)
-# define SET_ADJ_VALUE(a,v)     (a)->value = v
-# define SET_ADJ_UPPER(a,v)     (a)->upper = v
-#endif
-
-#if GTK_CHECK_VERSION(2,18,0)
-# define SET_CAN_DEFAULT(w)     gtk_widget_set_can_default ((w), TRUE)
-# define GET_SENSITIVE(w)       gtk_widget_get_sensitive (w)
-#else
-# define SET_CAN_DEFAULT(w)     GTK_WIDGET_SET_FLAGS ((w), GTK_CAN_DEFAULT)
-# define GET_SENSITIVE(w)       GTK_WIDGET_IS_SENSITIVE (w)
-#endif
 
-#if GTK_CHECK_VERSION(2,20,0)
-# define GET_REALIZED(w)        gtk_widget_get_realized (w)
-#else
-# define GET_REALIZED(w)        GTK_WIDGET_REALIZED (w)
-#endif
 
 /* from exec.c */
 extern void exec_command (const char *shell, const char *command, int nice);
 extern int on_path_p (const char *program);
 
-static void hack_subproc_environment (Window preview_window_id, Bool debug_p);
 
 #undef countof
 #define countof(x) (sizeof((x))/sizeof((*x)))
 
+const char *progclass = "XScreenSaver";
 
-char *progclass = "XScreenSaver";
-XrmDatabase db;
+#ifdef __GNUC__
+# define STFU __extension__  /* ignore gcc -pendantic warnings in next sexp */
+#endif
+static char *defaults[] = {
+#include "XScreenSaver_ad.h"
+ 0
+};
 
 /* The order of the items in the mode menu. */
 static int mode_menu_order[] = {
   DONT_BLANK, BLANK_ONLY, ONE_HACK, RANDOM_HACKS, RANDOM_HACKS_SAME };
+enum { COL_ENABLED, COL_NAME, COL_LAST };
+typedef enum { D_NONE, D_LAUNCH, D_GNOME, D_KDE } dialog_button;
 
 
 typedef struct {
 
   char *short_version;         /* version number of this xscreensaver build */
 
-  GtkWidget *toplevel_widget;  /* the main window */
-  GtkWidget *base_widget;      /* root of our hierarchy (for name lookups) */
-  GtkWidget *popup_widget;     /* the "Settings" dialog */
-  conf_data *cdata;            /* private data for per-hack configuration */
+  GtkWindow *window;
+  GtkWindow *dialog;
+
+  Display *dpy;
+  Bool wayland_p;
 
-  GtkBuilder *gtk_ui;           /* UI file */
+  conf_data *cdata;            /* private data for per-hack configuration */
 
   Bool debug_p;                        /* whether to print diagnostics */
   Bool initializing_p;         /* flag for breaking recursion loops */
@@ -216,9 +144,141 @@ typedef struct {
 } state;
 
 
-/* Total fucking evilness due to the fact that it's rocket science to get
-   a closure object of our own down into the various widget callbacks. */
-static state *global_state_kludge;
+/* Class definitions for the application and two windows.  The classes are:
+
+   XScreenSaverApp    -- The invisible GtkApplication main-loop framework.
+   XScreenSaverWindow -- The main window with the scrolling list of hacks.
+   XScreenSaverDialog -- The per-hack settings window.
+ */
+#define XSCREENSAVER_APP_TYPE (xscreensaver_app_get_type())
+G_DECLARE_FINAL_TYPE (XScreenSaverApp, xscreensaver_app, XSCREENSAVER, APP,
+                      GtkApplication)
+
+struct _XScreenSaverApp {
+  GtkApplication parent;
+  Bool cmdline_debug_p;
+};
+
+
+G_DEFINE_TYPE (XScreenSaverApp, xscreensaver_app, GTK_TYPE_APPLICATION)
+
+/* The widgets we reference from the demo.ui file.
+ */
+#define ALL_WINDOW_WIDGETS     \
+  W(activate_menuitem)         \
+  W(lock_menuitem)             \
+  W(kill_menuitem)             \
+  W(list)                      \
+  W(scroller)                  \
+  W(preview_frame)             \
+  W(short_preview_label)       \
+  W(preview_author_label)      \
+  W(timeout_spinbutton)                \
+  W(cycle_spinbutton)          \
+  W(lock_spinbutton)           \
+  W(dpms_standby_spinbutton)   \
+  W(dpms_suspend_spinbutton)   \
+  W(dpms_off_spinbutton)       \
+  W(fade_spinbutton)           \
+  W(lock_button)               \
+  W(dpms_button)               \
+  W(dpms_quickoff_button)      \
+  W(grab_desk_button)          \
+  W(grab_video_button)         \
+  W(grab_image_button)         \
+  W(fade_button)               \
+  W(unfade_button)             \
+  W(preview)                   \
+  W(preview_notebook)          \
+  W(text_radio)                        \
+  W(text_file_radio)           \
+  W(text_file_browse)          \
+  W(text_program_radio)                \
+  W(text_url_radio)            \
+  W(text_host_radio)           \
+  W(image_text)                        \
+  W(image_browse_button)       \
+  W(text_entry)                        \
+  W(text_file_entry)           \
+  W(text_program_entry)                \
+  W(text_url_entry)            \
+  W(text_program_browse)       \
+  W(theme_menu)                        \
+  W(mode_menu)                 \
+  W(next_prev_hbox)            \
+  W(blanking_table)            \
+  W(lock_mlabel)               \
+  W(dpms_frame)                        \
+  W(dpms_standby_label)                \
+  W(dpms_standby_mlabel)       \
+  W(dpms_suspend_label)                \
+  W(dpms_suspend_mlabel)       \
+  W(dpms_off_label)            \
+  W(dpms_off_mlabel)           \
+  W(fade_label)                        \
+  W(demo)                      \
+  W(settings)                  \
+
+/* The widgets we reference from the prefs.ui file.
+ */
+#define ALL_DIALOG_WIDGETS     \
+  W(opt_notebook)              \
+  W(doc)                       \
+  W(settings_vbox)             \
+  W(cmd_text)                  \
+  W(opt_frame)                 \
+  W(dialog_vbox)               \
+  W(adv_button)                        \
+  W(std_button)                        \
+  W(cmd_label)                 \
+  W(manual)                    \
+  W(visual)                    \
+  W(visual_combo)              \
+  W(reset_button)              \
+  W(ok_button)                 \
+
+#define XSCREENSAVER_WINDOW_TYPE (xscreensaver_window_get_type())
+G_DECLARE_FINAL_TYPE (XScreenSaverWindow, xscreensaver_window,
+                      XSCREENSAVER, WINDOW, GtkApplicationWindow)
+
+struct _XScreenSaverWindow {
+  GtkApplicationWindow parent;
+  state state;
+
+  GtkWidget
+#  undef W
+#  define W(NAME) * NAME,
+   ALL_WINDOW_WIDGETS
+   *_dummy;
+#  undef W
+};
+
+G_DEFINE_TYPE (XScreenSaverWindow, xscreensaver_window,
+               GTK_TYPE_APPLICATION_WINDOW)
+
+
+#define XSCREENSAVER_DIALOG_TYPE (xscreensaver_dialog_get_type())
+G_DECLARE_FINAL_TYPE (XScreenSaverDialog, xscreensaver_dialog,
+                      XSCREENSAVER, DIALOG, GtkDialog)
+
+struct _XScreenSaverDialog {
+  GtkApplicationWindow parent;
+  XScreenSaverWindow *main;
+  char *unedited_cmdline;   /* Current hack command line before saving */
+
+  GtkWidget
+#  undef W
+#  define W(NAME) * NAME,
+   ALL_DIALOG_WIDGETS
+   *_dummy;
+#  undef W
+};
+
+G_DEFINE_TYPE (XScreenSaverDialog, xscreensaver_dialog,
+               GTK_TYPE_DIALOG)
+
+
+static void hack_subproc_environment (Window preview_window_id, Bool debug_p);
 
 static void populate_demo_window (state *, int list_elt);
 static void populate_prefs_page (state *);
@@ -231,115 +291,244 @@ static int maybe_reload_init_file (state *);
 static void await_xscreensaver (state *);
 static Bool xscreensaver_running_p (state *);
 static void sensitize_menu_items (state *s, Bool force_p);
-static void force_dialog_repaint (state *s);
 
 static void schedule_preview (state *, const char *cmd);
 static void kill_preview_subproc (state *, Bool reset_p);
 static void schedule_preview_check (state *);
+static void sensitize_demo_widgets (state *, Bool sensitive_p);
+static void kill_gnome_screensaver (state *);
+static void kill_kde_screensaver (state *);
 
 
-/* Prototypes of functions used by the Gtk-generated code, to avoid warnings.
+/* Some pathname utilities */
+
+/* Removed redundant . and .. components from the pathname.
+   Strip leading and trailing spaces.
+   Make it have a trailing slash if it should be a directory.
  */
-void exit_menu_cb (GtkAction *, gpointer user_data);
-void about_menu_cb (GtkAction *, gpointer user_data);
-void doc_menu_cb (GtkAction *, gpointer user_data);
-void file_menu_cb (GtkAction *, gpointer user_data);
-void activate_menu_cb (GtkAction *, gpointer user_data);
-void lock_menu_cb (GtkAction *, gpointer user_data);
-void kill_menu_cb (GtkAction *, gpointer user_data);
-void restart_menu_cb (GtkWidget *, gpointer user_data);
-void run_this_cb (GtkButton *, gpointer user_data);
-void manual_cb (GtkButton *, gpointer user_data);
-void run_next_cb (GtkButton *, gpointer user_data);
-void run_prev_cb (GtkButton *, gpointer user_data);
-void pref_changed_cb (GtkWidget *, gpointer user_data);
-gboolean pref_changed_event_cb (GtkWidget *, GdkEvent *, gpointer user_data);
-gboolean image_text_pref_changed_event_cb (GtkWidget *, GdkEvent *,
-                                           gpointer user_data);
-void mode_menu_item_cb (GtkWidget *, gpointer user_data);
-void switch_page_cb (GtkNotebook *, GtkNotebookPage *, 
-                     gint page_num, gpointer user_data);
-void browse_image_dir_cb (GtkButton *, gpointer user_data);
-void browse_text_file_cb (GtkButton *, gpointer user_data);
-void browse_text_program_cb (GtkButton *, gpointer user_data);
-void settings_cb (GtkButton *, gpointer user_data);
-void settings_adv_cb (GtkButton *, gpointer user_data);
-void settings_std_cb (GtkButton *, gpointer user_data);
-void settings_reset_cb (GtkButton *, gpointer user_data);
-void settings_switch_page_cb (GtkNotebook *, GtkNotebookPage *,
-                              gint page_num, gpointer user_data);
-void settings_cancel_cb (GtkButton *, gpointer user_data);
-void settings_ok_cb (GtkButton *, gpointer user_data);
-void preview_theme_cb (GtkWidget *, gpointer user_data);
-
-static void kill_gnome_screensaver (void);
-static void kill_kde_screensaver (void);
+static char *
+normalize_pathname (const char *path, gboolean dir_p)
+{
+  int L;
+  char *p2, *s;
+  if (!path) return 0;
+  if (!*path) return strdup ("");
 
-/* Some random utility functions
+  /* Strip leading spaces */
+  while (isspace (*path)) path++;
+
+  L = strlen (path);
+  p2 = (char *) malloc (L + 3);
+  strcpy (p2, path);
+
+  /* Strip trailing spaces and slashes */
+  while (L > 0 && (isspace (p2[L-1]) || p2[L-1] == '/'))
+    p2[--L] = 0;
+
+  for (s = p2; s && *s; s++)
+    {
+      if (*s == '/' &&
+          (!strncmp (s, "/../", 4) ||                  /* delete "XYZ/../" */
+           !strncmp (s, "/..\000", 4)))                        /* delete "XYZ/..$" */
+        {
+          char *s0 = s;
+          while (s0 > p2 && s0[-1] != '/')
+            s0--;
+          if (s0 > p2)
+            {
+              s0--;
+              s += 3;
+              /* strcpy (s0, s); */
+              memmove(s0, s, strlen(s) + 1);
+              s = s0-1;
+            }
+        }
+      else if (*s == '/' && !strncmp (s, "/./", 3)) {  /* delete "/./" */
+        /* strcpy (s, s+2), s--; */
+        memmove(s, s+2, strlen(s+2) + 1);
+        s--;
+       }
+      else if (*s == '/' && !strncmp (s, "/.\000", 3)) /* delete "/.$" */
+        *s = 0, s--;
+    }
+
+  /*
+    Normalize consecutive slashes.
+    Ignore doubled slashes after ":" to avoid mangling URLs.
+  */
+
+  for (s = p2; s && *s; s++){
+    if (*s == ':') continue;
+    if (!s[1] || !s[2]) continue;
+    while (s[1] == '/' && s[2] == '/')
+      /* strcpy (s+1, s+2); */
+      memmove (s+1, s+2, strlen(s+2) + 1);
+  }
+
+  /* and strip trailing whitespace for good measure. */
+  L = strlen(p2);
+  while (isspace(p2[L-1]))
+    p2[--L] = 0;
+
+  if (dir_p)
+    {
+      p2[L++] = '/';   /* Add trailing slash */
+      p2[L] = 0;
+    }
+
+  return p2;
+}
+
+
+/* Expand or un-expand ~/ to $HOME in a pathname, as requested.
+   Strip leading and trailing spaces.
+   Make it have a trailing slash if it should be a directory.
  */
+static char *
+pathname_tilde (const char *p, gboolean add_p, gboolean dir_p)
+{
+  char *p2;
+  if (!p) return 0;
+
+  p2 = normalize_pathname (p, dir_p);
+  p = p2;
+
+  if (add_p)
+    {
+      const char *home = getenv("HOME");
+      int L = strlen(home);
+      if (!strncmp (home, p, L) && p[L] == '/')
+        {
+          char *p3 = (char *) malloc (strlen (p) + 4);
+          strcpy (p3, "~");
+          strcat (p3, p + L);
+          free (p2);
+          p2 = p3;
+        }
+    }
+  else if (!strncmp (p, "~/", 2))
+    {
+      const char *home = getenv("HOME");
+      char *p3 = (char *) malloc (strlen (p) + strlen (home) + 4);
+      strcpy (p3, home);
+      strcat (p3, p + 1);
+      free (p2);
+      p2 = p3;
+    }
+
+  return p2;
+}
+
+
+/* Is the path a directory that exists? */
+static gboolean
+directory_p (const char *path)
+{
+  char *p2 = pathname_tilde (path, FALSE, FALSE);   /* no slash on dir */
+  struct stat st;
+  gboolean ok = FALSE;
+
+  if (!p2 || !*p2)
+    ok = FALSE;
+  else if (stat (p2, &st))
+    ok = FALSE;
+  else if (!S_ISDIR (st.st_mode))
+    ok = FALSE;
+  else
+    ok = TRUE;
+  free (p2);
+  return ok;
+}
+
+
+/* Is the path a file (not directory) that exists? */
+static gboolean
+file_p (const char *path)
+{
+  char *p2 = pathname_tilde (path, FALSE, FALSE);
+  struct stat st;
+  gboolean ok = FALSE;
+  if (!p2 || !*p2)
+    ok = FALSE;
+  else if (stat (p2, &st))
+    ok = FALSE;
+  else if (S_ISDIR (st.st_mode))
+    ok = FALSE;
+  else
+    ok = TRUE;
+  free (p2);
+  return ok;
+}
+
+
 
-static GtkWidget *
-name_to_widget (state *s, const char *name)
+/* See if the directory has at least one image file under it.
+   Recurses to at most the given depth, chasing symlinks.
+   To do this properly would mean running "xscreensaver-getimage-file"
+   and seeing if it found anything, but that might take a long time to
+   build the cache the first time, so this is close enough.
+ */
+static Bool
+image_files_p (const char *path, int max_depth)
 {
-  GtkWidget *w;
-  if (!s) abort();
-  if (!name) abort();
-  if (!*name) abort();
+  const char * const exts[] = {
+    "jpg", "jpeg", "pjpeg", "pjpg", "png", "gif", 
+    "tif", "tiff", "xbm", "xpm", "svg",
+  };
+  struct dirent *de;
+  Bool ok = FALSE;
+  char *p2 = pathname_tilde (path, FALSE, FALSE);   /* no slash on dir */
+  DIR *dir = opendir (p2);
+  if (!dir) goto DONE;
 
-  if (!s->gtk_ui)
+  while (!ok && (de = readdir (dir)))
     {
-      /* First try to load the UI file from the current directory;
-         if there isn't one there, check the installed directory.
-       */
-# define UI_FILE "xscreensaver.ui"
-      const char * const files[] = { UI_FILE,
-                                     DEFAULT_ICONDIR "/" UI_FILE };
-      int i;
+      struct stat st;
+      const char *f = de->d_name;
+      char *f2;
+      if (*f == '.') continue;
 
-      s->gtk_ui = gtk_builder_new ();
+      f2 = (char *) malloc (strlen(p2) + strlen(f) + 10);
+      strcpy (f2, p2);
+      strcat (f2, "/");
+      strcat (f2, f);
 
-      for (i = 0; i < countof (files); i++)
+      if (!stat (f2, &st))
         {
-          struct stat st;
-          if (!stat (files[i], &st))
+          if (S_ISDIR (st.st_mode))
             {
-              GError* error = NULL;
-
-              if (gtk_builder_add_from_file (s->gtk_ui, files[i], &error))
-                break;
-              else
-                {
-                  g_warning ("Couldn't load builder file %s: %s",
-                            files[i], error->message);
-                  g_error_free (error);
-                }
+              if (max_depth > 0 && image_files_p (f2, max_depth - 1))
+                ok = TRUE;
+            }
+          else
+            {
+              int i;
+              const char *ext = strrchr (f, '.');
+              if (ext)
+                for (i = 0; i < countof(exts); i++)
+                  if (!strcasecmp (ext+1, exts[i]))
+                    {
+                      /* fprintf (stderr, "%s: found %s\n", blurb(), f2); */
+                      ok = TRUE;
+                      break;
+                    }
             }
         }
-      if (i >= countof (files))
-       {
-         fprintf (stderr,
-                   "%s: could not load \"" UI_FILE "\"\n"
-                   "\tfrom " DEFAULT_ICONDIR "/ or current directory.\n",
-                   blurb());
-          exit (-1);
-       }
-# undef UI_FILE
 
-      gtk_builder_connect_signals (s->gtk_ui, NULL);
+      free (f2);
     }
 
-  w = GTK_WIDGET (gtk_builder_get_object (s->gtk_ui, name));
-
-  if (w) return w;
-
-  fprintf (stderr, "%s: no widget \"%s\" (wrong UI file?)\n",
-           blurb(), name);
-  abort();
+  closedir (dir);
+ DONE:
+  free (p2);
+  return ok;
 }
 
 
-/* Why this behavior isn't automatic in *either* toolkit, I'll never know.
-   Takes a scroller, viewport, or list as an argument.
+/* Some random utility functions
+ */
+
+/* Why this behavior isn't automatic, I'll never understand.
  */
 static void
 ensure_selected_item_visible (GtkWidget *widget)
@@ -351,9 +540,9 @@ ensure_selected_item_visible (GtkWidget *widget)
   
   selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (widget));
   if (!gtk_tree_selection_get_selected (selection, &model, &iter))
-       path = gtk_tree_path_new_first ();
+    path = gtk_tree_path_new_first ();
   else
-       path = gtk_tree_model_get_path (model, &iter);
+    path = gtk_tree_model_get_path (model, &iter);
   
   gtk_tree_view_set_cursor (GTK_TREE_VIEW (widget), path, NULL, FALSE);
 
@@ -361,224 +550,133 @@ ensure_selected_item_visible (GtkWidget *widget)
 }
 
 
-/* The "OK" button on a warning dialog. */
 static void
-warning_dialog_dismiss_cb (GtkWidget *widget, gpointer user_data)
+warning_dialog_cb (GtkDialog *dialog, gint response_id, gpointer user_data)
 {
-  GtkWidget *shell = GTK_WIDGET (user_data);
-  while (GET_PARENT (shell))
-    shell = GET_PARENT (shell);
-  gtk_widget_destroy (GTK_WIDGET (shell));
+  XScreenSaverWindow *win = XSCREENSAVER_WINDOW (user_data);
+  state *s = &win->state;
+  switch (response_id) {
+  case D_LAUNCH: restart_menu_cb (GTK_WIDGET (dialog), user_data); break;
+  case D_GNOME:  kill_gnome_screensaver (s); break;
+  case D_KDE:    kill_kde_screensaver (s); break;
+  default:   /* D_NONE or GTK_RESPONSE_DELETE_EVENT */
+    break;
+  }
+  gtk_widget_destroy (GTK_WIDGET (dialog));
 }
 
 
-void restart_menu_cb (GtkWidget *widget, gpointer user_data);
-
-/* The "Restart daemon" button on a warning dialog. */
-static void warning_dialog_restart_cb (GtkWidget *widget, gpointer user_data)
+static Bool
+warning_dialog_1 (GtkWindow *win,
+                  const char *title,
+                  const char *message,
+                  dialog_button button_type)
 {
-  restart_menu_cb (widget, user_data);
-  warning_dialog_dismiss_cb (widget, user_data);
-}
+  GtkWidget *dialog =
+    (button_type == D_NONE
+     ? gtk_dialog_new_with_buttons (title, win,
+                                    GTK_DIALOG_DESTROY_WITH_PARENT,
+                                    _("_OK"), D_NONE,
+                                    NULL)
+     : gtk_dialog_new_with_buttons (title, win,
+                                    GTK_DIALOG_DESTROY_WITH_PARENT,
+                                    (button_type == D_LAUNCH ? _("Launch") :
+                                     button_type == D_GNOME  ? _("Kill") :
+                                     button_type == D_KDE    ? _("Kill") :
+                                     _("_OK")),
+                                    button_type,
+                                    _("_Cancel"), D_NONE,
+                                    NULL));
+  GtkWidget *content_area =
+    gtk_dialog_get_content_area (GTK_DIALOG (dialog));
+  GtkWidget *hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0);
+  GtkWidget *vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 0);
+  GtkWidget *im = gtk_image_new_from_icon_name ("dialog-warning",
+                                                GTK_ICON_SIZE_DIALOG);
+  GtkWidget *label = gtk_label_new (message);
+  int margin = 32;
+
+  gtk_box_pack_start (GTK_BOX (hbox), im,    FALSE, FALSE, 0);
+  gtk_box_pack_start (GTK_BOX (hbox), vbox,  FALSE, FALSE, 0);
+  gtk_box_pack_start (GTK_BOX (vbox), label, FALSE, FALSE, 0);
+  gtk_container_add (GTK_CONTAINER (content_area), hbox);
+
+  gtk_widget_set_margin_start  (hbox, margin);
+  gtk_widget_set_margin_end    (hbox, margin);
+  gtk_widget_set_margin_top    (hbox, margin);
+  gtk_widget_set_margin_bottom (hbox, margin / 2);
+
+  gtk_widget_set_margin_start (label, margin / 2);
+  gtk_widget_set_valign (im, GTK_ALIGN_START);
+
+  g_signal_connect (dialog, "response",
+                    G_CALLBACK (warning_dialog_cb),
+                    win);
+
+  gtk_dialog_set_default_response (GTK_DIALOG (dialog), button_type);
+  gtk_window_set_resizable (GTK_WINDOW (dialog), FALSE);
+  gtk_window_set_transient_for (GTK_WINDOW (dialog), win);
+  gtk_widget_show_all (dialog);
 
-/* The "Kill gnome-screensaver" button on a warning dialog. */
-static void warning_dialog_killg_cb (GtkWidget *widget, gpointer user_data)
-{
-  kill_gnome_screensaver ();
-  warning_dialog_dismiss_cb (widget, user_data);
+  return TRUE;
 }
 
-/* The "Kill kde-screensaver" button on a warning dialog. */
-static void warning_dialog_killk_cb (GtkWidget *widget, gpointer user_data)
+
+void
+warning_dialog (GtkWindow *win, const char *title, const char *message)
 {
-  kill_kde_screensaver ();
-  warning_dialog_dismiss_cb (widget, user_data);
+  warning_dialog_1 (win, title, message, D_NONE);
 }
 
-typedef enum { D_NONE, D_LAUNCH, D_GNOME, D_KDE } dialog_button;
 
-static Bool
-warning_dialog (GtkWidget *parent, const char *message,
-                dialog_button button_type, int center)
+static void
+run_cmd (state *s, Atom command, int arg)
 {
-  char *msg = strdup (message);
-  char *head;
+  char *err = 0;
+  int status;
+
+  if (!s->dpy) return;
+  flush_dialog_changes_and_save (s);
 
-  GtkWidget *dialog = gtk_dialog_new ();
-  GtkWidget *label = 0;
-  GtkWidget *ok = 0;
-  GtkWidget *cancel = 0;
-  int margin_x = 48;
-  int margin_y = 4;
-  int i = 0;
+  if (s->debug_p)
+    fprintf (stderr, "%s: command: %s %d\n", blurb(),
+             XGetAtomName (s->dpy, command), arg);
+  status = xscreensaver_command (s->dpy, command, arg, FALSE, &err);
 
-  while (parent && !GET_WINDOW (parent))
-    parent = GET_PARENT (parent);
+  /* Kludge: ignore the spurious "window unexpectedly deleted" errors... */
+  if (status < 0 && err && strstr (err, "unexpectedly deleted"))
+    status = 0;
 
-  if (!parent ||
-      !GET_WINDOW (parent)) /* too early to pop up transient dialogs */
+  if (status < 0)
     {
-      fprintf (stderr,
-               "%s: too early for warning dialog?"
-               "\n\n\t%s\n\n",
-               progname, message);
-      free(msg);
-      return False;
+      char buf [255];
+      sprintf (buf, "%.100s", (err ? err : _("Unknown error!")));
+      warning_dialog (s->window, _("Error"), buf);
     }
+  if (err) free (err);
 
-  /* Top margin */
-  label = gtk_label_new ("");
-  gtk_misc_set_padding (GTK_MISC (label), 0, margin_y);
-  gtk_box_pack_start (GTK_BOX (GET_CONTENT_AREA (GTK_DIALOG (dialog))),
-                      label, TRUE, TRUE, 0);
-  gtk_widget_show (label);
+  sensitize_menu_items (s, TRUE);
+}
 
-  head = msg;
-  while (head)
-    {
-      char name[20];
-      char *s = strchr (head, '\n');
-      if (s) *s = 0;
 
-      sprintf (name, "label%d", i++);
+static void
+run_hack (state *s, int list_elt, Bool report_errors_p)
+{
+  int hack_number;
+  char *err = 0;
+  int status;
 
-      {
-        label = gtk_label_new (head);
-       gtk_label_set_selectable (GTK_LABEL (label), TRUE);
-        gtk_misc_set_padding (GTK_MISC (label), margin_x, 0);
-
-        if (center <= 0)
-          gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5);
-        gtk_box_pack_start (GTK_BOX (GET_CONTENT_AREA (GTK_DIALOG (dialog))),
-                            label, TRUE, TRUE, 0);
-        gtk_widget_show (label);
-      }
-
-      if (s)
-       head = s+1;
-      else
-       head = 0;
-
-      center--;
-    }
-
-  /* Bottom margin */
-  label = gtk_label_new ("");
-  gtk_misc_set_padding (GTK_MISC (label), 0, margin_y * 2);
-  gtk_box_pack_start (GTK_BOX (GET_CONTENT_AREA (GTK_DIALOG (dialog))),
-                      label, TRUE, TRUE, 0);
-  gtk_widget_show (label);
-
-  label = gtk_hbutton_box_new ();
-  gtk_box_pack_start (GTK_BOX (GET_ACTION_AREA (GTK_DIALOG (dialog))),
-                      label, TRUE, TRUE, 0);
-
-  if (button_type != D_NONE)
-    {
-      cancel = gtk_button_new_from_stock (GTK_STOCK_CANCEL);
-      gtk_container_add (GTK_CONTAINER (label), cancel);
-    }
-
-  ok = gtk_button_new_from_stock (GTK_STOCK_OK);
-  gtk_container_add (GTK_CONTAINER (label), ok);
-
-  gtk_window_set_position (GTK_WINDOW (dialog), GTK_WIN_POS_CENTER);
-  gtk_container_set_border_width (GTK_CONTAINER (dialog), 10);
-  gtk_window_set_title (GTK_WINDOW (dialog), progclass);
-  SET_CAN_DEFAULT (ok);
-  gtk_widget_show (ok);
-  gtk_widget_grab_focus (ok);
-
-  if (cancel)
-    {
-      SET_CAN_DEFAULT (cancel);
-      gtk_widget_show (cancel);
-    }
-  gtk_widget_show (label);
-  gtk_widget_show (dialog);
-
-  if (button_type != D_NONE)
-    {
-      GtkSignalFunc fn;
-      switch (button_type) {
-      case D_LAUNCH: fn = GTK_SIGNAL_FUNC (warning_dialog_restart_cb); break;
-      case D_GNOME:  fn = GTK_SIGNAL_FUNC (warning_dialog_killg_cb);   break;
-      case D_KDE:    fn = GTK_SIGNAL_FUNC (warning_dialog_killk_cb);   break;
-      default: abort(); break;
-      }
-      gtk_signal_connect_object (GTK_OBJECT (ok), "clicked", fn, 
-                                 (gpointer) dialog);
-      gtk_signal_connect_object (GTK_OBJECT (cancel), "clicked",
-                                 GTK_SIGNAL_FUNC (warning_dialog_dismiss_cb),
-                                 (gpointer) dialog);
-    }
-  else
-    {
-      gtk_signal_connect_object (GTK_OBJECT (ok), "clicked",
-                                 GTK_SIGNAL_FUNC (warning_dialog_dismiss_cb),
-                                 (gpointer) dialog);
-    }
-
-  gdk_window_set_transient_for (GET_WINDOW (GTK_WIDGET (dialog)),
-                                GET_WINDOW (GTK_WIDGET (parent)));
-
-  gtk_window_present (GTK_WINDOW (dialog));
-
-  free (msg);
-  return True;
-}
-
-
-static void
-run_cmd (state *s, Atom command, int arg)
-{
-  char *err = 0;
-  int status;
-
-  flush_dialog_changes_and_save (s);
-
-  if (s->debug_p)
-    fprintf (stderr, "%s: command: %s %d\n", blurb(),
-             XGetAtomName (GDK_DISPLAY(), command), arg);
-  status = xscreensaver_command (GDK_DISPLAY(), command, arg, False, &err);
-
-  /* Kludge: ignore the spurious "window unexpectedly deleted" errors... */
-  if (status < 0 && err && strstr (err, "unexpectedly deleted"))
-    status = 0;
-
-  if (status < 0)
-    {
-      char buf [255];
-      if (err)
-        sprintf (buf, "Error:\n\n%s", err);
-      else
-        strcpy (buf, "Unknown error!");
-      warning_dialog (s->toplevel_widget, buf, D_NONE, 100);
-    }
-  if (err) free (err);
-
-  sensitize_menu_items (s, True);
-  force_dialog_repaint (s);
-}
-
-
-static void
-run_hack (state *s, int list_elt, Bool report_errors_p)
-{
-  int hack_number;
-  char *err = 0;
-  int status;
-
-  if (list_elt < 0) return;
-  hack_number = s->list_elt_to_hack_number[list_elt];
+  if (!s->dpy) return;
+  if (list_elt < 0) return;
+  hack_number = s->list_elt_to_hack_number[list_elt];
 
   flush_dialog_changes_and_save (s);
   schedule_preview (s, 0);
 
   if (s->debug_p)
     fprintf (stderr, "%s: command: DEMO %d\n", blurb(), hack_number + 1);
-  status = xscreensaver_command (GDK_DISPLAY(), XA_DEMO, hack_number + 1,
-                                 False, &err);
+  status = xscreensaver_command (s->dpy, XA_DEMO, hack_number + 1,
+                                 FALSE, &err);
 
   if (status < 0 && report_errors_p)
     {
@@ -592,11 +690,8 @@ run_hack (state *s, int list_elt, Bool report_errors_p)
           if (status < 0)
             {
               char buf [255];
-              if (err)
-                sprintf (buf, "Error:\n\n%s", err);
-              else
-                strcpy (buf, "Unknown error!");
-              warning_dialog (s->toplevel_widget, buf, D_NONE, 100);
+              sprintf (buf, "%.100s", err ? err : _("Unknown error!"));
+              warning_dialog (s->window, _("Error"), buf);
             }
         }
       else
@@ -604,44 +699,39 @@ run_hack (state *s, int list_elt, Bool report_errors_p)
           /* The error is that the daemon isn't running;
              offer to restart it.
            */
-          const char *d = DisplayString (GDK_DISPLAY());
+          const char *d = DisplayString (s->dpy);
           char msg [1024];
           sprintf (msg,
-                   _("Warning:\n\n"
-                     "The XScreenSaver daemon doesn't seem to be running\n"
+                   _("The XScreenSaver daemon doesn't seem to be running\n"
                      "on display \"%.25s\".  Launch it now?"),
                    d);
-          warning_dialog (s->toplevel_widget, msg, D_LAUNCH, 1);
+          warning_dialog_1 (s->window, _("Warning"), msg, D_LAUNCH);
         }
     }
 
   if (err) free (err);
 
-  sensitize_menu_items (s, False);
+  sensitize_menu_items (s, FALSE);
 }
 
 
-/* Button callbacks, referenced by xscreensaver.ui.
- */
+/****************************************************************************
 
-/* File menu / Exit */
-G_MODULE_EXPORT void
-exit_menu_cb (GtkAction *menu_action, gpointer user_data)
-{
-  state *s = global_state_kludge;  /* I hate C so much... */
-  flush_dialog_changes_and_save (s);
-  kill_preview_subproc (s, False);
-  gtk_main_quit ();
-}
+ XScreenSaverWindow callbacks, referenced by demo.ui.
 
-/* Close (X) button */
-static gboolean
-wm_toplevel_close_cb (GtkWidget *widget, GdkEvent *event, gpointer data)
+ ****************************************************************************/
+
+/* File menu / Quit */
+G_MODULE_EXPORT void
+quit_menu_cb (GtkAction *menu_action, gpointer user_data)
 {
-  state *s = (state *) data;
+  XScreenSaverWindow *win = XSCREENSAVER_WINDOW (user_data);
+  state *s = &win->state;
+  if (s->debug_p) fprintf (stderr, "%s: quit menu\n", blurb());
   flush_dialog_changes_and_save (s);
-  gtk_main_quit ();
-  return TRUE;
+  kill_preview_subproc (s, FALSE);
+  g_application_quit (G_APPLICATION (
+    gtk_window_get_application (GTK_WINDOW (win))));
 }
 
 
@@ -649,7 +739,9 @@ wm_toplevel_close_cb (GtkWidget *widget, GdkEvent *event, gpointer data)
 G_MODULE_EXPORT void
 about_menu_cb (GtkAction *menu_action, gpointer user_data)
 {
-  /* Let's just pop up the splash dialog. */
+  XScreenSaverWindow *win = XSCREENSAVER_WINDOW (user_data);
+  state *s = &win->state;
+  if (s->debug_p) fprintf (stderr, "%s: about menu\n", blurb());
   preview_theme_cb (NULL, user_data);
 }
 
@@ -658,15 +750,17 @@ about_menu_cb (GtkAction *menu_action, gpointer user_data)
 G_MODULE_EXPORT void
 doc_menu_cb (GtkAction *menu_action, gpointer user_data)
 {
-  state *s = global_state_kludge;  /* I hate C so much... */
+  XScreenSaverWindow *win = XSCREENSAVER_WINDOW (user_data);
+  state *s = &win->state;
   saver_preferences *p = &s->prefs;
   char *help_command;
 
+  if (s->debug_p) fprintf (stderr, "%s: doc menu\n", blurb());
+
   if (!p->help_url || !*p->help_url)
     {
-      warning_dialog (s->toplevel_widget,
-                      _("Error:\n\n"
-                       "No Help URL has been specified.\n"), D_NONE, 100);
+      warning_dialog (GTK_WINDOW (win), _("Error"),
+                      _("No Help URL has been specified.\n"));
       return;
     }
 
@@ -687,8 +781,10 @@ doc_menu_cb (GtkAction *menu_action, gpointer user_data)
 G_MODULE_EXPORT void
 file_menu_cb (GtkAction *menu_action, gpointer user_data)
 {
-  state *s = global_state_kludge;  /* I hate C so much... */
-  sensitize_menu_items (s, False);
+  XScreenSaverWindow *win = XSCREENSAVER_WINDOW (user_data);
+  state *s = &win->state;
+  if (s->debug_p) fprintf (stderr, "%s: file menu post\n", blurb());
+  sensitize_menu_items (s, FALSE);
 }
 
 
@@ -696,7 +792,9 @@ file_menu_cb (GtkAction *menu_action, gpointer user_data)
 G_MODULE_EXPORT void
 activate_menu_cb (GtkAction *menu_action, gpointer user_data)
 {
-  state *s = global_state_kludge;  /* I hate C so much... */
+  XScreenSaverWindow *win = XSCREENSAVER_WINDOW (user_data);
+  state *s = &win->state;
+  if (s->debug_p) fprintf (stderr, "%s: activate menu\n", blurb());
   run_cmd (s, XA_ACTIVATE, 0);
 }
 
@@ -705,7 +803,9 @@ activate_menu_cb (GtkAction *menu_action, gpointer user_data)
 G_MODULE_EXPORT void
 lock_menu_cb (GtkAction *menu_action, gpointer user_data)
 {
-  state *s = global_state_kludge;  /* I hate C so much... */
+  XScreenSaverWindow *win = XSCREENSAVER_WINDOW (user_data);
+  state *s = &win->state;
+  if (s->debug_p) fprintf (stderr, "%s: lock menu\n", blurb());
   run_cmd (s, XA_LOCK, 0);
 }
 
@@ -714,7 +814,9 @@ lock_menu_cb (GtkAction *menu_action, gpointer user_data)
 G_MODULE_EXPORT void
 kill_menu_cb (GtkAction *menu_action, gpointer user_data)
 {
-  state *s = global_state_kludge;  /* I hate C so much... */
+  XScreenSaverWindow *win = XSCREENSAVER_WINDOW (user_data);
+  state *s = &win->state;
+  if (s->debug_p) fprintf (stderr, "%s: kill menu\n", blurb());
   run_cmd (s, XA_EXIT, 0);
 }
 
@@ -723,11 +825,12 @@ kill_menu_cb (GtkAction *menu_action, gpointer user_data)
 G_MODULE_EXPORT void
 restart_menu_cb (GtkWidget *widget, gpointer user_data)
 {
-  state *s = global_state_kludge;  /* I hate C so much... */
+  XScreenSaverWindow *win = XSCREENSAVER_WINDOW (user_data);
+  state *s = &win->state;
+  if (s->debug_p) fprintf (stderr, "%s: restart menu\n", blurb());
+  if (!s->dpy) return;
   flush_dialog_changes_and_save (s);
-  if (s->debug_p)
-    fprintf (stderr, "%s: command: EXIT\n", blurb());
-  xscreensaver_command (GDK_DISPLAY(), XA_EXIT, 0, False, NULL);
+  xscreensaver_command (s->dpy, XA_EXIT, 0, FALSE, NULL);
   sleep (1);
   if (system ("xscreensaver --splash &") < 0)
     fprintf (stderr, "%s: fork error\n", blurb());
@@ -735,31 +838,33 @@ restart_menu_cb (GtkWidget *widget, gpointer user_data)
   await_xscreensaver (s);
 }
 
+
 static Bool
 xscreensaver_running_p (state *s)
 {
-  Display *dpy = GDK_DISPLAY();
+  Display *dpy = s->dpy;
   char *rversion = 0;
+  if (!dpy) return FALSE;
   server_xscreensaver_version (dpy, &rversion, 0, 0);
   if (!rversion)
-    return False;
+    return FALSE;
   free (rversion);
-  return True;
+  return TRUE;
 }
 
 static void
 await_xscreensaver (state *s)
 {
   int countdown = 5;
-  Bool ok = False;
+  Bool ok = FALSE;
 
   while (!ok && (--countdown > 0))
     if (xscreensaver_running_p (s))
-      ok = True;
+      ok = TRUE;
     else
       sleep (1);    /* If it's not there yet, wait a second... */
 
-  sensitize_menu_items (s, True);
+  sensitize_menu_items (s, TRUE);
 
   if (! ok)
     {
@@ -769,41 +874,19 @@ await_xscreensaver (state *s)
       Bool root_p = (geteuid () == 0);
       
       strcpy (buf, 
-              _("Error:\n\n"
-               "The xscreensaver daemon did not start up properly.\n"
+              _("The xscreensaver daemon did not start up properly.\n"
                "\n"));
 
       if (root_p)
-        strcat (buf, STFU
-/*
-         _("You are running as root.  This usually means that xscreensaver\n"
-            "was unable to contact your X server because access control is\n"
-            "turned on.\n"
-            "\n"
-            "Try running this command:\n"
-            "\n"
-            "                        xhost +localhost\n"
-            "\n"
-            "and then selecting `File / Restart Daemon'.\n"
-            "\n"
-            "Note that turning off access control will allow anyone logged\n"
-            "on to this machine to access your screen, which might be\n"
-            "considered a security problem.  Please read the xscreensaver\n"
-            "manual and FAQ for more information.\n"
-            "\n"
-            "You shouldn't run X as root. Instead, you should log in as a\n"
-            "normal user, and `sudo' as necessary.")
-*/
+        strcat (buf,
           _("You are running as root.  Don't do that.  Instead, you should\n"
             "log in as a normal user and use `sudo' as necessary.")
           );
       else
         strcat (buf, _("Please check your $PATH and permissions."));
 
-      warning_dialog (s->toplevel_widget, buf, D_NONE, 1);
+      warning_dialog (s->window, _("Error"), buf);
     }
-
-  force_dialog_repaint (s);
 }
 
 
@@ -819,9 +902,10 @@ selected_list_element (state *s)
 static int
 demo_write_init_file (state *s, saver_preferences *p)
 {
-  Display *dpy = GDK_DISPLAY();
+  XScreenSaverWindow *win = XSCREENSAVER_WINDOW (s->window);
+  Display *dpy = s->dpy;
 
-  if (!write_init_file (dpy, p, s->short_version, False))
+  if (!write_init_file (dpy, p, s->short_version, FALSE))
     {
       if (s->debug_p)
         fprintf (stderr, "%s: wrote %s\n", blurb(), init_file_name());
@@ -831,14 +915,13 @@ demo_write_init_file (state *s, saver_preferences *p)
     {
       const char *f = init_file_name();
       if (!f || !*f)
-        warning_dialog (s->toplevel_widget,
-                        _("Error:\n\nCouldn't determine init file name!\n"),
-                        D_NONE, 100);
+        warning_dialog (GTK_WINDOW (win), _("Error"), 
+                        _("Couldn't determine init file name!\n"));
       else
         {
           char *b = (char *) malloc (strlen(f) + 1024);
-          sprintf (b, _("Error:\n\nCouldn't write %s\n"), f);
-          warning_dialog (s->toplevel_widget, b, D_NONE, 100);
+          sprintf (b, _("Couldn't write %s\n"), f);
+          warning_dialog (GTK_WINDOW (win), _("Error"), b);
           free (b);
         }
       return -1;
@@ -850,85 +933,38 @@ demo_write_init_file (state *s, saver_preferences *p)
 G_MODULE_EXPORT void
 run_this_cb (GtkButton *button, gpointer user_data)
 {
-  state *s = global_state_kludge;  /* I hate C so much... */
-  int list_elt = selected_list_element (s);
-  if (list_elt < 0) return;
-  flush_dialog_changes_and_save (s);
-  run_hack (s, list_elt, True);
-}
-
-
-/* The "Documentation" button on the Settings dialog */
-G_MODULE_EXPORT void
-manual_cb (GtkButton *button, gpointer user_data)
-{
-  Display *dpy = GDK_DISPLAY();
-  state *s = global_state_kludge;  /* I hate C so much... */
-  saver_preferences *p = &s->prefs;
-  GtkWidget *list_widget = name_to_widget (s, "list");
+  XScreenSaverWindow *win = XSCREENSAVER_WINDOW (user_data);
+  state *s = &win->state;
   int list_elt = selected_list_element (s);
-  int hack_number;
-  char *name, *name2, *cmd, *str;
-  char *oname = 0;
   if (list_elt < 0) return;
-  hack_number = s->list_elt_to_hack_number[list_elt];
-
+  if (s->debug_p) fprintf (stderr, "%s: preview button\n", blurb());
   flush_dialog_changes_and_save (s);
-  ensure_selected_item_visible (list_widget);
-
-  name = strdup (p->screenhacks[hack_number]->command);
-  name2 = name;
-  oname = name;
-  while (isspace (*name2)) name2++;
-  str = name2;
-  while (*str && !isspace (*str)) str++;
-  *str = 0;
-  str = strrchr (name2, '/');
-  if (str) name2 = str+1;
-
-  cmd = get_string_resource (dpy, "manualCommand", "ManualCommand");
-  if (cmd)
-    {
-      char *cmd2 = (char *) malloc (strlen (cmd) + (strlen (name2) * 4) + 100);
-      strcpy (cmd2, "( ");
-      sprintf (cmd2 + strlen (cmd2),
-               cmd,
-               name2, name2, name2, name2);
-      strcat (cmd2, " ) &");
-      if (system (cmd2) < 0)
-        fprintf (stderr, "%s: fork error\n", blurb());
-      free (cmd2);
-    }
-  else
-    {
-      warning_dialog (GTK_WIDGET (button),
-                      _("Error:\n\nno `manualCommand' resource set."),
-                      D_NONE, 100);
-    }
-
-  free (oname);
+  run_hack (s, list_elt, TRUE);
 }
 
 
 static void
 force_list_select_item (state *s, GtkWidget *list, int list_elt, Bool scroll_p)
 {
-  GtkWidget *parent = name_to_widget (s, "scroller");
-  gboolean was = GET_SENSITIVE (parent);
+  XScreenSaverWindow *win = XSCREENSAVER_WINDOW (s->window);
+  GtkWidget *parent = win->scroller;
+  gboolean was = gtk_widget_get_sensitive (parent);
   GtkTreeIter iter;
   GtkTreeModel *model;
   GtkTreeSelection *selection;
 
-  if (!was) gtk_widget_set_sensitive (parent, True);
+  if (!was) gtk_widget_set_sensitive (parent, TRUE);
   model = gtk_tree_view_get_model (GTK_TREE_VIEW (list));
   if (!model) abort();
   if (gtk_tree_model_iter_nth_child (model, &iter, NULL, list_elt))
     {
       selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (list));
       gtk_tree_selection_select_iter (selection, &iter);
+      if (s->debug_p)
+        fprintf (stderr, "%s: select list elt %d\n", blurb(), list_elt);
     }
   if (scroll_p) ensure_selected_item_visible (GTK_WIDGET (list));
-  if (!was) gtk_widget_set_sensitive (parent, False);
+  if (!was) gtk_widget_set_sensitive (parent, FALSE);
 }
 
 
@@ -936,13 +972,14 @@ force_list_select_item (state *s, GtkWidget *list, int list_elt, Bool scroll_p)
 G_MODULE_EXPORT void
 run_next_cb (GtkButton *button, gpointer user_data)
 {
-  state *s = global_state_kludge;  /* I hate C so much... */
-  /* saver_preferences *p = &s->prefs; */
+  XScreenSaverWindow *win = XSCREENSAVER_WINDOW (user_data);
+  state *s = &win->state;
   Bool ops = s->preview_suppressed_p;
-
-  GtkWidget *list_widget = name_to_widget (s, "list");
+  GtkWidget *list_widget = win->list;
   int list_elt = selected_list_element (s);
 
+  if (s->debug_p) fprintf (stderr, "%s: down arrow\n", blurb());
+
   if (list_elt < 0)
     list_elt = 0;
   else
@@ -951,13 +988,13 @@ run_next_cb (GtkButton *button, gpointer user_data)
   if (list_elt >= s->list_count)
     list_elt = 0;
 
-  s->preview_suppressed_p = True;
+  s->preview_suppressed_p = TRUE;
 
   flush_dialog_changes_and_save (s);
-  force_list_select_item (s, list_widget, list_elt, True);
+  force_list_select_item (s, list_widget, list_elt, TRUE);
   populate_demo_window (s, list_elt);
   populate_popup_window (s);
-  run_hack (s, list_elt, False);
+  run_hack (s, list_elt, FALSE);
 
   s->preview_suppressed_p = ops;
 }
@@ -967,13 +1004,14 @@ run_next_cb (GtkButton *button, gpointer user_data)
 G_MODULE_EXPORT void
 run_prev_cb (GtkButton *button, gpointer user_data)
 {
-  state *s = global_state_kludge;  /* I hate C so much... */
-  /* saver_preferences *p = &s->prefs; */
+  XScreenSaverWindow *win = XSCREENSAVER_WINDOW (user_data);
+  state *s = &win->state;
   Bool ops = s->preview_suppressed_p;
-
-  GtkWidget *list_widget = name_to_widget (s, "list");
+  GtkWidget *list_widget = win->list;
   int list_elt = selected_list_element (s);
 
+  if (s->debug_p) fprintf (stderr, "%s: up arrow\n", blurb());
+
   if (list_elt < 0)
     list_elt = s->list_count - 1;
   else
@@ -982,20 +1020,20 @@ run_prev_cb (GtkButton *button, gpointer user_data)
   if (list_elt < 0)
     list_elt = s->list_count - 1;
 
-  s->preview_suppressed_p = True;
+  s->preview_suppressed_p = TRUE;
 
   flush_dialog_changes_and_save (s);
-  force_list_select_item (s, list_widget, list_elt, True);
+  force_list_select_item (s, list_widget, list_elt, TRUE);
   populate_demo_window (s, list_elt);
   populate_popup_window (s);
-  run_hack (s, list_elt, False);
+  run_hack (s, list_elt, FALSE);
 
   s->preview_suppressed_p = ops;
 }
 
 
-/* Writes the given settings into prefs.
-   Returns true if there was a change, False otherwise.
+/* Writes the settings of the given hack into prefs.
+   Returns true if there was a change, FALSE otherwise.
    command and/or visual may be 0, or enabled_p may be -1, meaning "no change".
  */
 static Bool
@@ -1006,7 +1044,7 @@ flush_changes (state *s,
                const char *visual)
 {
   saver_preferences *p = &s->prefs;
-  Bool changed = False;
+  Bool changed = FALSE;
   screenhack *hack;
   int hack_number;
   if (list_elt < 0 || list_elt >= s->list_count)
@@ -1019,7 +1057,7 @@ flush_changes (state *s,
       enabled_p != hack->enabled_p)
     {
       hack->enabled_p = enabled_p;
-      changed = True;
+      changed = TRUE;
       if (s->debug_p)
         fprintf (stderr, "%s: \"%s\": enabled => %d\n",
                  blurb(), hack->name, enabled_p);
@@ -1031,7 +1069,7 @@ flush_changes (state *s,
         {
           if (hack->command) free (hack->command);
           hack->command = strdup (command);
-          changed = True;
+          changed = TRUE;
           if (s->debug_p)
             fprintf (stderr, "%s: \"%s\": command => \"%s\"\n",
                      blurb(), hack->name, command);
@@ -1047,7 +1085,7 @@ flush_changes (state *s,
         {
           if (hack->visual) free (hack->visual);
           hack->visual = strdup (visual);
-          changed = True;
+          changed = TRUE;
           if (s->debug_p)
             fprintf (stderr, "%s: \"%s\": visual => \"%s\"\n",
                      blurb(), hack->name, visual);
@@ -1068,7 +1106,7 @@ hack_time_text (state *s, const char *line, Time *store, Bool sec_p)
     {
       int value;
       if (!sec_p || strchr (line, ':'))
-        value = parse_time ((char *) line, sec_p, True);
+        value = parse_time ((char *) line, sec_p, TRUE);
       else
         {
           char c;
@@ -1082,11 +1120,9 @@ hack_time_text (state *s, const char *line, Time *store, Bool sec_p)
       if (value < 0)
        {
          char b[255];
-         sprintf (b,
-                  _("Error:\n\n"
-                    "Unparsable time format: \"%s\"\n"),
+         sprintf (b, _("Unparsable time format: \"%.100s\"\n"),
                   line);
-         warning_dialog (s->toplevel_widget, b, D_NONE, 100);
+         warning_dialog (s->window, _("Error"), b);
        }
       else
        *store = value;
@@ -1094,155 +1130,6 @@ hack_time_text (state *s, const char *line, Time *store, Bool sec_p)
 }
 
 
-static Bool
-directory_p (const char *path)
-{
-  struct stat st;
-  if (!path || !*path)
-    return False;
-  else if (stat (path, &st))
-    return False;
-  else if (!S_ISDIR (st.st_mode))
-    return False;
-  else
-    return True;
-}
-
-static Bool
-file_p (const char *path)
-{
-  struct stat st;
-  if (!path || !*path)
-    return False;
-  else if (stat (path, &st))
-    return False;
-  else if (S_ISDIR (st.st_mode))
-    return False;
-  else
-    return True;
-}
-
-/* See if the directory has at least one image file under it.
-   Recurses to at most the given depth, chasing symlinks.
-   To do this properly would mean running "xscreensaver-getimage-file"
-   and seeing if it found anything, but that might take a long time to
-   build the cache the first time, so this is close enough.
- */
-static Bool
-image_files_p (const char *path, int max_depth)
-{
-  const char * const exts[] = {
-    "jpg", "jpeg", "pjpeg", "pjpg", "png", "gif", 
-    "tif", "tiff", "xbm", "xpm", "svg",
-  };
-  struct dirent *de;
-  Bool ok = False;
-  DIR *dir = opendir (path);
-  if (!dir) return False;
-
-  while (!ok && (de = readdir (dir)))
-    {
-      struct stat st;
-      const char *f = de->d_name;
-      char *f2;
-      if (*f == '.') continue;
-
-      f2 = (char *) malloc (strlen(path) + strlen(f) + 10);
-      strcpy (f2, path);
-      strcat (f2, "/");
-      strcat (f2, f);
-
-      if (!stat (f2, &st))
-        {
-          if (S_ISDIR (st.st_mode))
-            {
-              if (max_depth > 0 && image_files_p (f2, max_depth - 1))
-                ok = True;
-            }
-          else
-            {
-              int i;
-              const char *ext = strrchr (f, '.');
-              if (ext)
-                for (i = 0; i < countof(exts); i++)
-                  if (!strcasecmp (ext+1, exts[i]))
-                    {
-                      /* fprintf (stderr, "%s: found %s\n", blurb(), f2); */
-                      ok = True;
-                      break;
-                    }
-            }
-        }
-
-      free (f2);
-    }
-
-  closedir (dir);
-  return ok;
-}
-
-
-static char *
-normalize_directory (const char *path)
-{
-  int L;
-  char *p2, *s;
-  if (!path || !*path) return 0;
-  L = strlen (path);
-  p2 = (char *) malloc (L + 2);
-  strcpy (p2, path);
-  if (p2[L-1] == '/')  /* remove trailing slash */
-    p2[--L] = 0;
-
-  for (s = p2; s && *s; s++)
-    {
-      if (*s == '/' &&
-          (!strncmp (s, "/../", 4) ||                  /* delete "XYZ/../" */
-           !strncmp (s, "/..\000", 4)))                        /* delete "XYZ/..$" */
-        {
-          char *s0 = s;
-          while (s0 > p2 && s0[-1] != '/')
-            s0--;
-          if (s0 > p2)
-            {
-              s0--;
-              s += 3;
-              /* strcpy (s0, s); */
-              memmove(s0, s, strlen(s) + 1);
-              s = s0-1;
-            }
-        }
-      else if (*s == '/' && !strncmp (s, "/./", 3)) {  /* delete "/./" */
-        /* strcpy (s, s+2), s--; */
-        memmove(s, s+2, strlen(s+2) + 1);
-        s--;
-       }
-      else if (*s == '/' && !strncmp (s, "/.\000", 3)) /* delete "/.$" */
-        *s = 0, s--;
-    }
-
-  /*
-    Normalize consecutive slashes.
-    Ignore doubled slashes after ":" to avoid mangling URLs.
-  */
-
-  for (s = p2; s && *s; s++){
-    if (*s == ':') continue;
-    if (!s[1] || !s[2]) continue;
-    while (s[1] == '/' && s[2] == '/')
-      /* strcpy (s+1, s+2); */
-      memmove (s+1, s+2, strlen(s+2) + 1);
-  }
-
-  /* and strip trailing whitespace for good measure. */
-  L = strlen(p2);
-  while (isspace(p2[L-1]))
-    p2[--L] = 0;
-
-  return p2;
-}
-
-
 typedef struct {
   state *s;
   int i;
@@ -1264,7 +1151,7 @@ flush_checkbox (GtkTreeModel *model,
 
   if (flush_changes (closure->s, closure->i,
                     checked, 0, 0))
-    *closure->changed = True;
+    *closure->changed = TRUE;
   
   closure->i++;
 
@@ -1298,21 +1185,20 @@ theme_name_strip (const char *s)
 static Bool
 flush_dialog_changes_and_save (state *s)
 {
-  Display *dpy = GDK_DISPLAY();
   saver_preferences *p = &s->prefs;
   saver_preferences P2, *p2 = &P2;
-  GtkTreeView *list_widget = GTK_TREE_VIEW (name_to_widget (s, "list"));
+  XScreenSaverWindow *win = XSCREENSAVER_WINDOW (s->window);
+  GtkTreeView *list_widget = GTK_TREE_VIEW (win->list);
   GtkTreeModel *model = gtk_tree_view_get_model (list_widget);
   FlushForeachClosure closure;
-  Bool changed = False;
-  GtkWidget *w;
+  Bool changed = FALSE;
 
-  if (s->saving_p) return False;
-  s->saving_p = True;
+  if (s->saving_p) return FALSE;
+  s->saving_p = TRUE;
 
   *p2 = *p;
 
-  /* Flush any checkbox changes in the list down into the prefs struct.
+  /* Flush any checkbox changes in the list down into the s2 prefs struct.
    */
   closure.s = s;
   closure.changed = &changed;
@@ -1322,64 +1208,56 @@ flush_dialog_changes_and_save (state *s)
   /* Flush the non-hack-specific settings down into the prefs struct.
    */
 
-# define SECONDS(FIELD,NAME) \
-    w = name_to_widget (s, (NAME)); \
-    hack_time_text (s, gtk_entry_get_text (GTK_ENTRY (w)), (FIELD), True)
-
-# define MINUTES(FIELD,NAME) \
-    w = name_to_widget (s, (NAME)); \
-    hack_time_text (s, gtk_entry_get_text (GTK_ENTRY (w)), (FIELD), False)
-
-# define CHECKBOX(FIELD,NAME) \
-    w = name_to_widget (s, (NAME)); \
-    (FIELD) = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (w))
-
-# define PATHNAME(FIELD,NAME) \
-    w = name_to_widget (s, (NAME)); \
-    (FIELD) = normalize_directory (gtk_entry_get_text (GTK_ENTRY (w)))
-
-# define TEXT(FIELD,NAME) \
-    w = name_to_widget (s, (NAME)); \
-    (FIELD) = (char *) g_strdup(gtk_entry_get_text (GTK_ENTRY (w)))
-
-  MINUTES  (&p2->timeout,         "timeout_spinbutton");
-  MINUTES  (&p2->cycle,           "cycle_spinbutton");
-  CHECKBOX (p2->lock_p,           "lock_button");
-  MINUTES  (&p2->lock_timeout,    "lock_spinbutton");
-
-  CHECKBOX (p2->dpms_enabled_p,   "dpms_button");
-  CHECKBOX (p2->dpms_quickoff_p,  "dpms_quickoff_button");
-  MINUTES  (&p2->dpms_standby,    "dpms_standby_spinbutton");
-  MINUTES  (&p2->dpms_suspend,    "dpms_suspend_spinbutton");
-  MINUTES  (&p2->dpms_off,        "dpms_off_spinbutton");
-
-  CHECKBOX (p2->grab_desktop_p,   "grab_desk_button");
-  CHECKBOX (p2->grab_video_p,     "grab_video_button");
-  CHECKBOX (p2->random_image_p,   "grab_image_button");
-  PATHNAME (p2->image_directory,  "image_text");
-
-#if 0
-  CHECKBOX (p2->verbose_p,        "verbose_button");
-  CHECKBOX (p2->splash_p,         "splash_button");
-#endif
+# define SECONDS(PREF,WIDGET) \
+    hack_time_text (s, gtk_entry_get_text (GTK_ENTRY (win->WIDGET)), \
+                    &(PREF), TRUE)
+# define MINUTES(PREF,WIDGET) \
+    hack_time_text (s, gtk_entry_get_text (GTK_ENTRY (win->WIDGET)), \
+                    &(PREF), FALSE)
+# define CHECKBOX(PREF,WIDGET) \
+    (PREF) = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (win->WIDGET))
+# define PATHNAME(PREF,WIDGET,DIRP) \
+    (PREF) = pathname_tilde ( \
+      gtk_entry_get_text (GTK_ENTRY (win->WIDGET)), TRUE, (DIRP))
+# define TEXT(PREF,WIDGET) \
+    (PREF) = (char *) g_strdup (gtk_entry_get_text (GTK_ENTRY (win->WIDGET)))
+
+  MINUTES  (p2->timeout,         timeout_spinbutton);
+  MINUTES  (p2->cycle,           cycle_spinbutton);
+  CHECKBOX (p2->lock_p,          lock_button);
+  MINUTES  (p2->lock_timeout,    lock_spinbutton);
+
+  CHECKBOX (p2->dpms_enabled_p,  dpms_button);
+  CHECKBOX (p2->dpms_quickoff_p, dpms_quickoff_button);
+  MINUTES  (p2->dpms_standby,    dpms_standby_spinbutton);
+  MINUTES  (p2->dpms_suspend,    dpms_suspend_spinbutton);
+  MINUTES  (p2->dpms_off,        dpms_off_spinbutton);
+
+  CHECKBOX (p2->grab_desktop_p,  grab_desk_button);
+  CHECKBOX (p2->grab_video_p,    grab_video_button);
+  CHECKBOX (p2->random_image_p,  grab_image_button);
+  PATHNAME (p2->image_directory, image_text, TRUE);
 
   {
-    Bool v = False;
-    CHECKBOX (v, "text_host_radio");     if (v) p2->tmode = TEXT_DATE;
-    CHECKBOX (v, "text_radio");          if (v) p2->tmode = TEXT_LITERAL;
-    CHECKBOX (v, "text_file_radio");     if (v) p2->tmode = TEXT_FILE;
-    CHECKBOX (v, "text_program_radio");  if (v) p2->tmode = TEXT_PROGRAM;
-    CHECKBOX (v, "text_url_radio");      if (v) p2->tmode = TEXT_URL;
-    TEXT     (p2->text_literal, "text_entry");
-    PATHNAME (p2->text_file,    "text_file_entry");
-    PATHNAME (p2->text_program, "text_program_entry");
-    PATHNAME (p2->text_program, "text_program_entry");
-    TEXT     (p2->text_url,     "text_url_entry");
+    Bool v = FALSE;
+    Bool od = s->debug_p;
+    s->debug_p = FALSE;
+    CHECKBOX (v, text_host_radio);    if (v) p2->tmode = TEXT_DATE;
+    CHECKBOX (v, text_radio);         if (v) p2->tmode = TEXT_LITERAL;
+    CHECKBOX (v, text_file_radio);    if (v) p2->tmode = TEXT_FILE;
+    CHECKBOX (v, text_program_radio); if (v) p2->tmode = TEXT_PROGRAM;
+    CHECKBOX (v, text_url_radio);     if (v) p2->tmode = TEXT_URL;
+    s->debug_p = od;
   }
 
-  CHECKBOX (p2->fade_p,           "fade_button");
-  CHECKBOX (p2->unfade_p,         "unfade_button");
-  SECONDS  (&p2->fade_seconds,    "fade_spinbutton");
+  TEXT     (p2->text_literal, text_entry);
+  PATHNAME (p2->text_file,    text_file_entry,    FALSE);
+  PATHNAME (p2->text_program, text_program_entry, FALSE);
+  TEXT     (p2->text_url,     text_url_entry);
+
+  CHECKBOX (p2->fade_p,       fade_button);
+  CHECKBOX (p2->unfade_p,     unfade_button);
+  SECONDS  (p2->fade_seconds, fade_spinbutton);
 
 # undef SECONDS
 # undef MINUTES
@@ -1389,7 +1267,7 @@ flush_dialog_changes_and_save (state *s)
 
   /* Map the mode menu to `saver_mode' enum values. */
   {
-    GtkComboBox *opt = GTK_COMBO_BOX (name_to_widget (s, "mode_menu"));
+    GtkComboBox *opt = GTK_COMBO_BOX (win->mode_menu);
     int menu_elt = gtk_combo_box_get_active (opt);
     if (menu_elt < 0 || menu_elt >= countof(mode_menu_order)) abort();
     p2->mode = mode_menu_order[menu_elt];
@@ -1405,10 +1283,11 @@ flush_dialog_changes_and_save (state *s)
 
   /* Theme menu. */
   {
-    GtkComboBox *cbox = GTK_COMBO_BOX (name_to_widget (s, "theme_menu"));
+    Display *dpy = s->dpy;
+    GtkComboBox *cbox = GTK_COMBO_BOX (win->theme_menu);
     char *themes = get_string_resource (dpy, "themeNames", "ThemeNames");
     int menu_index = gtk_combo_box_get_active (cbox);
-    char *token = themes;
+    char *token = themes ? themes : "default";
     char *name, *last;
     int i = 0;
     while ((name = strtok_r (token, ",", &last)))
@@ -1422,7 +1301,7 @@ flush_dialog_changes_and_save (state *s)
                 free (p->dialog_theme);
                 p2->dialog_theme = name2;
                 if (s->debug_p)
-                  fprintf (stderr, "%s: theme => \"%s\"\n", blurb(),
+                  fprintf (stderr, "%s:   theme => \"%s\"\n", blurb(),
                            p2->dialog_theme);
               }
             else
@@ -1434,74 +1313,76 @@ flush_dialog_changes_and_save (state *s)
       }
   }
 
-# define COPY(field, name) \
-  if (p->field != p2->field) { \
-    changed = True; \
-    if (s->debug_p) \
-      fprintf (stderr, "%s: %s => %ld\n", blurb(), \
-               name, (unsigned long) p2->field);   \
-  } \
-  p->field = p2->field
-
-  COPY(mode,             "mode");
-  COPY(selected_hack,    "selected_hack");
-
-  COPY(timeout,        "timeout");
-  COPY(cycle,          "cycle");
-  COPY(lock_p,         "lock_p");
-  COPY(lock_timeout,   "lock_timeout");
-
-  COPY(dpms_enabled_p,  "dpms_enabled_p");
-  COPY(dpms_quickoff_p, "dpms_quickoff_enabled_p");
-  COPY(dpms_standby,    "dpms_standby");
-  COPY(dpms_suspend,    "dpms_suspend");
-  COPY(dpms_off,        "dpms_off");
-
-#if 0
-  COPY(verbose_p,        "verbose_p");
-  COPY(splash_p,         "splash_p");
-#endif
-
-  COPY(tmode,            "tmode");
-
-  COPY(install_cmap_p,   "install_cmap_p");
-  COPY(fade_p,           "fade_p");
-  COPY(unfade_p,         "unfade_p");
-  COPY(fade_seconds,     "fade_seconds");
-
-  COPY(grab_desktop_p, "grab_desktop_p");
-  COPY(grab_video_p,   "grab_video_p");
-  COPY(random_image_p, "random_image_p");
-
-  COPY(dialog_theme,   "dialog_theme");
+  /* Copy any changes from s2 into s, and log them.
+   */
+# undef STR
+# define STR(S) #S
+# define COPY(FIELD)                                     \
+  if (p->FIELD != p2->FIELD) {                           \
+    changed = TRUE;                                      \
+    if (s->debug_p)                                      \
+      fprintf (stderr, "%s:   %s: %ld => %ld\n", blurb(),\
+               STR(FIELD), (unsigned long) p->FIELD,     \
+               (unsigned long) p2->FIELD);               \
+  }                                                      \
+  p->FIELD = p2->FIELD
+
+  COPY(mode);
+  COPY(selected_hack);
+
+  COPY(timeout);
+  COPY(cycle);
+  COPY(lock_p);
+  COPY(lock_timeout);
+
+  COPY(dpms_enabled_p);
+  COPY(dpms_quickoff_p);
+  COPY(dpms_standby);
+  COPY(dpms_suspend);
+  COPY(dpms_off);
+
+  COPY(tmode);
+
+  COPY(install_cmap_p);
+  COPY(fade_p);
+  COPY(unfade_p);
+  COPY(fade_seconds);
+
+  COPY(grab_desktop_p);
+  COPY(grab_video_p);
+  COPY(random_image_p);
+
+  COPY(dialog_theme);
 # undef COPY
 
-# define COPYSTR(FIELD,NAME) \
-  if (!p->FIELD || \
-      !p2->FIELD || \
-      strcmp(p->FIELD, p2->FIELD)) \
-    { \
-      changed = True; \
-      if (s->debug_p) \
-        fprintf (stderr, "%s: %s => \"%s\"\n", blurb(), NAME, p2->FIELD); \
-    } \
-  if (p->FIELD && p->FIELD != p2->FIELD) \
-    free (p->FIELD); \
-  p->FIELD = p2->FIELD; \
+# define COPYSTR(FIELD)                                   \
+  if (!p->FIELD ||                                        \
+      !p2->FIELD ||                                       \
+      strcmp(p->FIELD, p2->FIELD))                        \
+    {                                                     \
+      changed = TRUE;                                     \
+      if (s->debug_p)                                     \
+        fprintf (stderr, "%s:   %s => \"%s\"\n", blurb(), \
+                 STR(FIELD), p2->FIELD);                  \
+    }                                                     \
+  if (p->FIELD && p->FIELD != p2->FIELD)                  \
+    free (p->FIELD);                                      \
+  p->FIELD = p2->FIELD;                                   \
   p2->FIELD = 0
 
-  COPYSTR(image_directory, "image_directory");
-  COPYSTR(text_literal,    "text_literal");
-  COPYSTR(text_file,       "text_file");
-  COPYSTR(text_program,    "text_program");
-  COPYSTR(text_url,        "text_url");
+  COPYSTR(image_directory);
+  COPYSTR(text_literal);
+  COPYSTR(text_file);
+  COPYSTR(text_program);
+  COPYSTR(text_url);
 # undef COPYSTR
 
   populate_prefs_page (s);
 
   if (changed)
     {
-      sync_server_dpms_settings (GDK_DISPLAY(), p);
+      if (s->dpy)
+        sync_server_dpms_settings (s->dpy, p);
       demo_write_init_file (s, p);
 
       /* Tell the xscreensaver daemon to wake up and reload the init file,
@@ -1509,129 +1390,69 @@ flush_dialog_changes_and_save (state *s)
          until the *old* timeout had expired before reloading. */
       if (s->debug_p)
         fprintf (stderr, "%s: command: DEACTIVATE\n", blurb());
-      xscreensaver_command (GDK_DISPLAY(), XA_DEACTIVATE, 0, 0, 0);
+      if (s->dpy)
+        xscreensaver_command (s->dpy, XA_DEACTIVATE, 0, 0, 0);
     }
 
-  s->saving_p = False;
+  s->saving_p = FALSE;
 
   return changed;
 }
 
 
-/* Flush out any changes made in the popup dialog box (where changes
-   take place only when the OK button is clicked.)
- */
-static Bool
-flush_popup_changes_and_save (state *s)
+/* Called when any field in the prefs dialog may have been changed.
+   Referenced by many items in demo.ui. */
+G_MODULE_EXPORT gboolean
+pref_changed_cb (GtkWidget *widget, gpointer user_data)
 {
-  Bool changed = False;
-  saver_preferences *p = &s->prefs;
-  int list_elt = selected_list_element (s);
-
-  GtkEntry *cmd = GTK_ENTRY (name_to_widget (s, "cmd_text"));
-  GtkComboBoxEntry *vis =
-    GTK_COMBO_BOX_ENTRY (name_to_widget (s, "visual_combo"));
-  GtkEntry *visent = GTK_ENTRY (gtk_bin_get_child (GTK_BIN (vis)));
-
-  const char *visual = gtk_entry_get_text (visent);
-  const char *command = gtk_entry_get_text (cmd);
-
-  char c;
-  unsigned long id;
-
-  if (s->saving_p) return False;
-  s->saving_p = True;
-
-  if (list_elt < 0)
-    goto DONE;
-
-  if (maybe_reload_init_file (s) != 0)
-    {
-      changed = True;
-      goto DONE;
-    }
-
-  /* Sanity-check and canonicalize whatever the user typed into the combo box.
-   */
-  if      (!strcasecmp (visual, ""))                   visual = "";
-  else if (!strcasecmp (visual, "any"))                visual = "";
-  else if (!strcasecmp (visual, "default"))            visual = "Default";
-  else if (!strcasecmp (visual, "default-n"))          visual = "Default-N";
-  else if (!strcasecmp (visual, "default-i"))          visual = "Default-I";
-  else if (!strcasecmp (visual, "best"))               visual = "Best";
-  else if (!strcasecmp (visual, "mono"))               visual = "Mono";
-  else if (!strcasecmp (visual, "monochrome"))         visual = "Mono";
-  else if (!strcasecmp (visual, "gray"))               visual = "Gray";
-  else if (!strcasecmp (visual, "grey"))               visual = "Gray";
-  else if (!strcasecmp (visual, "color"))              visual = "Color";
-  else if (!strcasecmp (visual, "gl"))                 visual = "GL";
-  else if (!strcasecmp (visual, "staticgray"))         visual = "StaticGray";
-  else if (!strcasecmp (visual, "staticcolor"))        visual = "StaticColor";
-  else if (!strcasecmp (visual, "truecolor"))          visual = "TrueColor";
-  else if (!strcasecmp (visual, "grayscale"))          visual = "GrayScale";
-  else if (!strcasecmp (visual, "greyscale"))          visual = "GrayScale";
-  else if (!strcasecmp (visual, "pseudocolor"))        visual = "PseudoColor";
-  else if (!strcasecmp (visual, "directcolor"))        visual = "DirectColor";
-  else if (1 == sscanf (visual, " %lu %c", &id, &c))   ;
-  else if (1 == sscanf (visual, " 0x%lx %c", &id, &c)) ;
-  else
-    {
-      gdk_beep ();                               /* unparsable */
-      visual = "";
-      gtk_entry_set_text (visent, _("Any"));
-    }
+  XScreenSaverWindow *win = XSCREENSAVER_WINDOW (user_data);
+  state *s = &win->state;
 
-  changed = flush_changes (s, list_elt, -1, command, visual);
-  if (changed)
+  if (s->debug_p)
     {
-      changed = demo_write_init_file (s, p);
-
-      /* Do this to re-launch the hack if (and only if) the command line
-         has changed. */
-      populate_demo_window (s, selected_list_element (s));
+      if (s->initializing_p)
+        fprintf (stderr, "%s:   (pref changed)\n", blurb());
+      else
+        fprintf (stderr, "%s: pref changed\n", blurb());
     }
 
- DONE:
-  s->saving_p = False;
-  return changed;
-}
-
-
-/* Called when any field in the prefs dialog may have been changed.
-   Referenced by many items in xscreensaver.ui. */
-G_MODULE_EXPORT void
-pref_changed_cb (GtkWidget *widget, gpointer user_data)
-{
-  state *s = global_state_kludge;  /* I hate C so much... */
   if (! s->initializing_p)
     {
-      s->initializing_p = True;
+      s->initializing_p = TRUE;
       flush_dialog_changes_and_save (s);
-      s->initializing_p = False;
+      s->initializing_p = FALSE;
     }
+  return GDK_EVENT_PROPAGATE;
 }
 
+
 /* Same as pref_changed_cb but different. */
 G_MODULE_EXPORT gboolean
 pref_changed_event_cb (GtkWidget *widget, GdkEvent *event, gpointer user_data)
 {
   pref_changed_cb (widget, user_data);
-  return FALSE;
+  return GDK_EVENT_PROPAGATE;
 }
 
+
 /* Callback on menu items in the "mode" options menu.
  */
 G_MODULE_EXPORT void
 mode_menu_item_cb (GtkWidget *widget, gpointer user_data)
 {
-  state *s = (state *) user_data;
+  XScreenSaverWindow *win = XSCREENSAVER_WINDOW (user_data);
+  state *s = &win->state;
   saver_preferences *p = &s->prefs;
-  GtkWidget *list = name_to_widget (s, "list");
+  GtkWidget *list = win->list;
   int list_elt;
 
   int menu_index = gtk_combo_box_get_active (GTK_COMBO_BOX (widget));
   saver_mode new_mode = mode_menu_order[menu_index];
 
+  if (s->initializing_p) return;  /* Called as a spurious side-effect */
+
+  if (s->debug_p) fprintf (stderr, "%s: mode menu\n", blurb());
+
   /* Keep the same list element displayed as before; except if we're
      switching *to* "one screensaver" mode from any other mode, set
      "the one" to be that which is currently selected.
@@ -1645,7 +1466,7 @@ mode_menu_item_cb (GtkWidget *widget, gpointer user_data)
     p->mode = new_mode;
     populate_demo_window (s, list_elt);
     populate_popup_window (s);
-    force_list_select_item (s, list, list_elt, True);
+    force_list_select_item (s, list, list_elt, TRUE);
     p->mode = old_mode;  /* put it back, so the init file gets written */
   }
 
@@ -1653,12 +1474,42 @@ mode_menu_item_cb (GtkWidget *widget, gpointer user_data)
 }
 
 
+/* Remove the "random-same" item from the screen saver mode menu
+   (we don't display that unless there are multiple screens.)
+ */
+static void
+hide_mode_menu_random_same (state *s)
+{
+  XScreenSaverWindow *win = XSCREENSAVER_WINDOW (s->window);
+  GtkComboBox *opt = GTK_COMBO_BOX (win->mode_menu);
+  GtkTreeModel *list = gtk_combo_box_get_model (opt);
+  unsigned int i;
+  for (i = 0; i < countof(mode_menu_order); i++)
+    {
+      if (mode_menu_order[i] == RANDOM_HACKS_SAME)
+        {
+          GtkTreeIter iter;
+          gtk_tree_model_iter_nth_child (list, &iter, NULL, i);
+          gtk_list_store_remove (GTK_LIST_STORE (list), &iter);
+          break;
+        }
+    }
+
+  /* recompute option-menu size */
+  gtk_widget_unrealize (GTK_WIDGET (opt));
+  gtk_widget_realize (GTK_WIDGET (opt));
+}
+
+
 /* Called when a new tab is selected. */
 G_MODULE_EXPORT void
-switch_page_cb (GtkNotebook *notebook, GtkNotebookPage *page,
+switch_page_cb (GtkNotebook *notebook, GtkWidget *page,
                 gint page_num, gpointer user_data)
 {
-  state *s = global_state_kludge;  /* I hate C so much... */
+  XScreenSaverWindow *win = XSCREENSAVER_WINDOW (user_data);
+  state *s = &win->state;
+
+  if (s->debug_p) fprintf (stderr, "%s: tab changed\n", blurb());
   pref_changed_cb (GTK_WIDGET (notebook), user_data);
 
   /* If we're switching to page 0, schedule the current hack to be run.
@@ -1672,38 +1523,44 @@ switch_page_cb (GtkNotebook *notebook, GtkNotebookPage *page,
     schedule_preview (s, 0);
 }
 
+
 /* Called when a line is double-clicked in the saver list. */
 static void
-list_activated_cb (GtkTreeView       *list,
-                  GtkTreePath       *path,
-                  GtkTreeViewColumn *column,
-                  gpointer           data)
+list_activated_cb (GtkTreeView *list, GtkTreePath *path,
+                  GtkTreeViewColumn *column, gpointer data)
 {
   state *s = data;
   char *str;
   int list_elt;
 
-  if (gdk_pointer_is_grabbed()) return;
+  if (s->debug_p) fprintf (stderr, "%s: list activated\n", blurb());
+
+  /* I did this in Gtk 2 and I don't remember why:
+     if (gdk_pointer_is_grabbed()) return;
+     I don't understand how to use gdk_display_device_is_grabbed().
+   */
 
   str = gtk_tree_path_to_string (path);
   list_elt = strtol (str, NULL, 10);
   g_free (str);
 
   if (list_elt >= 0)
-    run_hack (s, list_elt, True);
+    run_hack (s, list_elt, TRUE);
 }
 
 /* Called when a line is selected/highlighted in the saver list. */
 static void
 list_select_changed_cb (GtkTreeSelection *selection, gpointer data)
 {
-  state *s = (state *)data;
+  state *s = (state *) data;
   GtkTreeModel *model;
   GtkTreeIter iter;
   GtkTreePath *path;
   char *str;
   int list_elt;
  
+  if (s->debug_p) fprintf (stderr, "%s: list selection changed\n", blurb());
+
   if (!gtk_tree_selection_get_selected (selection, &model, &iter))
     return;
 
@@ -1732,14 +1589,13 @@ list_select_changed_cb (GtkTreeSelection *selection, gpointer data)
  */
 static void
 list_checkbox_cb (GtkCellRendererToggle *toggle,
-                 gchar                 *path_string,
-                 gpointer               data)
+                 gchar *path_string, gpointer data)
 {
   state *s = (state *) data;
 
-  GtkScrolledWindow *scroller =
-    GTK_SCROLLED_WINDOW (name_to_widget (s, "scroller"));
-  GtkTreeView *list = GTK_TREE_VIEW (name_to_widget (s, "list"));
+  XScreenSaverWindow *win = XSCREENSAVER_WINDOW (s->window);
+  GtkScrolledWindow *scroller = GTK_SCROLLED_WINDOW (win->scroller);
+  GtkTreeView *list = GTK_TREE_VIEW (win->list);
   GtkTreeModel *model = gtk_tree_view_get_model (list);
   GtkTreePath *path = gtk_tree_path_new_from_string (path_string);
   GtkTreeIter iter;
@@ -1749,6 +1605,8 @@ list_checkbox_cb (GtkCellRendererToggle *toggle,
 
   int list_elt;
 
+  if (s->debug_p) fprintf (stderr, "%s: list checkbox\n", blurb());
+
   if (!gtk_tree_model_get_iter (model, &iter, path))
     {
       g_warning ("bad path: %s", path_string);
@@ -1768,10 +1626,10 @@ list_checkbox_cb (GtkCellRendererToggle *toggle,
 
   /* remember previous scroll position of the top of the list */
   adj = gtk_scrolled_window_get_vadjustment (scroller);
-  scroll_top = GET_ADJ_VALUE (adj);
+  scroll_top = gtk_adjustment_get_value (adj);
 
   flush_dialog_changes_and_save (s);
-  force_list_select_item (s, GTK_WIDGET (list), list_elt, False);
+  force_list_select_item (s, GTK_WIDGET (list), list_elt, FALSE);
   populate_demo_window (s, list_elt);
   populate_popup_window (s);
   
@@ -1806,99 +1664,102 @@ validate_image_directory_quick (state *s)
   if (!warn) return;
 
   sprintf (buf,
-    _("Warning: %s:\n\n"
-      "\"%.100s\"\n\n"
+    _("%.100s:\n\n"
+      "        %.100s\n\n"
       "Select the 'Advanced' tab and choose a directory with some\n"
       "pictures in it, or you're going to see a lot of boring colorbars!"),
            warn,
-           p->image_directory);
-  warning_dialog (s->toplevel_widget, buf, D_NONE, 3);
+           (p->image_directory ? p->image_directory : ""));
+  warning_dialog (s->window, _("Warning"), buf);
 }
 
 
-static Bool validate_image_directory_cancelled_p;
-
 /* "Cancel" button on the validate image directory progress dialog. */
 static void
-validate_image_directory_cancel_cb (GtkWidget *widget, gpointer user_data)
+validate_image_directory_cancel_cb (GtkDialog *dialog, gint response_id,
+                                    gpointer user_data)
 {
-  validate_image_directory_cancelled_p = True;
-  warning_dialog_dismiss_cb (widget, user_data);
+  Bool *closed = (Bool *) user_data;
+  *closed = TRUE;
+  gtk_widget_destroy (GTK_WIDGET (dialog));
 }
 
-/* Close (X) button on the validate image directory progress dialog. */
-static gboolean
-validate_image_directory_close_cb (GtkWidget *widget, GdkEvent *event,
-                                   gpointer data)
+
+typedef struct {
+  GtkWidget *dialog;
+  int timer_id;
+} validate_timer_closure;
+
+static int
+validate_timer_show (gpointer data)
 {
-  validate_image_directory_cancel_cb (widget, data);
-  return TRUE;
+  validate_timer_closure *vtc = (validate_timer_closure *) data;
+  gtk_widget_show_all (vtc->dialog);
+  vtc->timer_id = 0;
+  return FALSE;
 }
 
 
-
 /* If the directory or URL does not have images in it, pop up a warning
    dialog and return false. This happens when the imageDirectory preference
    is edited, and might be slow.
+
+   It does this by running "xscreensaver-getimage-file", which has the side
+   effect of populating the image cache for that directory.  Since that will
+   take a while if there are a lot of files, this also pops up a progress
+   dialog with a spinner in it, and a cancel button.  That progress dialog
+   only pops up if the validation has already been running for a little
+   while, so that it doesn't flicker for small or pre-cached directories.
  */
 static Bool
 validate_image_directory (state *s, const char *path)
 {
-  GtkWidget *parent = s->toplevel_widget;
-  GtkWidget *dialog = gtk_dialog_new ();
-  GtkWidget *label = 0;
-  GtkWidget *cancel = 0;
+  validate_timer_closure vtc;
   char buf[1024];
   char err[1024];
+  GtkWidget *dialog, *content_area, *label, *spinner;
+  int margin = 32;
+  Bool closed_p = FALSE;
 
-  sprintf (buf, _("Populating image cache for \"%.100s\"..."), path);
+  dialog = gtk_dialog_new_with_buttons (_("XScreenSaver Image Cache"),
+                                        s->window,
+                                        GTK_DIALOG_DESTROY_WITH_PARENT,
+                                        _("_Cancel"), GTK_RESPONSE_CLOSE,
+                                        NULL);
 
+  sprintf (buf, _("Populating image cache for \"%.100s\"..."), path);
+  content_area = gtk_dialog_get_content_area (GTK_DIALOG (dialog));
   label = gtk_label_new (buf);
-  gtk_label_set_selectable (GTK_LABEL (label), TRUE);
-  gtk_box_pack_start (GTK_BOX (GET_CONTENT_AREA (GTK_DIALOG (dialog))),
-                      label, TRUE, TRUE, 0);
-  gtk_widget_show (label);
-
-  label = gtk_label_new ("");
-  gtk_box_pack_start (GTK_BOX (GET_CONTENT_AREA (GTK_DIALOG (dialog))),
-                      label, TRUE, TRUE, 0);
-  gtk_widget_show (label);
-
-  label = gtk_hbutton_box_new ();
-  gtk_box_pack_start (GTK_BOX (GET_ACTION_AREA (GTK_DIALOG (dialog))),
-                      label, TRUE, TRUE, 0);
-
-  cancel = gtk_button_new_from_stock (GTK_STOCK_CANCEL);
-  gtk_container_add (GTK_CONTAINER (label), cancel);
-
-  gtk_window_set_position (GTK_WINDOW (dialog), GTK_WIN_POS_CENTER);
-  gtk_container_set_border_width (GTK_CONTAINER (dialog), 10);
-  gtk_window_set_title (GTK_WINDOW (dialog), progclass);
-  SET_CAN_DEFAULT (cancel);
-  gtk_widget_show (cancel);
-  gtk_widget_grab_focus (cancel);
-  gtk_widget_show (label);
-  gtk_widget_show (dialog);
-
-  validate_image_directory_cancelled_p = False;
-
-  gtk_signal_connect_object (GTK_OBJECT (cancel), "clicked",
-                         GTK_SIGNAL_FUNC (validate_image_directory_cancel_cb),
-                             (gpointer) dialog);
-  gtk_signal_connect (GTK_OBJECT (dialog), "delete_event",
-                      GTK_SIGNAL_FUNC (validate_image_directory_close_cb),
-                      (gpointer *) dialog);
-
-  gdk_window_set_transient_for (GET_WINDOW (GTK_WIDGET (dialog)),
-                                GET_WINDOW (GTK_WIDGET (parent)));
-
-  gtk_window_present (GTK_WINDOW (dialog));
+
+  gtk_widget_set_margin_start (label, margin);
+  gtk_widget_set_margin_end (label, margin);
+  gtk_widget_set_margin_top (label, margin);
+  gtk_widget_set_margin_bottom (label, margin / 2);
+  gtk_container_add (GTK_CONTAINER (content_area), label);
+
+  spinner = gtk_spinner_new();
+  gtk_spinner_start (GTK_SPINNER (spinner));
+  gtk_container_add (GTK_CONTAINER (content_area), spinner);
+  gtk_window_set_resizable (GTK_WINDOW (dialog), FALSE);
+
+  g_signal_connect (dialog, "response",
+                    G_CALLBACK (validate_image_directory_cancel_cb),
+                    &closed_p);
+  g_signal_connect (dialog, "close",
+                    G_CALLBACK (validate_image_directory_cancel_cb),
+                    &closed_p);
+
+  /* Only pop up the dialog box with the spinner if this has already taken
+     a little while, so that if it completes immediately, we don't flicker.
+   */
+  vtc.dialog = dialog;
+  vtc.timer_id = g_timeout_add (1000, validate_timer_show, &vtc);
 
   while (gtk_events_pending ())  /* Paint the window now. */
     gtk_main_iteration ();
 
   {
-    Display *dpy = GDK_DISPLAY();
+    Display *dpy = s->dpy;
     pid_t forked;
     int fds [2];
     int in, out;
@@ -1971,7 +1832,7 @@ validate_image_directory (state *s, const char *path)
               fd_set rset;
               struct timeval tv;
               tv.tv_sec  = 0;
-              tv.tv_usec = 1000000 / 10;
+              tv.tv_usec = 1000000 / 10;    /* Repaint widgets at 10 fps */
               FD_ZERO (&rset);
               FD_SET (in, &rset);
               if (0 < select (in+1, &rset, 0, 0, &tv))
@@ -1980,7 +1841,7 @@ validate_image_directory (state *s, const char *path)
                   if (n <= 0)
                     {
                       if (s->debug_p)
-                        fprintf (stderr, "%s: read EOF\n", blurb());
+                        fprintf (stderr, "%s: %s: read EOF\n", blurb(), av[0]);
                       break;
                     }
                   else
@@ -1990,15 +1851,16 @@ validate_image_directory (state *s, const char *path)
                       *ss = 0;
 
                       if (s->debug_p)
-                        fprintf (stderr, "%s: read: \"%s\"\n", blurb(),
-                                 ss - n);
+                        fprintf (stderr, "%s: %s: read: \"%s\"\n", blurb(),
+                                 av[0], ss - n);
                     }
                 }
 
+              /* Service Gtk events and timers */
               while (gtk_events_pending ())
                 gtk_main_iteration ();
 
-              if (validate_image_directory_cancelled_p)
+              if (closed_p)
                 {
                   kill (forked, SIGTERM);
 
@@ -2023,198 +1885,152 @@ validate_image_directory (state *s, const char *path)
       }
   }
 
-  if (! validate_image_directory_cancelled_p)
-    {
-      if (s->debug_p)
-        fprintf (stderr, "%s: dismiss\n", blurb());
-      warning_dialog_dismiss_cb (dialog, dialog);
-    }
+  if (vtc.timer_id)   /* Remove the popup timer if it hasn't fired. */
+    g_source_remove (vtc.timer_id);
+
+  if (s->debug_p)
+    fprintf (stderr, "%s: dismiss\n", blurb());
+
+  if (! closed_p)
+    gtk_widget_destroy (dialog);
 
  FAIL:
   if (*err)
     {
-      sprintf (buf, _("Warning:\n\n%s\n"), err);
-      warning_dialog (s->toplevel_widget, buf, D_NONE, 1);
-      return False;
+      warning_dialog (s->window, _("Warning"), err);
+      return FALSE;
     }
 
-  return True;
+  return TRUE;
 }
 
 
-typedef struct {
-  state *state;
-  GtkFileSelection *widget;
-} file_selection_data;
-
-
-
 /* Called when the imageDirectory text field is edited directly (focus-out).
  */
 G_MODULE_EXPORT gboolean
 image_text_pref_changed_event_cb (GtkWidget *widget, GdkEvent *event,
                                   gpointer user_data)
 {
-  state *s = global_state_kludge;  /* I hate C so much... */
+  XScreenSaverWindow *win = XSCREENSAVER_WINDOW (user_data);
+  state *s = &win->state;
   saver_preferences *p = &s->prefs;
-  GtkEntry *w = GTK_ENTRY (name_to_widget (s, "image_text"));
-  const char *path = gtk_entry_get_text (w);
+  GtkEntry *w = GTK_ENTRY (win->image_text);
+  const char *str = gtk_entry_get_text (w);
+  char *path = pathname_tilde (str, TRUE, TRUE);
 
-  if (p->image_directory && !strcmp(p->image_directory, path))
+  if (s->debug_p) fprintf (stderr, "%s: imagedir text edited\n", blurb());
+
+  if (p->image_directory && strcmp(p->image_directory, path))
     {
+      if (s->debug_p)
+        fprintf (stderr, "%s: imagedir validating \"%s\" -> \"%s\"\n", blurb(),
+                 p->image_directory, path);
       if (! validate_image_directory (s, path))
-        /* Don't save the bad new value into the preferences. */
-        return FALSE;
+        {
+          /* Don't save the bad new value into the preferences. */
+          free (path);
+          return  GDK_EVENT_PROPAGATE;
+        }
     }
 
-  return pref_changed_event_cb (widget, event, user_data);
+  free (path);
+  pref_changed_event_cb (widget, event, user_data);
+  return GDK_EVENT_PROPAGATE;
 }
 
 
-static void
-store_image_directory (GtkWidget *button, gpointer user_data)
+/* Run a modal file selector dialog.
+   Select a file, directory, or program.
+   Normalize the resultant path and store it into the string pointer.
+   Also update the text field with the new path.
+   Returns true if any changes made.
+ */
+gboolean
+file_chooser (GtkWindow *parent, GtkEntry *entry, char **retP,
+              const char *title, gboolean verbose_p,
+              gboolean dir_p, gboolean program_p)
 {
-  file_selection_data *fsd = (file_selection_data *) user_data;
-  state *s = fsd->state;
-  GtkFileSelection *selector = fsd->widget;
-  saver_preferences *p = &s->prefs;
-  char *path =
-    normalize_directory (gtk_file_selection_get_filename (selector));
-
-  if (s->debug_p)
-    fprintf (stderr, "%s: selected \"%s\n", blurb(), path);
-
-  if (! validate_image_directory (s, path))
-    {
-      /* Don't save the bad new value into the preferences. */
-      free (path);
-      return;
-    }
-
-  if (p->image_directory && !strcmp(p->image_directory, path))
+  gint res;
+  gboolean changed_p = FALSE;
+  GtkWidget *dialog =
+    gtk_file_chooser_dialog_new (title, parent,
+                                 (dir_p
+                                  ? GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER
+                                  : GTK_FILE_CHOOSER_ACTION_OPEN),
+                                 _("_Cancel"), GTK_RESPONSE_CANCEL,
+                                 _("_Select"), GTK_RESPONSE_ACCEPT,
+                                 NULL);
+  const char *old = gtk_entry_get_text (entry);  /* not *retP */
+
+  if (*old)
     {
-      free (path);
-      return;  /* no change */
-    }
-
-  if (p->image_directory) free (p->image_directory);
-  p->image_directory = path;
-
-  gtk_entry_set_text (GTK_ENTRY (name_to_widget (s, "image_text")),
-                      (p->image_directory ? p->image_directory : ""));
-  demo_write_init_file (s, p);
-}
-
-
-static void
-store_text_file (GtkWidget *button, gpointer user_data)
-{
-  file_selection_data *fsd = (file_selection_data *) user_data;
-  state *s = fsd->state;
-  GtkFileSelection *selector = fsd->widget;
-  GtkWidget *top = s->toplevel_widget;
-  saver_preferences *p = &s->prefs;
-  char *path =
-    normalize_directory (gtk_file_selection_get_filename (selector));
+      char *p2 = pathname_tilde (old, FALSE, dir_p);
+      GFile *gf;
 
-  if (p->text_file && !strcmp(p->text_file, path))
-    {
-      free (path);
-      return;  /* no change */
-    }
+      /* If it's a command line and it begins with an absolute path,
+         default to that file and its directory. */
+      if (program_p && (*p2 == '/' || *p2 == '~'))
+        {
+          char *s = strpbrk (p2, " \t\r\n");
+          if (s) *s = 0;
+          program_p = FALSE;
+        }
 
-  if (!file_p (path))
-    {
-      char b[255];
-      sprintf (b, _("Error:\n\n" "File does not exist: \"%s\"\n"), path);
-      warning_dialog (GTK_WIDGET (top), b, D_NONE, 100);
-      free (path);
-      return;
+      gf = g_file_new_for_path (p2);
+      if (! program_p)
+        {
+          gtk_file_chooser_set_file (GTK_FILE_CHOOSER (dialog), gf, NULL);
+          if (verbose_p)
+            fprintf (stderr, "%s:   chooser: default \"%s\"\n", blurb(), p2);
+        }
+      free (p2);
+      g_object_unref (gf);
     }
 
-  if (p->text_file) free (p->text_file);
-  p->text_file = path;
-
-  gtk_entry_set_text (GTK_ENTRY (name_to_widget (s, "text_file_entry")),
-                      (p->text_file ? p->text_file : ""));
-  demo_write_init_file (s, p);
-}
-
-
-static void
-store_text_program (GtkWidget *button, gpointer user_data)
-{
-  file_selection_data *fsd = (file_selection_data *) user_data;
-  state *s = fsd->state;
-  GtkFileSelection *selector = fsd->widget;
-  /*GtkWidget *top = s->toplevel_widget;*/
-  saver_preferences *p = &s->prefs;
-  char *path =
-    normalize_directory (gtk_file_selection_get_filename (selector));
-
-  if (p->text_program && !strcmp(p->text_program, path))
+  res = gtk_dialog_run (GTK_DIALOG (dialog));
+  if (res == GTK_RESPONSE_ACCEPT)
     {
-      free (path);
-      return;  /* no change */
-    }
+      GtkFileChooser *chooser = GTK_FILE_CHOOSER (dialog);
+      char *str = gtk_file_chooser_get_filename (chooser);
+      char *path = pathname_tilde (str, TRUE, dir_p);
+      g_free (str);
 
-# if 0
-  if (!file_p (path))
-    {
-      char b[255];
-      sprintf (b, _("Error:\n\n" "File does not exist: \"%s\"\n"), path);
-      warning_dialog (GTK_WIDGET (top), b, D_NONE, 100);
-      return;
+      if (*retP && !strcmp (*retP, path))
+        {
+          if (verbose_p)
+            fprintf (stderr, "%s:   chooser: unchanged\n", blurb());
+          free (path); /* no change */
+        }
+      else if (dir_p && !directory_p (path))
+        {
+          char b[255];
+          sprintf (b, _("Directory does not exist: \"%.100s\"\n"), path);
+          warning_dialog (parent, _("Error"), b);
+          free (path); /* no change */
+        }
+      else if (!dir_p && !file_p (path))
+        {
+          char b[255];
+          sprintf (b, _("File does not exist: \"%.100s\"\n"), path);
+          warning_dialog (parent, _("Error"), b);
+          free (path); /* no change */
+        }
+      else
+        {
+          if (verbose_p)
+            fprintf (stderr, "%s:   chooser: \"%s\" -> \"%s\n",
+                     blurb(), *retP, path);
+          if (*retP) free (*retP);
+          *retP = path;
+          gtk_entry_set_text (entry, path);
+          changed_p = TRUE;
+        }
     }
-# endif
-
-  if (p->text_program) free (p->text_program);
-  p->text_program = path;
-
-  gtk_entry_set_text (GTK_ENTRY (name_to_widget (s, "text_program_entry")),
-                      (p->text_program ? p->text_program : ""));
-  demo_write_init_file (s, p);
-}
-
-
-
-/* "Cancel" button on any "Browse" file selector */
-static void
-browse_any_dir_cancel (GtkWidget *button, gpointer user_data)
-{
-  file_selection_data *fsd = (file_selection_data *) user_data;
-  gtk_widget_hide (GTK_WIDGET (fsd->widget));
-}
-
-/* "OK" button on imageDirectory "Browse" file selector */
-static void
-browse_image_dir_ok (GtkWidget *button, gpointer user_data)
-{
-  browse_any_dir_cancel (button, user_data);
-  store_image_directory (button, user_data);
-}
-
-/* "OK" button on textProgram "Browse" file selector */
-static void
-browse_text_file_ok (GtkWidget *button, gpointer user_data)
-{
-  browse_any_dir_cancel (button, user_data);
-  store_text_file (button, user_data);
-}
-
-/* "OK" button on textProgram "Browse" file selector */
-static void
-browse_text_program_ok (GtkWidget *button, gpointer user_data)
-{
-  browse_any_dir_cancel (button, user_data);
-  store_text_program (button, user_data);
-}
+  else if (verbose_p)
+    fprintf (stderr, "%s:   chooser: cancelled\n", blurb());
 
-/* Close (X) button on any "Browse" file selector */
-static void
-browse_any_dir_close (GtkWidget *widget, GdkEvent *event, gpointer user_data)
-{
-  browse_any_dir_cancel (widget, user_data);
+  gtk_widget_destroy (dialog);
+  return changed_p;
 }
 
 
@@ -2222,45 +2038,30 @@ browse_any_dir_close (GtkWidget *widget, GdkEvent *event, gpointer user_data)
 G_MODULE_EXPORT void
 browse_image_dir_cb (GtkButton *button, gpointer user_data)
 {
-  state *s = global_state_kludge;  /* I hate C so much... */
+  XScreenSaverWindow *win = XSCREENSAVER_WINDOW (user_data);
+  state *s = &win->state;
   saver_preferences *p = &s->prefs;
-  static file_selection_data *fsd = 0;
-
-  GtkFileSelection *selector = GTK_FILE_SELECTION(
-    gtk_file_selection_new ("Please select the image directory."));
-
-  if (!fsd)
-    fsd = (file_selection_data *) malloc (sizeof (*fsd));  
-
-  fsd->widget = selector;
-  fsd->state = s;
-
-  if (p->image_directory && *p->image_directory)
+  char *old = strdup (p->image_directory);
+
+  if (s->debug_p) fprintf (stderr, "%s: imagedir browse button\n", blurb());
+  if (file_chooser (GTK_WINDOW (win),
+                    GTK_ENTRY (win->image_text),
+                    &p->image_directory,
+                    _("Please select the image directory."),
+                    s->debug_p, TRUE, FALSE))
     {
-      /* It has to end in a slash, I guess? */
-      char *ss = (char *) malloc (strlen (p->image_directory) + 2);
-      strcpy (ss, p->image_directory);
-      if (ss[strlen(ss)-1] != '/')
-        strcat (ss, "/");
-      gtk_file_selection_set_filename (selector, ss);
-      free (ss);
+      if (validate_image_directory (s, p->image_directory))
+        demo_write_init_file (s, p);
+      else
+        {
+          /* Don't save the bad new value into the preferences. */
+          free (p->image_directory);
+          p->image_directory = old;
+          old = 0;
+        }
     }
 
-  gtk_file_selection_hide_fileop_buttons (selector);
-  gtk_signal_connect (GTK_OBJECT (selector->ok_button),
-                      "clicked", GTK_SIGNAL_FUNC (browse_image_dir_ok),
-                      (gpointer *) fsd);
-  gtk_signal_connect (GTK_OBJECT (selector->cancel_button),
-                      "clicked", GTK_SIGNAL_FUNC (browse_any_dir_cancel),
-                      (gpointer *) fsd);
-  gtk_signal_connect (GTK_OBJECT (selector), "delete_event",
-                      GTK_SIGNAL_FUNC (browse_any_dir_close),
-                      (gpointer *) fsd);
-
-  gtk_widget_set_sensitive (GTK_WIDGET (selector->file_list), False);
-
-  gtk_window_set_modal (GTK_WINDOW (selector), True);
-  gtk_widget_show (GTK_WIDGET (selector));
+  if (old) free (old);
 }
 
 
@@ -2268,35 +2069,17 @@ browse_image_dir_cb (GtkButton *button, gpointer user_data)
 G_MODULE_EXPORT void
 browse_text_file_cb (GtkButton *button, gpointer user_data)
 {
-  state *s = global_state_kludge;  /* I hate C so much... */
+  XScreenSaverWindow *win = XSCREENSAVER_WINDOW (user_data);
+  state *s = &win->state;
   saver_preferences *p = &s->prefs;
-  static file_selection_data *fsd = 0;
-
-  GtkFileSelection *selector = GTK_FILE_SELECTION(
-    gtk_file_selection_new ("Please select a text file."));
-
-  if (!fsd)
-    fsd = (file_selection_data *) malloc (sizeof (*fsd));  
-
-  fsd->widget = selector;
-  fsd->state = s;
-
-  if (p->text_file && *p->text_file)
-    gtk_file_selection_set_filename (selector, p->text_file);
-
-  gtk_file_selection_hide_fileop_buttons (selector);
-  gtk_signal_connect (GTK_OBJECT (selector->ok_button),
-                      "clicked", GTK_SIGNAL_FUNC (browse_text_file_ok),
-                      (gpointer *) fsd);
-  gtk_signal_connect (GTK_OBJECT (selector->cancel_button),
-                      "clicked", GTK_SIGNAL_FUNC (browse_any_dir_cancel),
-                      (gpointer *) fsd);
-  gtk_signal_connect (GTK_OBJECT (selector), "delete_event",
-                      GTK_SIGNAL_FUNC (browse_any_dir_close),
-                      (gpointer *) fsd);
 
-  gtk_window_set_modal (GTK_WINDOW (selector), True);
-  gtk_widget_show (GTK_WIDGET (selector));
+  if (s->debug_p) fprintf (stderr, "%s: textfile browse button\n", blurb());
+  if (file_chooser (GTK_WINDOW (win),
+                    GTK_ENTRY (win->text_file_entry),
+                    &p->text_file,
+                    _("Please select a text file."),
+                    s->debug_p, FALSE, FALSE))
+    demo_write_init_file (s, p);
 }
 
 
@@ -2304,35 +2087,17 @@ browse_text_file_cb (GtkButton *button, gpointer user_data)
 G_MODULE_EXPORT void
 browse_text_program_cb (GtkButton *button, gpointer user_data)
 {
-  state *s = global_state_kludge;  /* I hate C so much... */
+  XScreenSaverWindow *win = XSCREENSAVER_WINDOW (user_data);
+  state *s = &win->state;
   saver_preferences *p = &s->prefs;
-  static file_selection_data *fsd = 0;
 
-  GtkFileSelection *selector = GTK_FILE_SELECTION(
-    gtk_file_selection_new ("Please select a text-generating program."));
-
-  if (!fsd)
-    fsd = (file_selection_data *) malloc (sizeof (*fsd));  
-
-  fsd->widget = selector;
-  fsd->state = s;
-
-  if (p->text_program && *p->text_program)
-    gtk_file_selection_set_filename (selector, p->text_program);
-
-  gtk_file_selection_hide_fileop_buttons (selector);
-  gtk_signal_connect (GTK_OBJECT (selector->ok_button),
-                      "clicked", GTK_SIGNAL_FUNC (browse_text_program_ok),
-                      (gpointer *) fsd);
-  gtk_signal_connect (GTK_OBJECT (selector->cancel_button),
-                      "clicked", GTK_SIGNAL_FUNC (browse_any_dir_cancel),
-                      (gpointer *) fsd);
-  gtk_signal_connect (GTK_OBJECT (selector), "delete_event",
-                      GTK_SIGNAL_FUNC (browse_any_dir_close),
-                      (gpointer *) fsd);
-
-  gtk_window_set_modal (GTK_WINDOW (selector), True);
-  gtk_widget_show (GTK_WIDGET (selector));
+  if (s->debug_p) fprintf (stderr, "%s: textprogram browse button\n", blurb());
+  if (file_chooser (GTK_WINDOW (win),
+                    GTK_ENTRY (win->text_program_entry),
+                    &p->text_program,
+                    _("Please select a text-generating program."),
+                    s->debug_p, FALSE, TRUE))
+    demo_write_init_file (s, p);
 }
 
 
@@ -2340,6 +2105,11 @@ browse_text_program_cb (GtkButton *button, gpointer user_data)
 G_MODULE_EXPORT void
 preview_theme_cb (GtkWidget *w, gpointer user_data)
 {
+  XScreenSaverWindow *win = XSCREENSAVER_WINDOW (user_data);
+  state *s = &win->state;
+
+  if (s->debug_p) fprintf (stderr, "%s: preview theme button\n", blurb());
+
   /* Settings button is disabled with --splash --splash so that we don't
      end up with two copies of xscreensaver-settings running. */
   if (system ("xscreensaver-auth --splash --splash &") < 0)
@@ -2351,120 +2121,47 @@ preview_theme_cb (GtkWidget *w, gpointer user_data)
 G_MODULE_EXPORT void
 settings_cb (GtkButton *button, gpointer user_data)
 {
-  state *s = global_state_kludge;  /* I hate C so much... */
+  XScreenSaverWindow *win = XSCREENSAVER_WINDOW (user_data);
+  state *s = &win->state;
+  saver_preferences *p = &s->prefs;
+  XScreenSaverDialog *dialog = XSCREENSAVER_DIALOG (s->dialog);
   int list_elt = selected_list_element (s);
 
+  if (s->debug_p) fprintf (stderr, "%s: settings button\n", blurb());
+
   populate_demo_window (s, list_elt);   /* reset the widget */
   populate_popup_window (s);           /* create UI on popup window */
-  gtk_widget_show (s->popup_widget);
-}
 
-static void
-settings_sync_cmd_text (state *s)
-{
-  GtkWidget *cmd = GTK_WIDGET (name_to_widget (s, "cmd_text"));
-  char *cmd_line = get_configurator_command_line (s->cdata, False);
-  gtk_entry_set_text (GTK_ENTRY (cmd), cmd_line);
-  gtk_entry_set_position (GTK_ENTRY (cmd), strlen (cmd_line));
-  free (cmd_line);
-}
+  /* Pre-select the "Standard" page. */
+  settings_std_cb (NULL, s->dialog);
+  settings_switch_page_cb (GTK_NOTEBOOK (dialog->opt_notebook), NULL, 0,
+                           s->dialog);
 
-/* The "Advanced" button on the settings dialog. */
-G_MODULE_EXPORT void
-settings_adv_cb (GtkButton *button, gpointer user_data)
-{
-  state *s = global_state_kludge;  /* I hate C so much... */
-  GtkNotebook *notebook =
-    GTK_NOTEBOOK (name_to_widget (s, "opt_notebook"));
+  /* If there is no saved position for the dialog, position it to the
+     right of the main window.  See also restore_window_position(),
+     which already ran at startup. */
+  {
+    int win_x, win_y, dialog_x, dialog_y;
+    char dummy;
+    char *old = p->settings_geom;
+
+    if (!old || !*old ||
+        4 != sscanf (old, " %d , %d %d , %d %c",
+                     &win_x, &win_y, &dialog_x, &dialog_y, &dummy))
+      win_x = win_y = dialog_x = dialog_y = -1;
+    
+    if (dialog_x <= 0 && dialog_y <= 0)
+      {
+        int win_w, win_h;
+        gtk_window_get_position (GTK_WINDOW (s->window), &win_x, &win_y);
+        gtk_window_get_size (GTK_WINDOW (s->window), &win_w, &win_h);
+        dialog_x = win_x + win_w + 8;
+        dialog_y = win_y;
+        gtk_window_move (GTK_WINDOW (s->dialog), dialog_x, dialog_y);
+      }
+  }
 
-  settings_sync_cmd_text (s);
-  gtk_notebook_set_page (notebook, 1);
-}
-
-/* The "Standard" button on the settings dialog. */
-G_MODULE_EXPORT void
-settings_std_cb (GtkButton *button, gpointer user_data)
-{
-  state *s = global_state_kludge;  /* I hate C so much... */
-  GtkNotebook *notebook =
-    GTK_NOTEBOOK (name_to_widget (s, "opt_notebook"));
-
-  /* Re-create UI to reflect the in-progress command-line settings. */
-  populate_popup_window (s);
-
-  gtk_notebook_set_page (notebook, 0);
-}
-
-/* The "Reset to Defaults" button on the settings dialog. */
-G_MODULE_EXPORT void
-settings_reset_cb (GtkButton *button, gpointer user_data)
-{
-  state *s = global_state_kludge;  /* I hate C so much... */
-  GtkWidget *cmd = GTK_WIDGET (name_to_widget (s, "cmd_text"));
-  char *cmd_line = get_configurator_command_line (s->cdata, True);
-  gtk_entry_set_text (GTK_ENTRY (cmd), cmd_line);
-  gtk_entry_set_position (GTK_ENTRY (cmd), strlen (cmd_line));
-  free (cmd_line);
-  populate_popup_window (s);
-}
-
-/* Called when "Advanced/Standard" buttons change the displayed page. */
-G_MODULE_EXPORT void
-settings_switch_page_cb (GtkNotebook *notebook, GtkNotebookPage *page,
-                         gint page_num, gpointer user_data)
-{
-  state *s = global_state_kludge;  /* I hate C so much... */
-  GtkWidget *adv = name_to_widget (s, "adv_button");
-  GtkWidget *std = name_to_widget (s, "std_button");
-
-  if (page_num == 0)
-    {
-      gtk_widget_show (adv);
-      gtk_widget_hide (std);
-    }
-  else if (page_num == 1)
-    {
-      gtk_widget_hide (adv);
-      gtk_widget_show (std);
-    }
-  else
-    abort();
-}
-
-
-/* The "Cancel" button on the Settings dialog. */
-G_MODULE_EXPORT void
-settings_cancel_cb (GtkButton *button, gpointer user_data)
-{
-  state *s = global_state_kludge;  /* I hate C so much... */
-  gtk_widget_hide (s->popup_widget);
-}
-
-/* The "Ok" button on the Settings dialog. */
-G_MODULE_EXPORT void
-settings_ok_cb (GtkButton *button, gpointer user_data)
-{
-  state *s = global_state_kludge;  /* I hate C so much... */
-  GtkNotebook *notebook = GTK_NOTEBOOK (name_to_widget (s, "opt_notebook"));
-  int page = gtk_notebook_get_current_page (notebook);
-
-  if (page == 0)
-    /* Regenerate the command-line from the widget contents before saving.
-       But don't do this if we're looking at the command-line page already,
-       or we will blow away what they typed... */
-    settings_sync_cmd_text (s);
-
-  flush_popup_changes_and_save (s);
-  gtk_widget_hide (s->popup_widget);
-}
-
-/* The "Close" (X) button on the Settings dialog. */
-static gboolean
-wm_popup_close_cb (GtkWidget *widget, GdkEvent *event, gpointer data)
-{
-  state *s = (state *) data;
-  settings_cancel_cb (0, (gpointer) s);
-  return TRUE;
+  gtk_widget_show (GTK_WIDGET (s->dialog));
 }
 
 
@@ -2475,18 +2172,19 @@ wm_popup_close_cb (GtkWidget *widget, GdkEvent *event, gpointer data)
 /* Returns the number of the last hack run by the server.
  */
 static int
-server_current_hack (void)
+server_current_hack (state *s)
 {
   Atom type;
   int format;
   unsigned long nitems, bytesafter;
   unsigned char *dataP = 0;
-  Display *dpy = GDK_DISPLAY();
+  Display *dpy = s->dpy;
   int hack_number = -1;
 
+  if (!dpy) return hack_number;
   if (XGetWindowProperty (dpy, RootWindow (dpy, 0), /* always screen #0 */
                           XA_SCREENSAVER_STATUS,
-                          0, 3, False, XA_INTEGER,
+                          0, 3, FALSE, XA_INTEGER,
                           &type, &format, &nitems, &bytesafter,
                           &dataP)
       == Success
@@ -2510,13 +2208,14 @@ server_current_hack (void)
 static void
 scroll_to_current_hack (state *s)
 {
+  XScreenSaverWindow *win = XSCREENSAVER_WINDOW (s->window);
   saver_preferences *p = &s->prefs;
   int hack_number = -1;
 
   if (p->mode == ONE_HACK)                /* in "one" mode, use the one */
     hack_number = p->selected_hack;
   if (hack_number < 0)                    /* otherwise, use the last-run */
-    hack_number = server_current_hack ();
+    hack_number = server_current_hack (s);
   if (hack_number < 0)                    /* failing that, last "one mode" */
     hack_number = p->selected_hack;
   if (hack_number < 0)                    /* failing that, newest hack. */
@@ -2541,8 +2240,8 @@ scroll_to_current_hack (state *s)
   if (hack_number >= 0 && hack_number < p->screenhacks_count)
     {
       int list_elt = s->hack_number_to_list_elt[hack_number];
-      GtkWidget *list = name_to_widget (s, "list");
-      force_list_select_item (s, list, list_elt, True);
+      GtkWidget *list = win->list;
+      force_list_select_item (s, list, list_elt, TRUE);
       populate_demo_window (s, list_elt);
       populate_popup_window (s);
     }
@@ -2552,9 +2251,9 @@ scroll_to_current_hack (state *s)
 static void
 populate_hack_list (state *s)
 {
-  Display *dpy = GDK_DISPLAY();
+  Display *dpy = s->dpy;
   saver_preferences *p = &s->prefs;
-  GtkTreeView *list = GTK_TREE_VIEW (name_to_widget (s, "list"));
+  GtkTreeView *list = GTK_TREE_VIEW (XSCREENSAVER_WINDOW (s->window)->list);
   GtkListStore *model;
   GtkTreeSelection *selection;
   GtkCellRenderer *ren;
@@ -2620,16 +2319,15 @@ populate_hack_list (state *s)
              (but don't actually make it be insensitive, since we still
              want to be able to click on it.)
            */
-          GtkStyle *style = gtk_widget_get_style (GTK_WIDGET (list));
-          GdkColor *fg = &style->fg[GTK_STATE_INSENSITIVE];
-       /* GdkColor *bg = &style->bg[GTK_STATE_INSENSITIVE]; */
+          GtkStyleContext *c =
+            gtk_widget_get_style_context (GTK_WIDGET (list));
+          GdkRGBA fg;
           char *buf = (char *) malloc (strlen (pretty_name) + 100);
-
-          sprintf (buf, "<span foreground=\"#%02X%02X%02X\""
-                      /*     " background=\"#%02X%02X%02X\""  */
-                        ">%s</span>",
-                   fg->red >> 8, fg->green >> 8, fg->blue >> 8,
-                /* bg->red >> 8, bg->green >> 8, bg->blue >> 8, */
+          gtk_style_context_get_color (c, GTK_STATE_FLAG_INSENSITIVE, &fg);
+          sprintf (buf, "<span foreground=\"#%02X%02X%02X\">%s</span>",
+                   (unsigned int) (0xFF * fg.red),
+                   (unsigned int) (0xFF * fg.green),
+                   (unsigned int) (0xFF * fg.blue),
                    pretty_name);
           free (pretty_name);
           pretty_name = buf;
@@ -2644,9 +2342,11 @@ populate_hack_list (state *s)
     }
 }
 
+
 static void
 update_list_sensitivity (state *s)
 {
+  XScreenSaverWindow *win = XSCREENSAVER_WINDOW (s->window);
   saver_preferences *p = &s->prefs;
   Bool sensitive = (p->mode == RANDOM_HACKS ||
                     p->mode == RANDOM_HACKS_SAME ||
@@ -2655,15 +2355,12 @@ update_list_sensitivity (state *s)
                     p->mode == RANDOM_HACKS_SAME);
   Bool blankable = (p->mode != DONT_BLANK);
 
-  GtkWidget *scroller = name_to_widget (s, "scroller");
-  GtkWidget *buttons  = name_to_widget (s, "next_prev_hbox");
-  GtkWidget *blanker  = name_to_widget (s, "blanking_table");
-  GtkTreeView *list      = GTK_TREE_VIEW (name_to_widget (s, "list"));
+  GtkTreeView *list      = GTK_TREE_VIEW (win->list);
   GtkTreeViewColumn *use = gtk_tree_view_get_column (list, COL_ENABLED);
 
-  gtk_widget_set_sensitive (GTK_WIDGET (scroller), sensitive);
-  gtk_widget_set_sensitive (GTK_WIDGET (buttons),  sensitive);
-  gtk_widget_set_sensitive (GTK_WIDGET (blanker),  blankable);
+  gtk_widget_set_sensitive (GTK_WIDGET (win->scroller), sensitive);
+  gtk_widget_set_sensitive (GTK_WIDGET (win->next_prev_hbox),  sensitive);
+  gtk_widget_set_sensitive (GTK_WIDGET (win->blanking_table),  blankable);
   gtk_tree_view_column_set_visible (use, checkable);
 }
 
@@ -2671,18 +2368,16 @@ update_list_sensitivity (state *s)
 static void
 populate_prefs_page (state *s)
 {
-  Display *dpy = GDK_DISPLAY();
+  XScreenSaverWindow *win = XSCREENSAVER_WINDOW (s->window);
+  Display *dpy = s->dpy;
   saver_preferences *p = &s->prefs;
 
-  Bool can_lock_p = True;
+  Bool can_lock_p = TRUE;
 
-  /* Disable all the "lock" controls if locking support was not provided
-     at compile-time, or if running on MacOS. */
-# if defined(NO_LOCKING) || defined(__APPLE__)
-  can_lock_p = False;
+# ifdef NO_LOCKING
+  can_lock_p = FALSE;
 # endif
 
-
   /* If there is only one screen, the mode menu contains
      "random" but not "random-same".
    */
@@ -2701,108 +2396,99 @@ populate_prefs_page (state *s)
 # undef THROTTLE
 
 # define FMT_MINUTES(NAME,N) \
-    gtk_spin_button_set_value (GTK_SPIN_BUTTON (name_to_widget (s, (NAME))), (double)((N) + 59) / (60 * 1000))
-
+    gtk_spin_button_set_value (GTK_SPIN_BUTTON (win->NAME), \
+                               (double) ((N) + 59) / (60 * 1000))
 # define FMT_SECONDS(NAME,N) \
-    gtk_spin_button_set_value (GTK_SPIN_BUTTON (name_to_widget (s, (NAME))), (double)((N) / 1000))
-
-  FMT_MINUTES ("timeout_spinbutton",      p->timeout);
-  FMT_MINUTES ("cycle_spinbutton",        p->cycle);
-  FMT_MINUTES ("lock_spinbutton",         p->lock_timeout);
-  FMT_MINUTES ("dpms_standby_spinbutton", p->dpms_standby);
-  FMT_MINUTES ("dpms_suspend_spinbutton", p->dpms_suspend);
-  FMT_MINUTES ("dpms_off_spinbutton",     p->dpms_off);
-  FMT_SECONDS ("fade_spinbutton",         p->fade_seconds);
-
+    gtk_spin_button_set_value (GTK_SPIN_BUTTON (win->NAME), \
+                               (double) ((N) / 1000))
+
+  FMT_MINUTES (timeout_spinbutton,      p->timeout);
+  FMT_MINUTES (cycle_spinbutton,        p->cycle);
+  FMT_MINUTES (lock_spinbutton,         p->lock_timeout);
+  FMT_MINUTES (dpms_standby_spinbutton, p->dpms_standby);
+  FMT_MINUTES (dpms_suspend_spinbutton, p->dpms_suspend);
+  FMT_MINUTES (dpms_off_spinbutton,     p->dpms_off);
+  FMT_SECONDS (fade_spinbutton,         p->fade_seconds);
 # undef FMT_MINUTES
 # undef FMT_SECONDS
 
 # define TOGGLE_ACTIVE(NAME,ACTIVEP) \
-  gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (name_to_widget (s,(NAME))),\
-                                (ACTIVEP))
+    gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (win->NAME), (ACTIVEP))
 
-  TOGGLE_ACTIVE ("lock_button",       p->lock_p);
-#if 0
-  TOGGLE_ACTIVE ("verbose_button",    p->verbose_p);
-  TOGGLE_ACTIVE ("splash_button",     p->splash_p);
-#endif
-  TOGGLE_ACTIVE ("dpms_button",       p->dpms_enabled_p);
-  TOGGLE_ACTIVE ("dpms_quickoff_button", p->dpms_quickoff_p);
-  TOGGLE_ACTIVE ("grab_desk_button",  p->grab_desktop_p);
-  TOGGLE_ACTIVE ("grab_video_button", p->grab_video_p);
-  TOGGLE_ACTIVE ("grab_image_button", p->random_image_p);
-  TOGGLE_ACTIVE ("fade_button",       p->fade_p);
-  TOGGLE_ACTIVE ("unfade_button",     p->unfade_p);
+  TOGGLE_ACTIVE (lock_button,       p->lock_p);
+  TOGGLE_ACTIVE (dpms_button,       p->dpms_enabled_p);
+  TOGGLE_ACTIVE (dpms_quickoff_button, p->dpms_quickoff_p);
+  TOGGLE_ACTIVE (grab_desk_button,  p->grab_desktop_p);
+  TOGGLE_ACTIVE (grab_video_button, p->grab_video_p);
+  TOGGLE_ACTIVE (grab_image_button, p->random_image_p);
+  TOGGLE_ACTIVE (fade_button,       p->fade_p);
+  TOGGLE_ACTIVE (unfade_button,     p->unfade_p);
 
   switch (p->tmode)
     {
-    case TEXT_LITERAL: TOGGLE_ACTIVE ("text_radio",         True); break;
-    case TEXT_FILE:    TOGGLE_ACTIVE ("text_file_radio",    True); break;
-    case TEXT_PROGRAM: TOGGLE_ACTIVE ("text_program_radio", True); break;
-    case TEXT_URL:     TOGGLE_ACTIVE ("text_url_radio",     True); break;
-    default:           TOGGLE_ACTIVE ("text_host_radio",    True); break;
+    case TEXT_LITERAL: TOGGLE_ACTIVE (text_radio,         TRUE); break;
+    case TEXT_FILE:    TOGGLE_ACTIVE (text_file_radio,    TRUE); break;
+    case TEXT_PROGRAM: TOGGLE_ACTIVE (text_program_radio, TRUE); break;
+    case TEXT_URL:     TOGGLE_ACTIVE (text_url_radio,     TRUE); break;
+    default:           TOGGLE_ACTIVE (text_host_radio,    TRUE); break;
     }
 
 # undef TOGGLE_ACTIVE
 
-  gtk_entry_set_text (GTK_ENTRY (name_to_widget (s, "image_text")),
+  gtk_entry_set_text (GTK_ENTRY (win->image_text),
                       (p->image_directory ? p->image_directory : ""));
-  gtk_widget_set_sensitive (name_to_widget (s, "image_text"),
-                            p->random_image_p);
-  gtk_widget_set_sensitive (name_to_widget (s, "image_browse_button"),
+  gtk_widget_set_sensitive (win->image_text, p->random_image_p);
+  gtk_widget_set_sensitive (win->image_browse_button,
                             p->random_image_p);
 
-  gtk_entry_set_text (GTK_ENTRY (name_to_widget (s, "text_entry")),
+  gtk_entry_set_text (GTK_ENTRY (win->text_entry),
                       (p->text_literal ? p->text_literal : ""));
-  gtk_entry_set_text (GTK_ENTRY (name_to_widget (s, "text_file_entry")),
+  gtk_entry_set_text (GTK_ENTRY (win->text_file_entry),
                       (p->text_file ? p->text_file : ""));
-  gtk_entry_set_text (GTK_ENTRY (name_to_widget (s, "text_program_entry")),
+  gtk_entry_set_text (GTK_ENTRY (win->text_program_entry),
                       (p->text_program ? p->text_program : ""));
-  gtk_entry_set_text (GTK_ENTRY (name_to_widget (s, "text_url_entry")),
+  gtk_entry_set_text (GTK_ENTRY (win->text_url_entry),
                       (p->text_url ? p->text_url : ""));
 
-  gtk_widget_set_sensitive (name_to_widget (s, "text_entry"),
+  gtk_widget_set_sensitive (win->text_entry,
                             p->tmode == TEXT_LITERAL);
-  gtk_widget_set_sensitive (name_to_widget (s, "text_file_entry"),
+  gtk_widget_set_sensitive (win->text_file_entry,
                             p->tmode == TEXT_FILE);
-  gtk_widget_set_sensitive (name_to_widget (s, "text_file_browse"),
+  gtk_widget_set_sensitive (win->text_file_browse,
                             p->tmode == TEXT_FILE);
-  gtk_widget_set_sensitive (name_to_widget (s, "text_program_entry"),
+  gtk_widget_set_sensitive (win->text_program_entry,
                             p->tmode == TEXT_PROGRAM);
-  gtk_widget_set_sensitive (name_to_widget (s, "text_program_browse"),
+  gtk_widget_set_sensitive (win->text_program_browse,
                             p->tmode == TEXT_PROGRAM);
-  gtk_widget_set_sensitive (name_to_widget (s, "text_url_entry"),
+  gtk_widget_set_sensitive (win->text_url_entry,
                             p->tmode == TEXT_URL);
 
-
   /* Theme menu */
   {
-    GtkComboBox *cbox = GTK_COMBO_BOX (name_to_widget (s, "theme_menu"));
+    GtkComboBox *cbox = GTK_COMBO_BOX (win->theme_menu);
 
-    /* Without this, pref_changed_cb gets called an exponentially-increasing
-       number of times on the themes menu, despite the call to
-       gtk_list_store_clear(). */
-    static Bool done_once = False;
-
-    if (cbox && !done_once)
+    if (cbox)
       {
         char *themes = get_string_resource (dpy, "themeNames", "ThemeNames");
-        char *token = themes;
-        char *name, *name2, *last;
+        char *token = themes ? themes : strdup ("default");
+        char *name, *last = 0;
         GtkListStore *model;
         GtkTreeIter iter;
         int i = 0;
-        done_once = True;
-
-        g_object_get (G_OBJECT (cbox), "model", &model, NULL);
-        if (!model) abort();
-        gtk_list_store_clear (model);
+        /* Bad things happen if we do these things more than once. */
+        static Bool model_built_p = FALSE;
+        static Bool signal_connected_p = FALSE;
 
-        gtk_signal_connect (GTK_OBJECT (cbox), "changed",
-                            GTK_SIGNAL_FUNC (pref_changed_cb), (gpointer) s);
+        if (! model_built_p)
+          {
+            g_object_get (G_OBJECT (cbox), "model", &model, NULL);
+            if (!model) abort();
+            gtk_list_store_clear (model);
+          }
 
         while ((name = strtok_r (token, ",", &last)))
           {
+            char *name2;
             int L;
             token = 0;
 
@@ -2814,22 +2500,33 @@ populate_prefs_page (state *s)
                          name[L-1] == '\n'))
               name[--L] = 0;
 
-            gtk_list_store_append (model, &iter);
-            gtk_list_store_set (model, &iter, 0, name, -1);
+            if (! model_built_p)
+              {
+                gtk_list_store_append (model, &iter);
+                gtk_list_store_set (model, &iter, 0, name, -1);
+              }
 
             name2 = theme_name_strip (name);
-            if (!strcmp (p->dialog_theme, name2))
+            if (p->dialog_theme && name2 && !strcmp (p->dialog_theme, name2))
               gtk_combo_box_set_active (cbox, i);
             free (name2);
             i++;
           }
+
+        model_built_p = TRUE;
+
+        if (! signal_connected_p)
+          {
+            g_signal_connect (G_OBJECT (cbox), "changed",
+                              G_CALLBACK (pref_changed_cb), (gpointer) s);
+            signal_connected_p = TRUE;
+          }
       }
   }
 
-
   /* Map the `saver_mode' enum to mode menu to values. */
   {
-    GtkComboBox *opt = GTK_COMBO_BOX (name_to_widget (s, "mode_menu"));
+    GtkComboBox *opt = GTK_COMBO_BOX (win->mode_menu);
 
     int i;
     for (i = 0; i < countof(mode_menu_order); i++)
@@ -2840,58 +2537,50 @@ populate_prefs_page (state *s)
   }
 
   {
-    Bool dpms_supported = False;
-    Display *dpy = GDK_DISPLAY();
+    Bool dpms_supported = FALSE;
+    Display *dpy = s->dpy;
 
 #ifdef HAVE_DPMS_EXTENSION
     {
       int op = 0, event = 0, error = 0;
-      if (XQueryExtension (dpy, "DPMS", &op, &event, &error))
-        dpms_supported = True;
+      if (dpy && XQueryExtension (dpy, "DPMS", &op, &event, &error))
+        dpms_supported = TRUE;
     }
 #endif /* HAVE_DPMS_EXTENSION */
 
 
 # define SENSITIZE(NAME,SENSITIVEP) \
-    gtk_widget_set_sensitive (name_to_widget (s, (NAME)), (SENSITIVEP))
+    gtk_widget_set_sensitive (win->NAME, (SENSITIVEP))
 
     /* Blanking and Locking
      */
-    SENSITIZE ("lock_button",     can_lock_p);
-    SENSITIZE ("lock_spinbutton", can_lock_p && p->lock_p);
-    SENSITIZE ("lock_mlabel",     can_lock_p && p->lock_p);
+    SENSITIZE (lock_button,     can_lock_p);
+    SENSITIZE (lock_spinbutton, can_lock_p && p->lock_p);
+    SENSITIZE (lock_mlabel,     can_lock_p && p->lock_p);
 
     /* DPMS
      */
-    SENSITIZE ("dpms_frame",              dpms_supported);
-    SENSITIZE ("dpms_button",             dpms_supported);
-
-    SENSITIZE ("dpms_standby_label",      dpms_supported && p->dpms_enabled_p);
-    SENSITIZE ("dpms_standby_mlabel",     dpms_supported && p->dpms_enabled_p);
-    SENSITIZE ("dpms_standby_spinbutton", dpms_supported && p->dpms_enabled_p);
-    SENSITIZE ("dpms_suspend_label",      dpms_supported && p->dpms_enabled_p);
-    SENSITIZE ("dpms_suspend_mlabel",     dpms_supported && p->dpms_enabled_p);
-    SENSITIZE ("dpms_suspend_spinbutton", dpms_supported && p->dpms_enabled_p);
-    SENSITIZE ("dpms_off_label",          dpms_supported && p->dpms_enabled_p);
-    SENSITIZE ("dpms_off_mlabel",         dpms_supported && p->dpms_enabled_p);
-    SENSITIZE ("dpms_off_spinbutton",     dpms_supported && p->dpms_enabled_p);
-    SENSITIZE ("dpms_quickoff_button",    dpms_supported);
-
-    SENSITIZE ("fade_label",      (p->fade_p || p->unfade_p));
-    SENSITIZE ("fade_spinbutton", (p->fade_p || p->unfade_p));
+    SENSITIZE (dpms_button,             dpms_supported);
+    SENSITIZE (dpms_standby_label,      dpms_supported && p->dpms_enabled_p);
+    SENSITIZE (dpms_standby_mlabel,     dpms_supported && p->dpms_enabled_p);
+    SENSITIZE (dpms_standby_spinbutton, dpms_supported && p->dpms_enabled_p);
+    SENSITIZE (dpms_suspend_label,      dpms_supported && p->dpms_enabled_p);
+    SENSITIZE (dpms_suspend_mlabel,     dpms_supported && p->dpms_enabled_p);
+    SENSITIZE (dpms_suspend_spinbutton, dpms_supported && p->dpms_enabled_p);
+    SENSITIZE (dpms_off_label,          dpms_supported && p->dpms_enabled_p);
+    SENSITIZE (dpms_off_mlabel,         dpms_supported && p->dpms_enabled_p);
+    SENSITIZE (dpms_off_spinbutton,     dpms_supported && p->dpms_enabled_p);
+    SENSITIZE (dpms_quickoff_button,    dpms_supported);
+
+    SENSITIZE (fade_label,      (p->fade_p || p->unfade_p));
+    SENSITIZE (fade_spinbutton, (p->fade_p || p->unfade_p));
 
 # undef SENSITIZE
-  }
-}
-
 
-/* Allow the documentation label to re-flow when the text is changed.
-   http://blog.borovsak.si/2009/05/wrapping-adn-resizing-gtklabel.html
- */
-static void
-cb_allocate (GtkWidget *label, GtkAllocation *allocation, gpointer data)
-{
-  gtk_widget_set_size_request (label, allocation->width - 8, -1);
+    if (!dpms_supported)
+      gtk_frame_set_label (GTK_FRAME (win->dpms_frame),
+        _("Display Power Management (not supported by this display)"));
+  }
 }
 
 
@@ -2967,6 +2656,7 @@ anchorize (const char *url)
   }
 }
 
+
 /* Quote the text as HTML and make URLs be clickable links. 
  */
 static char *
@@ -3030,162 +2720,13 @@ hreffify (const char *in)
 }
 
 
-/* Fill in the contents of the "Settings" dialog for the current hack.
-   It may or may not currently be visible. 
- */
-static void
-populate_popup_window (state *s)
-{
-  GtkLabel *doc = GTK_LABEL (name_to_widget (s, "doc"));
-  char *doc_string = 0;
-
-  g_signal_connect (G_OBJECT (doc), "size-allocate", 
-                    G_CALLBACK (cb_allocate), NULL);
-
-  if (s->cdata)
-    {
-      free_conf_data (s->cdata);
-      s->cdata = 0;
-    }
-
-  {
-    saver_preferences *p = &s->prefs;
-    int list_elt = selected_list_element (s);
-    int hack_number = (list_elt >= 0 && list_elt < s->list_count
-                       ? s->list_elt_to_hack_number[list_elt]
-                       : -1);
-    screenhack *hack = (hack_number >= 0 ? p->screenhacks[hack_number] : 0);
-    if (hack)
-      {
-        GtkWidget *parent = name_to_widget (s, "settings_vbox");
-        GtkWidget *cmd = GTK_WIDGET (name_to_widget (s, "cmd_text"));
-        const char *cmd_line = gtk_entry_get_text (GTK_ENTRY (cmd));
-        s->cdata = load_configurator (cmd_line, s->debug_p);
-        if (s->cdata && s->cdata->widget)
-          gtk_box_pack_start (GTK_BOX (parent), s->cdata->widget,
-                              TRUE, TRUE, 0);
-
-        /* Make the pretty name on the tab boxes include the year.
-         */
-        if (s->cdata && s->cdata->year)
-          {
-            Display *dpy = GDK_DISPLAY();
-            GtkFrame *frame1 = GTK_FRAME (name_to_widget (s, "preview_frame"));
-            GtkFrame *frame2 = GTK_FRAME (name_to_widget (s, "opt_frame"));
-            GtkWidget *label1, *label2;
-            GtkStyle *style;
-            PangoFontDescription *font;
-            char *pretty_name = (hack->name
-                                 ? strdup (hack->name)
-                                 : make_hack_name (dpy, hack->command));
-            char *s2 = (char *) malloc (strlen (pretty_name) + 10);
-            sprintf (s2, "%s (%d)", pretty_name, s->cdata->year);
-            free (pretty_name);
-            pretty_name = s2;
-
-            gtk_frame_set_label (frame1, _(pretty_name));
-            gtk_frame_set_label (frame2, _(pretty_name));
-
-            /* Make the labels be bold. Must be after gtk_frame_set_label.
-               You'd think you could specify this in "xscreensaver.ui"...
-             */
-            label1 = gtk_frame_get_label_widget (frame1);
-            label2 = gtk_frame_get_label_widget (frame2);
-
-            style = gtk_widget_get_style (label1);
-            font = pango_font_description_copy_static (style->font_desc);
-            pango_font_description_set_weight (font, PANGO_WEIGHT_BOLD);
-
-            gtk_widget_modify_font (label1, font);
-            gtk_widget_modify_font (label2, font);
-
-            pango_font_description_free (font);
-            free (pretty_name);
-          }
-      }
-  }
-
-  doc_string = (s->cdata && s->cdata->description && *s->cdata->description
-                ? _(s->cdata->description)
-                : 0);
-  doc_string = hreffify (doc_string);
-  gtk_label_set_text (doc, (doc_string
-                            ? doc_string
-                            : _("No description available.")));
-  gtk_label_set_use_markup (doc, True);
-
-  {
-    GtkWidget *w = name_to_widget (s, "dialog_vbox");
-    gtk_widget_hide (w);
-    gtk_widget_unrealize (w);
-    gtk_widget_realize (w);
-    gtk_widget_show (w);
-  }
-
-  /* Also set the documentation on the main window, below the preview. */
-  {
-    GtkLabel *doc2 = GTK_LABEL (name_to_widget (s, "short_preview_label"));
-    GtkLabel *doc3 = GTK_LABEL (name_to_widget (s, "preview_author_label"));
-    char *s2 = 0;
-    char *s3 = 0;
-
-# if 0
-    g_signal_connect (G_OBJECT (doc2), "size-allocate", 
-                      G_CALLBACK (cb_allocate), NULL);
-    g_signal_connect (G_OBJECT (doc3), "size-allocate", 
-                      G_CALLBACK (cb_allocate), NULL);
-# endif
-
-    if (doc_string)
-      {
-        /* Keep only the first paragraph, and the last line.
-           Omit everything in between. */
-        char *second_para = strstr (doc_string, "\n\n");
-        char *last_line = strrchr (doc_string, '\n');
-        s2 = strdup (doc_string);
-        if (second_para)
-          s2[second_para - doc_string] = 0;
-        if (last_line)
-          s3 = strdup (last_line + 1);
-      }
-
-    gtk_label_set_text (doc2, (s2
-                               ? _(s2)
-                               : _("No description available.")));
-    gtk_label_set_text (doc3, (s3 ? _(s3) : ""));
-    if (s2) free (s2);
-    if (s3) free (s3);
-  }
-
-  if (doc_string)
-    free (doc_string);
-}
-
-
-static void
-sensitize_demo_widgets (state *s, Bool sensitive_p)
-{
-  const char *names[] = { "demo", "settings",
-                          "cmd_label", "cmd_text", "manual",
-                          "visual", "visual_combo" };
-  int i;
-  for (i = 0; i < countof(names); i++)
-    {
-      GtkWidget *w = name_to_widget (s, names[i]);
-      gtk_widget_set_sensitive (GTK_WIDGET(w), sensitive_p);
-    }
-}
-
-
 static void
 sensitize_menu_items (state *s, Bool force_p)
 {
-  static Bool running_p = False;
+  XScreenSaverWindow *win = XSCREENSAVER_WINDOW (s->window);
+  static Bool running_p = FALSE;
   static time_t last_checked = 0;
   time_t now = time ((time_t *) 0);
-  const char *names[] = { "activate_action", "lock_action", "kill_action",
-                          /* "demo" */ };
-  int i;
 
   if (force_p || now > last_checked + 10)   /* check every 10 seconds */
     {
@@ -3193,81 +2734,49 @@ sensitize_menu_items (state *s, Bool force_p)
       last_checked = time ((time_t *) 0);
     }
 
-  for (i = 0; i < countof(names); i++)
-    {
-      GtkAction *a = GTK_ACTION (gtk_builder_get_object (s->gtk_ui, names[i]));
-      gtk_action_set_sensitive (a, running_p);
-    }
-}
-
-
-/* When the File menu is de-posted after a "Restart Daemon" command,
-   the window underneath doesn't repaint for some reason.  I guess this
-   is a bug in exposure handling in GTK or GDK.  This works around it.
- */
-static void
-force_dialog_repaint (state *s)
-{
-#if 1
-  /* Tell GDK to invalidate and repaint the whole window.
-   */
-  GdkWindow *w = GET_WINDOW (s->toplevel_widget);
-  GdkRegion *region = gdk_region_new ();
-  GdkRectangle rect;
-  rect.x = rect.y = 0;
-  rect.width = rect.height = 32767;
-  gdk_region_union_with_rect (region, &rect);
-  gdk_window_invalidate_region (w, region, True);
-  gdk_region_destroy (region);
-  gdk_window_process_updates (w, True);
-#else
-  /* Force the server to send an exposure event by creating and then
-     destroying a window as a child of the top level shell.
-   */
-  Display *dpy = GDK_DISPLAY();
-  Window parent = GDK_WINDOW_XWINDOW (s->toplevel_widget->window);
-  Window w;
-  XWindowAttributes xgwa;
-  XGetWindowAttributes (dpy, parent, &xgwa);
-  w = XCreateSimpleWindow (dpy, parent, 0, 0, xgwa.width, xgwa.height, 0,0,0);
-  XMapRaised (dpy, w);
-  XDestroyWindow (dpy, w);
-  XSync (dpy, False);
-#endif
+  gtk_widget_set_sensitive (win->activate_menuitem, running_p);
+  gtk_widget_set_sensitive (win->lock_menuitem, running_p);
+  gtk_widget_set_sensitive (win->kill_menuitem, running_p);
 }
 
 
-/* Fill in the contents of the main page.
+/* Fill in the contents of the main window, and a few things on the
+   settings dialog.
  */
 static void
 populate_demo_window (state *s, int list_elt)
 {
-  Display *dpy = GDK_DISPLAY();
+  XScreenSaverWindow *win = XSCREENSAVER_WINDOW (s->window);
+  XScreenSaverDialog *dialog = XSCREENSAVER_DIALOG (s->dialog);
+  Display *dpy = s->dpy;
   saver_preferences *p = &s->prefs;
   screenhack *hack;
   char *pretty_name;
-  GtkFrame *frame1 = GTK_FRAME (name_to_widget (s, "preview_frame"));
-  GtkFrame *frame2 = GTK_FRAME (name_to_widget (s, "opt_frame"));
-  GtkEntry *cmd    = GTK_ENTRY (name_to_widget (s, "cmd_text"));
-  GtkComboBoxEntry *vis = GTK_COMBO_BOX_ENTRY (name_to_widget (s, "visual_combo"));
-  GtkWidget *list  = GTK_WIDGET (name_to_widget (s, "list"));
+  GtkFrame *frame1 = GTK_FRAME (win->preview_frame);
+  GtkFrame *frame2 = dialog ? GTK_FRAME (dialog->opt_frame) : 0;
+  GtkEntry *cmd    = dialog ? GTK_ENTRY (dialog->cmd_text)  : 0;
+  GtkComboBox *vis = dialog ? GTK_COMBO_BOX (dialog->visual_combo) : 0;
+  GtkWidget *list  = GTK_WIDGET (win->list);
 
   /* Enforce a minimum size on the preview pane. */
-  int dw = DisplayWidth (dpy, 0);
-  int dh = DisplayHeight (dpy, 0);
-  int minw, minh;
-# define TRY(W) do { \
-    minw = (W); minh = minw * 9/16;         \
-    if (dw > minw * 1.5 && dh > minh * 1.5) \
-      gtk_widget_set_size_request (GTK_WIDGET (frame1), minw, minh); \
-    } while(0)
-  TRY (300);
-  TRY (400);
-  TRY (480);
-  TRY (640);
-  TRY (800);
-/*  TRY (960); */
+  if (dpy)
+    {
+      int dw = DisplayWidth (dpy, 0);
+      int dh = DisplayHeight (dpy, 0);
+      int minw, minh;
+ # define TRY(W) do { \
+        minw = (W); minh = minw * 9/16;         \
+        if (dw > minw * 1.5 && dh > minh * 1.5) \
+          gtk_widget_set_size_request (GTK_WIDGET (frame1), minw, minh); \
+        } while(0)
+      TRY (300);
+      TRY (400);
+      TRY (480);
+      TRY (640);
+      TRY (800);
+    /*  TRY (960); */
 # undef TRY
+    }
 
   if (p->mode == BLANK_ONLY)
     {
@@ -3303,27 +2812,34 @@ populate_demo_window (state *s, int list_elt)
   if (!pretty_name)
     pretty_name = strdup (_("Preview"));
 
-  gtk_frame_set_label (frame1, _(pretty_name));
-  gtk_frame_set_label (frame2, _(pretty_name));
+  if (dialog->unedited_cmdline) free (dialog->unedited_cmdline);
+  dialog->unedited_cmdline = strdup (hack ? hack->command : "");
 
-  gtk_entry_set_text (cmd, (hack ? hack->command : ""));
-  gtk_entry_set_position (cmd, 0);
+  gtk_frame_set_label (frame1, _(pretty_name));
+  if (frame2)
+    gtk_frame_set_label (frame2, _(pretty_name));
+  if (cmd)
+    gtk_entry_set_text (cmd, dialog->unedited_cmdline);
 
   {
     char title[255];
     sprintf (title, _("%s: %.100s Settings"),
              progclass, (pretty_name ? pretty_name : "???"));
-    gtk_window_set_title (GTK_WINDOW (s->popup_widget), title);
+    gtk_window_set_title (GTK_WINDOW (s->window), title);
+    if (s->dialog)
+      gtk_window_set_title (GTK_WINDOW (s->dialog), title);
   }
 
-  gtk_entry_set_text (GTK_ENTRY (gtk_bin_get_child (GTK_BIN (vis))),
-                      (hack
-                       ? (hack->visual && *hack->visual
-                          ? hack->visual
-                          : _("Any"))
-                       : ""));
+  /* Fill in the Visual combo-box */
+  if (vis)
+    gtk_entry_set_text (GTK_ENTRY (gtk_bin_get_child (GTK_BIN (vis))),
+                        (hack
+                         ? (hack->visual && *hack->visual
+                            ? hack->visual
+                            : _("Any"))
+                         : ""));
 
-  sensitize_demo_widgets (s, (hack ? True : False));
+  sensitize_demo_widgets (s, (hack ? TRUE : FALSE));
 
   if (pretty_name) free (pretty_name);
 
@@ -3336,19 +2852,7 @@ populate_demo_window (state *s, int list_elt)
 static void
 widget_deleter (GtkWidget *widget, gpointer data)
 {
-  /* #### Well, I want to destroy these widgets, but if I do that, they get
-     referenced again, and eventually I get a SEGV.  So instead of
-     destroying them, I'll just hide them, and leak a bunch of memory
-     every time the disk file changes.  Go go go Gtk!
-
-     #### Ok, that's a lie, I get a crash even if I just hide the widget
-     and don't ever delete it.  Fuck!
-   */
-#if 0
   gtk_widget_destroy (widget);
-#else
-  gtk_widget_hide (widget);
-#endif
 }
 
 
@@ -3372,7 +2876,7 @@ sort_hack_cmp (const void *a, const void *b)
 static void
 initialize_sort_map (state *s)
 {
-  Display *dpy = GDK_DISPLAY();
+  Display *dpy = s->dpy;
   saver_preferences *p = &s->prefs;
   int i, j;
 
@@ -3458,13 +2962,14 @@ initialize_sort_map (state *s)
 static int
 maybe_reload_init_file (state *s)
 {
-  Display *dpy = GDK_DISPLAY();
+  Display *dpy = s->dpy;
   saver_preferences *p = &s->prefs;
+  XScreenSaverWindow *win = XSCREENSAVER_WINDOW (s->window);
   int status = 0;
 
-  static Bool reentrant_lock = False;
+  static Bool reentrant_lock = FALSE;
   if (reentrant_lock) return 0;
-  reentrant_lock = True;
+  reentrant_lock = TRUE;
 
   if (init_file_changed_p (p))
     {
@@ -3475,21 +2980,18 @@ maybe_reload_init_file (state *s)
 
       if (!f || !*f) return 0;
       b = (char *) malloc (strlen(f) + 1024);
-      sprintf (b,
-               _("Warning:\n\n"
-                "file \"%s\" has changed, reloading.\n"),
-               f);
-      warning_dialog (s->toplevel_widget, b, D_NONE, 100);
+      sprintf (b, _("file \"%s\" has changed, reloading.\n"), f);
+      warning_dialog (s->window, _("Warning"), b);
       free (b);
 
       load_init_file (dpy, p);
       initialize_sort_map (s);
 
       list_elt = selected_list_element (s);
-      list = name_to_widget (s, "list");
+      list = win->list;
       gtk_container_foreach (GTK_CONTAINER (list), widget_deleter, NULL);
       populate_hack_list (s);
-      force_list_select_item (s, list, list_elt, True);
+      force_list_select_item (s, list, list_elt, TRUE);
       populate_prefs_page (s);
       populate_demo_window (s, list_elt);
       populate_popup_window (s);
@@ -3498,7 +3000,7 @@ maybe_reload_init_file (state *s)
       status = 1;
     }
 
-  reentrant_lock = False;
+  reentrant_lock = FALSE;
   return status;
 }
 
@@ -3509,59 +3011,44 @@ maybe_reload_init_file (state *s)
 static Visual *get_best_gl_visual (state *);
 
 static GdkVisual *
-x_visual_to_gdk_visual (Visual *xv)
+x_visual_to_gdk_visual (GdkWindow *win, Visual *xv)
 {
-  GList *gvs = gdk_list_visuals();
-  if (!xv) return gdk_visual_get_system();
-  for (; gvs; gvs = gvs->next)
+  if (xv)
     {
-      GdkVisual *gv = (GdkVisual *) gvs->data;
-      if (xv == GDK_VISUAL_XVISUAL (gv))
-        return gv;
+      GdkScreen *screen = gdk_window_get_screen (win);
+      GList *gvs = gdk_screen_list_visuals (screen);
+      /* This list is sometimes NULL, not even the default visual! */
+      for (; gvs; gvs = gvs->next)
+        {
+          GdkVisual *gv = (GdkVisual *) gvs->data;
+          if (xv == GDK_VISUAL_XVISUAL (gv))
+            return gv;
+        }
     }
-  fprintf (stderr, "%s: couldn't convert X Visual 0x%lx to a GdkVisual\n",
-           blurb(), (unsigned long) xv->visualid);
-  abort();
+  return 0;
 }
 
+
 static void
 clear_preview_window (state *s)
 {
-  GtkWidget *p;
-  GdkWindow *window;
-  GtkStyle  *style;
-
-  if (!s->toplevel_widget) return;  /* very early */
-  p = name_to_widget (s, "preview");
-  window = GET_WINDOW (p);
-
-  if (!window) return;
-
-  /* Flush the widget background down into the window, in case a subproc
-     has changed it. */
-  style = gtk_widget_get_style (p);
-  gdk_window_set_background (window, &style->bg[GTK_STATE_NORMAL]);
-  gdk_window_clear (window);
-
-  {
-    int list_elt = selected_list_element (s);
-    int hack_number = (list_elt >= 0
-                       ? s->list_elt_to_hack_number[list_elt]
-                       : -1);
-    Bool available_p = (hack_number >= 0
-                        ? s->hacks_available_p [hack_number]
-                        : True);
-    Bool nothing_p = (s->total_available < 5);
-
-    GtkWidget *notebook = name_to_widget (s, "preview_notebook");
-    gtk_notebook_set_page (GTK_NOTEBOOK (notebook),
-                          (s->running_preview_error_p
-                            ? (available_p ? 1 :
-                               nothing_p ? 3 : 2)
-                            : 0));
-  }
-
-  gdk_flush ();
+  XScreenSaverWindow *win = XSCREENSAVER_WINDOW (s->window);
+  int list_elt = selected_list_element (s);
+  int hack_number = (list_elt >= 0
+                     ? s->list_elt_to_hack_number[list_elt]
+                     : -1);
+  Bool available_p = (hack_number >= 0
+                      ? s->hacks_available_p [hack_number]
+                      : TRUE);
+  Bool nothing_p = (s->total_available < 5);
+
+  GtkWidget *notebook = win->preview_notebook;
+  gtk_notebook_set_current_page (GTK_NOTEBOOK (notebook),
+                                 (!s->running_preview_error_p ? 0 :  /* ok */
+                                  nothing_p    ? 3 : /* no hacks installed */
+                                  !available_p ? 2 : /* hack not installed */
+                                  s->wayland_p ? 4 : /* fucking wayland */
+                                  1));              /* preview failed */
 }
 
 
@@ -3573,17 +3060,19 @@ reset_preview_window (state *s)
      it's best to just always destroy and recreate the preview window
      when changing hacks, instead of always trying to reuse the same one?
    */
-  GtkWidget *pr = name_to_widget (s, "preview");
-  if (GET_REALIZED (pr))
+  XScreenSaverWindow *win = XSCREENSAVER_WINDOW (s->window);
+  GtkWidget *pr = win->preview;
+  if (s->dpy && !s->wayland_p && gtk_widget_get_realized (pr))
     {
-      GdkWindow *window = GET_WINDOW (pr);
-      Window oid = (window ? GDK_WINDOW_XWINDOW (window) : 0);
+      GdkWindow *window = gtk_widget_get_window (pr);
+      Window oid = (window ? gdk_x11_window_get_xid (window) : 0);
       Window id;
       gtk_widget_hide (pr);
       gtk_widget_unrealize (pr);
+      gtk_widget_set_has_window (pr, TRUE);
       gtk_widget_realize (pr);
       gtk_widget_show (pr);
-      id = (window ? GDK_WINDOW_XWINDOW (window) : 0);
+      id = (window ? gdk_x11_window_get_xid (window) : 0);
       if (s->debug_p)
         fprintf (stderr, "%s: window id 0x%X -> 0x%X\n", blurb(),
                  (unsigned int) oid,
@@ -3592,59 +3081,47 @@ reset_preview_window (state *s)
 }
 
 
+/* Make the preview widget use the best GL visual.
+   We just always use that one rather than switching.
+ */
 static void
 fix_preview_visual (state *s)
 {
-  GtkWidget *widget = name_to_widget (s, "preview");
+  XScreenSaverWindow *win = XSCREENSAVER_WINDOW (s->window);
   Visual *xvisual = get_best_gl_visual (s);
-  GdkVisual *visual = x_visual_to_gdk_visual (xvisual);
-  GdkVisual *dvisual = gdk_visual_get_system();
-  GdkColormap *cmap = (visual == dvisual
-                       ? gdk_colormap_get_system ()
-                       : gdk_colormap_new (visual, False));
+  GtkWidget *widget  = win->preview;
+  GdkWindow *gwindow = gtk_widget_get_window (GTK_WIDGET (win));
+  GdkScreen *gscreen = gdk_window_get_screen (gwindow);
+  GdkVisual *gvisual1 = gdk_screen_get_system_visual (gscreen);
+  GdkVisual *gvisual2 = x_visual_to_gdk_visual (gwindow, xvisual);
+
+  if (! gvisual2)
+    {
+      gvisual2 = gvisual1;
+      if (s->debug_p)
+        fprintf (stderr, "%s: couldn't convert X Visual 0x%lx to a GdkVisual;"
+                 " winging it.\n",
+                 blurb(), (unsigned long) xvisual->visualid);
+    }
 
   if (s->debug_p)
     fprintf (stderr, "%s: using %s visual 0x%lx\n", blurb(),
-             (visual == dvisual ? "default" : "non-default"),
+             (gvisual1 == gvisual2 ? "default" : "non-default"),
              (xvisual ? (unsigned long) xvisual->visualid : 0L));
 
-  if (!GET_REALIZED (widget) ||
-      gtk_widget_get_visual (widget) != visual)
+  if (!gtk_widget_get_realized (widget) ||
+      gtk_widget_get_visual (widget) != gvisual2)
     {
       gtk_widget_unrealize (widget);
-      gtk_widget_set_visual (widget, visual);
-      gtk_widget_set_colormap (widget, cmap);
+      gtk_widget_set_has_window (widget, TRUE);
+      gtk_widget_set_visual (widget, gvisual2);
       gtk_widget_realize (widget);
     }
 
-  /* Set the Widget colors to be white-on-black. */
-  {
-    GdkWindow *window = GET_WINDOW (widget);
-    GtkStyle *style = gtk_style_copy (gtk_widget_get_style (widget));
-    GdkColormap *cmap = gtk_widget_get_colormap (widget);
-    GdkColor *fg = &style->fg[GTK_STATE_NORMAL];
-    GdkColor *bg = &style->bg[GTK_STATE_NORMAL];
-    GdkGC *fgc = gdk_gc_new(window);
-    GdkGC *bgc = gdk_gc_new(window);
-    if (!gdk_color_white (cmap, fg)) abort();
-    if (!gdk_color_black (cmap, bg)) abort();
-    gdk_gc_set_foreground (fgc, fg);
-    gdk_gc_set_background (fgc, bg);
-    gdk_gc_set_foreground (bgc, bg);
-    gdk_gc_set_background (bgc, fg);
-    style->fg_gc[GTK_STATE_NORMAL] = fgc;
-    style->bg_gc[GTK_STATE_NORMAL] = fgc;
-    gtk_widget_set_style (widget, style);
-
-    /* For debugging purposes, put a title on the window (so that
-       it can be easily found in the output of "xwininfo -tree".)
-     */
-    gdk_window_set_title (window, "Preview");
-  }
-
   gtk_widget_show (widget);
 }
 
+
 /* Subprocesses
  */
 
@@ -3699,7 +3176,7 @@ reap_zombies (state *s)
 static Visual *
 get_best_gl_visual (state *s)
 {
-  Display *dpy = GDK_DISPLAY();
+  Display *dpy = s->dpy;
   pid_t forked;
   int fds [2];
   int in, out;
@@ -3804,18 +3281,17 @@ get_best_gl_visual (state *s)
   abort();
 }
 
-
 static void
 kill_preview_subproc (state *s, Bool reset_p)
 {
-  s->running_preview_error_p = False;
+  s->running_preview_error_p = FALSE;
 
   reap_zombies (s);
   clear_preview_window (s);
 
   if (s->subproc_check_timer_id)
     {
-      gtk_timeout_remove (s->subproc_check_timer_id);
+      g_source_remove (s->subproc_check_timer_id);
       s->subproc_check_timer_id = 0;
       s->subproc_check_countdown = 0;
     }
@@ -3871,30 +3347,33 @@ kill_preview_subproc (state *s, Bool reset_p)
 static void
 launch_preview_subproc (state *s)
 {
+  XScreenSaverWindow *win = XSCREENSAVER_WINDOW (s->window);
   saver_preferences *p = &s->prefs;
   Window id;
   char *new_cmd = 0;
   pid_t forked;
   const char *cmd = s->desired_preview_cmd;
 
-  GtkWidget *pr = name_to_widget (s, "preview");
+  GtkWidget *pr = win->preview;
   GdkWindow *window;
 
   reset_preview_window (s);
 
-  window = GET_WINDOW (pr);
+  window = gtk_widget_get_window (pr);
 
-  s->running_preview_error_p = False;
+  s->running_preview_error_p = FALSE;
 
   if (s->preview_suppressed_p)
     {
-      kill_preview_subproc (s, False);
+      kill_preview_subproc (s, FALSE);
       goto DONE;
     }
 
   new_cmd = malloc (strlen (cmd) + 40);
 
-  id = (window ? GDK_WINDOW_XWINDOW (window) : 0);
+  id = (window && !s->wayland_p
+        ? gdk_x11_window_get_xid (window)
+        : 0);
   if (id == 0)
     {
       /* No window id?  No command to run. */
@@ -3904,19 +3383,19 @@ launch_preview_subproc (state *s)
   else
     {
       /* We do this instead of relying on $XSCREENSAVER_WINDOW specifically
-         so that third-party savers that don't implement -window-id will fail:
+         so that third-party savers that don't implement --window-id will fail:
          otherwise we might have full-screen windows popping up when we were
          just trying to get a preview thumbnail.
        */
       strcpy (new_cmd, cmd);
-      sprintf (new_cmd + strlen (new_cmd), " -window-id 0x%X",
+      sprintf (new_cmd + strlen (new_cmd), " --window-id 0x%X",
                (unsigned int) id);
     }
 
-  kill_preview_subproc (s, False);
+  kill_preview_subproc (s, FALSE);
   if (! new_cmd)
     {
-      s->running_preview_error_p = True;
+      s->running_preview_error_p = TRUE;
       clear_preview_window (s);
       goto DONE;
     }
@@ -3928,13 +3407,13 @@ launch_preview_subproc (state *s)
         char buf[255];
         sprintf (buf, "%s: couldn't fork", blurb());
         perror (buf);
-        s->running_preview_error_p = True;
+        s->running_preview_error_p = TRUE;
         goto DONE;
         break;
       }
     case 0:
       {
-        close (ConnectionNumber (GDK_DISPLAY()));
+        close (ConnectionNumber (s->dpy));
 
         hack_subproc_environment (id, s->debug_p);
 
@@ -3993,8 +3472,8 @@ hack_environment (state *s)
     "";
 # endif
 
-  Display *dpy = GDK_DISPLAY();
-  const char *odpy = DisplayString (dpy);
+  Display *dpy = s->dpy;
+  const char *odpy = dpy ? DisplayString (dpy) : ":0.0";
   char *ndpy = (char *) malloc(strlen(odpy) + 20);
   strcpy (ndpy, "DISPLAY=");
   strcat (ndpy, odpy);
@@ -4033,7 +3512,7 @@ hack_subproc_environment (Window preview_window_id, Bool debug_p)
 {
   /* Store a window ID in $XSCREENSAVER_WINDOW -- this isn't strictly
      necessary yet, but it will make programs work if we had invoked
-     them with "-root" and not with "-window-id" -- which, of course,
+     them with "--root" and not with "--window-id" -- which, of course,
      doesn't happen.
    */
   char *nssw = (char *) malloc (40);
@@ -4051,6 +3530,7 @@ hack_subproc_environment (Window preview_window_id, Bool debug_p)
 }
 
 
+
 /* Called from a timer:
    Launches the currently-chosen subprocess, if it's not already running.
    If there's a different process running, kills it.
@@ -4060,7 +3540,7 @@ update_subproc_timer (gpointer data)
 {
   state *s = (state *) data;
   if (! s->desired_preview_cmd)
-    kill_preview_subproc (s, True);
+    kill_preview_subproc (s, TRUE);
   else if (!s->running_preview_cmd ||
            !!strcmp (s->desired_preview_cmd, s->running_preview_cmd))
     launch_preview_subproc (s);
@@ -4069,13 +3549,6 @@ update_subproc_timer (gpointer data)
   return FALSE;  /* do not re-execute timer */
 }
 
-static int
-settings_timer (gpointer data)
-{
-  settings_cb (0, 0);
-  return FALSE;  /* Only run timer once */
-}
-
 
 /* Call this when you think you might want a preview process running.
    It will set a timer that will actually launch that program a second
@@ -4099,8 +3572,8 @@ schedule_preview (state *s, const char *cmd)
   s->desired_preview_cmd = (cmd ? strdup (cmd) : 0);
 
   if (s->subproc_timer_id)
-    gtk_timeout_remove (s->subproc_timer_id);
-  s->subproc_timer_id = gtk_timeout_add (delay, update_subproc_timer, s);
+    g_source_remove (s->subproc_timer_id);
+  s->subproc_timer_id = g_timeout_add (delay, update_subproc_timer, s);
 }
 
 
@@ -4111,12 +3584,12 @@ static int
 check_subproc_timer (gpointer data)
 {
   state *s = (state *) data;
-  Bool again_p = True;
+  Bool again_p = TRUE;
 
   if (s->running_preview_error_p ||   /* already dead */
       s->running_preview_pid <= 0)
     {
-      again_p = False;
+      again_p = FALSE;
     }
   else
     {
@@ -4124,7 +3597,7 @@ check_subproc_timer (gpointer data)
       reap_zombies (s);
       status = kill (s->running_preview_pid, 0);
       if (status < 0 && errno == ESRCH)
-        s->running_preview_error_p = True;
+        s->running_preview_error_p = TRUE;
 
       if (s->debug_p)
         {
@@ -4138,7 +3611,7 @@ check_subproc_timer (gpointer data)
       if (s->running_preview_error_p)
         {
           clear_preview_window (s);
-          again_p = False;
+          again_p = FALSE;
         }
     }
 
@@ -4146,7 +3619,7 @@ check_subproc_timer (gpointer data)
      might be satisfied. */
 
   if (--s->subproc_check_countdown <= 0)
-    again_p = False;
+    again_p = FALSE;
 
   if (again_p)
     return TRUE;     /* re-execute timer */
@@ -4164,7 +3637,7 @@ check_subproc_timer (gpointer data)
    check whether the program is still running.  The assumption here
    is that if the process didn't stay up for more than a couple of
    seconds, then either the program doesn't exist, or it doesn't
-   take a -window-id argument.
+   take a --window-id argument.
  */
 static void
 schedule_preview_check (state *s)
@@ -4176,27 +3649,28 @@ schedule_preview_check (state *s)
     fprintf (stderr, "%s: scheduling check\n", blurb());
 
   if (s->subproc_check_timer_id)
-    gtk_timeout_remove (s->subproc_check_timer_id);
+    g_source_remove (s->subproc_check_timer_id);
   s->subproc_check_timer_id =
-    gtk_timeout_add (1000 / ticks,
-                     check_subproc_timer, (gpointer) s);
+   g_timeout_add (1000 / ticks,
+                  check_subproc_timer, (gpointer) s);
   s->subproc_check_countdown = ticks * seconds;
 }
 
 
 static Bool
-screen_blanked_p (void)
+screen_blanked_p (state *s)
 {
   Atom type;
   int format;
   unsigned long nitems, bytesafter;
   unsigned char *dataP = 0;
-  Display *dpy = GDK_DISPLAY();
-  Bool blanked_p = False;
+  Display *dpy = s->dpy;
+  Bool blanked_p = FALSE;
 
+  if (!s->dpy) return FALSE;
   if (XGetWindowProperty (dpy, RootWindow (dpy, 0), /* always screen #0 */
                           XA_SCREENSAVER_STATUS,
-                          0, 3, False, XA_INTEGER,
+                          0, 3, FALSE, XA_INTEGER,
                           &type, &format, &nitems, &bytesafter,
                           &dataP)
       == Success
@@ -4221,15 +3695,15 @@ static int
 check_blanked_timer (gpointer data)
 {
   state *s = (state *) data;
-  Bool blanked_p = screen_blanked_p ();
+  Bool blanked_p = screen_blanked_p (s);
   if (blanked_p && s->running_preview_pid)
     {
       if (s->debug_p)
         fprintf (stderr, "%s: screen is blanked: killing preview\n", blurb());
-      kill_preview_subproc (s, True);
+      kill_preview_subproc (s, TRUE);
     }
 
-  return True;  /* re-execute timer */
+  return TRUE;  /* re-execute timer */
 }
 
 
@@ -4237,35 +3711,17 @@ check_blanked_timer (gpointer data)
 static Bool
 multi_screen_p (Display *dpy)
 {
-  monitor **monitors = scan_monitors (dpy);
+  monitor **monitors = dpy ? scan_monitors (dpy) : NULL;
   Bool ret = monitors && monitors[0] && monitors[1];
   if (monitors) free_monitors (monitors);
   return ret;
 }
 
 
-/* Setting window manager icon
- */
-
-static void
-init_icon (GdkWindow *window)
-{
-  GdkBitmap *mask = 0;
-  GdkPixmap *pixmap =
-    gdk_pixmap_create_from_xpm_d (window, &mask, 0,
-                                  (gchar **) logo_50_xpm);
-  if (pixmap)
-    gdk_window_set_icon (window, 0, pixmap, mask);
-}
-
-
-/* The main demo-mode command loop.
- */
-
 #if 0
 static Bool
-mapper (XrmDatabase *db, XrmBindingList bindings, XrmQuarkList quarks,
-       XrmRepresentation *type, XrmValue *value, XPointer closure)
+xrm_mapper (XrmDatabase *db, XrmBindingList bindings, XrmQuarkList quarks,
+            XrmRepresentation *type, XrmValue *value, XPointer closure)
 {
   int i;
   for (i = 0; quarks[i]; i++)
@@ -4281,17 +3737,31 @@ mapper (XrmDatabase *db, XrmBindingList bindings, XrmQuarkList quarks,
 
   fprintf (stderr, ": %s\n", (char *) value->addr);
 
-  return False;
+  return FALSE;
+}
+#endif /* 0 */
+
+
+static int
+ignore_all_errors_ehandler (Display *dpy, XErrorEvent *error)
+{
+  return 0;
 }
-#endif
 
 
 static Window
 gnome_screensaver_window (Display *dpy, char **name_ret)
 {
-  int nscreens = ScreenCount (dpy);
+  int nscreens;
   int i, screen;
   Window gnome_window = 0;
+  XErrorHandler old_handler;
+
+  if (!dpy) return 0;
+  XSync (dpy, FALSE);
+  old_handler = XSetErrorHandler (ignore_all_errors_ehandler);
+
+  nscreens = ScreenCount (dpy);
   for (screen = 0; screen < nscreens; screen++)
     {
       Window root = RootWindow (dpy, screen);
@@ -4309,7 +3779,7 @@ gnome_screensaver_window (Display *dpy, char **name_ret)
           unsigned long nitems, bytesafter;
           unsigned char *name;
           if (XGetWindowProperty (dpy, kids[i], XA_WM_COMMAND, 0, 128,
-                                  False, XA_STRING, &type, &format, &nitems,
+                                  FALSE, XA_STRING, &type, &format, &nitems,
                                   &bytesafter, &name)
               == Success
               && type != None
@@ -4329,25 +3799,29 @@ gnome_screensaver_window (Display *dpy, char **name_ret)
       if (gnome_window)
         break;
     }
+
+  XSync (dpy, FALSE);
+  XSetErrorHandler (old_handler);
   return gnome_window;
 }
 
+
 static Bool
-gnome_screensaver_active_p (char **name_ret)
+gnome_screensaver_active_p (state *s, char **name_ret)
 {
-  Display *dpy = GDK_DISPLAY();
-  Window w = gnome_screensaver_window (dpy, name_ret);
-  return (w ? True : False);
+  Window w = gnome_screensaver_window (s->dpy, name_ret);
+  return (w ? TRUE : FALSE);
 }
 
+
 static void
-kill_gnome_screensaver (void)
+kill_gnome_screensaver (state *s)
 {
-  Display *dpy = GDK_DISPLAY();
-  Window w = gnome_screensaver_window (dpy, NULL);
-  if (w) XKillClient (dpy, (XID) w);
+  Window w = gnome_screensaver_window (s->dpy, NULL);
+  if (w) XKillClient (s->dpy, (XID) w);
 }
 
+
 static Bool
 kde_screensaver_active_p (void)
 {
@@ -4359,17 +3833,17 @@ kde_screensaver_active_p (void)
   FILE *p = popen ("dcop kdesktop KScreensaverIface isEnabled 2>/dev/null",
                    "r");
   char buf[255];
-  if (!p) return False;
-  if (!fgets (buf, sizeof(buf)-1, p)) return False;
+  if (!p) return FALSE;
+  if (!fgets (buf, sizeof(buf)-1, p)) return FALSE;
   pclose (p);
   if (!strcmp (buf, "true\n"))
-    return True;
+    return TRUE;
   else
-    return False;
+    return FALSE;
 }
 
 static void
-kill_kde_screensaver (void)
+kill_kde_screensaver (state *s)
 {
   /* Use empty body to kill warning from gcc -Wall with
      "warning: ignoring return value of 'system',
@@ -4383,13 +3857,13 @@ static int
 the_network_is_not_the_computer (gpointer data)
 {
   state *s = (state *) data;
-  Display *dpy = GDK_DISPLAY();
+  Display *dpy = s->dpy;
   char *rversion = 0, *ruser = 0, *rhost = 0;
   char *luser, *lhost;
   char *msg = 0;
   char *oname = 0;
   struct passwd *p = getpwuid (getuid ());
-  const char *d = DisplayString (dpy);
+  const char *d = dpy ? DisplayString (dpy) : ":0.0";
 
 # if defined(HAVE_UNAME)
   struct utsname uts;
@@ -4406,7 +3880,8 @@ the_network_is_not_the_computer (gpointer data)
   else
     luser = "???";
 
-  server_xscreensaver_version (dpy, &rversion, &ruser, &rhost);
+  if (dpy)
+    server_xscreensaver_version (dpy, &rversion, &ruser, &rhost);
 
   /* Make a buffer that's big enough for a number of copies of all the
      strings, plus some. */
@@ -4419,11 +3894,10 @@ the_network_is_not_the_computer (gpointer data)
                               1024));
   *msg = 0;
 
-  if (!rversion || !*rversion)
+  if ((!rversion || !*rversion) && !s->debug_p)
     {
       sprintf (msg,
-              _("Warning:\n\n"
-                "The XScreenSaver daemon doesn't seem to be running\n"
+              _("The XScreenSaver daemon doesn't seem to be running\n"
                 "on display \"%.25s\".  Launch it now?"),
               d);
     }
@@ -4432,9 +3906,8 @@ the_network_is_not_the_computer (gpointer data)
       /* Warn that the two processes are running as different users.
        */
       sprintf(msg,
-           _("Warning:\n\n"
-             "%s is running as user \"%s\" on host \"%s\".\n"
-             "But the xscreensaver managing display \"%s\"\n"
+           _("%s is running as user \"%s\" on host \"%s\".\n"
+             "But the xscreensaver managing display \"%.25s\"\n"
              "is running as user \"%s\" on host \"%s\".\n"
              "\n"
              "Since they are different users, they won't be reading/writing\n"
@@ -4457,8 +3930,7 @@ the_network_is_not_the_computer (gpointer data)
       /* Warn that the two processes are running on different hosts.
        */
       sprintf (msg,
-             _("Warning:\n\n"
-              "%s is running as user \"%s\" on host \"%s\".\n"
+             _("%s is running as user \"%s\" on host \"%s\".\n"
               "But the xscreensaver managing display \"%s\"\n"
               "is running as user \"%s\" on host \"%s\".\n"
               "\n"
@@ -4474,13 +3946,12 @@ the_network_is_not_the_computer (gpointer data)
               progname,
                lhost, luser);
     }
-  else if (!!strcmp (rversion, s->short_version))
+  else if (rversion && *rversion && !!strcmp (rversion, s->short_version))
     {
       /* Warn that the version numbers don't match.
        */
       sprintf (msg,
-            _("Warning:\n\n"
-              "This is %s version %s.\n"
+            _("This is %s version %s.\n"
               "But the xscreensaver managing display \"%s\"\n"
               "is version %s.  This could cause problems.\n"
               "\n"
@@ -4493,7 +3964,7 @@ the_network_is_not_the_computer (gpointer data)
   validate_image_directory_quick (s);
 
   if (*msg)
-    warning_dialog (s->toplevel_widget, msg, D_LAUNCH, 1);
+    warning_dialog_1 (s->window, _("Warning"), msg, D_LAUNCH);
 
   if (rversion) free (rversion);
   if (ruser) free (ruser);
@@ -4506,42 +3977,38 @@ the_network_is_not_the_computer (gpointer data)
      running" dialog so that these are on top.  Good enough.
    */
 
-  if (gnome_screensaver_active_p (&oname))
+  if (gnome_screensaver_active_p (s, &oname))
     {
       char msg [1024];
       sprintf (msg,
-               _("Warning:\n\n"
-                 "The GNOME screen saver daemon (%s) appears to be running.\n"
+               _("The GNOME screen saver daemon (%s) appears to be running.\n"
                  "It must be stopped for XScreenSaver to work properly.\n"
                  "\n"
                  "Stop the \"%s\" daemon now?\n"),
                oname, oname);
-      warning_dialog (s->toplevel_widget, msg, D_GNOME, 1);
+      warning_dialog_1 (s->window, _("Warning"), msg, D_GNOME);
     }
 
-  if (kde_screensaver_active_p ())
-    warning_dialog (s->toplevel_widget,
-                    _("Warning:\n\n"
-                      "The KDE screen saver daemon appears to be running.\n"
+  if (kde_screensaver_active_p())
+    warning_dialog_1 (s->window, _("Warning"),
+                    _("The KDE screen saver daemon appears to be running.\n"
                       "It must be stopped for XScreenSaver to work properly.\n"
                       "\n"
                       "Stop the KDE screen saver daemon now?\n"),
-                    D_KDE, 1);
+                    D_KDE);
+
+  if (s->wayland_p)
+    warning_dialog (s->window, _("Warning"),
+                _("You are running Wayland rather than the X Window System.\n"
+                  "\n"
+                  "Under Wayland, idle-detection fails when non-X11 programs\n"
+                  "are selected, meaning the screen may blank prematurely.\n"
+                  "Also, locking is impossible.\n"
+                  "\n"
+                  "See the XScreenSaver manual for instructions on\n"
+                  "configuring your system to use X11 instead of Wayland.\n"));
 
-  if (getenv ("WAYLAND_DISPLAY") || getenv ("WAYLAND_SOCKET"))
-    warning_dialog (s->toplevel_widget,
-                    _("Warning:\n\n"
-                   "You are running Wayland rather than the X Window System.\n"
-                   "\n"
-                   "Under Wayland, idle-detection fails when non-X11 programs\n"
-                   "are selected, meaning the screen may blank prematurely.\n"
-                   "Also, locking is impossible.\n"
-                   "\n"
-                   "See the XScreenSaver manual for instructions on\n"
-                   "configuring your system to use X11 instead of Wayland.\n"),
-                    D_NONE, 1);
-
-  return False;  /* Only run timer once */
+  return FALSE;  /* Only run timer once */
 }
 
 
@@ -4549,498 +4016,848 @@ the_network_is_not_the_computer (gpointer data)
    of the program that generated them.
  */
 static int
-demo_ehandler (Display *dpy, XErrorEvent *error)
+x_error (Display *dpy, XErrorEvent *error)
 {
-  state *s = global_state_kludge;  /* I hate C so much... */
-  fprintf (stderr, "\nX error in %s:\n", blurb());
+  fprintf (stderr, "\n%s: X error:\n", blurb());
   XmuPrintDefaultErrorMessage (dpy, error, stderr);
-  kill_preview_subproc (s, False);
-  exit (-1);
+  /* No way to get 'state' in here... */
+  /* kill_preview_subproc (s, FALSE); */
+  exit (-1);   /* Likewise, no way to call g_application_quit(). */
   return 0;
 }
 
 
-/* We use this error handler so that Gtk/Gdk errors are preceeded by the name
-   of the program that generated them; and also that we can ignore one
-   particular bogus error message that Gdk madly spews.
- */
 static void
-g_log_handler (const gchar *log_domain, GLogLevelFlags log_level,
-               const gchar *message, gpointer user_data)
-{
-  /* Ignore the message "Got event for unknown window: 0x...".
-     Apparently some events are coming in for the xscreensaver window
-     (presumably reply events related to the ClientMessage) and Gdk
-     feels the need to complain about them.  So, just suppress any
-     messages that look like that one.
-   */
-  if (strstr (message, "unknown window"))
-    return;
-
-  fprintf (stderr, "%s: %s-%s: %s%s", blurb(),
-           (log_domain ? log_domain : progclass),
-           (log_level == G_LOG_LEVEL_ERROR    ? "error" :
-            log_level == G_LOG_LEVEL_CRITICAL ? "critical" :
-            log_level == G_LOG_LEVEL_WARNING  ? "warning" :
-            log_level == G_LOG_LEVEL_MESSAGE  ? "message" :
-            log_level == G_LOG_LEVEL_INFO     ? "info" :
-            log_level == G_LOG_LEVEL_DEBUG    ? "debug" : "???"),
-           message,
-           ((!*message || message[strlen(message)-1] != '\n')
-            ? "\n" : ""));
+g_logger (const gchar *domain, GLogLevelFlags log_level,
+          const gchar *message, gpointer data)
+{
+  if (log_level & G_LOG_LEVEL_DEBUG) return;
+  if (log_level & G_LOG_LEVEL_INFO)  return;
+  fprintf (stderr, "%s: %s: %s\n", blurb(), domain, message);
+  if (log_level & G_LOG_LEVEL_CRITICAL) exit (-1);
 }
 
+/* Why are there two of these hooks and why does this one suck so hard?? */
+static GLogWriterOutput
+g_other_logger (GLogLevelFlags log_level, const GLogField *fields,
+                gsize n_fields, gpointer data)
+{
+  int i;
+  GLogWriterOutput ret = G_LOG_WRITER_UNHANDLED;
+  if (log_level & G_LOG_LEVEL_DEBUG) return ret;
+  if (log_level & G_LOG_LEVEL_INFO)  return ret;
+  for (i = 0; i < n_fields; i++)
+    {
+      const GLogField *field = &fields[i];
+      if (strcmp (field->key, "MESSAGE")) continue;
+      fprintf (stderr, "%s: %s\n", blurb(), (char *) field->value);
+      ret = G_LOG_WRITER_HANDLED;
+    }
+  if (log_level & G_LOG_LEVEL_CRITICAL) exit (-1);
+  return ret;
+}
 
-STFU
-static char *defaults[] = {
-#include "XScreenSaver_ad.h"
- 0
-};
 
-const char *usage = "[--display dpy] [--prefs | --settings]"
-            "\n\t\t   [--debug] [--sync] [--no-xshm] [--configdir dir]";
+/****************************************************************************
 
+ XScreenSaverDialog callbacks, referenced by prefs.ui.
 
+ ****************************************************************************/
 
-#if 0
-static void
-print_widget_tree (GtkWidget *w, int depth)
+/* The "Documentation" button on the Settings dialog */
+G_MODULE_EXPORT void
+manual_cb (GtkButton *button, gpointer user_data)
 {
-  int i;
-  for (i = 0; i < depth; i++)
-    fprintf (stderr, "  ");
-  fprintf (stderr, "%s\n", gtk_widget_get_name (w));
+  XScreenSaverDialog *dialog = XSCREENSAVER_DIALOG (user_data);
+  XScreenSaverWindow *win = dialog->main;
+  state *s = &win->state;
+  Display *dpy = s->dpy;
+  saver_preferences *p = &s->prefs;
+  GtkWidget *list_widget = win->list;
+  int list_elt = selected_list_element (s);
+  int hack_number;
+  char *name, *name2, *cmd, *str;
+  char *oname = 0;
+  if (s->debug_p) fprintf (stderr, "%s: documentation button\n", blurb());
+  if (list_elt < 0) return;
+  hack_number = s->list_elt_to_hack_number[list_elt];
+
+  flush_dialog_changes_and_save (s);
+  ensure_selected_item_visible (list_widget);
+
+  name = strdup (p->screenhacks[hack_number]->command);
+  name2 = name;
+  oname = name;
+  while (isspace (*name2)) name2++;
+  str = name2;
+  while (*str && !isspace (*str)) str++;
+  *str = 0;
+  str = strrchr (name2, '/');
+  if (str) name2 = str+1;
 
-  if (GTK_IS_LIST (w))
+  cmd = get_string_resource (dpy, "manualCommand", "ManualCommand");
+  if (cmd)
     {
-      for (i = 0; i < depth+1; i++)
-        fprintf (stderr, "  ");
-      fprintf (stderr, "...list kids...\n");
+      char *cmd2 = (char *) malloc (strlen (cmd) + (strlen (name2) * 4) + 100);
+      strcpy (cmd2, "( ");
+      sprintf (cmd2 + strlen (cmd2),
+               cmd,
+               name2, name2, name2, name2);
+      strcat (cmd2, " ) &");
+      if (system (cmd2) < 0)
+        fprintf (stderr, "%s: fork error\n", blurb());
+      free (cmd2);
     }
-  else if (GTK_IS_CONTAINER (w))
+  else
     {
-      GList *kids = gtk_container_children (GTK_CONTAINER (w));
-      while (kids)
-        {
-          print_widget_tree (GTK_WIDGET (kids->data), depth+1);
-          kids = kids->next;
-        }
+      warning_dialog (s->window, _("Error"),
+                      _("no `manualCommand' resource set."));
     }
-}
-#endif /* 0 */
 
-static int
-delayed_scroll_kludge (gpointer data)
-{
-  state *s = (state *) data;
-  GtkWidget *w = GTK_WIDGET (name_to_widget (s, "list"));
-  ensure_selected_item_visible (w);
+  free (oname);
+}
 
-  /* Oh, this is just fucking lovely, too. */
-  w = GTK_WIDGET (name_to_widget (s, "preview"));
-  gtk_widget_hide (w);
-  gtk_widget_show (w);
 
-  return FALSE;  /* do not re-execute timer */
+static void
+settings_sync_cmd_text (state *s)
+{
+  XScreenSaverDialog *dialog = XSCREENSAVER_DIALOG (s->dialog);
+  GtkWidget *cmd = GTK_WIDGET (dialog->cmd_text);
+  char *cmd_line;
+  if (! s->cdata) return;
+  cmd_line = get_configurator_command_line (s->cdata, FALSE);
+  gtk_entry_set_text (GTK_ENTRY (cmd), cmd_line);
+  free (cmd_line);
 }
 
 
-static GtkWidget *
-create_xscreensaver_demo (void)
+/* The "Advanced" button on the settings dialog. */
+G_MODULE_EXPORT void
+settings_adv_cb (GtkButton *button, gpointer user_data)
 {
-  GtkWidget *nb;
+  XScreenSaverDialog *dialog = XSCREENSAVER_DIALOG (user_data);
+  XScreenSaverWindow *win = dialog->main;
+  state *s = &win->state;
+  GtkNotebook *notebook = GTK_NOTEBOOK (dialog->opt_notebook);
+  if (s->debug_p) fprintf (stderr, "%s: settings advanced button\n", blurb());
+  settings_sync_cmd_text (s);
+  gtk_notebook_set_current_page (notebook, 1);
+}
 
-  nb = name_to_widget (global_state_kludge, "preview_notebook");
-  gtk_notebook_set_show_tabs (GTK_NOTEBOOK (nb), FALSE);
 
-  return name_to_widget (global_state_kludge, "xscreensaver_demo");
+/* The "Standard" button on the settings dialog. */
+G_MODULE_EXPORT void
+settings_std_cb (GtkButton *button, gpointer user_data)
+{
+  XScreenSaverDialog *dialog = XSCREENSAVER_DIALOG (user_data);
+  XScreenSaverWindow *win = dialog->main;
+  state *s = &win->state;
+  GtkNotebook *notebook = GTK_NOTEBOOK (dialog->opt_notebook);
+  if (s->debug_p) fprintf (stderr, "%s: settings standard button\n", blurb());
+  settings_sync_cmd_text (s);
+  gtk_notebook_set_current_page (notebook, 0);
 }
 
-static GtkWidget *
-create_xscreensaver_settings_dialog (void)
+
+/* The "Reset to Defaults" button on the settings dialog. */
+G_MODULE_EXPORT void
+settings_reset_cb (GtkButton *button, gpointer user_data)
 {
-  GtkWidget *w, *box;
+  XScreenSaverDialog *dialog = XSCREENSAVER_DIALOG (user_data);
+  XScreenSaverWindow *win = dialog->main;
+  GtkWidget *cmd = GTK_WIDGET (dialog->cmd_text);
+  state *s = &win->state;
+  char *cmd_line;
+  if (s->debug_p) fprintf (stderr, "%s: settings reset button\n", blurb());
+  if (! s->cdata) return;
+  cmd_line = get_configurator_command_line (s->cdata, TRUE);
+  gtk_entry_set_text (GTK_ENTRY (cmd), cmd_line);
+  free (cmd_line);
+  populate_popup_window (s);
+}
 
-  box = name_to_widget (global_state_kludge, "dialog_action_area");
 
-  w = name_to_widget (global_state_kludge, "adv_button");
-  gtk_button_box_set_child_secondary (GTK_BUTTON_BOX (box), w, TRUE);
+/* Called when "Advanced/Standard" buttons change the displayed page. */
+G_MODULE_EXPORT void
+settings_switch_page_cb (GtkNotebook *notebook, GtkWidget *page,
+                         gint page_num, gpointer user_data)
+{
+  XScreenSaverDialog *dialog = XSCREENSAVER_DIALOG (user_data);
+  XScreenSaverWindow *win = dialog->main;
+  state *s = &win->state;
+  GtkWidget *adv = dialog->adv_button;
+  GtkWidget *std = dialog->std_button;
+  if (s->debug_p) fprintf (stderr, "%s: settings page changed\n", blurb());
 
-  w = name_to_widget (global_state_kludge, "std_button");
-  gtk_button_box_set_child_secondary (GTK_BUTTON_BOX (box), w, TRUE);
+  if (page_num == 0)
+    {
+      gtk_widget_show (adv);
+      gtk_widget_hide (std);
+    }
+  else if (page_num == 1)
+    {
+      gtk_widget_hide (adv);
+      gtk_widget_show (std);
+    }
+  else
+    abort();
 
-  return name_to_widget (global_state_kludge, "xscreensaver_settings_dialog");
+  /* Nobody uses the "Advanced" tab.  Let's just hide it. 
+     (The tab still needs to be there, since the 'cmd_text' widget is
+     what gets stored into the .xscreensaver file.) */
+  gtk_widget_hide (adv);
+  gtk_widget_hide (std);
 }
 
 
-int
-main (int argc, char **argv)
+/* The "Cancel" button on the Settings dialog. */
+G_MODULE_EXPORT void
+settings_cancel_cb (GtkWidget *button, gpointer user_data)
 {
-  XtAppContext app;
-  state S, *s;
-  saver_preferences *p;
-  Bool prefs_p = False;
-  Bool settings_p = False;
-  int i;
-  Display *dpy;
-  Widget toplevel_shell;
-  char *real_progname = argv[0];
-  char *window_title;
-  char *geom = 0;
-  char *str;
+  XScreenSaverDialog *dialog = XSCREENSAVER_DIALOG (user_data);
+  XScreenSaverWindow *win = dialog->main;
+  state *s = &win->state;
+  if (s->debug_p) fprintf (stderr, "%s: settings cancel button\n", blurb());
+  gtk_widget_hide (GTK_WIDGET (dialog));
+  gtk_widget_unrealize (GTK_WIDGET (dialog));
+
+  /* Restart the hack running in the Preview window with the reset options. */
+  schedule_preview (s, dialog->unedited_cmdline);
+}
 
-# ifdef ENABLE_NLS
-  bindtextdomain (GETTEXT_PACKAGE, LOCALEDIR);
-  textdomain (GETTEXT_PACKAGE);
-  bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8");
-# endif /* ENABLE_NLS */
 
-  str = strrchr (real_progname, '/');
-  if (str) real_progname = str+1;
+/* The "Ok" button on the Settings dialog. */
+G_MODULE_EXPORT void
+settings_ok_cb (GtkWidget *button, gpointer user_data)
+{
+  XScreenSaverDialog *dialog = XSCREENSAVER_DIALOG (user_data);
+  XScreenSaverWindow *win = dialog->main;
+  state *s = &win->state;
+  GtkNotebook *notebook = GTK_NOTEBOOK (dialog->opt_notebook);
+  int page = gtk_notebook_get_current_page (notebook);
+  if (s->debug_p) fprintf (stderr, "%s: settings ok button\n", blurb());
 
-  s = &S;
-  memset (s, 0, sizeof(*s));
-  s->initializing_p = True;
-  p = &s->prefs;
+  if (page == 0)
+    /* Regenerate the command-line from the widget contents before saving.
+       But don't do this if we're looking at the command-line page already,
+       or we will blow away what they typed... */
+    settings_sync_cmd_text (s);
 
-  global_state_kludge = s;  /* I hate C so much... */
+  flush_popup_changes_and_save (s);
+  gtk_widget_hide (GTK_WIDGET (dialog));
+  gtk_widget_unrealize (GTK_WIDGET (dialog));
+}
 
-  progname = real_progname;
 
-  s->short_version = XSCREENSAVER_VERSION;
+/* Called when any widget value is changed in the Settings dialog. */
+static void
+dialog_change_cb (GtkWidget *widget, gpointer user_data)
+{
+  state *s = (state *) user_data;
+  XScreenSaverDialog *dialog = XSCREENSAVER_DIALOG (s->dialog);
+  char *cur_cmd, *def_cmd;
+  const char *prev_cmd;
+  if (!dialog || !s->cdata) return;
+  settings_sync_cmd_text (s);
+  cur_cmd  = get_configurator_command_line (s->cdata, FALSE);
+  def_cmd  = get_configurator_command_line (s->cdata, TRUE);
+  prev_cmd = dialog->unedited_cmdline;
 
-  /* Register our error message logger for every ``log domain'' known.
-     There's no way to do this globally, so I grepped the Gtk/Gdk sources
-     for all of the domains that seem to be in use.
-  */
-  {
-    const char * const domains[] = { 0,
-                                     "Gtk", "Gdk", "GLib", "GModule",
-                                     "GThread", "Gnome", "GnomeUI" };
-    for (i = 0; i < countof(domains); i++)
-      g_log_set_handler (domains[i], G_LOG_LEVEL_MASK, g_log_handler, 0);
-  }
+  /* "Reset to Defaults" button enabled only if current cmd is not default. */
+  gtk_widget_set_sensitive (dialog->reset_button,
+                            !!strcmp (cur_cmd, def_cmd));
 
-  /* This is gross, but Gtk understands --display and not -display...
-   */
-  for (i = 1; i < argc; i++)
-    if (argv[i][0] && argv[i][1] && 
-        !strncmp(argv[i], "-display", strlen(argv[i])))
-      argv[i] = "--display";
+  /* "Save" button enabled only if current cmd is edited. */
+  gtk_widget_set_sensitive (dialog->ok_button,
+                            !!strcmp (cur_cmd, prev_cmd));
 
+  /* Restart the hack running in the Preview window with the prevailing,
+     un-saved set of options, for a realtime preview of what they do. */
+  schedule_preview (s, cur_cmd);
 
-  /* We need to parse this arg really early... Sigh. */
-  for (i = 1; i < argc; i++)
-    {
-      if (argv[i] &&
-          (!strcmp(argv[i], "--debug") ||
-           !strcmp(argv[i], "-debug") ||
-           !strcmp(argv[i], "-d")))
-        {
-          int j;
-          s->debug_p = True;
-          for (j = i; j < argc; j++)  /* remove it from the list */
-            argv[j] = argv[j+1];
-          argc--;
-          i--;
-        }
-      else if (argv[i] &&
-               argc > i+1 &&
-               *argv[i+1] &&
-               (!strcmp(argv[i], "-geometry") ||
-                !strcmp(argv[i], "-geom") ||
-                !strcmp(argv[i], "-geo") ||
-                !strcmp(argv[i], "-g")))
-        {
-          int j;
-          geom = argv[i+1];
-          for (j = i; j < argc; j++)  /* remove them from the list */
-            argv[j] = argv[j+2];
-          argc -= 2;
-          i -= 2;
-        }
-      else if (argv[i] &&
-               argc > i+1 &&
-               *argv[i+1] &&
-               (!strcmp(argv[i], "--configdir")))
-        {
-          int j;
-          struct stat st;
-          hack_configuration_path = argv[i+1];
-          for (j = i; j < argc; j++)  /* remove them from the list */
-            argv[j] = argv[j+2];
-          argc -= 2;
-          i -= 2;
-
-          if (0 != stat (hack_configuration_path, &st))
-            {
-              char buf[255];
-              sprintf (buf, "%s: %.200s", blurb(), hack_configuration_path);
-              perror (buf);
-              exit (1);
-            }
-          else if (!S_ISDIR (st.st_mode))
-            {
-              fprintf (stderr, "%s: not a directory: %s\n",
-                       blurb(), hack_configuration_path);
-              exit (1);
-            }
-        }
-    }
+  free (cur_cmd);
+  free (def_cmd);
+}
 
 
-  if (s->debug_p)
-    fprintf (stderr, "%s: using config directory \"%s\"\n",
-             progname, hack_configuration_path);
+/* Fill in the contents of the "Settings" dialog for the current hack.
+   It may or may not currently be visible. 
+ */
+static void
+populate_popup_window (state *s)
+{
+  XScreenSaverWindow *win = XSCREENSAVER_WINDOW (s->window);
+  XScreenSaverDialog *dialog = XSCREENSAVER_DIALOG (s->dialog);
 
+  GtkLabel *doc = dialog ? GTK_LABEL (dialog->doc) : 0;
+  char *doc_string = 0;
 
-  /* Let Gtk open the X connection, then initialize Xt to use that
-     same connection.  Doctor Frankenstein would be proud.
-   */
-  gtk_init (&argc, &argv);
+  if (s->cdata)
+    {
+      free_conf_data (s->cdata);
+      s->cdata = 0;
+    }
 
+  {
+    saver_preferences *p = &s->prefs;
+    int list_elt = selected_list_element (s);
+    int hack_number = (list_elt >= 0 && list_elt < s->list_count
+                       ? s->list_elt_to_hack_number[list_elt]
+                       : -1);
+    screenhack *hack = (hack_number >= 0 ? p->screenhacks[hack_number] : 0);
+    if (hack && dialog)
+      {
+        GtkWidget *parent = dialog->settings_vbox;
+        GtkWidget *cmd = GTK_WIDGET (dialog->cmd_text);
+        const char *cmd_line = gtk_entry_get_text (GTK_ENTRY (cmd));
+        if (!cmd_line) abort();
+        s->cdata = load_configurator (cmd_line, dialog_change_cb, s, 
+                                      s->debug_p);
+        dialog_change_cb (NULL, s);
+        if (s->cdata && s->cdata->widget)
+          gtk_box_pack_start (GTK_BOX (parent), s->cdata->widget,
+                              TRUE, TRUE, 0);
 
-  /* We must read exactly the same resources as xscreensaver.
-     That means we must have both the same progclass *and* progname,
-     at least as far as the resource database is concerned.  So,
-     put "xscreensaver" in argv[0] while initializing Xt.
-   */
-  argv[0] = "xscreensaver";
-  progname = argv[0];
+        /* Make the pretty name on the tab boxes include the year and be bold.
+         */
+        if (s->cdata && s->cdata->year)
+          {
+            XScreenSaverWindow *win = XSCREENSAVER_WINDOW (s->window);
+            Display *dpy = s->dpy;
+            GtkFrame *frame1 = GTK_FRAME (win->preview_frame);
+            GtkFrame *frame2 = GTK_FRAME (dialog->opt_frame);
+            char *pretty_name = (hack->name
+                                 ? strdup (hack->name)
+                                 : make_hack_name (dpy, hack->command));
+            char *s2 = (char *) malloc (strlen (pretty_name) + 20);
+            sprintf (s2, "<b>%s (%d)</b>", pretty_name, s->cdata->year);
+            free (pretty_name);
+            pretty_name = s2;
 
+            gtk_frame_set_label (frame1, _(pretty_name));
+            gtk_frame_set_label (frame2, _(pretty_name));
+            gtk_label_set_use_markup (  /* Must be after set_label */
+              GTK_LABEL (gtk_frame_get_label_widget (frame1)), TRUE);
+            gtk_label_set_use_markup (
+              GTK_LABEL (gtk_frame_get_label_widget (frame2)), TRUE);
+            free (pretty_name);
+          }
+      }
+  }
 
-  /* Teach Xt to use the Display that Gtk/Gdk have already opened.
-   */
-  XtToolkitInitialize ();
-  app = XtCreateApplicationContext ();
-  dpy = GDK_DISPLAY();
-  XtAppSetFallbackResources (app, defaults);
-  XtDisplayInitialize (app, dpy, progname, progclass, 0, 0, &argc, argv);
-  toplevel_shell = XtAppCreateShell (progname, progclass,
-                                     applicationShellWidgetClass,
-                                     dpy, 0, 0);
-
-  dpy = XtDisplay (toplevel_shell);
-  db = XtDatabase (dpy);
-  XtGetApplicationNameAndClass (dpy, (char **) &progname, &progclass);
-  XSetErrorHandler (demo_ehandler);
-
-  /* Let's just ignore these.  They seem to confuse Irix Gtk... */
-  signal (SIGPIPE, SIG_IGN);
-
-  /* After doing Xt-style command-line processing, complain about any
-     unrecognized command-line arguments.
-   */
-  for (i = 1; i < argc; i++)
+  doc_string = (s->cdata && s->cdata->description && *s->cdata->description
+                ? _(s->cdata->description)
+                : 0);
+  doc_string = hreffify (doc_string);
+  if (doc)
     {
-      char *str = argv[i];
-      if (str[0] == '-' && str[1] == '-')
-       str++;
-      if (!strcmp (str, "-prefs"))
-       prefs_p = True;
-      else if (!strcmp (str, "-settings"))
-       settings_p = True;
-      else
-       {
-         fprintf (stderr, _("%s: unknown option: %s\n"), real_progname,
-                   argv[i]);
-          fprintf (stderr, "%s: %s\n", real_progname, usage);
-          exit (1);
-       }
+      GtkWidget *w = dialog->dialog_vbox;
+      gtk_label_set_text (doc, (doc_string
+                                ? doc_string
+                                : _("No description available.")));
+      gtk_label_set_use_markup (doc, TRUE);
+
+      /* Shrink the dialog to the minimum viable size. */
+      gtk_window_resize (GTK_WINDOW (dialog), 1, 1);
+
+      gtk_widget_hide (w);
+      gtk_widget_unrealize (w);
+      gtk_widget_realize (w);
+      gtk_widget_show (w);
     }
 
-  /* Load the init file, which may end up consulting the X resource database
-     and the site-wide app-defaults file.  Note that at this point, it's
-     important that `progname' be "xscreensaver", rather than whatever
-     was in argv[0].
-   */
-  p->db = db;
-  s->multi_screen_p = multi_screen_p (dpy);
-
-  init_xscreensaver_atoms (dpy);
-  hack_environment (s);  /* must be before initialize_sort_map() */
-
-  load_init_file (dpy, p);
-  initialize_sort_map (s);
-
-  /* Now that Xt has been initialized, and the resources have been read,
-     we can set our `progname' variable to something more in line with
-     reality.
-   */
-  progname = real_progname;
+  /* Also set the documentation on the main window, below the preview. */
+  {
+    GtkLabel *doc2 = GTK_LABEL (win->short_preview_label);
+    GtkLabel *doc3 = GTK_LABEL (win->preview_author_label);
+    char *s2 = 0;
+    char *s3 = 0;
 
+    if (doc_string)
+      {
+        /* Keep only the first paragraph, and the last line.
+           Omit everything in between. */
+        const char *second_para = strstr (doc_string, "\n\n");
+        const char *last_line = strrchr (doc_string, '\n');
+        s2 = strdup (doc_string);
+        if (second_para)
+          s2[second_para - doc_string] = 0;
+        if (last_line)
+          s3 = strdup (last_line + 1);
+      }
 
-#if 0
-  /* Print out all the resources we read. */
-  {
-    XrmName name = { 0 };
-    XrmClass class = { 0 };
-    int count = 0;
-    XrmEnumerateDatabase (db, &name, &class, XrmEnumAllLevels, mapper,
-                         (POINTER) &count);
+    gtk_label_set_text (doc2, (s2
+                               ? _(s2)
+                               : _("No description available.")));
+    gtk_label_set_text (doc3, (s3 ? _(s3) : ""));
+    if (s2) free (s2);
+    if (s3) free (s3);
   }
-#endif
 
-  init_xscreensaver_atoms (dpy);
+  if (doc_string)
+    free (doc_string);
+}
 
-  /* Create the window and all its widgets.
-   */
-  s->base_widget     = create_xscreensaver_demo ();
-  s->popup_widget    = create_xscreensaver_settings_dialog ();
-  s->toplevel_widget = s->base_widget;
 
+static void
+sensitize_demo_widgets (state *s, Bool sensitive_p)
+{
+  XScreenSaverWindow *win = XSCREENSAVER_WINDOW (s->window);
+  XScreenSaverDialog *dialog = XSCREENSAVER_DIALOG (s->dialog);
+  gtk_widget_set_sensitive (win->demo, sensitive_p);
+  gtk_widget_set_sensitive (win->settings, sensitive_p);
+  if (dialog)
+    {
+      gtk_widget_set_sensitive (dialog->cmd_label, sensitive_p);
+      gtk_widget_set_sensitive (dialog->cmd_text, sensitive_p);
+      gtk_widget_set_sensitive (dialog->manual, sensitive_p);
+      gtk_widget_set_sensitive (dialog->visual, sensitive_p);
+      gtk_widget_set_sensitive (dialog->visual_combo, sensitive_p);
+    }
+}
 
-  /* Set the main window's title. */
-  {
-    char *base_title = _("Screensaver Preferences");
-    char *v = (char *) strdup(strchr(screensaver_id, ' '));
-    char *s1, *s2, *s3, *s4;
-    s1 = (char *) strchr(v,  ' '); s1++;
-    s2 = (char *) strchr(s1, ' ');
-    s3 = (char *) strchr(v,  '('); s3++;
-    s4 = (char *) strchr(s3, ')');
-    *s2 = 0;
-    *s4 = 0;
-
-    window_title = (char *) malloc (strlen (base_title) +
-                                    strlen (progclass) +
-                                    strlen (s1) + strlen (s3) +
-                                    100);
-    sprintf (window_title, "%s  (%s %s, %s)", base_title, progclass, s1, s3);
-    gtk_window_set_title (GTK_WINDOW (s->toplevel_widget), window_title);
-    gtk_window_set_title (GTK_WINDOW (s->popup_widget),    window_title);
-    free (v);
-  }
 
-  /* Adjust the (invisible) notebooks on the popup dialog... */
-  {
-    GtkNotebook *notebook =
-      GTK_NOTEBOOK (name_to_widget (s, "opt_notebook"));
-    GtkWidget *std = GTK_WIDGET (name_to_widget (s, "std_button"));
-    int page = 0;
+/* Flush out any changes made in the popup dialog box (where changes
+   take place only when the OK button is clicked.)
+ */
+static Bool
+flush_popup_changes_and_save (state *s)
+{
+  XScreenSaverDialog *dialog = XSCREENSAVER_DIALOG (s->dialog);
 
-    gtk_widget_hide (std);
+  Bool changed = FALSE;
+  saver_preferences *p = &s->prefs;
+  int list_elt = selected_list_element (s);
 
-    gtk_notebook_set_page (notebook, page);
-    gtk_notebook_set_show_tabs (notebook, False);
-  }
+  GtkEntry *cmd = GTK_ENTRY (dialog->cmd_text);
+  GtkWidget *vis = GTK_WIDGET (dialog->visual_combo);
+  GtkEntry *visent = GTK_ENTRY (gtk_bin_get_child (GTK_BIN (vis)));
+
+  const char *visual = gtk_entry_get_text (visent);
+  const char *command = gtk_entry_get_text (cmd);
+
+  char c;
+  unsigned long id;
+
+  if (s->saving_p) return FALSE;
+  s->saving_p = TRUE;
+
+  if (list_elt < 0)
+    goto DONE;
+
+  if (maybe_reload_init_file (s) != 0)
+    {
+      changed = TRUE;
+      goto DONE;
+    }
 
-  /* Various other widget initializations...
+  /* Sanity-check and canonicalize whatever the user typed into the combo box.
    */
-  gtk_signal_connect (GTK_OBJECT (s->toplevel_widget), "delete_event",
-                      GTK_SIGNAL_FUNC (wm_toplevel_close_cb),
-                      (gpointer) s);
-  gtk_signal_connect (GTK_OBJECT (s->popup_widget), "delete_event",
-                      GTK_SIGNAL_FUNC (wm_popup_close_cb),
-                      (gpointer) s);
+  if      (!strcasecmp (visual, ""))                   visual = "";
+  else if (!strcasecmp (visual, "any"))                visual = "";
+  else if (!strcasecmp (visual, "default"))            visual = "Default";
+  else if (!strcasecmp (visual, "default-n"))          visual = "Default-N";
+  else if (!strcasecmp (visual, "default-i"))          visual = "Default-I";
+  else if (!strcasecmp (visual, "best"))               visual = "Best";
+  else if (!strcasecmp (visual, "mono"))               visual = "Mono";
+  else if (!strcasecmp (visual, "monochrome"))         visual = "Mono";
+  else if (!strcasecmp (visual, "gray"))               visual = "Gray";
+  else if (!strcasecmp (visual, "grey"))               visual = "Gray";
+  else if (!strcasecmp (visual, "color"))              visual = "Color";
+  else if (!strcasecmp (visual, "gl"))                 visual = "GL";
+  else if (!strcasecmp (visual, "staticgray"))         visual = "StaticGray";
+  else if (!strcasecmp (visual, "staticcolor"))        visual = "StaticColor";
+  else if (!strcasecmp (visual, "truecolor"))          visual = "TRUEColor";
+  else if (!strcasecmp (visual, "grayscale"))          visual = "GrayScale";
+  else if (!strcasecmp (visual, "greyscale"))          visual = "GrayScale";
+  else if (!strcasecmp (visual, "pseudocolor"))        visual = "PseudoColor";
+  else if (!strcasecmp (visual, "directcolor"))        visual = "DirectColor";
+  else if (1 == sscanf (visual, " %lu %c", &id, &c))   ;
+  else if (1 == sscanf (visual, " 0x%lx %c", &id, &c)) ;
+  else visual = "";
 
-  populate_hack_list (s);
-  populate_prefs_page (s);
-  sensitize_demo_widgets (s, False);
-  scroll_to_current_hack (s);
+  changed = flush_changes (s, list_elt, -1, command, visual);
+  if (changed)
+    {
+      demo_write_init_file (s, p);
 
-  /* Hook up callbacks to the items on the mode menu. */
-  gtk_signal_connect (GTK_OBJECT (name_to_widget (s, "mode_menu")),
-                      "changed", GTK_SIGNAL_FUNC (mode_menu_item_cb),
-                      (gpointer) s);
-  if (! s->multi_screen_p)
+      /* Do this to re-launch the hack if (and only if) the command line
+         has changed. */
+      populate_demo_window (s, selected_list_element (s));
+    }
+
+ DONE:
+  s->saving_p = FALSE;
+  return changed;
+}
+
+
+/****************************************************************************
+
+ XScreenSaverWindow
+
+ ****************************************************************************/
+
+
+static void
+xscreensaver_window_destroy (GObject *object)
+{
+  /* Called by WM close box, but not by File / Quit */
+  XScreenSaverWindow *win = XSCREENSAVER_WINDOW (object);
+  quit_menu_cb (NULL, win);  /* Shouldn't return? */
+  G_OBJECT_CLASS (xscreensaver_window_parent_class)->dispose (object);
+}
+
+
+/* gtk_window_move() sets the origin of the window's WM decorations, but
+   GTK's "configure-event" returns the root-relative origin of the window
+   within the decorations, so the "configure-event" numbers are too large by
+   the size of the decorations (title bar and border).  Without compensating
+   for this, the window would move down and slightly to the right every time
+   we saved and restored.  GDK provides no way to find those numbers, so we
+   have to hack it out X11 style...
+ */
+static void
+wm_decoration_origin (GtkWindow *gtkw, int *x, int *y)
+{
+  Display *dpy = gdk_x11_get_default_xdisplay();
+  GdkWindow *gdkw = gtk_widget_get_window (GTK_WIDGET (gtkw));
+  Window xw = gdk_x11_window_get_xid (gdkw);
+
+  Window root, parent, *kids;
+  unsigned int nkids;
+
+  Atom type = None;
+  int format;
+  unsigned long nitems, bytesafter;
+  unsigned char *data;
+
+  static Atom swm_vroot = 0;
+  XWindowAttributes xgwa;
+
+  if (!dpy || !xw) return;
+  if (! XQueryTree (dpy, xw, &root, &parent, &kids, &nkids))
+    abort ();
+
+  if (parent == root)  /* No window above us at all */
+    return;
+
+  if (! swm_vroot)
+    swm_vroot = XInternAtom (dpy, "__SWM_VROOT", FALSE);
+
+  /* If parent is a virtual root, there is no intervening WM decoration. */
+  if (XGetWindowProperty (dpy, parent, swm_vroot,
+                          0, 0, FALSE, AnyPropertyType,
+                          &type, &format, &nitems, &bytesafter,
+                          (unsigned char **) &data)
+      == Success
+      && type != None)
+    return;
+
+  /* If we have a parent, it is the WM decoration, so use its origin. */
+  if (! XGetWindowAttributes (dpy, parent, &xgwa))
+    abort();
+  *x = xgwa.x;
+  *y = xgwa.y;
+}
+
+
+static void
+save_window_position (state *s, GtkWindow *win, int x, int y, Bool dialog_p)
+{
+  saver_preferences *p = &s->prefs;
+  int win_x, win_y, dialog_x, dialog_y;
+  char dummy;
+  char *old = p->settings_geom;
+  char str[100];
+
+  if (!s->dpy || s->wayland_p) return;
+  wm_decoration_origin (win, &x, &y);
+
+  if (!old || !*old ||
+      4 != sscanf (old, " %d , %d %d , %d %c",
+                   &win_x, &win_y, &dialog_x, &dialog_y, &dummy))
+    win_x = win_y = dialog_x = dialog_y = -1;
+
+  if (dialog_p)
+    dialog_x = x, dialog_y = y;
+  else
+    win_x = x, win_y = y;
+
+  sprintf (str, "%d,%d %d,%d", win_x, win_y, dialog_x, dialog_y);
+           
+  if (old && !strcmp (old, str)) return;  /* unchanged */
+
+  p->settings_geom = strdup (str);
+
+  if (s->debug_p)
+    fprintf (stderr, "%s: geom: %s => %s\n", blurb(), old, str);
+
+  /* This writes the .xscreensaver file repeatedly as the window is dragged,
+     which is too much.  We could defer it with a timer.  But instead let's
+     just not save it upon resize, and only save the positions once the
+     file is written due to some other change.
+   */
+  /* demo_write_init_file (s, p); */
+  if (old) free (old);
+}
+
+
+static void
+restore_window_position (state *s, GtkWindow *window, Bool dialog_p)
+{
+  saver_preferences *p = &s->prefs;
+  int win_x, win_y, dialog_x, dialog_y, x, y;
+  char dummy;
+  char *old = p->settings_geom;
+
+  if (!old || !*old ||
+      4 != sscanf (old, " %d , %d %d , %d %c",
+                   &win_x, &win_y, &dialog_x, &dialog_y, &dummy))
+    win_x = win_y = dialog_x = dialog_y = -1;
+
+  if (dialog_p)
+    x = dialog_x, y = dialog_y;
+  else
+    x = win_x, y = win_y;
+
+  if (x <= 0 || y <= 0) return;
+
+  if (s->debug_p)
+    fprintf (stderr, "%s: restore origin: %d,%d\n", blurb(), x, y);
+  gtk_window_move (window, x, y);
+}
+
+
+/* When the window is moved, save the new origin in .xscreensaver. */
+static gboolean
+xscreensaver_window_resize_cb (GtkWindow *window, GdkEvent *event,
+                               gpointer data)
+{
+  XScreenSaverWindow *win = XSCREENSAVER_WINDOW (window);
+  state *s = &win->state;
+  save_window_position (s, GTK_WINDOW (win), 
+                        event->configure.x, event->configure.y, FALSE);
+  return FALSE;
+}
+
+
+static int
+delayed_scroll_kludge (gpointer data)
+{
+  state *s = (state *) data;
+  XScreenSaverWindow *win = XSCREENSAVER_WINDOW (s->window);
+  GtkWidget *list_widget = win->list;
+  ensure_selected_item_visible (list_widget);
+  return FALSE;  /* do not re-execute timer */
+}
+
+
+static void
+quit_action_cb (GSimpleAction *action, GVariant *parameter, gpointer user_data)
+{
+  quit_menu_cb (NULL, user_data);
+}
+
+
+static GActionEntry app_entries[] = {
+  { "quit",   quit_action_cb,   NULL, NULL, NULL },
+/*
+  { "undo",   undo_action_cb,   NULL, NULL, NULL },
+  { "redo",   redo_action_cb,   NULL, NULL, NULL },
+  { "cut",    cut_action_cb,    NULL, NULL, NULL },
+  { "copy",   copy_action_cb,   NULL, NULL, NULL },
+  { "paste",  paste_action_cb,  NULL, NULL, NULL },
+  { "delete", delete_action_cb, NULL, NULL, NULL },
+*/
+};
+
+/* #### I don't know how to make the accelerators show up on the menu items,
+   and I don't understand the difference between "callbacks" and "actions".
+   I see examples in other .ui files that do things like:
+
+       <ui>
+         <menubar name="menubar">
+           <menu action="file">
+             <menuitem name="activate_menu" action="activate_action"/>
+   or
+       <menu id="menubar">
+         <submenu>
+           <attribute name="label">File</attribute>
+           <section>
+             <item>
+               <attribute name="label">Activate</attribute>
+               <attribute name="action">app.activate</attribute>
+
+   but when I put variants of that in demo.ui, nothing shows up.
+
+   It would be nice to have an "Edit" menu with working text-editing commands
+   on it, for use with our various text fields.  One would think that a GUI
+   toolkit would provide boilerplate for such things, but nooooo...
+ */
+const gchar *accels[][2] = {
+  { "app.quit",   "<Ctrl>Q" },
+/*
+  { "app.undo",   "<Ctrl>Z" },
+  { "app.redo",   "<Ctrl>Y" },
+  { "app.cut",    "<Ctrl>X" },
+  { "app.copy",   "<Ctrl>C" },
+  { "app.paste",  "<Ctrl>V" },
+*/
+};
+
+
+static void
+xscreensaver_window_realize (GtkWidget *self, gpointer user_data)
+{
+  XScreenSaverWindow *win = XSCREENSAVER_WINDOW (self);
+  state *s = &win->state;
+  saver_preferences *p = &s->prefs;
+
+  s->initializing_p = TRUE;
+  s->short_version = XSCREENSAVER_VERSION;
+  s->window = GTK_WINDOW (win);
+
+  s->dpy = gdk_x11_get_default_xdisplay();
+
+  /* Debian 11.4, Gtk 3.24.24, 2022: under Wayland, get_default_xdisplay is
+     returning uninitialized data!  However, gdk_x11_window_get_xid prints a
+     warning and returns NULL.  So let's try that, and as a fallback, also try
+     and sanity check the contents of the Display structure...
+   */
+  if (! gdk_x11_window_get_xid (gtk_widget_get_window (self)))
     {
-      GtkComboBox *opt = GTK_COMBO_BOX (name_to_widget (s, "mode_menu"));
-      GtkTreeModel *list = gtk_combo_box_get_model (opt);
-      unsigned int i;
-      for (i = 0; i < countof(mode_menu_order); i++)
+      s->dpy = NULL;
+      s->wayland_p = TRUE;
+    }
+
+  if (s->dpy)
+    {
+      if (ProtocolVersion (s->dpy) != 11 ||
+          ProtocolRevision (s->dpy) != 0)
         {
-          /* The "random-same" mode menu item does not appear unless
-             there are multiple screens.
-           */
-          if (mode_menu_order[i] == RANDOM_HACKS_SAME)
-            {
-              GtkTreeIter iter;
-              gtk_tree_model_iter_nth_child (list, &iter, NULL, i);
-              gtk_list_store_remove (GTK_LIST_STORE (list), &iter);
-              break;
-            }
+          fprintf (stderr, "%s: uninitialized data in Display: "
+                   "protocol version %d.%d!\n", blurb(),
+                   ProtocolVersion(s->dpy), ProtocolRevision(s->dpy));
+          s->dpy = NULL;
+          s->wayland_p = TRUE;
         }
-
-        /* recompute option-menu size */
-        gtk_widget_unrealize (GTK_WIDGET (opt));
-        gtk_widget_realize (GTK_WIDGET (opt));
     }
 
+  /* If we don't have a display connection, then we are surely under Wayland
+     even if the environment variable is not set.
+   */
+  if (!s->dpy &&
+      !getenv ("WAYLAND_DISPLAY") &&
+      !getenv ("WAYLAND_SOCKET"))
+    putenv ("WAYLAND_DISPLAY=probably");
+
+  if (getenv ("WAYLAND_DISPLAY") ||
+      getenv ("WAYLAND_SOCKET"))
+    s->wayland_p = TRUE;
 
-  /* Handle the -prefs command-line argument. */
-  if (prefs_p)
+  /* If GTK is running directly under Wayland, try to open an X11 connection
+     to XWayland anyway, so that get_string_resource and load_init_file work.
+   */
+  if (! s->dpy)
     {
-      GtkNotebook *notebook =
-        GTK_NOTEBOOK (name_to_widget (s, "notebook"));
-      gtk_notebook_set_page (notebook, 1);
+      s->dpy = XOpenDisplay (NULL);
+      if (s->debug_p)
+        {
+          if (s->dpy)
+            fprintf (stderr, "%s: opened secondary XWayland connection\n",
+                     blurb());
+          else
+            fprintf (stderr, "%s: failed to open XWayland connection\n",
+                     blurb());
+        }
     }
 
-  free (window_title);
-  window_title = 0;
+  /* Teach Xt to use the Display that Gtk/Gdk have already opened.
+   */
+  if (s->dpy)
+    {
+      XtAppContext app;
+      int argc = 0;
+      char *argv[2];
+      const char *oprogname = progname;
 
-  /* After picking the default size, allow -geometry to override it. */
-  if (geom)
-    gtk_window_parse_geometry (GTK_WINDOW (s->toplevel_widget), geom);
+      progname = "xscreensaver";  /* For X resources */
+      argv[argc++] = (char *) progname;
+      argv[argc] = 0;
 
-  gtk_widget_show (s->toplevel_widget);
-  init_icon (GET_WINDOW (GTK_WIDGET (s->toplevel_widget)));  /* after `show' */
-  fix_preview_visual (s);
+      XtToolkitInitialize ();
+      app = XtCreateApplicationContext ();
+      XtAppSetFallbackResources (app, defaults);
+      XtDisplayInitialize (app, s->dpy, progname, progclass, 0, 0, &argc, argv);
+      /* Result discarded and leaked */
+      XtAppCreateShell (progname, progclass, applicationShellWidgetClass,
+                        s->dpy, 0, 0);
+      p->db = XtDatabase (s->dpy);
+      XSetErrorHandler (x_error);
 
-  /* Realize page zero, so that we can diddle the scrollbar when the
-     user tabs back to it -- otherwise, the current hack isn't scrolled
-     to the first time they tab back there, when started with "-prefs".
-     (Though it is if they then tab away, and back again.)
+      signal (SIGPIPE, SIG_IGN);  /* Is this necessary? */
 
-     #### Bah!  This doesn't work.  Gtk eats my ass!  Someone who
-     #### understands this crap, explain to me how to make this work.
-  */
-  gtk_widget_realize (name_to_widget (s, "demos_table"));
+      progname = oprogname;
 
+# if 0
+      /* Print out all the Xrm resources we read. */
+      {
+        XrmName name = { 0 };
+        XrmClass class = { 0 };
+        int count = 0;
+        XrmEnumerateDatabase (db, &name, &class, XrmEnumAllLevels, xrm_mapper,
+                              (void *) &count);
+      }
+# endif
+    }
 
-  gtk_timeout_add (60 * 1000, check_blanked_timer, s);
+  s->multi_screen_p = multi_screen_p (s->dpy);
 
+  if (s->dpy)
+    init_xscreensaver_atoms (s->dpy);
 
-  /* Handle the --settings command-line argument. */
-  if (settings_p)
-    gtk_timeout_add (500, settings_timer, 0);
+  hack_environment (s);  /* must be before initialize_sort_map() */
+  load_init_file (s->dpy, p);
+  initialize_sort_map (s);
 
+  s->dialog = g_object_new (XSCREENSAVER_DIALOG_TYPE, NULL);
+  XSCREENSAVER_DIALOG (s->dialog)->main = win;
 
-  /* Issue any warnings about the running xscreensaver daemon.
-     Wait a few seconds, in case things are still starting up. */
-  if (! s->debug_p)
-    gtk_timeout_add (5 * 1000, the_network_is_not_the_computer, s);
-
-
-  if (time ((time_t *) 0) - XSCREENSAVER_RELEASED > 60*60*24*30*17)
-    warning_dialog (s->toplevel_widget,
-      _("Warning:\n\n"
-        "This version of xscreensaver is VERY OLD!\n"
-        "Please upgrade!\n"
-        "\n"
-        "https://www.jwz.org/xscreensaver/\n"
-        "\n"
-        "(If this is the latest version that your distro ships, then\n"
-        "your distro is doing you a disservice. Build from source.)\n"
-        ),
-      D_NONE, 7);
-
-  /* Run the Gtk event loop, and not the Xt event loop.  This means that
-     if there were Xt timers or fds registered, they would never get serviced,
-     and if there were any Xt widgets, they would never have events delivered.
-     Fortunately, we're using Gtk for all of the UI, and only initialized
-     Xt so that we could process the command line and use the X resource
-     manager.
-   */
-  s->initializing_p = False;
+  gtk_window_set_transient_for (GTK_WINDOW (s->dialog), GTK_WINDOW (win));
 
-  /* This totally sucks -- set a timer that whacks the scrollbar 0.5 seconds
-     after we start up.  Otherwise, it always appears scrolled to the top
-     when in crapplet-mode. */
-  gtk_timeout_add (500, delayed_scroll_kludge, s);
+  sensitize_menu_items (s, TRUE);
+  populate_hack_list (s);
+  populate_prefs_page (s);
+  sensitize_demo_widgets (s, FALSE);
+  scroll_to_current_hack (s);
+  if (s->dpy && !s->wayland_p)
+    fix_preview_visual (s);
+  if (! s->multi_screen_p)
+    hide_mode_menu_random_same (s);
+
+  restore_window_position (s, GTK_WINDOW (self), FALSE);
 
+  g_timeout_add (60 * 1000, check_blanked_timer, s);
 
-#if 1
+  /* Attach the actions and their keybindings. */
+  {
+    int i;
+    GtkApplication *app = gtk_window_get_application (GTK_WINDOW (win));
+    g_action_map_add_action_entries (G_ACTION_MAP (app),
+                                     app_entries, countof (app_entries),
+                                     win);
+    for (i = 0; i < countof (accels); i++)
+      {
+        const gchar *a[2];
+        a[0] = accels[i][1];
+        a[1] = 0;
+        gtk_application_set_accels_for_action (GTK_APPLICATION (app),
+                                               accels[i][0], a);
+      }
+  }
+
+# if 0
   /* Load every configurator in turn, to scan them for errors all at once. */
   if (s->debug_p)
     {
@@ -5052,13 +4869,235 @@ main (int argc, char **argv)
           if (d) free_conf_data (d);
         }
     }
-#endif
+# endif
+
+
+  /* Issue any warnings about the running xscreensaver daemon.
+     Wait a few seconds, in case things are still starting up. */
+  g_timeout_add (5 * 1000, the_network_is_not_the_computer, s);
+
+  /* This totally sucks -- set a timer that whacks the scrollbar 0.5 seconds
+     after we start up.  Otherwise, it always appears scrolled to the top. */
+  g_timeout_add (500, delayed_scroll_kludge, s);
+
+  s->initializing_p = FALSE;
+}
+
+
+static void
+xscreensaver_window_init (XScreenSaverWindow *win)
+{
+  gtk_widget_init_template (GTK_WIDGET (win));
+  g_signal_connect (win, "destroy",
+                    G_CALLBACK (xscreensaver_window_destroy), win);
+  g_signal_connect (win, "realize",
+                    G_CALLBACK (xscreensaver_window_realize), win);
+  g_signal_connect (win, "configure-event",
+                    G_CALLBACK (xscreensaver_window_resize_cb),win);
+}
+
+
+static void
+xscreensaver_window_class_init (XScreenSaverWindowClass *class)
+{
+  gtk_widget_class_set_template_from_resource (GTK_WIDGET_CLASS (class),
+                                     "/org/jwz/xscreensaver/demo.ui");
+
+  /* Fill in the widget fields in XScreenSaverWindow with the corresponding
+     objects created from demo.ui. */
+# undef W
+# define W(NAME) \
+    gtk_widget_class_bind_template_child (GTK_WIDGET_CLASS (class), \
+                                          XScreenSaverWindow, NAME);
+   ALL_WINDOW_WIDGETS
+#  undef W
+}
+
+
+/****************************************************************************
+
+ XScreenSaverDialog
 
+ ****************************************************************************/
 
-  gtk_main ();
+static void
+xscreensaver_dialog_destroy (GObject *object)
+{
+  /* Called by WM close box, but not by File / Quit */
+  XScreenSaverDialog *dialog = XSCREENSAVER_DIALOG (object);
+  XScreenSaverWindow *win = dialog->main;
+  flush_dialog_changes_and_save (&win->state);
+  G_OBJECT_CLASS (xscreensaver_dialog_parent_class)->dispose (object);
+}
+
+
+static void
+xscreensaver_dialog_realize (GtkWidget *self, gpointer user_data)
+{
+  XScreenSaverDialog *dialog = XSCREENSAVER_DIALOG (self);
+  XScreenSaverWindow *win = dialog->main;
+  state *s = &win->state;
+  restore_window_position (s, GTK_WINDOW (self), TRUE);
+}
+
+
+/* When the window is moved, save the new origin in .xscreensaver. */
+static gboolean
+xscreensaver_dialog_resize_cb (GtkWindow *window, GdkEvent *event,
+                               gpointer data)
+{
+  XScreenSaverDialog *dialog = XSCREENSAVER_DIALOG (window);
+  XScreenSaverWindow *win = dialog->main;
+  state *s = &win->state;
+  save_window_position (s, GTK_WINDOW (dialog),
+                        event->configure.x, event->configure.y, TRUE);
+  return FALSE;
+}
+
+
+/* The WM close box. */
+static gboolean
+xscreensaver_dialog_delete_cb (GtkWidget *self, GdkEvent *event,
+                               gpointer user_data)
+{
+  settings_cancel_cb (GTK_WIDGET (self), user_data);
+  return TRUE;  /* Do not run other handlers */
+}
+
+
+static void
+xscreensaver_dialog_init (XScreenSaverDialog *win)
+{
+  gtk_widget_init_template (GTK_WIDGET (win));
+  g_signal_connect (win, "destroy",
+                    G_CALLBACK (xscreensaver_dialog_destroy), win);
+  g_signal_connect (win, "realize",
+                    G_CALLBACK (xscreensaver_dialog_realize), win);
+  g_signal_connect (win, "configure-event",
+                    G_CALLBACK (xscreensaver_dialog_resize_cb), win);
+  g_signal_connect (win, "delete-event",
+                    G_CALLBACK (xscreensaver_dialog_delete_cb), win);
+}
+
+
+static void
+xscreensaver_dialog_class_init (XScreenSaverDialogClass *class)
+{
+  gtk_widget_class_set_template_from_resource (GTK_WIDGET_CLASS (class),
+                                     "/org/jwz/xscreensaver/prefs.ui");
+
+  /* Fill in the widget fields in XScreenSaverDialog with the corresponding
+     objects created from prefs.ui. */
+# undef W
+# define W(NAME) \
+    gtk_widget_class_bind_template_child (GTK_WIDGET_CLASS (class), \
+                                          XScreenSaverDialog, NAME);
+   ALL_DIALOG_WIDGETS
+#  undef W
+}
+
+
+/****************************************************************************
+
+ XScreenSaverApp
+
+ ****************************************************************************/
+
+
+static void
+xscreensaver_app_init (XScreenSaverApp *app)
+{
+}
 
-  kill_preview_subproc (s, False);
-  exit (0);
+
+static void
+xscreensaver_app_startup (GApplication *app)
+{
+  G_APPLICATION_CLASS (xscreensaver_app_parent_class)->startup (app);
+}
+
+
+static void
+xscreensaver_app_activate (GApplication *app)
+{
+  XScreenSaverWindow *win =
+    g_object_new (XSCREENSAVER_WINDOW_TYPE, "application", app, NULL);
+  win->state.debug_p = XSCREENSAVER_APP (app)->cmdline_debug_p;
+  gtk_widget_show_all (GTK_WIDGET (win));
+  gtk_window_present (GTK_WINDOW (win));
+}
+
+
+static void
+xscreensaver_app_open (GApplication *app,
+                       GFile **files, gint n_files,
+                       const gchar *hint)
+{
+  GList *windows = gtk_application_get_windows (GTK_APPLICATION (app));
+  if (windows)
+    gtk_window_present (GTK_WINDOW (windows->data));
+  else
+    xscreensaver_app_activate (app);
+}
+
+
+static int
+opts_cb (GApplication *app, GVariantDict *opts, gpointer data)
+{
+  if (g_variant_dict_contains (opts, "version")) {
+    fprintf (stderr, "%s\n", screensaver_id+4);
+    return 0;
+  } else if (g_variant_dict_contains (opts, "debug")) {
+    XSCREENSAVER_APP (app)->cmdline_debug_p = TRUE;
+    return -1;
+  } else {
+    return -1;
+  }
+}
+
+
+static void
+xscreensaver_app_class_init (XScreenSaverAppClass *class)
+{
+  G_APPLICATION_CLASS (class)->startup  = xscreensaver_app_startup;
+  G_APPLICATION_CLASS (class)->activate = xscreensaver_app_activate;
+  G_APPLICATION_CLASS (class)->open     = xscreensaver_app_open;
 }
 
+static XScreenSaverApp *
+xscreensaver_app_new (void)
+{
+  XScreenSaverApp *app = g_object_new (XSCREENSAVER_APP_TYPE,
+                                       "application-id",
+                                       "org.jwz.xscreensaver.settings",
+                                       NULL);
+
+  g_application_add_main_option (G_APPLICATION (app), "version", 'v', 
+                                 G_OPTION_FLAG_NONE, G_OPTION_ARG_NONE,
+                                 "Print the version number",
+                                 NULL);
+  g_application_add_main_option (G_APPLICATION (app), "debug", 0, 
+                                 G_OPTION_FLAG_NONE, G_OPTION_ARG_NONE,
+                                 "Print diagnostics to stderr",
+                                 NULL);
+  g_signal_connect (app, "handle-local-options", G_CALLBACK (opts_cb), app);
+  return app;
+}
+
+
+int
+main (int argc, char *argv[])
+{
+  char *s;
+  progname = argv[0];
+  s = strrchr (progname, '/');
+  if (s) progname = s+1;
+  g_log_set_default_handler (g_logger, NULL);
+  g_log_set_writer_func (g_other_logger, NULL, NULL);
+  return g_application_run (G_APPLICATION (xscreensaver_app_new()),
+                            argc, argv);
+}
+
+
+
 #endif /* HAVE_GTK -- whole file */
diff --git a/driver/demo.ui b/driver/demo.ui
new file mode 100644 (file)
index 0000000..acd5360
--- /dev/null
@@ -0,0 +1,2680 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<interface>
+  <template class="XScreenSaverWindow" parent="GtkApplicationWindow">
+    <property name="title" translatable="yes">XScreenSaver Settings</property>
+    <property name="type">GTK_WINDOW_TOPLEVEL</property>
+    <property name="window-position">GTK_WIN_POS_NONE</property>
+    <property name="modal">False</property>
+    <property name="resizable">True</property>
+    <property name="destroy-with-parent">False</property>
+    <property name="decorated">True</property>
+    <property name="skip-taskbar-hint">False</property>
+    <property name="skip-pager-hint">False</property>
+    <property name="type-hint">GDK_WINDOW_TYPE_HINT_NORMAL</property>
+    <property name="gravity">GDK_GRAVITY_NORTH_WEST</property>
+    <property name="focus-on-map">True</property>
+    <property name="urgency-hint">False</property>
+    <child>
+      <object class="GtkAdjustment" id="adjustment1">
+        <property name="upper">720</property>
+        <property name="lower">1</property>
+        <property name="page-increment">15</property>
+        <property name="step-increment">1</property>
+        <property name="page-size">0</property>
+        <property name="value">1</property>
+      </object>
+      <object class="GtkAdjustment" id="adjustment2">
+        <property name="upper">720</property>
+        <property name="lower">0</property>
+        <property name="page-increment">15</property>
+        <property name="step-increment">1</property>
+        <property name="page-size">0</property>
+        <property name="value">0</property>
+      </object>
+      <object class="GtkAdjustment" id="adjustment3">
+        <property name="upper">720</property>
+        <property name="lower">0</property>
+        <property name="page-increment">15</property>
+        <property name="step-increment">1</property>
+        <property name="page-size">0</property>
+        <property name="value">0</property>
+      </object>
+      <object class="GtkAdjustment" id="adjustment4">
+        <property name="upper">1440</property>
+        <property name="lower">0</property>
+        <property name="page-increment">15</property>
+        <property name="step-increment">1</property>
+        <property name="page-size">0</property>
+        <property name="value">0</property>
+      </object>
+      <object class="GtkAdjustment" id="adjustment5">
+        <property name="upper">1440</property>
+        <property name="lower">0</property>
+        <property name="page-increment">15</property>
+        <property name="step-increment">1</property>
+        <property name="page-size">0</property>
+        <property name="value">0</property>
+      </object>
+      <object class="GtkAdjustment" id="adjustment6">
+        <property name="upper">1440</property>
+        <property name="lower">0</property>
+        <property name="page-increment">15</property>
+        <property name="step-increment">1</property>
+        <property name="page-size">0</property>
+        <property name="value">0</property>
+      </object>
+      <object class="GtkAdjustment" id="adjustment7">
+        <property name="upper">10</property>
+        <property name="lower">0</property>
+        <property name="page-increment">1</property>
+        <property name="step-increment">1</property>
+        <property name="page-size">0</property>
+        <property name="value">0</property>
+      </object>
+      <object class="GtkListStore" id="mode_menu_model">
+        <columns>
+          <column type="gchararray"/>
+        </columns>
+        <data>
+          <row>
+            <col id="0" translatable="yes">Disable Screen Saver</col>
+          </row>
+          <row>
+            <col id="0" translatable="yes">Blank Screen Only</col>
+          </row>
+          <row>
+            <col id="0" translatable="yes">Only One Screen Saver</col>
+          </row>
+          <row>
+            <col id="0" translatable="yes">Random Screen Saver</col>
+          </row>
+          <row>
+            <col id="0" translatable="yes">Same Random Savers</col>
+          </row>
+        </data>
+      </object>
+      <object class="GtkListStore" id="theme_menu_model">
+        <columns>
+          <column type="gchararray"/>
+        </columns>
+        <data>
+          <row>
+            <col id="0" translatable="yes">Default</col>
+          </row>
+        </data>
+      </object>
+      <object class="GtkBox" id="content_box">
+        <property name="visible">True</property>
+        <property name="orientation">vertical</property>
+        <child>
+          <object class="GtkBox" id="outer_vbox">
+            <property name="visible">True</property>
+            <property name="homogeneous">False</property>
+            <property name="spacing">5</property>
+            <property name="orientation">vertical</property>
+            <child>
+              <object class="GtkMenuBar" id="menubar">
+                <property name="visible">True</property>
+                <property name="can-focus">False</property>
+                <child>
+                  <object class="GtkImageMenuItem">
+                    <property name="visible">True</property>
+                    <property name="can-focus">False</property>
+                    <property name="label">gtk-file</property>
+                    <property name="use-stock">True</property>
+                    <property name="use-underline">True</property>
+                    <signal handler="file_menu_cb" name="activate"/>
+                    <child type="submenu">
+                      <object class="GtkMenu">
+                        <property name="visible">True</property>
+                        <property name="can-focus">False</property>
+                        <child>
+                          <object class="GtkImageMenuItem" id="activate_menuitem">
+                            <property name="label" translatable="yes">_Blank Screen Now</property>
+                            <property name="visible">True</property>
+                            <property name="can-focus">False</property>
+                            <property name="use-underline">True</property>
+                            <signal handler="activate_menu_cb" name="activate"/>
+                          </object>
+                        </child>
+                        <child>
+                          <object class="GtkImageMenuItem" id="lock_menuitem">
+                            <property name="label" translatable="yes">_Lock Screen Now</property>
+                            <property name="visible">True</property>
+                            <property name="can-focus">False</property>
+                            <property name="use-underline">True</property>
+                            <signal handler="lock_menu_cb" name="activate"/>
+                          </object>
+                        </child>
+                        <child>
+                          <object class="GtkImageMenuItem" id="kill_menuitem">
+                            <property name="label" translatable="yes">_Kill Daemon</property>
+                            <property name="visible">True</property>
+                            <property name="can-focus">False</property>
+                            <property name="use-underline">True</property>
+                            <signal handler="kill_menu_cb" name="activate"/>
+                          </object>
+                        </child>
+                        <child>
+                          <object class="GtkImageMenuItem">
+                            <property name="label" translatable="yes">_Restart Daemon</property>
+                            <property name="visible">True</property>
+                            <property name="can-focus">False</property>
+                            <property name="use-underline">True</property>
+                            <signal handler="restart_menu_cb" name="activate"/>
+                          </object>
+                        </child>
+                        <child>
+                          <object class="GtkImageMenuItem">
+                            <property name="label">gtk-quit</property>
+                            <property name="use-stock">True</property>
+                            <property name="visible">True</property>
+                            <property name="can-focus">False</property>
+                            <property name="use-underline">True</property>
+                            <signal handler="quit_menu_cb" name="activate"/>
+                          </object>
+                        </child>
+                      </object>
+                    </child>
+                  </object>
+                </child>
+
+<!--
+                <child>
+                  <object class="GtkImageMenuItem">
+                    <property name="visible">True</property>
+                    <property name="can-focus">False</property>
+                    <property name="label">gtk-edit</property>
+                    <property name="use-stock">True</property>
+                    <property name="use-underline">True</property>
+                    <child type="submenu">
+                      <object class="GtkMenu">
+                        <property name="visible">True</property>
+                        <property name="can-focus">False</property>
+                        <child>
+                          <object class="GtkImageMenuItem">
+                            <property name="label">gtk-undo</property>
+                            <property name="use-stock">True</property>
+                            <property name="visible">True</property>
+                            <property name="can-focus">False</property>
+                            <property name="use-underline">True</property>
+                            <signal handler="undo_menu_cb" name="activate"/>
+                          </object>
+                        </child>
+                        <child>
+                          <object class="GtkImageMenuItem">
+                            <property name="label">gtk-redo</property>
+                            <property name="use-stock">True</property>
+                            <property name="visible">True</property>
+                            <property name="can-focus">False</property>
+                            <property name="use-underline">True</property>
+                            <signal handler="redo_menu_cb" name="activate"/>
+                          </object>
+                        </child>
+                        <child>
+                          <object class="GtkSeparatorMenuItem">
+                            <property name="visible">True</property>
+                          </object>
+                        </child>
+                        <child>
+                          <object class="GtkImageMenuItem">
+                            <property name="label">gtk-cut</property>
+                            <property name="use-stock">True</property>
+                            <property name="visible">True</property>
+                            <property name="can-focus">False</property>
+                            <property name="use-underline">True</property>
+                            <signal handler="cut_menu_cb" name="activate"/>
+                          </object>
+                        </child>
+                        <child>
+                          <object class="GtkImageMenuItem">
+                            <property name="label">gtk-copy</property>
+                            <property name="use-stock">True</property>
+                            <property name="visible">True</property>
+                            <property name="can-focus">False</property>
+                            <property name="use-underline">True</property>
+                            <signal handler="copy_menu_cb" name="activate"/>
+                          </object>
+                        </child>
+                        <child>
+                          <object class="GtkImageMenuItem">
+                            <property name="label">gtk-paste</property>
+                            <property name="use-stock">True</property>
+                            <property name="visible">True</property>
+                            <property name="can-focus">False</property>
+                            <property name="use-underline">True</property>
+                            <signal handler="paste_menu_cb" name="activate"/>
+                          </object>
+                        </child>
+                        <child>
+                          <object class="GtkImageMenuItem">
+                            <property name="label">gtk-delete</property>
+                            <property name="use-stock">True</property>
+                            <property name="visible">True</property>
+                            <property name="can-focus">False</property>
+                            <property name="use-underline">True</property>
+                            <signal handler="delete_menu_cb" name="activate"/>
+                          </object>
+                        </child>
+                      </object>
+                    </child>
+                  </object>
+                </child>
+-->
+
+                <child>
+                  <object class="GtkImageMenuItem">
+                    <property name="visible">True</property>
+                    <property name="can-focus">False</property>
+                    <property name="label">gtk-help</property>
+                    <property name="use-stock">True</property>
+                    <property name="use-underline">True</property>
+                    <child type="submenu">
+                      <object class="GtkMenu">
+                        <property name="visible">True</property>
+                        <property name="can-focus">False</property>
+                        <child>
+                          <object class="GtkImageMenuItem">
+                            <property name="label">gtk-about</property>
+                            <property name="visible">True</property>
+                            <property name="can-focus">False</property>
+                            <property name="use-underline">True</property>
+                            <property name="use-stock">True</property>
+                            <signal handler="about_menu_cb" name="activate"/>
+                          </object>
+                        </child>
+                        <child>
+                          <object class="GtkImageMenuItem">
+                            <property name="label" translatable="yes">Documentation...</property>
+                            <property name="visible">True</property>
+                            <property name="can-focus">False</property>
+                            <property name="use-underline">True</property>
+                            <signal handler="doc_menu_cb" name="activate"/>
+                          </object>
+                        </child>
+                      </object>
+                    </child>
+                  </object>
+                </child>
+              </object>
+              <packing>
+                <property name="padding">0</property>
+                <property name="expand">False</property>
+                <property name="fill">False</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkBox" id="spacer_hbox">
+                <property name="border-width">8</property>
+                <property name="visible">True</property>
+                <property name="homogeneous">False</property>
+                <property name="spacing">0</property>
+                <property name="orientation">horizontal</property>
+                <child>
+                  <object class="GtkNotebook" id="notebook">
+                    <property name="visible">True</property>
+                    <property name="can-focus">True</property>
+                    <property name="show-tabs">True</property>
+                    <property name="show-border">True</property>
+                    <property name="tab-pos">GTK_POS_TOP</property>
+                    <property name="scrollable">False</property>
+                    <property name="enable-popup">False</property>
+                    <signal handler="switch_page_cb" name="switch_page"/>
+                    <child>
+                      <object class="GtkTable" id="demos_table">
+                        <property name="border-width">10</property>
+                        <property name="visible">True</property>
+                        <property name="n-rows">2</property>
+                        <property name="n-columns">2</property>
+                        <property name="homogeneous">False</property>
+                        <property name="row-spacing">0</property>
+                        <property name="column-spacing">0</property>
+                        <child>
+                          <object class="GtkTable" id="blanking_table">
+                            <property name="visible">True</property>
+                            <property name="n-rows">3</property>
+                            <property name="n-columns">4</property>
+                            <property name="homogeneous">False</property>
+                            <property name="row-spacing">2</property>
+                            <property name="column-spacing">0</property>
+                            <child>
+                              <object class="GtkLabel" id="cycle_label">
+                                <property name="visible">True</property>
+                                <property name="label" translatable="yes">_Cycle After</property>
+                                <property name="use-underline">True</property>
+                                <property name="use-markup">False</property>
+                                <property name="justify">GTK_JUSTIFY_RIGHT</property>
+                                <property name="wrap">False</property>
+                                <property name="selectable">False</property>
+                                <property name="xalign">1</property>
+                                <property name="yalign">0.5</property>
+                                <property name="xpad">8</property>
+                                <property name="ypad">0</property>
+                                <property name="mnemonic-widget">cycle_spinbutton</property>
+                                <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                                <property name="width-chars">-1</property>
+                                <property name="single-line-mode">False</property>
+                                <property name="angle">0</property>
+                                <accessibility>
+                                  <relation target="cycle_spinbutton" type="label-for"/>
+                                  <relation target="cycle_spinbutton" type="flows-to"/>
+                                </accessibility>
+                              </object>
+                              <packing>
+                                <property name="left-attach">1</property>
+                                <property name="right-attach">2</property>
+                                <property name="top-attach">1</property>
+                                <property name="bottom-attach">2</property>
+                                <property name="x-options">fill</property>
+                                <property name="y-options"/>
+                              </packing>
+                            </child>
+                            <child>
+                              <object class="GtkEventBox" id="lock_button_eventbox">
+                                <property name="visible">True</property>
+                                <property name="tooltip-text" translatable="yes">Whether a password should be required to un-blank the screen.</property>
+                                <property name="visible-window">False</property>
+                                <property name="above-child">False</property>
+                                <child>
+                                  <object class="GtkCheckButton" id="lock_button">
+                                    <property name="visible">True</property>
+                                    <property name="can-focus">True</property>
+                                    <property name="label" translatable="yes">_Lock Screen After  </property>
+                                    <property name="use-underline">True</property>
+                                    <property name="relief">GTK_RELIEF_NORMAL</property>
+                                    <property name="focus-on-click">True</property>
+                                    <property name="active">False</property>
+                                    <property name="inconsistent">False</property>
+                                    <property name="draw-indicator">True</property>
+                                    <accessibility>
+                                      <relation target="lock_spinbutton" type="controller-for"/>
+                                      <relation target="lock_spinbutton" type="label-for"/>
+                                      <relation target="lock_spinbutton" type="flows-to"/>
+                                    </accessibility>
+                                    <signal handler="pref_changed_cb" name="toggled"/>
+                                    <child internal-child="accessible">
+                                      <object class="AtkObject" id="a11y-lock_button1">
+                                        <property name="AtkObject::accessible-name" translatable="yes">Lock Screen</property>
+                                      </object>
+                                    </child>
+                                  </object>
+                                </child>
+                              </object>
+                              <packing>
+                                <property name="left-attach">0</property>
+                                <property name="right-attach">2</property>
+                                <property name="top-attach">2</property>
+                                <property name="bottom-attach">3</property>
+                                <property name="x-options">fill</property>
+                                <property name="y-options"/>
+                              </packing>
+                            </child>
+                            <child>
+                              <object class="GtkSpinButton" id="timeout_spinbutton">
+                                <property name="visible">True</property>
+                                <property name="tooltip-text" translatable="yes">How long before the screen saver activates.</property>
+                                <property name="can-focus">True</property>
+                                <property name="climb-rate">15</property>
+                                <property name="digits">0</property>
+                                <property name="numeric">True</property>
+                                <property name="update-policy">GTK_UPDATE_ALWAYS</property>
+                                <property name="snap-to-ticks">True</property>
+                                <property name="wrap">False</property>
+                                <property name="adjustment">adjustment1</property>
+                                <accessibility>
+                                  <relation target="timeout_label" type="labelled-by"/>
+                                  <relation target="timeout_mlabel" type="labelled-by"/>
+                                  <relation target="timeout_label" type="flows-from"/>
+                                  <relation target="timeout_mlabel" type="flows-to"/>
+                                </accessibility>
+                                <signal handler="pref_changed_cb" name="activate"/>
+                                <signal handler="pref_changed_event_cb" name="focus_out_event"/>
+                                <signal handler="pref_changed_cb" name="value_changed"/>
+                              </object>
+                              <packing>
+                                <property name="left-attach">2</property>
+                                <property name="right-attach">3</property>
+                                <property name="top-attach">0</property>
+                                <property name="bottom-attach">1</property>
+                                <property name="x-options">fill</property>
+                                <property name="y-options"/>
+                              </packing>
+                            </child>
+                            <child>
+                              <object class="GtkSpinButton" id="lock_spinbutton">
+                                <property name="visible">True</property>
+                                <property name="tooltip-text" translatable="yes">How long after the screen blanks until a password will be required.</property>
+                                <property name="can-focus">True</property>
+                                <property name="climb-rate">15</property>
+                                <property name="digits">0</property>
+                                <property name="numeric">True</property>
+                                <property name="update-policy">GTK_UPDATE_ALWAYS</property>
+                                <property name="snap-to-ticks">True</property>
+                                <property name="wrap">False</property>
+                                <property name="adjustment">adjustment2</property>
+                                <accessibility>
+                                  <relation target="lock_button" type="controlled-by"/>
+                                  <relation target="lock_button" type="labelled-by"/>
+                                  <relation target="lock_mlabel" type="labelled-by"/>
+                                  <relation target="lock_button" type="flows-from"/>
+                                  <relation target="lock_mlabel" type="flows-to"/>
+                                </accessibility>
+                                <signal handler="pref_changed_cb" name="activate"/>
+                                <signal handler="pref_changed_event_cb" name="focus_out_event"/>
+                                <signal handler="pref_changed_cb" name="value_changed"/>
+                                <child internal-child="accessible">
+                                  <object class="AtkObject" id="a11y-lock_spinbutton1">
+                                    <property name="AtkObject::accessible-name" translatable="yes">Lock Screen After</property>
+                                  </object>
+                                </child>
+                              </object>
+                              <packing>
+                                <property name="left-attach">2</property>
+                                <property name="right-attach">3</property>
+                                <property name="top-attach">2</property>
+                                <property name="bottom-attach">3</property>
+                                <property name="y-padding">10</property>
+                                <property name="x-options">fill</property>
+                                <property name="y-options"/>
+                              </packing>
+                            </child>
+                            <child>
+                              <object class="GtkSpinButton" id="cycle_spinbutton">
+                                <property name="visible">True</property>
+                                <property name="tooltip-text" translatable="yes">How long each display mode should run before choosing a new one (in Random mode.)</property>
+                                <property name="can-focus">True</property>
+                                <property name="climb-rate">15</property>
+                                <property name="digits">0</property>
+                                <property name="numeric">True</property>
+                                <property name="update-policy">GTK_UPDATE_ALWAYS</property>
+                                <property name="snap-to-ticks">True</property>
+                                <property name="wrap">False</property>
+                                <property name="adjustment">adjustment3</property>
+                                <accessibility>
+                                  <relation target="cycle_label" type="labelled-by"/>
+                                  <relation target="cycle_mlabel" type="labelled-by"/>
+                                  <relation target="cycle_label" type="flows-from"/>
+                                  <relation target="cycle_mlabel" type="flows-to"/>
+                                </accessibility>
+                                <signal handler="pref_changed_cb" name="activate"/>
+                                <signal handler="pref_changed_event_cb" name="focus_out_event"/>
+                                <signal handler="pref_changed_cb" name="value_changed"/>
+                              </object>
+                              <packing>
+                                <property name="left-attach">2</property>
+                                <property name="right-attach">3</property>
+                                <property name="top-attach">1</property>
+                                <property name="bottom-attach">2</property>
+                                <property name="x-options">fill</property>
+                                <property name="y-options"/>
+                              </packing>
+                            </child>
+                            <child>
+                              <object class="GtkLabel" id="lock_mlabel">
+                                <property name="visible">True</property>
+                                <property name="label" translatable="yes">minutes</property>
+                                <property name="use-underline">False</property>
+                                <property name="use-markup">False</property>
+                                <property name="justify">GTK_JUSTIFY_LEFT</property>
+                                <property name="wrap">False</property>
+                                <property name="selectable">False</property>
+                                <property name="xalign">0</property>
+                                <property name="yalign">0.5</property>
+                                <property name="xpad">8</property>
+                                <property name="ypad">0</property>
+                                <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                                <property name="width-chars">-1</property>
+                                <property name="single-line-mode">False</property>
+                                <property name="angle">0</property>
+                                <accessibility>
+                                  <relation target="lock_spinbutton" type="label-for"/>
+                                  <relation target="lock_spinbutton" type="flows-to"/>
+                                </accessibility>
+                              </object>
+                              <packing>
+                                <property name="left-attach">3</property>
+                                <property name="right-attach">4</property>
+                                <property name="top-attach">2</property>
+                                <property name="bottom-attach">3</property>
+                                <property name="y-options"/>
+                              </packing>
+                            </child>
+                            <child>
+                              <object class="GtkLabel" id="cycle_mlabel">
+                                <property name="visible">True</property>
+                                <property name="label" translatable="yes">minutes</property>
+                                <property name="use-underline">False</property>
+                                <property name="use-markup">False</property>
+                                <property name="justify">GTK_JUSTIFY_LEFT</property>
+                                <property name="wrap">False</property>
+                                <property name="selectable">False</property>
+                                <property name="xalign">0</property>
+                                <property name="yalign">0.5</property>
+                                <property name="xpad">8</property>
+                                <property name="ypad">0</property>
+                                <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                                <property name="width-chars">-1</property>
+                                <property name="single-line-mode">False</property>
+                                <property name="angle">0</property>
+                                <accessibility>
+                                  <relation target="cycle_spinbutton" type="label-for"/>
+                                  <relation target="cycle_spinbutton" type="flows-from"/>
+                                </accessibility>
+                              </object>
+                              <packing>
+                                <property name="left-attach">3</property>
+                                <property name="right-attach">4</property>
+                                <property name="top-attach">1</property>
+                                <property name="bottom-attach">2</property>
+                                <property name="y-options"/>
+                              </packing>
+                            </child>
+                            <child>
+                              <object class="GtkLabel" id="timeout_label">
+                                <property name="visible">True</property>
+                                <property name="label" translatable="yes">_Blank After</property>
+                                <property name="use-underline">True</property>
+                                <property name="use-markup">False</property>
+                                <property name="justify">GTK_JUSTIFY_RIGHT</property>
+                                <property name="wrap">False</property>
+                                <property name="selectable">False</property>
+                                <property name="xalign">1</property>
+                                <property name="yalign">0.5</property>
+                                <property name="xpad">8</property>
+                                <property name="ypad">0</property>
+                                <property name="mnemonic-widget">timeout_spinbutton</property>
+                                <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                                <property name="width-chars">-1</property>
+                                <property name="single-line-mode">False</property>
+                                <property name="angle">0</property>
+                                <accessibility>
+                                  <relation target="timeout_spinbutton" type="label-for"/>
+                                  <relation target="timeout_spinbutton" type="flows-to"/>
+                                </accessibility>
+                              </object>
+                              <packing>
+                                <property name="left-attach">1</property>
+                                <property name="right-attach">2</property>
+                                <property name="top-attach">0</property>
+                                <property name="bottom-attach">1</property>
+                                <property name="x-options">fill</property>
+                                <property name="y-options"/>
+                              </packing>
+                            </child>
+                            <child>
+                              <object class="GtkLabel" id="timeout_mlabel">
+                                <property name="visible">True</property>
+                                <property name="label" translatable="yes">minutes</property>
+                                <property name="use-underline">False</property>
+                                <property name="use-markup">False</property>
+                                <property name="justify">GTK_JUSTIFY_LEFT</property>
+                                <property name="wrap">False</property>
+                                <property name="selectable">False</property>
+                                <property name="xalign">0</property>
+                                <property name="yalign">0.5</property>
+                                <property name="xpad">8</property>
+                                <property name="ypad">0</property>
+                                <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                                <property name="width-chars">-1</property>
+                                <property name="single-line-mode">False</property>
+                                <property name="angle">0</property>
+                                <accessibility>
+                                  <relation target="timeout_spinbutton" type="label-for"/>
+                                  <relation target="timeout_spinbutton" type="flows-from"/>
+                                </accessibility>
+                              </object>
+                              <packing>
+                                <property name="left-attach">3</property>
+                                <property name="right-attach">4</property>
+                                <property name="top-attach">0</property>
+                                <property name="bottom-attach">1</property>
+                                <property name="y-options"/>
+                              </packing>
+                            </child>
+                          </object>
+                          <packing>
+                            <property name="left-attach">0</property>
+                            <property name="right-attach">1</property>
+                            <property name="top-attach">1</property>
+                            <property name="bottom-attach">2</property>
+                            <property name="x-options">fill</property>
+                            <property name="y-options">fill</property>
+                          </packing>
+                        </child>
+                        <child>
+                          <object class="GtkHButtonBox" id="demo_manual_hbbox">
+                            <property name="visible">True</property>
+                            <property name="layout-style">GTK_BUTTONBOX_SPREAD</property>
+                            <property name="spacing">30</property>
+                            <child>
+                              <object class="GtkButton" id="demo">
+                                <property name="visible">True</property>
+                                <property name="tooltip-text" translatable="yes">Demo the selected screen saver in full-screen mode (click the mouse to return.)</property>
+                                <property name="can-default">True</property>
+                                <property name="can-focus">True</property>
+                                <property name="label" translatable="yes">_Preview</property>
+                                <property name="use-underline">True</property>
+                                <property name="relief">GTK_RELIEF_NORMAL</property>
+                                <property name="focus-on-click">True</property>
+                                <signal handler="run_this_cb" name="clicked"/>
+                              </object>
+                            </child>
+                            <child>
+                              <object class="GtkButton" id="settings">
+                                <property name="visible">True</property>
+                                <property name="tooltip-text" translatable="yes">Customization and explanation of the selected screen saver.</property>
+                                <property name="can-default">True</property>
+                                <property name="can-focus">True</property>
+                                <property name="label" translatable="yes">_Settings...</property>
+                                <property name="use-underline">True</property>
+                                <property name="relief">GTK_RELIEF_NORMAL</property>
+                                <property name="focus-on-click">True</property>
+                                <signal handler="settings_cb" name="clicked"/>
+                              </object>
+                            </child>
+                          </object>
+                          <packing>
+                            <property name="left-attach">1</property>
+                            <property name="right-attach">2</property>
+                            <property name="top-attach">1</property>
+                            <property name="bottom-attach">2</property>
+                            <property name="x-options">fill</property>
+                            <property name="y-options">fill</property>
+                          </packing>
+                        </child>
+                        <child>
+                          <object class="GtkBox" id="list_vbox">
+                            <property name="border-width">10</property>
+                            <property name="visible">True</property>
+                            <property name="homogeneous">False</property>
+                            <property name="spacing">0</property>
+                            <property name="orientation">vertical</property>
+                            <child>
+                              <object class="GtkBox" id="mode_hbox">
+                                <property name="visible">True</property>
+                                <property name="homogeneous">False</property>
+                                <property name="spacing">0</property>
+                                <property name="orientation">horizontal</property>
+                                <child>
+                                  <object class="GtkLabel" id="mode_label">
+                                    <property name="visible">True</property>
+                                    <property name="label" translatable="yes">_Mode:</property>
+                                    <property name="use-underline">True</property>
+                                    <property name="use-markup">False</property>
+                                    <property name="justify">GTK_JUSTIFY_LEFT</property>
+                                    <property name="wrap">False</property>
+                                    <property name="selectable">False</property>
+                                    <property name="xalign">0</property>
+                                    <property name="yalign">0.5</property>
+                                    <property name="xpad">0</property>
+                                    <property name="ypad">0</property>
+                                    <property name="mnemonic-widget">mode_menu</property>
+                                    <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                                    <property name="width-chars">-1</property>
+                                    <property name="single-line-mode">False</property>
+                                    <property name="angle">0</property>
+                                    <accessibility>
+                                      <relation target="mode_menu" type="label-for"/>
+                                    </accessibility>
+                                  </object>
+                                  <packing>
+                                    <property name="padding">0</property>
+                                    <property name="expand">False</property>
+                                    <property name="fill">False</property>
+                                  </packing>
+                                </child>
+                                <child>
+                                  <object class="GtkComboBox" id="mode_menu">
+                                    <property name="visible">True</property>
+                                    <property name="can-focus">True</property>
+                                    <property name="has-entry">False</property>
+                                    <property name="model">mode_menu_model</property>
+                                    <signal handler="mode_menu_item_cb" name="changed"/>
+                                    <accessibility>
+                                      <relation target="mode_label" type="labelled-by"/>
+                                    </accessibility>
+                                    <child>
+                                      <object class="GtkCellRendererText" id="renderer1"/>
+                                      <attributes>
+                                        <attribute name="text">0</attribute>
+                                      </attributes>
+                                    </child>
+                                  </object>
+                                  <packing>
+                                    <property name="padding">4</property>
+                                    <property name="expand">True</property>
+                                    <property name="fill">True</property>
+                                  </packing>
+                                </child>
+                              </object>
+                              <packing>
+                                <property name="padding">10</property>
+                                <property name="expand">False</property>
+                                <property name="fill">True</property>
+                              </packing>
+                            </child>
+                            <child>
+                              <object class="GtkScrolledWindow" id="scroller">
+                                <property name="visible">True</property>
+                                <property name="can-focus">True</property>
+                                <property name="hscrollbar-policy">GTK_POLICY_NEVER</property>
+                                <property name="vscrollbar-policy">GTK_POLICY_ALWAYS</property>
+                                <property name="shadow-type">GTK_SHADOW_IN</property>
+                                <property name="window-placement">GTK_CORNER_TOP_LEFT</property>
+                                <child>
+                                  <object class="GtkTreeView" id="list">
+                                    <property name="visible">True</property>
+                                    <property name="can-focus">True</property>
+                                    <property name="headers-visible">False</property>
+                                    <property name="rules-hint">True</property>
+                                    <property name="reorderable">False</property>
+                                    <property name="enable-search">True</property>
+                                    <property name="fixed-height-mode">False</property>
+                                    <property name="hover-selection">False</property>
+                                    <property name="hover-expand">False</property>
+                                    <property name="search-column">1</property>
+                                  </object>
+                                </child>
+                              </object>
+                              <packing>
+                                <property name="padding">0</property>
+                                <property name="expand">True</property>
+                                <property name="fill">True</property>
+                              </packing>
+                            </child>
+                            <child>
+                              <object class="GtkBox" id="centering_hbox">
+                                <property name="visible">True</property>
+                                <property name="homogeneous">True</property>
+                                <property name="spacing">0</property>
+                                <property name="orientation">horizontal</property>
+                                <child>
+                                  <object class="GtkBox" id="next_prev_hbox">
+                                    <property name="visible">True</property>
+                                    <property name="homogeneous">False</property>
+                                    <property name="spacing">0</property>
+                                    <property name="orientation">horizontal</property>
+                                    <child>
+                                      <object class="GtkButton" id="next">
+                                        <property name="visible">True</property>
+                                        <property name="tooltip-text" translatable="yes">Run the next screen saver in the list in full-screen mode (click the mouse to return.)</property>
+                                        <property name="can-focus">True</property>
+                                        <property name="relief">GTK_RELIEF_NORMAL</property>
+                                        <property name="focus-on-click">True</property>
+                                        <signal handler="run_next_cb" name="clicked"/>
+                                        <child>
+                                          <object class="GtkArrow" id="arrow1">
+                                            <property name="visible">True</property>
+                                            <property name="arrow-type">GTK_ARROW_DOWN</property>
+                                            <property name="shadow-type">GTK_SHADOW_OUT</property>
+                                            <property name="xalign">0.5</property>
+                                            <property name="yalign">0.5</property>
+                                            <property name="xpad">0</property>
+                                            <property name="ypad">0</property>
+                                          </object>
+                                        </child>
+                                      </object>
+                                      <packing>
+                                        <property name="padding">0</property>
+                                        <property name="expand">False</property>
+                                        <property name="fill">False</property>
+                                      </packing>
+                                    </child>
+                                    <child>
+                                      <object class="GtkButton" id="prev">
+                                        <property name="visible">True</property>
+                                        <property name="tooltip-text" translatable="yes">Run the previous screen saver in the list in full-screen mode (click the mouse to return.)</property>
+                                        <property name="can-focus">True</property>
+                                        <property name="relief">GTK_RELIEF_NORMAL</property>
+                                        <property name="focus-on-click">True</property>
+                                        <signal handler="run_prev_cb" name="clicked"/>
+                                        <child>
+                                          <object class="GtkArrow" id="arrow2">
+                                            <property name="visible">True</property>
+                                            <property name="arrow-type">GTK_ARROW_UP</property>
+                                            <property name="shadow-type">GTK_SHADOW_OUT</property>
+                                            <property name="xalign">0.5</property>
+                                            <property name="yalign">0.5</property>
+                                            <property name="xpad">0</property>
+                                            <property name="ypad">0</property>
+                                          </object>
+                                        </child>
+                                      </object>
+                                      <packing>
+                                        <property name="padding">0</property>
+                                        <property name="expand">False</property>
+                                        <property name="fill">False</property>
+                                      </packing>
+                                    </child>
+                                  </object>
+                                  <packing>
+                                    <property name="padding">0</property>
+                                    <property name="expand">False</property>
+                                    <property name="fill">False</property>
+                                  </packing>
+                                </child>
+                              </object>
+                              <packing>
+                                <property name="padding">0</property>
+                                <property name="expand">False</property>
+                                <property name="fill">True</property>
+                                <property name="pack-type">GTK_PACK_END</property>
+                              </packing>
+                            </child>
+                          </object>
+                          <packing>
+                            <property name="left-attach">0</property>
+                            <property name="right-attach">1</property>
+                            <property name="top-attach">0</property>
+                            <property name="bottom-attach">1</property>
+                            <property name="x-options">fill</property>
+                          </packing>
+                        </child>
+                        <child>
+                          <object class="GtkFrame" id="preview_frame">
+                            <property name="visible">True</property>
+                            <property name="label-xalign">0</property>
+                            <property name="label-yalign">0.5</property>
+                            <property name="shadow-type">GTK_SHADOW_ETCHED_IN</property>
+                            <accessibility>
+                              <relation target="label1" type="labelled-by"/>
+                            </accessibility>
+                            <child>
+                              <object class="GtkBox" id="preview_vbox">
+                                <property name="border-width">5</property>
+                                <property name="visible">True</property>
+                                <property name="homogeneous">False</property>
+                                <property name="spacing">5</property>
+                                <property name="orientation">vertical</property>
+                                <child>
+                                  <object class="GtkNotebook" id="preview_notebook">
+                                    <property name="visible">True</property>
+                                    <property name="can-focus">True</property>
+                                    <property name="show-tabs">False</property>
+                                    <property name="show-border">False</property>
+                                    <property name="tab-pos">GTK_POS_BOTTOM</property>
+                                    <property name="scrollable">False</property>
+                                    <property name="enable-popup">False</property>
+
+                                    <child>
+                                      <object class="GtkAspectFrame" id="preview_aspectframe">
+                                        <property name="border-width">8</property>
+                                        <property name="visible">True</property>
+                                        <property name="label-xalign">0</property>
+                                        <property name="label-yalign">0.5</property>
+                                        <property name="shadow-type">GTK_SHADOW_ETCHED_IN</property>
+                                        <property name="xalign">0.5</property>
+                                        <property name="yalign">0.5</property>
+                                        <property name="ratio">1.777777</property>
+                                        <property name="obey-child">False</property>
+                                        <child>
+                                          <object class="GtkDrawingArea" id="preview">
+                                            <property name="visible">True</property>
+                                          </object>
+                                        </child>
+                                      </object>
+                                      <packing>
+                                        <property name="tab-expand">False</property>
+                                        <property name="tab-fill">False</property>
+                                      </packing>
+                                    </child>
+                                    <child type="tab">
+                                      <object class="GtkLabel" id="preview_tab">
+                                        <property name="visible">True</property>
+                                        <property name="label" translatable="yes">Preview</property>
+                                        <property name="use-underline">False</property>
+                                        <property name="use-markup">False</property>
+                                        <property name="justify">GTK_JUSTIFY_LEFT</property>
+                                        <property name="wrap">False</property>
+                                        <property name="selectable">False</property>
+                                        <property name="xalign">0.5</property>
+                                        <property name="yalign">0.5</property>
+                                        <property name="xpad">0</property>
+                                        <property name="ypad">0</property>
+                                        <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                                        <property name="width-chars">-1</property>
+                                        <property name="single-line-mode">False</property>
+                                        <property name="angle">0</property>
+                                      </object>
+                                      <packing>
+                                        <property name="tab-expand">False</property>
+                                        <property name="tab-fill">False</property>
+                                      </packing>
+                                    </child>
+
+                                    <child>
+                                      <object class="GtkLabel" id="no_preview_label">
+                                        <property name="visible">True</property>
+                                        <property name="label" translatable="yes">No Preview
+Available</property>
+                                        <property name="use-underline">False</property>
+                                        <property name="use-markup">False</property>
+                                        <property name="justify">GTK_JUSTIFY_CENTER</property>
+                                        <property name="wrap">False</property>
+                                        <property name="selectable">False</property>
+                                        <property name="xalign">0.5</property>
+                                        <property name="yalign">0.5</property>
+                                        <property name="xpad">0</property>
+                                        <property name="ypad">0</property>
+                                        <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                                        <property name="width-chars">-1</property>
+                                        <property name="single-line-mode">False</property>
+                                        <property name="angle">0</property>
+                                      </object>
+                                      <packing>
+                                        <property name="tab-expand">False</property>
+                                        <property name="tab-fill">False</property>
+                                      </packing>
+                                    </child>
+                                    <child type="tab">
+                                      <object class="GtkLabel" id="no_preview_tab">
+                                        <property name="visible">True</property>
+                                        <property name="label" translatable="yes">No Preview</property>
+                                        <property name="use-underline">False</property>
+                                        <property name="use-markup">False</property>
+                                        <property name="justify">GTK_JUSTIFY_LEFT</property>
+                                        <property name="wrap">False</property>
+                                        <property name="selectable">False</property>
+                                        <property name="xalign">0.5</property>
+                                        <property name="yalign">0.5</property>
+                                        <property name="xpad">0</property>
+                                        <property name="ypad">0</property>
+                                        <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                                        <property name="width-chars">-1</property>
+                                        <property name="single-line-mode">False</property>
+                                        <property name="angle">0</property>
+                                      </object>
+                                      <packing>
+                                        <property name="tab-expand">False</property>
+                                        <property name="tab-fill">False</property>
+                                      </packing>
+                                    </child>
+
+                                    <child>
+                                      <object class="GtkLabel" id="not_installed_label">
+                                        <property name="visible">True</property>
+                                        <property name="label" translatable="yes">Not
+Installed</property>
+                                        <property name="use-underline">False</property>
+                                        <property name="use-markup">False</property>
+                                        <property name="justify">GTK_JUSTIFY_CENTER</property>
+                                        <property name="wrap">False</property>
+                                        <property name="selectable">False</property>
+                                        <property name="xalign">0.5</property>
+                                        <property name="yalign">0.5</property>
+                                        <property name="xpad">0</property>
+                                        <property name="ypad">0</property>
+                                        <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                                        <property name="width-chars">-1</property>
+                                        <property name="single-line-mode">False</property>
+                                        <property name="angle">0</property>
+                                      </object>
+                                      <packing>
+                                        <property name="tab-expand">False</property>
+                                        <property name="tab-fill">False</property>
+                                      </packing>
+                                    </child>
+                                    <child type="tab">
+                                      <object class="GtkLabel" id="not_installed_tab">
+                                        <property name="visible">True</property>
+                                        <property name="label" translatable="yes">Not Installed</property>
+                                        <property name="use-underline">False</property>
+                                        <property name="use-markup">False</property>
+                                        <property name="justify">GTK_JUSTIFY_LEFT</property>
+                                        <property name="wrap">False</property>
+                                        <property name="selectable">False</property>
+                                        <property name="xalign">0.5</property>
+                                        <property name="yalign">0.5</property>
+                                        <property name="xpad">0</property>
+                                        <property name="ypad">0</property>
+                                        <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                                        <property name="width-chars">-1</property>
+                                        <property name="single-line-mode">False</property>
+                                        <property name="angle">0</property>
+                                      </object>
+                                      <packing>
+                                        <property name="tab-expand">False</property>
+                                        <property name="tab-fill">False</property>
+                                      </packing>
+                                    </child>
+
+                                    <child>
+                                      <object class="GtkLabel" id="nothing_label">
+                                        <property name="visible">True</property>
+                                        <property name="label" translatable="yes">Very few (or no) screen savers appear to be available.
+
+This probably means that the "xscreensaver-extras" and
+"xscreensaver-gl-extras" packages are not installed.</property>
+                                        <property name="use-underline">False</property>
+                                        <property name="use-markup">False</property>
+                                        <property name="justify">GTK_JUSTIFY_CENTER</property>
+                                        <property name="wrap">False</property>
+                                        <property name="selectable">False</property>
+                                        <property name="xalign">0.5</property>
+                                        <property name="yalign">0.5</property>
+                                        <property name="xpad">0</property>
+                                        <property name="ypad">0</property>
+                                        <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                                        <property name="width-chars">-1</property>
+                                        <property name="single-line-mode">False</property>
+                                        <property name="angle">0</property>
+                                      </object>
+                                      <packing>
+                                        <property name="tab-expand">False</property>
+                                        <property name="tab-fill">False</property>
+                                      </packing>
+                                    </child>
+                                    <child type="tab">
+                                      <object class="GtkLabel" id="nothing_tab">
+                                        <property name="visible">True</property>
+                                        <property name="label" translatable="yes">Nothing Installed</property>
+                                        <property name="use-underline">False</property>
+                                        <property name="use-markup">False</property>
+                                        <property name="justify">GTK_JUSTIFY_LEFT</property>
+                                        <property name="wrap">False</property>
+                                        <property name="selectable">False</property>
+                                        <property name="xalign">0.5</property>
+                                        <property name="yalign">0.5</property>
+                                        <property name="xpad">0</property>
+                                        <property name="ypad">0</property>
+                                        <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                                        <property name="width-chars">-1</property>
+                                        <property name="single-line-mode">False</property>
+                                        <property name="angle">0</property>
+                                      </object>
+                                      <packing>
+                                        <property name="tab-expand">False</property>
+                                        <property name="tab-fill">False</property>
+                                      </packing>
+                                      <packing>
+                                        <property name="tab-expand">False</property>
+                                        <property name="tab-fill">False</property>
+                                      </packing>
+                                    </child>
+
+                                    <child>
+                                      <object class="GtkLabel" id="wayland_label">
+                                        <property name="visible">True</property>
+                                        <property name="label" translatable="yes">No Previews Available
+Under Wayland.</property>
+                                        <property name="use-underline">False</property>
+                                        <property name="use-markup">False</property>
+                                        <property name="justify">GTK_JUSTIFY_CENTER</property>
+                                        <property name="wrap">False</property>
+                                        <property name="selectable">False</property>
+                                        <property name="xalign">0.5</property>
+                                        <property name="yalign">0.5</property>
+                                        <property name="xpad">0</property>
+                                        <property name="ypad">0</property>
+                                        <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                                        <property name="width-chars">-1</property>
+                                        <property name="single-line-mode">False</property>
+                                        <property name="angle">0</property>
+                                      </object>
+                                      <packing>
+                                        <property name="tab-expand">False</property>
+                                        <property name="tab-fill">False</property>
+                                      </packing>
+                                    </child>
+                                    <child type="tab">
+                                      <object class="GtkLabel" id="wayland_tab">
+                                        <property name="visible">True</property>
+                                        <property name="label" translatable="yes">No Previews Under Wayland</property>
+                                        <property name="use-underline">False</property>
+                                        <property name="use-markup">False</property>
+                                        <property name="justify">GTK_JUSTIFY_LEFT</property>
+                                        <property name="wrap">False</property>
+                                        <property name="selectable">False</property>
+                                        <property name="xalign">0.5</property>
+                                        <property name="yalign">0.5</property>
+                                        <property name="xpad">0</property>
+                                        <property name="ypad">0</property>
+                                        <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                                        <property name="width-chars">-1</property>
+                                        <property name="single-line-mode">False</property>
+                                        <property name="angle">0</property>
+                                      </object>
+                                      <packing>
+                                        <property name="tab-expand">False</property>
+                                        <property name="tab-fill">False</property>
+                                      </packing>
+                                      <packing>
+                                        <property name="tab-expand">False</property>
+                                        <property name="tab-fill">False</property>
+                                      </packing>
+                                    </child>
+
+                                  </object>
+                                  <packing>
+                                    <property name="padding">0</property>
+                                    <property name="expand">True</property>
+                                    <property name="fill">True</property>
+                                  </packing>
+                                </child>
+
+                                <child>
+                                  <object class="GtkLabel" id="short_preview_label">
+                                    <property name="visible">True</property>
+                                    <property name="label" translatable="yes"></property>
+                                    <property name="use-underline">False</property>
+                                    <property name="use-markup">False</property>
+                                    <property name="justify">GTK_JUSTIFY_LEFT</property>
+                                    <property name="wrap">True</property>
+                                    <property name="selectable">False</property>
+                                    <property name="xalign">0.5</property>
+                                    <property name="yalign">0.0</property>
+                                    <property name="xpad">0</property>
+                                    <property name="ypad">0</property>
+                                    <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                                    <property name="width-chars">72</property>
+                                    <property name="single-line-mode">False</property>
+                                    <property name="angle">0</property>
+                                    <accessibility>
+                                      <relation target="preview_aspectframe" type="label-for"/>
+                                    </accessibility>
+                                  </object>
+                                  <packing>
+                                    <property name="padding">0</property>
+                                    <property name="expand">False</property>
+                                    <property name="fill">False</property>
+                                  </packing>
+                                </child>
+
+                                <child>
+                                  <object class="GtkLabel" id="preview_author_label">
+                                    <property name="visible">True</property>
+                                    <property name="label" translatable="yes"></property>
+                                    <property name="use-underline">False</property>
+                                    <property name="use-markup">False</property>
+                                    <property name="justify">GTK_JUSTIFY_CENTER</property>
+                                    <property name="wrap">True</property>
+                                    <property name="selectable">False</property>
+                                    <property name="xalign">0.5</property>
+                                    <property name="yalign">0.0</property>
+                                    <property name="xpad">0</property>
+                                    <property name="ypad">0</property>
+                                    <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                                    <property name="width-chars">72</property>
+                                    <property name="single-line-mode">False</property>
+                                    <property name="angle">0</property>
+                                    <accessibility>
+                                      <relation target="preview_aspectframe" type="label-for"/>
+                                    </accessibility>
+                                  </object>
+                                  <packing>
+                                    <property name="padding">0</property>
+                                    <property name="expand">False</property>
+                                    <property name="fill">True</property>
+                                  </packing>
+                                </child>
+                              </object>
+                            </child>
+                            <child type="label">
+                              <object class="GtkLabel" id="label1">
+                                <property name="visible">True</property>
+                                <property name="label" translatable="yes">Description</property>
+                                <property name="use-underline">False</property>
+                                <property name="use-markup">False</property>
+                                <property name="justify">GTK_JUSTIFY_LEFT</property>
+                                <property name="wrap">False</property>
+                                <property name="selectable">False</property>
+                                <property name="xalign">0.5</property>
+                                <property name="yalign">0.5</property>
+                                <property name="xpad">0</property>
+                                <property name="ypad">0</property>
+                                <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                                <property name="width-chars">-1</property>
+                                <property name="single-line-mode">False</property>
+                                <property name="angle">0</property>
+                                <accessibility>
+                                  <relation target="preview_frame" type="label-for"/>
+                                </accessibility>
+                              </object>
+                            </child>
+                          </object>
+                          <packing>
+                            <property name="left-attach">1</property>
+                            <property name="right-attach">2</property>
+                            <property name="top-attach">0</property>
+                            <property name="bottom-attach">1</property>
+                            <property name="y-padding">6</property>
+                            <property name="x-options">expand|shrink|fill</property>
+                            <property name="y-options">expand|shrink|fill</property>
+                          </packing>
+                        </child>
+                      </object>
+                      <packing>
+                        <property name="tab-expand">False</property>
+                        <property name="tab-fill">False</property>
+                      </packing>
+                    </child>
+                    <child type="tab">
+                      <object class="GtkLabel" id="demo_tab">
+                        <property name="visible">True</property>
+                        <property name="label" translatable="yes">_Display Modes</property>
+                        <property name="use-underline">True</property>
+                        <property name="use-markup">False</property>
+                        <property name="justify">GTK_JUSTIFY_CENTER</property>
+                        <property name="wrap">False</property>
+                        <property name="selectable">False</property>
+                        <property name="xalign">0.5</property>
+                        <property name="yalign">0.5</property>
+                        <property name="xpad">0</property>
+                        <property name="ypad">0</property>
+                        <property name="mnemonic-widget">notebook</property>
+                        <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                        <property name="width-chars">-1</property>
+                        <property name="single-line-mode">False</property>
+                        <property name="angle">0</property>
+                      </object>
+                      <packing>
+                        <property name="tab-expand">False</property>
+                        <property name="tab-fill">False</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkTable" id="options_table">
+                        <property name="visible">True</property>
+                        <property name="n-rows">2</property>
+                        <property name="n-columns">2</property>
+                        <property name="homogeneous">True</property>
+                        <property name="row-spacing">0</property>
+                        <property name="column-spacing">0</property>
+                        <child>
+                          <object class="GtkFrame" id="grab_frame">
+                            <property name="border-width">10</property>
+                            <property name="visible">True</property>
+                            <property name="label-xalign">0</property>
+                            <property name="label-yalign">0.5</property>
+                            <property name="shadow-type">GTK_SHADOW_ETCHED_IN</property>
+                            <accessibility>
+                              <relation target="label2" type="labelled-by"/>
+                            </accessibility>
+                            <child>
+                              <object class="GtkBox" id="grab_hbox">
+                                <property name="border-width">8</property>
+                                <property name="visible">True</property>
+                                <property name="homogeneous">False</property>
+                                <property name="spacing">8</property>
+                                <property name="orientation">horizontal</property>
+                                <child>
+                                  <object class="GtkBox" id="grab_vbox">
+                                    <property name="visible">True</property>
+                                    <property name="homogeneous">False</property>
+                                    <property name="spacing">0</property>
+                                    <property name="orientation">vertical</property>
+                                    <child>
+                                      <object class="GtkCheckButton" id="grab_desk_button">
+                                        <property name="visible">True</property>
+                                        <property name="tooltip-text" translatable="yes">Whether the image-manipulating modes should be allowed to operate on an image of your desktop.</property>
+                                        <property name="can-focus">True</property>
+                                        <property name="label" translatable="yes">Grab Desktop _Images</property>
+                                        <property name="use-underline">True</property>
+                                        <property name="relief">GTK_RELIEF_NORMAL</property>
+                                        <property name="focus-on-click">True</property>
+                                        <property name="active">False</property>
+                                        <property name="inconsistent">False</property>
+                                        <property name="draw-indicator">True</property>
+                                        <signal handler="pref_changed_cb" name="toggled"/>
+                                      </object>
+                                      <packing>
+                                        <property name="padding">0</property>
+                                        <property name="expand">False</property>
+                                        <property name="fill">False</property>
+                                      </packing>
+                                    </child>
+                                    <child>
+                                      <object class="GtkCheckButton" id="grab_video_button">
+                                        <property name="visible">True</property>
+                                        <property name="tooltip-text" translatable="yes">Whether the image-manipulating modes should operate on images captured from the system's video input (if there is one.)</property>
+                                        <property name="can-focus">True</property>
+                                        <property name="label" translatable="yes">Grab _Video Frames</property>
+                                        <property name="use-underline">True</property>
+                                        <property name="relief">GTK_RELIEF_NORMAL</property>
+                                        <property name="focus-on-click">True</property>
+                                        <property name="active">False</property>
+                                        <property name="inconsistent">False</property>
+                                        <property name="draw-indicator">True</property>
+                                        <signal handler="pref_changed_cb" name="toggled"/>
+                                      </object>
+                                      <packing>
+                                        <property name="padding">0</property>
+                                        <property name="expand">False</property>
+                                        <property name="fill">False</property>
+                                      </packing>
+                                    </child>
+                                    <child>
+                                      <object class="GtkCheckButton" id="grab_image_button">
+                                        <property name="visible">True</property>
+                                        <property name="tooltip-text" translatable="yes">Whether the image-manipulating modes should load image files.</property>
+                                        <property name="can-focus">True</property>
+                                        <property name="label" translatable="yes">Choose _Random Image:</property>
+                                        <property name="use-underline">True</property>
+                                        <property name="relief">GTK_RELIEF_NORMAL</property>
+                                        <property name="focus-on-click">True</property>
+                                        <property name="active">False</property>
+                                        <property name="inconsistent">False</property>
+                                        <property name="draw-indicator">True</property>
+                                        <accessibility>
+                                          <relation target="image_text" type="controller-for"/>
+                                          <relation target="image_browse_button" type="controller-for"/>
+                                        </accessibility>
+                                        <signal handler="pref_changed_cb" name="toggled"/>
+                                      </object>
+                                      <packing>
+                                        <property name="padding">0</property>
+                                        <property name="expand">False</property>
+                                        <property name="fill">False</property>
+                                      </packing>
+                                    </child>
+                                    <child>
+                                      <object class="GtkBox" id="image_hbox">
+                                        <property name="visible">True</property>
+                                        <property name="homogeneous">False</property>
+                                        <property name="spacing">0</property>
+                                        <property name="orientation">horizontal</property>
+                                        <child>
+                                          <object class="GtkLabel" id="grab_dummy">
+                                            <property name="visible">True</property>
+                                            <property name="label" translatable="yes"/>
+                                            <property name="use-underline">False</property>
+                                            <property name="use-markup">False</property>
+                                            <property name="justify">GTK_JUSTIFY_LEFT</property>
+                                            <property name="wrap">False</property>
+                                            <property name="selectable">False</property>
+                                            <property name="xalign">0.5</property>
+                                            <property name="yalign">0.5</property>
+                                            <property name="xpad">8</property>
+                                            <property name="ypad">0</property>
+                                            <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                                            <property name="width-chars">-1</property>
+                                            <property name="single-line-mode">False</property>
+                                            <property name="angle">0</property>
+                                          </object>
+                                          <packing>
+                                            <property name="padding">0</property>
+                                            <property name="expand">False</property>
+                                            <property name="fill">False</property>
+                                          </packing>
+                                        </child>
+                                        <child>
+                                          <object class="GtkEntry" id="image_text">
+                                            <property name="visible">True</property>
+                                            <property name="tooltip-text" translatable="yes">The local directory, RSS feed or Atom feed from which images will be randomly chosen.</property>
+                                            <property name="can-focus">True</property>
+                                            <property name="editable">True</property>
+                                            <property name="visibility">True</property>
+                                            <property name="max-length">0</property>
+                                            <property name="text" translatable="yes"/>
+                                            <property name="has-frame">True</property>
+                                            <property name="invisible-char">*</property>
+                                            <property name="activates-default">False</property>
+                                            <accessibility>
+                                              <relation target="grab_image_button" type="labelled-by"/>
+                                              <relation target="grab_image_button" type="controlled-by"/>
+                                            </accessibility>
+                                            <signal handler="pref_changed_cb" name="activate"/>
+                                            <signal handler="image_text_pref_changed_event_cb" name="focus_out_event"/>
+                                          </object>
+                                          <packing>
+                                            <property name="padding">2</property>
+                                            <property name="expand">True</property>
+                                            <property name="fill">True</property>
+                                          </packing>
+                                        </child>
+                                        <child>
+                                          <object class="GtkButton" id="image_browse_button">
+                                            <property name="visible">True</property>
+                                            <property name="can-focus">True</property>
+                                            <property name="label" translatable="yes">_Browse</property>
+                                            <property name="use-underline">True</property>
+                                            <property name="relief">GTK_RELIEF_NORMAL</property>
+                                            <property name="focus-on-click">True</property>
+                                            <signal handler="browse_image_dir_cb" name="clicked"/>
+                                          </object>
+                                          <packing>
+                                            <property name="padding">0</property>
+                                            <property name="expand">False</property>
+                                            <property name="fill">False</property>
+                                          </packing>
+                                        </child>
+                                      </object>
+                                      <packing>
+                                        <property name="padding">0</property>
+                                        <property name="expand">False</property>
+                                        <property name="fill">False</property>
+                                      </packing>
+                                    </child>
+                                    <child>
+                                      <object class="GtkLabel" id="label8">
+                                        <property name="visible">True</property>
+                                        <property name="label" translatable="yes">Local directory, or URL of RSS or Atom feed.</property>
+                                        <property name="use-underline">False</property>
+                                        <property name="use-markup">False</property>
+                                        <property name="justify">GTK_JUSTIFY_LEFT</property>
+                                        <property name="wrap">False</property>
+                                        <property name="selectable">False</property>
+                                        <property name="xalign">0</property>
+                                        <property name="yalign">0.5</property>
+                                        <property name="xpad">20</property>
+                                        <property name="ypad">0</property>
+                                        <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                                        <property name="width-chars">-1</property>
+                                        <property name="single-line-mode">False</property>
+                                        <property name="angle">0</property>
+                                      </object>
+                                      <packing>
+                                        <property name="padding">0</property>
+                                        <property name="expand">False</property>
+                                        <property name="fill">False</property>
+                                      </packing>
+                                    </child>
+                                  </object>
+                                  <packing>
+                                    <property name="padding">0</property>
+                                    <property name="expand">True</property>
+                                    <property name="fill">True</property>
+                                  </packing>
+                                </child>
+                              </object>
+                            </child>
+                            <child type="label">
+                              <object class="GtkLabel" id="label2">
+                                <property name="visible">True</property>
+                                <property name="label" translatable="yes">Image Manipulation</property>
+                                <property name="use-underline">False</property>
+                                <property name="use-markup">False</property>
+                                <property name="justify">GTK_JUSTIFY_LEFT</property>
+                                <property name="wrap">False</property>
+                                <property name="selectable">False</property>
+                                <property name="xalign">0.5</property>
+                                <property name="yalign">0.5</property>
+                                <property name="xpad">0</property>
+                                <property name="ypad">0</property>
+                                <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                                <property name="width-chars">-1</property>
+                                <property name="single-line-mode">False</property>
+                                <property name="angle">0</property>
+                                <accessibility>
+                                  <relation target="grab_frame" type="label-for"/>
+                                </accessibility>
+                              </object>
+                            </child>
+                          </object>
+                          <packing>
+                            <property name="left-attach">0</property>
+                            <property name="right-attach">1</property>
+                            <property name="top-attach">0</property>
+                            <property name="bottom-attach">1</property>
+                          </packing>
+                        </child>
+                        <child>
+                          <object class="GtkFrame" id="diag_frame">
+                            <property name="border-width">10</property>
+                            <property name="visible">True</property>
+                            <property name="label-xalign">0</property>
+                            <property name="label-yalign">0.5</property>
+                            <property name="shadow-type">GTK_SHADOW_ETCHED_IN</property>
+                            <accessibility>
+                              <relation target="label3" type="labelled-by"/>
+                            </accessibility>
+                            <child>
+                              <object class="GtkBox" id="diag_hbox">
+                                <property name="border-width">8</property>
+                                <property name="visible">True</property>
+                                <property name="homogeneous">False</property>
+                                <property name="spacing">8</property>
+                                <property name="orientation">horizontal</property>
+                                <child>
+                                  <object class="GtkTable" id="text_table">
+                                    <property name="visible">True</property>
+                                    <property name="n-rows">5</property>
+                                    <property name="n-columns">3</property>
+                                    <property name="homogeneous">False</property>
+                                    <property name="row-spacing">2</property>
+                                    <property name="column-spacing">2</property>
+                                    <child>
+                                      <object class="GtkRadioButton" id="text_radio">
+                                        <property name="visible">True</property>
+                                        <property name="tooltip-text" translatable="yes">Text-displaying modes will display the text typed here.</property>
+                                        <property name="can-focus">True</property>
+                                        <property name="label" translatable="yes">_Text</property>
+                                        <property name="use-underline">True</property>
+                                        <property name="relief">GTK_RELIEF_NORMAL</property>
+                                        <property name="focus-on-click">True</property>
+                                        <property name="active">False</property>
+                                        <property name="inconsistent">False</property>
+                                        <property name="draw-indicator">True</property>
+                                        <accessibility>
+                                          <relation target="text_entry" type="controller-for"/>
+                                          <relation target="text_entry" type="label-for"/>
+                                        </accessibility>
+                                        <signal handler="pref_changed_cb" name="toggled"/>
+                                      </object>
+                                      <packing>
+                                        <property name="left-attach">0</property>
+                                        <property name="right-attach">1</property>
+                                        <property name="top-attach">1</property>
+                                        <property name="bottom-attach">2</property>
+                                        <property name="x-options">fill</property>
+                                        <property name="y-options"/>
+                                      </packing>
+                                    </child>
+                                    <child>
+                                      <object class="GtkRadioButton" id="text_file_radio">
+                                        <property name="visible">True</property>
+                                        <property name="tooltip-text" translatable="yes">Text-displaying modes will display the contents of this file.</property>
+                                        <property name="can-focus">True</property>
+                                        <property name="label" translatable="yes">Text _file</property>
+                                        <property name="use-underline">True</property>
+                                        <property name="relief">GTK_RELIEF_NORMAL</property>
+                                        <property name="focus-on-click">True</property>
+                                        <property name="active">False</property>
+                                        <property name="inconsistent">False</property>
+                                        <property name="draw-indicator">True</property>
+                                        <property name="group">text_radio</property>
+                                        <accessibility>
+                                          <relation target="text_file_entry" type="label-for"/>
+                                          <relation target="text_file_entry" type="controller-for"/>
+                                        </accessibility>
+                                        <signal handler="pref_changed_cb" name="toggled"/>
+                                      </object>
+                                      <packing>
+                                        <property name="left-attach">0</property>
+                                        <property name="right-attach">1</property>
+                                        <property name="top-attach">2</property>
+                                        <property name="bottom-attach">3</property>
+                                        <property name="x-options">fill</property>
+                                        <property name="y-options"/>
+                                      </packing>
+                                    </child>
+                                    <child>
+                                      <object class="GtkRadioButton" id="text_program_radio">
+                                        <property name="visible">True</property>
+                                        <property name="tooltip-text" translatable="yes">Text-displaying modes will display the output of this program.</property>
+                                        <property name="can-focus">True</property>
+                                        <property name="label" translatable="yes">_Program</property>
+                                        <property name="use-underline">True</property>
+                                        <property name="relief">GTK_RELIEF_NORMAL</property>
+                                        <property name="focus-on-click">True</property>
+                                        <property name="active">False</property>
+                                        <property name="inconsistent">False</property>
+                                        <property name="draw-indicator">True</property>
+                                        <property name="group">text_radio</property>
+                                        <accessibility>
+                                          <relation target="text_program_entry" type="label-for"/>
+                                          <relation target="text_program_entry" type="controller-for"/>
+                                          <relation target="text_program_browse" type="controller-for"/>
+                                        </accessibility>
+                                        <signal handler="pref_changed_cb" name="toggled"/>
+                                      </object>
+                                      <packing>
+                                        <property name="left-attach">0</property>
+                                        <property name="right-attach">1</property>
+                                        <property name="top-attach">3</property>
+                                        <property name="bottom-attach">4</property>
+                                        <property name="x-options">fill</property>
+                                        <property name="y-options"/>
+                                      </packing>
+                                    </child>
+                                    <child>
+                                      <object class="GtkRadioButton" id="text_url_radio">
+                                        <property name="visible">True</property>
+                                        <property name="tooltip-text" translatable="yes">Text-displaying modes will display the contents of this URL (HTML or RSS).</property>
+                                        <property name="can-focus">True</property>
+                                        <property name="label" translatable="yes">_URL</property>
+                                        <property name="use-underline">True</property>
+                                        <property name="relief">GTK_RELIEF_NORMAL</property>
+                                        <property name="focus-on-click">True</property>
+                                        <property name="active">False</property>
+                                        <property name="inconsistent">False</property>
+                                        <property name="draw-indicator">True</property>
+                                        <property name="group">text_radio</property>
+                                        <accessibility>
+                                          <relation target="text_url_entry" type="label-for"/>
+                                          <relation target="text_url_entry" type="controller-for"/>
+                                        </accessibility>
+                                        <signal handler="pref_changed_cb" name="toggled"/>
+                                      </object>
+                                      <packing>
+                                        <property name="left-attach">0</property>
+                                        <property name="right-attach">1</property>
+                                        <property name="top-attach">4</property>
+                                        <property name="bottom-attach">5</property>
+                                        <property name="x-options">fill</property>
+                                        <property name="y-options"/>
+                                      </packing>
+                                    </child>
+                                    <child>
+                                      <object class="GtkRadioButton" id="text_host_radio">
+                                        <property name="visible">True</property>
+                                        <property name="tooltip-text" translatable="yes">Text-displaying modes will display the local host name, date, and time.</property>
+                                        <property name="can-focus">True</property>
+                                        <property name="label" translatable="yes">_Host Name and Time</property>
+                                        <property name="use-underline">True</property>
+                                        <property name="relief">GTK_RELIEF_NORMAL</property>
+                                        <property name="focus-on-click">True</property>
+                                        <property name="active">True</property>
+                                        <property name="inconsistent">False</property>
+                                        <property name="draw-indicator">True</property>
+                                        <property name="group">text_radio</property>
+                                        <signal handler="pref_changed_cb" name="toggled"/>
+                                      </object>
+                                      <packing>
+                                        <property name="left-attach">0</property>
+                                        <property name="right-attach">3</property>
+                                        <property name="top-attach">0</property>
+                                        <property name="bottom-attach">1</property>
+                                        <property name="x-options">fill</property>
+                                        <property name="y-options"/>
+                                      </packing>
+                                    </child>
+                                    <child>
+                                      <object class="GtkEntry" id="text_url_entry">
+                                        <property name="visible">True</property>
+                                        <property name="tooltip-text" translatable="yes">Text-displaying modes will display the contents of this URL (HTML or RSS).</property>
+                                        <property name="can-focus">True</property>
+                                        <property name="editable">True</property>
+                                        <property name="visibility">True</property>
+                                        <property name="max-length">0</property>
+                                        <property name="text" translatable="yes"/>
+                                        <property name="has-frame">True</property>
+                                        <property name="invisible-char">*</property>
+                                        <property name="activates-default">False</property>
+                                        <accessibility>
+                                          <relation target="text_url_radio" type="controlled-by"/>
+                                        </accessibility>
+                                        <signal handler="pref_changed_cb" name="activate"/>
+                                        <signal handler="pref_changed_event_cb" name="focus_out_event"/>
+                                      </object>
+                                      <packing>
+                                        <property name="left-attach">1</property>
+                                        <property name="right-attach">3</property>
+                                        <property name="top-attach">4</property>
+                                        <property name="bottom-attach">5</property>
+                                        <property name="y-options"/>
+                                      </packing>
+                                    </child>
+                                    <child>
+                                      <object class="GtkButton" id="text_file_browse">
+                                        <property name="visible">True</property>
+                                        <property name="can-focus">True</property>
+                                        <property name="label" translatable="yes">_Browse</property>
+                                        <property name="use-underline">True</property>
+                                        <property name="relief">GTK_RELIEF_NORMAL</property>
+                                        <property name="focus-on-click">True</property>
+                                        <accessibility>
+                                          <relation target="text_file_radio" type="controlled-by"/>
+                                        </accessibility>
+                                        <signal handler="browse_text_file_cb" name="clicked"/>
+                                      </object>
+                                      <packing>
+                                        <property name="left-attach">2</property>
+                                        <property name="right-attach">3</property>
+                                        <property name="top-attach">2</property>
+                                        <property name="bottom-attach">3</property>
+                                        <property name="x-options">fill</property>
+                                        <property name="y-options"/>
+                                      </packing>
+                                    </child>
+                                    <child>
+                                      <object class="GtkEntry" id="text_entry">
+                                        <property name="visible">True</property>
+                                        <property name="tooltip-text" translatable="yes">Text-displaying modes will display the text typed here.</property>
+                                        <property name="can-focus">True</property>
+                                        <property name="editable">True</property>
+                                        <property name="visibility">True</property>
+                                        <property name="max-length">0</property>
+                                        <property name="text" translatable="yes"/>
+                                        <property name="has-frame">True</property>
+                                        <property name="invisible-char">*</property>
+                                        <property name="activates-default">False</property>
+                                        <accessibility>
+                                          <relation target="text_program_radio" type="labelled-by"/>
+                                          <relation target="text_program_radio" type="controlled-by"/>
+                                        </accessibility>
+                                        <signal handler="pref_changed_cb" name="activate"/>
+                                        <signal handler="pref_changed_event_cb" name="focus_out_event"/>
+                                      </object>
+                                      <packing>
+                                        <property name="left-attach">1</property>
+                                        <property name="right-attach">3</property>
+                                        <property name="top-attach">1</property>
+                                        <property name="bottom-attach">2</property>
+                                        <property name="y-options"/>
+                                      </packing>
+                                    </child>
+                                    <child>
+                                      <object class="GtkEntry" id="text_program_entry">
+                                        <property name="visible">True</property>
+                                        <property name="tooltip-text" translatable="yes">Text-displaying modes will display the output of this program.</property>
+                                        <property name="can-focus">True</property>
+                                        <property name="editable">True</property>
+                                        <property name="visibility">True</property>
+                                        <property name="max-length">0</property>
+                                        <property name="text" translatable="yes"/>
+                                        <property name="has-frame">True</property>
+                                        <property name="invisible-char">*</property>
+                                        <property name="activates-default">False</property>
+                                        <accessibility>
+                                          <relation target="text_program_radio" type="labelled-by"/>
+                                          <relation target="text_program_radio" type="controlled-by"/>
+                                        </accessibility>
+                                        <signal handler="pref_changed_cb" name="activate"/>
+                                        <signal handler="pref_changed_event_cb" name="focus_out_event"/>
+                                      </object>
+                                      <packing>
+                                        <property name="left-attach">1</property>
+                                        <property name="right-attach">2</property>
+                                        <property name="top-attach">3</property>
+                                        <property name="bottom-attach">4</property>
+                                        <property name="y-options"/>
+                                      </packing>
+                                    </child>
+                                    <child>
+                                      <object class="GtkButton" id="text_program_browse">
+                                        <property name="visible">True</property>
+                                        <property name="can-focus">True</property>
+                                        <property name="label" translatable="yes">_Browse</property>
+                                        <property name="use-underline">True</property>
+                                        <property name="relief">GTK_RELIEF_NORMAL</property>
+                                        <property name="focus-on-click">True</property>
+                                        <accessibility>
+                                          <relation target="text_program_radio" type="controller-for"/>
+                                        </accessibility>
+                                        <signal handler="browse_text_program_cb" name="clicked"/>
+                                      </object>
+                                      <packing>
+                                        <property name="left-attach">2</property>
+                                        <property name="right-attach">3</property>
+                                        <property name="top-attach">3</property>
+                                        <property name="bottom-attach">4</property>
+                                        <property name="x-options">fill</property>
+                                        <property name="y-options"/>
+                                      </packing>
+                                    </child>
+                                    <child>
+                                      <object class="GtkEntry" id="text_file_entry">
+                                        <property name="visible">True</property>
+                                        <property name="tooltip-text" translatable="yes">Text-displaying modes will display the contents of this file.</property>
+                                        <property name="can-focus">True</property>
+                                        <property name="editable">True</property>
+                                        <property name="visibility">True</property>
+                                        <property name="max-length">0</property>
+                                        <property name="text" translatable="yes"/>
+                                        <property name="has-frame">True</property>
+                                        <property name="invisible-char">*</property>
+                                        <property name="activates-default">False</property>
+                                        <accessibility>
+                                          <relation target="text_file_radio" type="labelled-by"/>
+                                          <relation target="text_file_radio" type="controlled-by"/>
+                                        </accessibility>
+                                        <signal handler="pref_changed_cb" name="activate"/>
+                                        <signal handler="pref_changed_event_cb" name="focus_out_event"/>
+                                      </object>
+                                      <packing>
+                                        <property name="left-attach">1</property>
+                                        <property name="right-attach">2</property>
+                                        <property name="top-attach">2</property>
+                                        <property name="bottom-attach">3</property>
+                                        <property name="y-options"/>
+                                      </packing>
+                                    </child>
+                                  </object>
+                                  <packing>
+                                    <property name="padding">0</property>
+                                    <property name="expand">True</property>
+                                    <property name="fill">True</property>
+                                  </packing>
+                                </child>
+                              </object>
+                            </child>
+                            <child type="label">
+                              <object class="GtkLabel" id="label3">
+                                <property name="visible">True</property>
+                                <property name="label" translatable="yes">Text Manipulation</property>
+                                <property name="use-underline">False</property>
+                                <property name="use-markup">False</property>
+                                <property name="justify">GTK_JUSTIFY_LEFT</property>
+                                <property name="wrap">False</property>
+                                <property name="selectable">False</property>
+                                <property name="xalign">0.5</property>
+                                <property name="yalign">0.5</property>
+                                <property name="xpad">0</property>
+                                <property name="ypad">0</property>
+                                <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                                <property name="width-chars">-1</property>
+                                <property name="single-line-mode">False</property>
+                                <property name="angle">0</property>
+                                <accessibility>
+                                  <relation target="diag_frame" type="label-for"/>
+                                </accessibility>
+                              </object>
+                            </child>
+                          </object>
+                          <packing>
+                            <property name="left-attach">0</property>
+                            <property name="right-attach">1</property>
+                            <property name="top-attach">1</property>
+                            <property name="bottom-attach">2</property>
+                            <property name="x-options">fill</property>
+                          </packing>
+                        </child>
+                        <child>
+                          <object class="GtkFrame" id="dpms_frame">
+                            <property name="border-width">10</property>
+                            <property name="visible">True</property>
+                            <property name="label-xalign">0</property>
+                            <property name="label-yalign">0.5</property>
+                            <property name="shadow-type">GTK_SHADOW_ETCHED_IN</property>
+                            <child>
+                              <object class="GtkBox" id="dpms_hbox">
+                                <property name="border-width">8</property>
+                                <property name="visible">True</property>
+                                <property name="homogeneous">False</property>
+                                <property name="spacing">8</property>
+                                <property name="orientation">horizontal</property>
+                                <child>
+                                  <object class="GtkBox" id="vbox6">
+                                    <property name="visible">True</property>
+                                    <property name="homogeneous">False</property>
+                                    <property name="spacing">0</property>
+                                    <property name="orientation">vertical</property>
+                                    <child>
+                                      <object class="GtkCheckButton" id="dpms_button">
+                                        <property name="visible">True</property>
+                                        <property name="tooltip-text" translatable="yes">Whether the monitor should be powered down after a while.</property>
+                                        <property name="can-focus">True</property>
+                                        <property name="label" translatable="yes">_Power Management Enabled</property>
+                                        <property name="use-underline">True</property>
+                                        <property name="relief">GTK_RELIEF_NORMAL</property>
+                                        <property name="focus-on-click">True</property>
+                                        <property name="active">True</property>
+                                        <property name="inconsistent">False</property>
+                                        <property name="draw-indicator">True</property>
+                                        <accessibility>
+                                          <relation target="dpms_suspend_spinbutton" type="controller-for"/>
+                                          <relation target="dpms_standby_spinbutton" type="controller-for"/>
+                                          <relation target="dpms_off_spinbutton" type="controller-for"/>
+                                        </accessibility>
+                                        <signal handler="pref_changed_cb" name="toggled"/>
+                                      </object>
+                                      <packing>
+                                        <property name="padding">0</property>
+                                        <property name="expand">False</property>
+                                        <property name="fill">False</property>
+                                      </packing>
+                                    </child>
+                                    <child>
+                                      <object class="GtkTable" id="dpms_table">
+                                        <property name="visible">True</property>
+                                        <property name="n-rows">3</property>
+                                        <property name="n-columns">3</property>
+                                        <property name="homogeneous">False</property>
+                                        <property name="row-spacing">2</property>
+                                        <property name="column-spacing">4</property>
+                                        <child>
+                                          <object class="GtkLabel" id="dpms_standby_label">
+                                            <property name="visible">True</property>
+                                            <property name="label" translatable="yes">Stand_by After</property>
+                                            <property name="use-underline">True</property>
+                                            <property name="use-markup">False</property>
+                                            <property name="justify">GTK_JUSTIFY_LEFT</property>
+                                            <property name="wrap">False</property>
+                                            <property name="selectable">False</property>
+                                            <property name="xalign">1</property>
+                                            <property name="yalign">0.5</property>
+                                            <property name="xpad">10</property>
+                                            <property name="ypad">0</property>
+                                            <property name="mnemonic-widget">dpms_standby_spinbutton</property>
+                                            <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                                            <property name="width-chars">-1</property>
+                                            <property name="single-line-mode">False</property>
+                                            <property name="angle">0</property>
+                                            <accessibility>
+                                              <relation target="dpms_standby_spinbutton" type="label-for"/>
+                                              <relation target="dpms_standby_spinbutton" type="flows-to"/>
+                                            </accessibility>
+                                          </object>
+                                          <packing>
+                                            <property name="left-attach">0</property>
+                                            <property name="right-attach">1</property>
+                                            <property name="top-attach">0</property>
+                                            <property name="bottom-attach">1</property>
+                                            <property name="x-options">fill</property>
+                                            <property name="y-options"/>
+                                          </packing>
+                                        </child>
+                                        <child>
+                                          <object class="GtkLabel" id="dpms_suspend_label">
+                                            <property name="visible">True</property>
+                                            <property name="label" translatable="yes">Sus_pend After</property>
+                                            <property name="use-underline">True</property>
+                                            <property name="use-markup">False</property>
+                                            <property name="justify">GTK_JUSTIFY_LEFT</property>
+                                            <property name="wrap">False</property>
+                                            <property name="selectable">False</property>
+                                            <property name="xalign">1</property>
+                                            <property name="yalign">0.5</property>
+                                            <property name="xpad">10</property>
+                                            <property name="ypad">0</property>
+                                            <property name="mnemonic-widget">dpms_suspend_spinbutton</property>
+                                            <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                                            <property name="width-chars">-1</property>
+                                            <property name="single-line-mode">False</property>
+                                            <property name="angle">0</property>
+                                            <accessibility>
+                                              <relation target="dpms_suspend_spinbutton" type="label-for"/>
+                                              <relation target="dpms_suspend_spinbutton" type="flows-to"/>
+                                            </accessibility>
+                                          </object>
+                                          <packing>
+                                            <property name="left-attach">0</property>
+                                            <property name="right-attach">1</property>
+                                            <property name="top-attach">1</property>
+                                            <property name="bottom-attach">2</property>
+                                            <property name="x-options">fill</property>
+                                            <property name="y-options"/>
+                                          </packing>
+                                        </child>
+                                        <child>
+                                          <object class="GtkLabel" id="dpms_off_label">
+                                            <property name="visible">True</property>
+                                            <property name="label" translatable="yes">_Off After</property>
+                                            <property name="use-underline">True</property>
+                                            <property name="use-markup">False</property>
+                                            <property name="justify">GTK_JUSTIFY_LEFT</property>
+                                            <property name="wrap">False</property>
+                                            <property name="selectable">False</property>
+                                            <property name="xalign">1</property>
+                                            <property name="yalign">0.5</property>
+                                            <property name="xpad">10</property>
+                                            <property name="ypad">0</property>
+                                            <property name="mnemonic-widget">dpms_off_spinbutton</property>
+                                            <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                                            <property name="width-chars">-1</property>
+                                            <property name="single-line-mode">False</property>
+                                            <property name="angle">0</property>
+                                            <accessibility>
+                                              <relation target="dpms_off_spinbutton" type="label-for"/>
+                                              <relation target="dpms_off_spinbutton" type="flows-to"/>
+                                            </accessibility>
+                                          </object>
+                                          <packing>
+                                            <property name="left-attach">0</property>
+                                            <property name="right-attach">1</property>
+                                            <property name="top-attach">2</property>
+                                            <property name="bottom-attach">3</property>
+                                            <property name="x-options">fill</property>
+                                            <property name="y-options"/>
+                                          </packing>
+                                        </child>
+                                        <child>
+                                          <object class="GtkLabel" id="dpms_standby_mlabel">
+                                            <property name="visible">True</property>
+                                            <property name="label" translatable="yes">minutes</property>
+                                            <property name="use-underline">False</property>
+                                            <property name="use-markup">False</property>
+                                            <property name="justify">GTK_JUSTIFY_LEFT</property>
+                                            <property name="wrap">False</property>
+                                            <property name="selectable">False</property>
+                                            <property name="xalign">0</property>
+                                            <property name="yalign">0.5</property>
+                                            <property name="xpad">0</property>
+                                            <property name="ypad">0</property>
+                                            <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                                            <property name="width-chars">-1</property>
+                                            <property name="single-line-mode">False</property>
+                                            <property name="angle">0</property>
+                                            <accessibility>
+                                              <relation target="dpms_standby_spinbutton" type="label-for"/>
+                                              <relation target="dpms_standby_spinbutton" type="flows-from"/>
+                                            </accessibility>
+                                          </object>
+                                          <packing>
+                                            <property name="left-attach">2</property>
+                                            <property name="right-attach">3</property>
+                                            <property name="top-attach">0</property>
+                                            <property name="bottom-attach">1</property>
+                                            <property name="x-options">fill</property>
+                                            <property name="y-options"/>
+                                          </packing>
+                                        </child>
+                                        <child>
+                                          <object class="GtkLabel" id="dpms_suspend_mlabel">
+                                            <property name="visible">True</property>
+                                            <property name="label" translatable="yes">minutes</property>
+                                            <property name="use-underline">False</property>
+                                            <property name="use-markup">False</property>
+                                            <property name="justify">GTK_JUSTIFY_LEFT</property>
+                                            <property name="wrap">False</property>
+                                            <property name="selectable">False</property>
+                                            <property name="xalign">0</property>
+                                            <property name="yalign">0.5</property>
+                                            <property name="xpad">0</property>
+                                            <property name="ypad">0</property>
+                                            <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                                            <property name="width-chars">-1</property>
+                                            <property name="single-line-mode">False</property>
+                                            <property name="angle">0</property>
+                                            <accessibility>
+                                              <relation target="dpms_suspend_spinbutton" type="label-for"/>
+                                              <relation target="dpms_suspend_spinbutton" type="flows-from"/>
+                                            </accessibility>
+                                          </object>
+                                          <packing>
+                                            <property name="left-attach">2</property>
+                                            <property name="right-attach">3</property>
+                                            <property name="top-attach">1</property>
+                                            <property name="bottom-attach">2</property>
+                                            <property name="x-options">fill</property>
+                                            <property name="y-options"/>
+                                          </packing>
+                                        </child>
+                                        <child>
+                                          <object class="GtkLabel" id="dpms_off_mlabel">
+                                            <property name="visible">True</property>
+                                            <property name="label" translatable="yes">minutes</property>
+                                            <property name="use-underline">False</property>
+                                            <property name="use-markup">False</property>
+                                            <property name="justify">GTK_JUSTIFY_LEFT</property>
+                                            <property name="wrap">False</property>
+                                            <property name="selectable">False</property>
+                                            <property name="xalign">0</property>
+                                            <property name="yalign">0.5</property>
+                                            <property name="xpad">0</property>
+                                            <property name="ypad">0</property>
+                                            <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                                            <property name="width-chars">-1</property>
+                                            <property name="single-line-mode">False</property>
+                                            <property name="angle">0</property>
+                                            <accessibility>
+                                              <relation target="dpms_off_spinbutton" type="label-for"/>
+                                              <relation target="dpms_off_spinbutton" type="flows-from"/>
+                                            </accessibility>
+                                          </object>
+                                          <packing>
+                                            <property name="left-attach">2</property>
+                                            <property name="right-attach">3</property>
+                                            <property name="top-attach">2</property>
+                                            <property name="bottom-attach">3</property>
+                                            <property name="x-options">fill</property>
+                                            <property name="y-options"/>
+                                          </packing>
+                                        </child>
+                                        <child>
+                                          <object class="GtkSpinButton" id="dpms_off_spinbutton">
+                                            <property name="visible">True</property>
+                                            <property name="tooltip-text" translatable="yes">How long until the monitor powers down.</property>
+                                            <property name="can-focus">True</property>
+                                            <property name="climb-rate">15</property>
+                                            <property name="digits">0</property>
+                                            <property name="numeric">True</property>
+                                            <property name="update-policy">GTK_UPDATE_ALWAYS</property>
+                                            <property name="snap-to-ticks">True</property>
+                                            <property name="wrap">False</property>
+                                            <property name="adjustment">adjustment4</property>
+                                            <accessibility>
+                                              <relation target="dpms_button" type="controlled-by"/>
+                                              <relation target="dpms_off_label" type="labelled-by"/>
+                                              <relation target="dpms_off_mlabel" type="labelled-by"/>
+                                              <relation target="dpms_off_label" type="flows-from"/>
+                                              <relation target="dpms_off_mlabel" type="flows-to"/>
+                                            </accessibility>
+                                            <signal handler="pref_changed_cb" name="activate"/>
+                                            <signal handler="pref_changed_event_cb" name="focus_out_event"/>
+                                            <signal handler="pref_changed_cb" name="value_changed"/>
+                                          </object>
+                                          <packing>
+                                            <property name="left-attach">1</property>
+                                            <property name="right-attach">2</property>
+                                            <property name="top-attach">2</property>
+                                            <property name="bottom-attach">3</property>
+                                            <property name="x-options"/>
+                                            <property name="y-options"/>
+                                          </packing>
+                                        </child>
+                                        <child>
+                                          <object class="GtkSpinButton" id="dpms_suspend_spinbutton">
+                                            <property name="visible">True</property>
+                                            <property name="tooltip-text" translatable="yes">How long until the monitor goes into power-saving mode.</property>
+                                            <property name="can-focus">True</property>
+                                            <property name="climb-rate">15</property>
+                                            <property name="digits">0</property>
+                                            <property name="numeric">True</property>
+                                            <property name="update-policy">GTK_UPDATE_ALWAYS</property>
+                                            <property name="snap-to-ticks">True</property>
+                                            <property name="wrap">False</property>
+                                            <property name="adjustment">adjustment5</property>
+                                            <accessibility>
+                                              <relation target="dpms_button" type="controlled-by"/>
+                                              <relation target="dpms_suspend_label" type="labelled-by"/>
+                                              <relation target="dpms_suspend_mlabel" type="labelled-by"/>
+                                              <relation target="dpms_suspend_label" type="flows-from"/>
+                                              <relation target="dpms_suspend_mlabel" type="flows-to"/>
+                                            </accessibility>
+                                            <signal handler="pref_changed_cb" name="activate"/>
+                                            <signal handler="pref_changed_event_cb" name="focus_out_event"/>
+                                            <signal handler="pref_changed_cb" name="value_changed"/>
+                                          </object>
+                                          <packing>
+                                            <property name="left-attach">1</property>
+                                            <property name="right-attach">2</property>
+                                            <property name="top-attach">1</property>
+                                            <property name="bottom-attach">2</property>
+                                            <property name="x-options"/>
+                                            <property name="y-options"/>
+                                          </packing>
+                                        </child>
+                                        <child>
+                                          <object class="GtkSpinButton" id="dpms_standby_spinbutton">
+                                            <property name="visible">True</property>
+                                            <property name="tooltip-text" translatable="yes">How long until the monitor goes completely black.</property>
+                                            <property name="can-focus">True</property>
+                                            <property name="climb-rate">15</property>
+                                            <property name="digits">0</property>
+                                            <property name="numeric">True</property>
+                                            <property name="update-policy">GTK_UPDATE_ALWAYS</property>
+                                            <property name="snap-to-ticks">True</property>
+                                            <property name="wrap">False</property>
+                                            <property name="adjustment">adjustment6</property>
+                                            <accessibility>
+                                              <relation target="dpms_button" type="controlled-by"/>
+                                              <relation target="dpms_standby_label" type="labelled-by"/>
+                                              <relation target="dpms_standby_mlabel" type="labelled-by"/>
+                                              <relation target="dpms_standby_label" type="flows-from"/>
+                                              <relation target="dpms_standby_mlabel" type="flows-to"/>
+                                            </accessibility>
+                                            <signal handler="pref_changed_cb" name="activate"/>
+                                            <signal handler="pref_changed_event_cb" name="focus_out_event"/>
+                                            <signal handler="pref_changed_cb" name="value_changed"/>
+                                          </object>
+                                          <packing>
+                                            <property name="left-attach">1</property>
+                                            <property name="right-attach">2</property>
+                                            <property name="top-attach">0</property>
+                                            <property name="bottom-attach">1</property>
+                                            <property name="x-options"/>
+                                            <property name="y-options"/>
+                                          </packing>
+                                        </child>
+                                      </object>
+                                      <packing>
+                                        <property name="padding">0</property>
+                                        <property name="expand">False</property>
+                                        <property name="fill">True</property>
+                                      </packing>
+                                    </child>
+                                    <child>
+                                      <object class="GtkCheckButton" id="dpms_quickoff_button">
+                                        <property name="visible">True</property>
+                                        <property name="tooltip-text" translatable="yes">Whether the monitor should be powered off immediately in "Blank Screen Only" mode, regardless of the above power-management timeouts.</property>
+                                        <property name="can-focus">True</property>
+                                        <property name="label" translatable="yes">_Quick Power-off in Blank Only Mode</property>
+                                        <property name="use-underline">True</property>
+                                        <property name="relief">GTK_RELIEF_NORMAL</property>
+                                        <property name="focus-on-click">True</property>
+                                        <property name="active">False</property>
+                                        <property name="inconsistent">False</property>
+                                        <property name="draw-indicator">True</property>
+                                        <signal handler="pref_changed_cb" name="toggled"/>
+                                      </object>
+                                      <packing>
+                                        <property name="padding">0</property>
+                                        <property name="expand">False</property>
+                                        <property name="fill">False</property>
+                                      </packing>
+                                    </child>
+                                  </object>
+                                  <packing>
+                                    <property name="padding">0</property>
+                                    <property name="expand">True</property>
+                                    <property name="fill">True</property>
+                                  </packing>
+                                </child>
+                              </object>
+                            </child>
+                            <child type="label">
+                              <object class="GtkLabel" id="label4">
+                                <property name="visible">True</property>
+                                <property name="label" translatable="yes">Display Power Management</property>
+                                <property name="use-underline">False</property>
+                                <property name="use-markup">False</property>
+                                <property name="justify">GTK_JUSTIFY_LEFT</property>
+                                <property name="wrap">False</property>
+                                <property name="selectable">False</property>
+                                <property name="xalign">0.5</property>
+                                <property name="yalign">0.5</property>
+                                <property name="xpad">0</property>
+                                <property name="ypad">0</property>
+                                <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                                <property name="width-chars">-1</property>
+                                <property name="single-line-mode">False</property>
+                                <property name="angle">0</property>
+                                <accessibility>
+                                  <relation target="dpms_frame" type="label-for"/>
+                                </accessibility>
+                              </object>
+                            </child>
+                          </object>
+                          <packing>
+                            <property name="left-attach">1</property>
+                            <property name="right-attach">2</property>
+                            <property name="top-attach">0</property>
+                            <property name="bottom-attach">1</property>
+                            <property name="y-options">fill</property>
+                          </packing>
+                        </child>
+                        <child>
+                          <object class="GtkFrame" id="blanking_frame">
+                            <property name="border-width">10</property>
+                            <property name="visible">True</property>
+                            <property name="label-xalign">0</property>
+                            <property name="label-yalign">0.5</property>
+                            <property name="shadow-type">GTK_SHADOW_ETCHED_IN</property>
+                            <accessibility>
+                              <relation target="label5" type="labelled-by"/>
+                            </accessibility>
+                            <child>
+                              <object class="GtkBox" id="fading_hbox">
+                                <property name="border-width">8</property>
+                                <property name="visible">True</property>
+                                <property name="homogeneous">False</property>
+                                <property name="spacing">8</property>
+                                <property name="orientation">horizontal</property>
+                                <child>
+                                  <object class="GtkBox" id="vbox7">
+                                    <property name="visible">True</property>
+                                    <property name="homogeneous">False</property>
+                                    <property name="spacing">0</property>
+                                    <property name="orientation">vertical</property>
+                                    <child>
+                                      <object class="GtkCheckButton" id="fade_button">
+                                        <property name="visible">True</property>
+                                        <property name="tooltip-text" translatable="yes">Whether the screen should slowly fade to black when the screen saver activates.</property>
+                                        <property name="can-focus">True</property>
+                                        <property name="label" translatable="yes">Fade to Black when _Blanking</property>
+                                        <property name="use-underline">True</property>
+                                        <property name="relief">GTK_RELIEF_NORMAL</property>
+                                        <property name="focus-on-click">True</property>
+                                        <property name="active">False</property>
+                                        <property name="inconsistent">False</property>
+                                        <property name="draw-indicator">True</property>
+                                        <accessibility>
+                                          <relation target="fade_spinbutton" type="controller-for"/>
+                                        </accessibility>
+                                        <signal handler="pref_changed_cb" name="toggled"/>
+                                      </object>
+                                      <packing>
+                                        <property name="padding">0</property>
+                                        <property name="expand">False</property>
+                                        <property name="fill">False</property>
+                                      </packing>
+                                    </child>
+                                    <child>
+                                      <object class="GtkCheckButton" id="unfade_button">
+                                        <property name="visible">True</property>
+                                        <property name="tooltip-text" translatable="yes">Whether the screen should slowly fade in from black when the screen saver deactivates.</property>
+                                        <property name="can-focus">True</property>
+                                        <property name="label" translatable="yes">Fade from Black When _Unblanking</property>
+                                        <property name="use-underline">True</property>
+                                        <property name="relief">GTK_RELIEF_NORMAL</property>
+                                        <property name="focus-on-click">True</property>
+                                        <property name="active">False</property>
+                                        <property name="inconsistent">False</property>
+                                        <property name="draw-indicator">True</property>
+                                        <accessibility>
+                                          <relation target="fade_spinbutton" type="controller-for"/>
+                                        </accessibility>
+                                        <signal handler="pref_changed_cb" name="toggled"/>
+                                      </object>
+                                      <packing>
+                                        <property name="padding">0</property>
+                                        <property name="expand">False</property>
+                                        <property name="fill">False</property>
+                                      </packing>
+                                    </child>
+                                    <child>
+                                      <object class="GtkBox" id="fade_hbox">
+                                        <property name="visible">True</property>
+                                        <property name="homogeneous">False</property>
+                                        <property name="spacing">0</property>
+                                        <property name="orientation">horizontal</property>
+                                        <child>
+                                          <object class="GtkLabel" id="fade_dummy">
+                                            <property name="visible">True</property>
+                                            <property name="label" translatable="yes"/>
+                                            <property name="use-underline">False</property>
+                                            <property name="use-markup">False</property>
+                                            <property name="justify">GTK_JUSTIFY_LEFT</property>
+                                            <property name="wrap">False</property>
+                                            <property name="selectable">False</property>
+                                            <property name="xalign">0.5</property>
+                                            <property name="yalign">0.5</property>
+                                            <property name="xpad">3</property>
+                                            <property name="ypad">0</property>
+                                            <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                                            <property name="width-chars">-1</property>
+                                            <property name="single-line-mode">False</property>
+                                            <property name="angle">0</property>
+                                          </object>
+                                          <packing>
+                                            <property name="padding">0</property>
+                                            <property name="expand">False</property>
+                                            <property name="fill">False</property>
+                                          </packing>
+                                        </child>
+                                        <child>
+                                          <object class="GtkLabel" id="fade_label">
+                                            <property name="visible">True</property>
+                                            <property name="label" translatable="yes">F_ade Duration</property>
+                                            <property name="use-underline">True</property>
+                                            <property name="use-markup">False</property>
+                                            <property name="justify">GTK_JUSTIFY_LEFT</property>
+                                            <property name="wrap">False</property>
+                                            <property name="selectable">False</property>
+                                            <property name="xalign">0</property>
+                                            <property name="yalign">0.5</property>
+                                            <property name="xpad">0</property>
+                                            <property name="ypad">0</property>
+                                            <property name="mnemonic-widget">fade_spinbutton</property>
+                                            <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                                            <property name="width-chars">-1</property>
+                                            <property name="single-line-mode">False</property>
+                                            <property name="angle">0</property>
+                                            <accessibility>
+                                              <relation target="fade_spinbutton" type="label-for"/>
+                                              <relation target="fade_spinbutton" type="flows-to"/>
+                                            </accessibility>
+                                          </object>
+                                          <packing>
+                                            <property name="padding">14</property>
+                                            <property name="expand">False</property>
+                                            <property name="fill">False</property>
+                                          </packing>
+                                        </child>
+                                        <child>
+                                          <object class="GtkSpinButton" id="fade_spinbutton">
+                                            <property name="visible">True</property>
+                                            <property name="tooltip-text" translatable="yes">How long it should take for the screen to fade in and out.</property>
+                                            <property name="can-focus">True</property>
+                                            <property name="climb-rate">1</property>
+                                            <property name="digits">0</property>
+                                            <property name="numeric">True</property>
+                                            <property name="update-policy">GTK_UPDATE_ALWAYS</property>
+                                            <property name="snap-to-ticks">True</property>
+                                            <property name="wrap">False</property>
+                                            <property name="adjustment">adjustment7</property>
+                                            <accessibility>
+                                              <relation target="unfade_button" type="controlled-by"/>
+                                              <relation target="fade_button" type="controlled-by"/>
+                                              <relation target="fade_label" type="labelled-by"/>
+                                              <relation target="fade_sec_label" type="labelled-by"/>
+                                              <relation target="fade_label" type="flows-from"/>
+                                              <relation target="fade_sec_label" type="flows-to"/>
+                                            </accessibility>
+                                            <signal handler="pref_changed_cb" name="activate"/>
+                                            <signal handler="pref_changed_event_cb" name="focus_out_event"/>
+                                            <signal handler="pref_changed_cb" name="value_changed"/>
+                                          </object>
+                                          <packing>
+                                            <property name="padding">4</property>
+                                            <property name="expand">False</property>
+                                            <property name="fill">False</property>
+                                          </packing>
+                                        </child>
+                                        <child>
+                                          <object class="GtkLabel" id="fade_sec_label">
+                                            <property name="visible">True</property>
+                                            <property name="label" translatable="yes">seconds</property>
+                                            <property name="use-underline">False</property>
+                                            <property name="use-markup">False</property>
+                                            <property name="justify">GTK_JUSTIFY_LEFT</property>
+                                            <property name="wrap">False</property>
+                                            <property name="selectable">False</property>
+                                            <property name="xalign">0</property>
+                                            <property name="yalign">0.5</property>
+                                            <property name="xpad">0</property>
+                                            <property name="ypad">0</property>
+                                            <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                                            <property name="width-chars">-1</property>
+                                            <property name="single-line-mode">False</property>
+                                            <property name="angle">0</property>
+                                            <accessibility>
+                                              <relation target="fade_spinbutton" type="label-for"/>
+                                              <relation target="fade_spinbutton" type="flows-from"/>
+                                            </accessibility>
+                                          </object>
+                                          <packing>
+                                            <property name="padding">2</property>
+                                            <property name="expand">False</property>
+                                            <property name="fill">False</property>
+                                          </packing>
+                                        </child>
+                                      </object>
+                                      <packing>
+                                        <property name="padding">0</property>
+                                        <property name="expand">False</property>
+                                        <property name="fill">False</property>
+                                      </packing>
+                                    </child>
+                                    <child>
+                                      <object class="GtkHSeparator" id="blanking_hr">
+                                        <property name="visible">True</property>
+                                      </object>
+                                      <packing>
+                                        <property name="padding">8</property>
+                                        <property name="expand">False</property>
+                                        <property name="fill">False</property>
+                                      </packing>
+                                    </child>
+                                    <child>
+                                      <object class="GtkBox" id="theme_hbox">
+                                        <property name="visible">True</property>
+                                        <property name="homogeneous">False</property>
+                                        <property name="spacing">0</property>
+                                        <property name="orientation">horizontal</property>
+                                        <child>
+                                          <object class="GtkLabel" id="theme_label">
+                                            <property name="visible">True</property>
+                                            <property name="label" translatable="yes">_Theme:</property>
+                                            <property name="tooltip-text" translatable="yes">The color scheme to use on the unlock dialog.</property>
+                                            <property name="use-underline">True</property>
+                                            <property name="use-markup">False</property>
+                                            <property name="justify">GTK_JUSTIFY_LEFT</property>
+                                            <property name="wrap">False</property>
+                                            <property name="selectable">False</property>
+                                            <property name="xalign">0</property>
+                                            <property name="yalign">0.5</property>
+                                            <property name="xpad">0</property>
+                                            <property name="ypad">0</property>
+                                            <property name="mnemonic-widget">theme_menu</property>
+                                            <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                                            <property name="width-chars">-1</property>
+                                            <property name="single-line-mode">False</property>
+                                            <property name="angle">0</property>
+                                            <accessibility>
+                                              <relation target="theme_menu" type="label-for"/>
+                                            </accessibility>
+                                          </object>
+                                          <packing>
+                                            <property name="padding">0</property>
+                                            <property name="expand">False</property>
+                                            <property name="fill">False</property>
+                                          </packing>
+                                        </child>
+                                        <child>
+                                          <object class="GtkComboBox" id="theme_menu">
+                                            <property name="visible">True</property>
+                                            <property name="can-focus">True</property>
+                                            <property name="has-entry">False</property>
+                                            <property name="model">theme_menu_model</property>
+                                            <accessibility>
+                                              <relation target="theme_label" type="labelled-by"/>
+                                            </accessibility>
+                                            <child>
+                                              <object class="GtkCellRendererText" id="renderer2"/>
+                                              <attributes>
+                                                <attribute name="text">0</attribute>
+                                              </attributes>
+                                            </child>
+                                          </object>
+                                          <packing>
+                                            <property name="padding">4</property>
+                                            <property name="expand">False</property>
+                                            <property name="fill">False</property>
+                                          </packing>
+                                        </child>
+                                        <child>
+                                          <object class="GtkButton" id="theme_preview">
+                                            <property name="visible">True</property>
+                                            <property name="tooltip-text" translatable="yes">Show the what the unlock dialog will look like.</property>
+                                            <property name="can-default">True</property>
+                                            <property name="can-focus">True</property>
+                                            <property name="label" translatable="yes">_Preview</property>
+                                            <property name="use-underline">True</property>
+                                            <property name="relief">GTK_RELIEF_NORMAL</property>
+                                            <property name="focus-on-click">True</property>
+                                            <signal handler="preview_theme_cb" name="clicked"/>
+                                          </object>
+                                          <packing>
+                                            <property name="padding">0</property>
+                                            <property name="expand">False</property>
+                                            <property name="fill">False</property>
+                                          </packing>
+                                        </child>
+                                      </object>
+                                      <packing>
+                                        <property name="padding">10</property>
+                                        <property name="expand">False</property>
+                                        <property name="fill">True</property>
+                                      </packing>
+                                    </child>
+                                  </object>
+                                  <packing>
+                                    <property name="padding">0</property>
+                                    <property name="expand">True</property>
+                                    <property name="fill">True</property>
+                                  </packing>
+                                </child>
+                              </object>
+                            </child>
+                            <child type="label">
+                              <object class="GtkLabel" id="label5">
+                                <property name="visible">True</property>
+                                <property name="label" translatable="yes">Blanking</property>
+                                <property name="use-underline">False</property>
+                                <property name="use-markup">False</property>
+                                <property name="justify">GTK_JUSTIFY_LEFT</property>
+                                <property name="wrap">False</property>
+                                <property name="selectable">False</property>
+                                <property name="xalign">0.5</property>
+                                <property name="yalign">0.5</property>
+                                <property name="xpad">0</property>
+                                <property name="ypad">0</property>
+                                <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                                <property name="width-chars">-1</property>
+                                <property name="single-line-mode">False</property>
+                                <property name="angle">0</property>
+                                <accessibility>
+                                  <relation target="blanking_frame" type="label-for"/>
+                                </accessibility>
+                              </object>
+                            </child>
+                          </object>
+                          <packing>
+                            <property name="left-attach">1</property>
+                            <property name="right-attach">2</property>
+                            <property name="top-attach">1</property>
+                            <property name="bottom-attach">2</property>
+                            <property name="x-options">fill</property>
+                            <property name="y-options">fill</property>
+                          </packing>
+                        </child>
+                      </object>
+                      <packing>
+                        <property name="tab-expand">False</property>
+                        <property name="tab-fill">False</property>
+                      </packing>
+                    </child>
+                    <child type="tab">
+                      <object class="GtkLabel" id="options_tab">
+                        <property name="visible">True</property>
+                        <property name="label" translatable="yes">_Advanced</property>
+                        <property name="use-underline">True</property>
+                        <property name="use-markup">False</property>
+                        <property name="justify">GTK_JUSTIFY_LEFT</property>
+                        <property name="wrap">False</property>
+                        <property name="selectable">False</property>
+                        <property name="xalign">0.5</property>
+                        <property name="yalign">0.5</property>
+                        <property name="xpad">0</property>
+                        <property name="ypad">0</property>
+                        <property name="mnemonic-widget">notebook</property>
+                        <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                        <property name="width-chars">-1</property>
+                        <property name="single-line-mode">False</property>
+                        <property name="angle">0</property>
+                      </object>
+                      <packing>
+                        <property name="tab-expand">False</property>
+                        <property name="tab-fill">False</property>
+                      </packing>
+                    </child>
+                  </object>
+                  <packing>
+                    <property name="padding">0</property>
+                    <property name="expand">True</property>
+                    <property name="fill">True</property>
+                  </packing>
+                </child>
+              </object>
+              <packing>
+                <property name="padding">0</property>
+                <property name="expand">True</property>
+                <property name="fill">True</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkHButtonBox" id="hbuttonbox2">
+                <property name="border-width">5</property>
+                <property name="layout-style">GTK_BUTTONBOX_EDGE</property>
+                <property name="spacing">10</property>
+                <child>
+                  <object class="GtkButton" id="helpbutton">
+                    <property name="visible">True</property>
+                    <property name="can-default">True</property>
+                    <property name="can-focus">True</property>
+                    <property name="label">gtk-help</property>
+                    <property name="use-stock">True</property>
+                    <property name="relief">GTK_RELIEF_NORMAL</property>
+                    <property name="focus-on-click">True</property>
+                    <signal handler="doc_menu_cb" name="clicked"/>
+                  </object>
+                </child>
+                <child>
+                  <object class="GtkButton" id="closebutton">
+                    <property name="visible">True</property>
+                    <property name="can-default">True</property>
+                    <property name="can-focus">True</property>
+                    <property name="label">gtk-close</property>
+                    <property name="use-stock">True</property>
+                    <property name="relief">GTK_RELIEF_NORMAL</property>
+                    <property name="focus-on-click">True</property>
+                    <signal handler="quit_menu_cb" name="clicked"/>
+                  </object>
+                </child>
+              </object>
+              <packing>
+                <property name="padding">0</property>
+                <property name="expand">False</property>
+                <property name="fill">True</property>
+                <property name="pack-type">GTK_PACK_END</property>
+              </packing>
+            </child>
+          </object>
+        </child>
+      </object>
+    </child>
+  </template>
+</interface>
index 18a59b626a2e984f84b22458cad8dcf41da94d3d..fe5e245422f1871735d27ceff2cd891b36453e73 100644 (file)
@@ -1,5 +1,5 @@
 /* dpms.c --- syncing the X Display Power Management System values
- * xscreensaver, Copyright © 2001-2021 Jamie Zawinski <jwz@jwz.org>
+ * xscreensaver, Copyright © 2001-2022 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
@@ -107,8 +107,10 @@ sync_server_dpms_settings (Display *dpy, struct saver_preferences *p)
   Bool verbose_p       = p->verbose_p;
   static Bool warned_p = False;
 
-  /* If the monitor is currently powered off, defer any changes until
-     we are next called while it is powered on. */
+  /* If the monitor is currently powered off, defer any changes until we are
+     next called while it is powered on.  Making changes to the DPMS settings
+     can have the side-effect of powering the monitor back on.
+    */
   if (! monitor_powered_on_p (dpy))
     {
       if (verbose_p > 1)
index 6116088318780677895f3a6e0c34e8063e6a8a77..885ccc44ca43a175a47d99e5242c49fab8524512 100644 (file)
@@ -450,14 +450,14 @@ colormap_fade (XtAppContext app, Display *dpy,
   int status = -1;
   Colormap *window_cmaps = 0;
   int i, j, k;
-  int cmaps_per_screen = 5;
-  int nscreens = ScreenCount(dpy);
-  int ncmaps = nscreens * cmaps_per_screen;
+  unsigned int cmaps_per_screen = 5;
+  unsigned int nscreens = ScreenCount(dpy);
+  unsigned int ncmaps = nscreens * cmaps_per_screen;
   Colormap *fade_cmaps = 0;
   Bool installed = False;
-  int total_ncolors;
+  unsigned int total_ncolors;
   XColor *orig_colors, *current_colors, *screen_colors, *orig_screen_colors;
-  int screen;
+  unsigned int screen;
 
   window_cmaps = (Colormap *) calloc(sizeof(Colormap), nwindows);
   if (!window_cmaps) abort();
diff --git a/driver/gresource.xml b/driver/gresource.xml
new file mode 100644 (file)
index 0000000..345fadd
--- /dev/null
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<gresources>
+  <gresource prefix="/org/jwz/xscreensaver">
+    <file preprocess="xml-stripblanks">demo.ui</file>
+    <file preprocess="xml-stripblanks">prefs.ui</file>
+  </gresource>
+</gresources>
index b6c74de79bd234d6cfe680003ceed7fcda2bf940..c568063769f6d07ff456c4cd3228f4aafe9c74d9 100644 (file)
@@ -1,5 +1,5 @@
 /* passwd-pwent.c --- verifying typed passwords with the OS.
- * xscreensaver, Copyright © 1993-2021 Jamie Zawinski <jwz@jwz.org>
+ * xscreensaver, Copyright © 1993-2022 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
@@ -163,6 +163,7 @@ get_encrypted_passwd (const char *user)
         result = strdup(p->pw_passwd);
     }
 
+# ifdef HAVE_HPUX_PASSWD
   /* The manual for passwd(4) on HPUX 10.10 says:
 
          Password aging is put in effect for a particular user if his
@@ -173,6 +174,9 @@ get_encrypted_passwd (const char *user)
      So this means that passwd->pw_passwd isn't simply a string of cyphertext,
      it might have trailing junk.  So, if there is a comma in the string, and
      that comma is beyond position 13, terminate the string before the comma.
+
+     This behavior can break other systems where comma separated data is
+     significant, such as argon2 passwords on NetBSD.
    */
   if (result && strlen(result) > 13)
     {
@@ -180,6 +184,7 @@ get_encrypted_passwd (const char *user)
       if (s)
        *s = 0;
     }
+# endif /* HAVE_HPUX_PASSWD */
 
   /* We only issue this warning in non-verbose mode if not compiled with
      support for PAM.  If we're using PAM, it's common for pwent passwords
diff --git a/driver/prefs.ui b/driver/prefs.ui
new file mode 100644 (file)
index 0000000..a6e4e2e
--- /dev/null
@@ -0,0 +1,518 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<interface>
+  <template class="XScreenSaverDialog" parent="GtkDialog">
+    <property name="title" translatable="yes">XScreenSaver Settings</property>
+    <property name="type">GTK_WINDOW_TOPLEVEL</property>
+    <property name="window-position">GTK_WIN_POS_NONE</property>
+    <property name="modal">False</property>
+    <property name="resizable">True</property>
+    <property name="destroy-with-parent">False</property>
+    <property name="decorated">True</property>
+    <property name="skip-taskbar-hint">False</property>
+    <property name="skip-pager-hint">False</property>
+    <property name="type-hint">GDK_WINDOW_TYPE_HINT_NORMAL</property>
+    <property name="gravity">GDK_GRAVITY_NORTH_WEST</property>
+    <property name="focus-on-map">True</property>
+    <property name="urgency-hint">False</property>
+    <child internal-child="vbox">
+      <object class="GtkBox" id="dialog_vbox">
+        <property name="visible">True</property>
+        <property name="homogeneous">False</property>
+        <property name="spacing">0</property>
+        <property name="orientation">vertical</property>
+        <property name="margin-start">12</property>
+        <property name="margin-end">12</property>
+        <property name="margin-top">0</property>
+        <property name="margin-bottom">0</property>
+        <child internal-child="action_area">
+          <object class="GtkHButtonBox" id="dialog_action_area">
+            <property name="visible">True</property>
+            <property name="layout-style">GTK_BUTTONBOX_END</property>
+            <child>
+              <object class="GtkButton" id="adv_button">
+                <property name="visible">True</property>
+                <property name="can-default">True</property>
+                <property name="can-focus">True</property>
+                <property name="label" translatable="yes">_Advanced &gt;&gt;</property>
+                <property name="use-underline">True</property>
+                <property name="relief">GTK_RELIEF_NORMAL</property>
+                <property name="focus-on-click">True</property>
+                <signal handler="settings_adv_cb" name="clicked"/>
+              </object>
+            </child>
+            <child>
+              <object class="GtkButton" id="std_button">
+                <property name="visible">True</property>
+                <property name="can-default">True</property>
+                <property name="can-focus">True</property>
+                <property name="label" translatable="yes">_Standard &lt;&lt;</property>
+                <property name="use-underline">True</property>
+                <property name="relief">GTK_RELIEF_NORMAL</property>
+                <property name="focus-on-click">True</property>
+                <signal handler="settings_std_cb" name="clicked"/>
+              </object>
+            </child>
+            <child>
+              <object class="GtkButton" id="reset_button">
+                <property name="visible">True</property>
+                <property name="can-default">True</property>
+                <property name="can-focus">True</property>
+                <property name="label" translatable="yes">_Reset to Defaults</property>
+                <property name="use-underline">True</property>
+                <property name="relief">GTK_RELIEF_NORMAL</property>
+                <property name="focus-on-click">True</property>
+                <signal handler="settings_reset_cb" name="clicked"/>
+              </object>
+            </child>
+            <child>
+              <object class="GtkButton" id="cancel_button">
+                <property name="visible">True</property>
+                <property name="can-default">True</property>
+                <property name="can-focus">True</property>
+                <property name="label">gtk-cancel</property>
+                <property name="use-stock">True</property>
+                <property name="relief">GTK_RELIEF_NORMAL</property>
+                <property name="focus-on-click">True</property>
+                <signal handler="settings_cancel_cb" name="clicked"/>
+              </object>
+            </child>
+            <child>
+              <object class="GtkButton" id="ok_button">
+                <property name="visible">True</property>
+                <property name="can-default">True</property>
+                <property name="can-focus">True</property>
+                <property name="label" translatable="yes">Save</property>
+                <property name="use-stock">True</property>
+                <property name="relief">GTK_RELIEF_NORMAL</property>
+                <property name="focus-on-click">True</property>
+                <signal handler="settings_ok_cb" name="clicked"/>
+              </object>
+            </child>
+          </object>
+          <packing>
+            <property name="padding">0</property>
+            <property name="expand">False</property>
+            <property name="fill">True</property>
+            <property name="pack-type">GTK_PACK_END</property>
+          </packing>
+        </child>
+        <child>
+          <object class="GtkBox" id="vbox1">
+            <property name="visible">True</property>
+            <property name="homogeneous">False</property>
+            <property name="spacing">0</property>
+            <property name="orientation">vertical</property>
+            <child>
+              <object class="GtkFrame" id="opt_frame">
+                <property name="visible">True</property>
+                <property name="label-xalign">0</property>
+                <property name="label-yalign">0</property>
+                <property name="shadow-type">GTK_SHADOW_NONE</property>
+                <accessibility>
+                  <relation target="label6" type="labelled-by"/>
+                </accessibility>
+                <child>
+                  <object class="GtkNotebook" id="opt_notebook">
+                    <property name="border-width">12</property>
+                    <property name="visible">True</property>
+                    <property name="can-focus">True</property>
+                    <property name="show-tabs">False</property>
+                    <property name="show-border">False</property>
+                    <property name="tab-pos">GTK_POS_BOTTOM</property>
+                    <property name="scrollable">False</property>
+                    <property name="enable-popup">False</property>
+                    <signal handler="settings_switch_page_cb" name="switch_page"/>
+                    <child>
+                      <object class="GtkBox" id="settings_vbox">
+                        <property name="visible">True</property>
+                        <property name="homogeneous">False</property>
+                        <property name="spacing">0</property>
+                        <property name="orientation">vertical</property>
+                        <child>
+                          <placeholder/>
+                        </child>
+                      </object>
+                      <packing>
+                        <property name="tab-expand">False</property>
+                        <property name="tab-fill">False</property>
+                      </packing>
+                    </child>
+                    <child type="tab">
+                      <object class="GtkLabel" id="std_label">
+                        <property name="visible">True</property>
+                        <property name="label" translatable="yes">Standard</property>
+                        <property name="use-underline">False</property>
+                        <property name="use-markup">False</property>
+                        <property name="justify">GTK_JUSTIFY_LEFT</property>
+                        <property name="wrap">False</property>
+                        <property name="selectable">False</property>
+                        <property name="xalign">0.5</property>
+                        <property name="yalign">0.5</property>
+                        <property name="xpad">0</property>
+                        <property name="ypad">0</property>
+                        <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                        <property name="width-chars">-1</property>
+                        <property name="single-line-mode">False</property>
+                        <property name="angle">0</property>
+                      </object>
+                      <packing>
+                        <property name="tab-expand">False</property>
+                        <property name="tab-fill">False</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkTable" id="adv_table">
+                        <property name="visible">True</property>
+                        <property name="n-rows">4</property>
+                        <property name="n-columns">2</property>
+                        <property name="homogeneous">False</property>
+                        <property name="row-spacing">20</property>
+                        <property name="column-spacing">0</property>
+                        <property name="expand">True</property>
+                        <child>
+                          <object class="GtkLabel" id="cmd_label">
+                            <property name="visible">True</property>
+                            <property name="label" translatable="yes">_Command Line:</property>
+                            <property name="use-underline">True</property>
+                            <property name="use-markup">False</property>
+                            <property name="justify">GTK_JUSTIFY_LEFT</property>
+                            <property name="wrap">False</property>
+                            <property name="selectable">False</property>
+                            <property name="xalign">0</property>
+                            <property name="yalign">0.5</property>
+                            <property name="xpad">0</property>
+                            <property name="ypad">0</property>
+                            <property name="mnemonic-widget">cmd_text</property>
+                            <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                            <property name="width-chars">-1</property>
+                            <property name="single-line-mode">False</property>
+                            <property name="angle">0</property>
+                            <accessibility>
+                              <relation target="cmd_text" type="label-for"/>
+                            </accessibility>
+                          </object>
+                          <packing>
+                            <property name="left-attach">1</property>
+                            <property name="right-attach">2</property>
+                            <property name="top-attach">1</property>
+                            <property name="bottom-attach">2</property>
+                            <property name="x-options">fill</property>
+                            <property name="y-options"/>
+                          </packing>
+                        </child>
+                        <child>
+                          <object class="GtkEntry" id="cmd_text">
+                            <property name="visible">True</property>
+                            <property name="can-focus">True</property>
+                            <property name="editable">True</property>
+                            <property name="visibility">True</property>
+                            <property name="max-length">0</property>
+                            <property name="text" translatable="yes"/>
+                            <property name="has-frame">True</property>
+                            <property name="invisible-char">*</property>
+                            <property name="activates-default">False</property>
+                            <accessibility>
+                              <relation target="cmd_label" type="labelled-by"/>
+                            </accessibility>
+                          </object>
+                          <packing>
+                            <property name="left-attach">1</property>
+                            <property name="right-attach">2</property>
+                            <property name="top-attach">2</property>
+                            <property name="bottom-attach">3</property>
+                            <property name="y-options"/>
+                          </packing>
+                        </child>
+                        <child>
+                          <object class="GtkBox" id="visual_hbox">
+                            <property name="visible">True</property>
+                            <property name="homogeneous">False</property>
+                            <property name="spacing">0</property>
+                            <property name="orientation">horizontal</property>
+                            <child>
+                              <object class="GtkLabel" id="visual">
+                                <property name="visible">True</property>
+                                <property name="label" translatable="yes">_Visual:</property>
+                                <property name="use-underline">True</property>
+                                <property name="use-markup">False</property>
+                                <property name="justify">GTK_JUSTIFY_LEFT</property>
+                                <property name="wrap">False</property>
+                                <property name="selectable">False</property>
+                                <property name="xalign">1</property>
+                                <property name="yalign">0.5</property>
+                                <property name="xpad">3</property>
+                                <property name="ypad">0</property>
+                                <property name="mnemonic-widget">visual_combo</property>
+                                <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                                <property name="width-chars">-1</property>
+                                <property name="single-line-mode">False</property>
+                                <property name="angle">0</property>
+                                <accessibility>
+                                  <relation target="visual_combo" type="label-for"/>
+                                </accessibility>
+                              </object>
+                              <packing>
+                                <property name="padding">0</property>
+                                <property name="expand">False</property>
+                                <property name="fill">False</property>
+                              </packing>
+                            </child>
+                            <child>
+                              <object class="GtkListStore" id="visual_combo_model">
+                                <columns>
+                                  <column type="gchararray"/>
+                                </columns>
+                                <data>
+                                  <row>
+                                    <col id="0" translatable="yes">Any</col>
+                                  </row>
+                                  <row>
+                                    <col id="0" translatable="yes">Best</col>
+                                  </row>
+                                  <row>
+                                    <col id="0" translatable="yes">Default</col>
+                                  </row>
+                                  <row>
+                                    <col id="0" translatable="yes">Default-N</col>
+                                  </row>
+                                  <row>
+                                    <col id="0" translatable="yes">GL</col>
+                                  </row>
+                                  <row>
+                                    <col id="0" translatable="yes">TrueColor</col>
+                                  </row>
+                                  <row>
+                                    <col id="0" translatable="yes">PseudoColor</col>
+                                  </row>
+                                  <row>
+                                    <col id="0" translatable="yes">StaticGray</col>
+                                  </row>
+                                  <row>
+                                    <col id="0" translatable="yes">GrayScale</col>
+                                  </row>
+                                  <row>
+                                    <col id="0" translatable="yes">DirectColor</col>
+                                  </row>
+                                  <row>
+                                    <col id="0" translatable="yes">Color</col>
+                                  </row>
+                                  <row>
+                                    <col id="0" translatable="yes">Gray</col>
+                                  </row>
+                                  <row>
+                                    <col id="0" translatable="yes">Mono</col>
+                                  </row>
+                                </data>
+                              </object>
+                              <object class="GtkComboBox" id="visual_combo">
+                                <property name="has-entry">False</property>
+                                <property name="visible">True</property>
+                                <property name="model">visual_combo_model</property>
+                                <accessibility>
+                                  <relation target="visual" type="labelled-by"/>
+                                </accessibility>
+                                <child>
+                                  <object class="GtkEntry" id="visual_entry">
+                                    <property name="visible">True</property>
+                                    <property name="can-focus">True</property>
+                                    <property name="editable">True</property>
+                                    <property name="visibility">True</property>
+                                    <property name="max-length">0</property>
+                                    <property name="text" translatable="yes"/>
+                                    <property name="has-frame">True</property>
+                                    <property name="invisible-char">*</property>
+                                    <property name="activates-default">False</property>
+                                  </object>
+                                </child>
+                              </object>
+                              <packing>
+                                <property name="padding">0</property>
+                                <property name="expand">False</property>
+                                <property name="fill">False</property>
+                              </packing>
+                            </child>
+                          </object>
+                          <packing>
+                            <property name="left-attach">1</property>
+                            <property name="right-attach">2</property>
+                            <property name="top-attach">3</property>
+                            <property name="bottom-attach">4</property>
+                            <property name="x-options">fill</property>
+                            <property name="y-options">fill</property>
+                          </packing>
+                        </child>
+                      </object>
+                      <packing>
+                        <property name="tab-expand">False</property>
+                        <property name="tab-fill">False</property>
+                      </packing>
+                    </child>
+                    <child type="tab">
+                      <object class="GtkLabel" id="adv_label">
+                        <property name="visible">True</property>
+                        <property name="label" translatable="yes">Advanced</property>
+                        <property name="use-underline">False</property>
+                        <property name="use-markup">False</property>
+                        <property name="justify">GTK_JUSTIFY_LEFT</property>
+                        <property name="wrap">False</property>
+                        <property name="selectable">False</property>
+                        <property name="xalign">0.5</property>
+                        <property name="yalign">0.5</property>
+                        <property name="xpad">0</property>
+                        <property name="ypad">0</property>
+                        <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                        <property name="width-chars">-1</property>
+                        <property name="single-line-mode">False</property>
+                        <property name="angle">0</property>
+                      </object>
+                      <packing>
+                        <property name="tab-expand">False</property>
+                        <property name="tab-fill">False</property>
+                      </packing>
+                    </child>
+                  </object>
+                </child>
+                <child type="label">
+                  <object class="GtkLabel" id="label6">
+                    <property name="visible">True</property>
+                    <property name="label" translatable="yes">Settings</property>
+                    <property name="use-underline">False</property>
+                    <property name="use-markup">False</property>
+                    <property name="justify">GTK_JUSTIFY_LEFT</property>
+                    <property name="wrap">False</property>
+                    <property name="selectable">False</property>
+                    <property name="xalign">0.5</property>
+                    <property name="yalign">0.5</property>
+                    <property name="xpad">0</property>
+                    <property name="ypad">0</property>
+                    <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                    <property name="width-chars">-1</property>
+                    <property name="single-line-mode">False</property>
+                    <property name="angle">0</property>
+                    <accessibility>
+                      <relation target="opt_frame" type="label-for"/>
+                    </accessibility>
+                  </object>
+                </child>
+              </object>
+              <packing>
+                <property name="padding">10</property>
+                <property name="expand">True</property>
+                <property name="fill">True</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkFrame" id="doc_frame">
+                <property name="visible">True</property>
+                <property name="label-xalign">0</property>
+                <property name="label-yalign">0</property>
+                <property name="shadow-type">GTK_SHADOW_NONE</property>
+                <child>
+                  <object class="GtkBox" id="doc_vbox">
+                    <property name="border-width">5</property>
+                    <property name="visible">True</property>
+                    <property name="homogeneous">False</property>
+                    <property name="spacing">5</property>
+                    <property name="orientation">vertical</property>
+                    <child>
+                      <object class="GtkLabel" id="doc">
+                        <property name="visible">True</property>
+                        <property name="can-focus">True</property>
+                        <property name="label" translatable="yes"/>
+                        <property name="use-underline">False</property>
+                        <property name="use-markup">False</property>
+                        <property name="justify">GTK_JUSTIFY_LEFT</property>
+                        <property name="wrap">True</property>
+                        <property name="selectable">True</property>
+                        <property name="xalign">0</property>
+                        <property name="yalign">0</property>
+                        <property name="xpad">0</property>
+                        <property name="ypad">0</property>
+                        <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                        <property name="width-chars">-1</property>
+                        <property name="single-line-mode">False</property>
+                        <property name="angle">0</property>
+                      </object>
+                      <packing>
+                        <property name="padding">0</property>
+                        <property name="expand">True</property>
+                        <property name="fill">True</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkBox" id="hbox1">
+                        <property name="visible">True</property>
+                        <property name="homogeneous">False</property>
+                        <property name="spacing">0</property>
+                        <property name="orientation">horizontal</property>
+                        <property name="margin-top">12</property>
+                        <child>
+                          <object class="GtkButton" id="manual">
+                            <property name="visible">True</property>
+                            <property name="can-focus">True</property>
+                            <property name="label" translatable="yes">_Documentation...</property>
+                            <property name="use-underline">True</property>
+                            <property name="relief">GTK_RELIEF_NORMAL</property>
+                            <property name="focus-on-click">True</property>
+                            <signal handler="manual_cb" name="clicked"/>
+                          </object>
+                          <packing>
+                            <property name="padding">0</property>
+                            <property name="expand">False</property>
+                            <property name="fill">False</property>
+                            <property name="pack-type">GTK_PACK_END</property>
+                          </packing>
+                        </child>
+                      </object>
+                      <packing>
+                        <property name="padding">0</property>
+                        <property name="expand">False</property>
+                        <property name="fill">False</property>
+                      </packing>
+                    </child>
+                  </object>
+                </child>
+                <child type="label">
+                  <object class="GtkLabel" id="label7">
+                    <property name="visible">True</property>
+                    <property name="label" translatable="yes"/>
+                    <property name="use-underline">False</property>
+                    <property name="use-markup">False</property>
+                    <property name="justify">GTK_JUSTIFY_LEFT</property>
+                    <property name="wrap">False</property>
+                    <property name="selectable">False</property>
+                    <property name="xalign">0.5</property>
+                    <property name="yalign">0.5</property>
+                    <property name="xpad">0</property>
+                    <property name="ypad">0</property>
+                    <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                    <property name="width-chars">-1</property>
+                    <property name="single-line-mode">False</property>
+                    <property name="angle">0</property>
+                  </object>
+                </child>
+              </object>
+              <packing>
+                <property name="padding">0</property>
+                <property name="expand">False</property>
+                <property name="fill">False</property>
+              </packing>
+            </child>
+          </object>
+          <packing>
+            <property name="padding">0</property>
+            <property name="expand">True</property>
+            <property name="fill">True</property>
+          </packing>
+        </child>
+      </object>
+    </child>
+    <action-widgets>
+      <action-widget response="0">adv_button</action-widget>
+      <action-widget response="0">std_button</action-widget>
+      <action-widget response="0">reset_button</action-widget>
+      <action-widget response="-6">cancel_button</action-widget>
+      <action-widget response="-5">ok_button</action-widget>
+    </action-widgets>
+  </template>
+</interface>
index 7e347074eb42bd3086d10c1fc1bc4400a977d743..64da1eb59b6ec478b7b8b51e087f7d891c791568 100644 (file)
@@ -80,22 +80,6 @@ chase_symlinks (const char *file)
 }
 
 
-static Bool
-i_am_a_nobody (uid_t uid)
-{
-  struct passwd *p;
-
-  p = getpwnam ("nobody");
-  if (! p) p = getpwnam ("noaccess");
-  if (! p) p = getpwnam ("daemon");
-
-  if (! p) /* There is no nobody? */
-    return False;
-
-  return (uid == p->pw_uid);
-}
-
-
 const char *
 init_file_name (void)
 {
@@ -103,32 +87,7 @@ init_file_name (void)
 
   if (!file)
     {
-      uid_t uid = getuid ();
       const char *home = getenv("HOME");
-
-      if (i_am_a_nobody (uid) || !home || !*home)
-       {
-         /* If we're running as nobody, then use root's .xscreensaver file
-            (since ~root/.xscreensaver and ~nobody/.xscreensaver are likely
-            to be different -- without this, xscreensaver-settings would
-            appear to have no effect when the luser is running as root.)
-          */
-          struct passwd *p = getpwuid (uid);
-         if (!p || !p->pw_name || !*p->pw_name)
-           {
-             fprintf (stderr, "%s: couldn't get user info of uid %d\n",
-                      blurb(), getuid ());
-           }
-         else if (!p->pw_dir || !*p->pw_dir)
-           {
-             fprintf (stderr, "%s: couldn't get home directory of \"%s\"\n",
-                      blurb(), (p->pw_name ? p->pw_name : "???"));
-           }
-         else
-           {
-             home = p->pw_dir;
-           }
-       }
       if (home && *home)
        {
          const char *name = ".xscreensaver";
@@ -155,32 +114,29 @@ static const char *
 init_file_tmp_name (void)
 {
   static char *file = 0;
-  if (!file)
-    {
-      const char *name = init_file_name();
-      const char *suffix = ".tmp";
+  const char *name = init_file_name();
+  char *n2 = chase_symlinks (name);
+  if (n2) name = n2;
 
-      char *n2 = chase_symlinks (name);
-      if (n2) name = n2;
+  if (file) free (file);
 
-      if (!name || !*name)
-       file = "";
-      else
-       {
-         file = (char *) malloc(strlen(name) + strlen(suffix) + 2);
-         strcpy(file, name);
-         strcat(file, suffix);
-       }
-
-      if (n2) free (n2);
+  if (!name || !*name)
+    file = 0;
+  else
+    {
+      file = (char *) malloc(strlen(name) + 20);
+      sprintf (file, "%s.%08lX", name, (random() % 0xFFFFFFFF));
     }
 
+  if (n2) free (n2);
+
   if (file && *file)
     return file;
   else
     return 0;
 }
 
+
 static const char * const prefs[] = {
   "timeout",
   "cycle",
@@ -226,6 +182,7 @@ static const char * const prefs[] = {
   "textProgram",
   "textURL",
   "dialogTheme",
+  "settingsGeom",
   "",
   "programs",
   "",
@@ -293,7 +250,7 @@ static void line_handler (int lineno,
 {
   struct parser_closure *c = (struct parser_closure *) closure;
   saver_preferences *p = c->prefs;
-  if (!p->db) abort();
+  if (!p->db) return;  /* Not X11, Wayland */
   handle_entry (&p->db, key, val, c->file, lineno);
 }
 
@@ -506,8 +463,6 @@ write_init_file (Display *dpy,
    */
   char *visual_name;
   char *programs;
-  Bool overlay_stderr_p;
-  char *stderr_font;
   FILE *out;
 
   if (!name) goto END;
@@ -535,9 +490,7 @@ write_init_file (Display *dpy,
 
   /* Give the new .xscreensaver file the same permissions as the old one;
      except ensure that it is readable and writable by owner, and not
-     executable.  Extra hack: if we're running as root, make the file
-     be world-readable (so that the daemon, running as "nobody", will
-     still be able to read it.)
+     executable.
    */
   if (stat(name, &st) == 0)
     {
@@ -545,9 +498,6 @@ write_init_file (Display *dpy,
       mode |= S_IRUSR | S_IWUSR;               /* read/write by user */
       mode &= ~(S_IXUSR | S_IXGRP | S_IXOTH);  /* executable by none */
 
-      if (getuid() == (uid_t) 0)               /* read by group/other */
-        mode |= S_IRGRP | S_IROTH;
-
       if (fchmod (fileno(out), mode) != 0)
        {
          char *buf = (char *) malloc(1024 + strlen(name));
@@ -559,11 +509,9 @@ write_init_file (Display *dpy,
        }
     }
 
-  /* Kludge, since these aren't in the saver_preferences struct... */
+  /* Kludge, since this isn't in the saver_preferences struct... */
   visual_name = get_string_resource (dpy, "visualID", "VisualID");
   programs = 0;
-  overlay_stderr_p = get_boolean_resource (dpy, "overlayStderr", "Boolean");
-  stderr_font = get_string_resource (dpy, "font", "Font");
 
   i = 0;
   {
@@ -646,6 +594,7 @@ write_init_file (Display *dpy,
       CHECK("loadURL")         continue;  /* don't save */
       CHECK("newLoginCommand") continue;  /* don't save */
       CHECK("dialogTheme")      type = pref_str,  s = p->dialog_theme;
+      CHECK("settingsGeom")     type = pref_str,  s = p->settings_geom;
       CHECK("nice")            type = pref_int,  i = p->nice_inferior;
       CHECK("memoryLimit")     continue;  /* don't save */
       CHECK("fade")            type = pref_bool, b = p->fade_p;
@@ -657,8 +606,6 @@ write_init_file (Display *dpy,
       CHECK("ignoreUninstalledPrograms")
                                 type = pref_bool, b = p->ignore_uninstalled_p;
 
-      CHECK("font")            type = pref_str,  s =    stderr_font;
-
       CHECK("dpmsEnabled")     type = pref_bool, b = p->dpms_enabled_p;
       CHECK("dpmsQuickOff")    type = pref_bool, b = p->dpms_quickoff_p;
       CHECK("dpmsStandby")     type = pref_time, t = p->dpms_standby;
@@ -692,7 +639,8 @@ write_init_file (Display *dpy,
 
       CHECK("programs")                type = pref_str,  s =    programs;
       CHECK("pointerHysteresis")type = pref_int,  i = p->pointer_hysteresis;
-      CHECK("overlayStderr")   type = pref_bool, b = overlay_stderr_p;
+      CHECK("font")                 continue;  /* don't save */
+      CHECK("overlayStderr")        continue;  /* don't save */
       CHECK("overlayTextBackground") continue;  /* don't save */
       CHECK("overlayTextForeground") continue;  /* don't save */
       CHECK("bourneShell")          continue;  /* don't save */
@@ -759,7 +707,6 @@ write_init_file (Display *dpy,
   fprintf(out, "\n");
 
   if (visual_name) free(visual_name);
-  if (stderr_font) free(stderr_font);
   if (programs) free(programs);
 
   if (fclose(out) == 0)
@@ -926,6 +873,7 @@ load_init_file (Display *dpy, saver_preferences *p)
   p->new_login_command = get_string_resource(dpy, "newLoginCommand",
                                              "Command");
   p->dialog_theme = get_string_resource(dpy, "dialogTheme", "String");
+  p->settings_geom = get_string_resource(dpy, "settingsGeom", "String");
   p->auth_warning_slack = get_integer_resource(dpy, "authWarningSlack",
                                                "Integer");
 
@@ -1135,7 +1083,7 @@ format_command (const char *cmd, Bool wrap_p)
 {
   int tab = 30;
   int col = tab;
-  char *cmd2 = (char *) calloc (1, 2 * (strlen (cmd) + 1));
+  char *cmd2 = (char *) calloc (1, 2 * (strlen (cmd) + 10));
   const char *in = cmd;
   char *out = cmd2;
   while (*in)
@@ -1172,6 +1120,14 @@ format_command (const char *cmd, Bool wrap_p)
   while (out > cmd2 && isspace (out[-1]))
     *(--out) = 0;
 
+  /* In version 6.05, the defaults were changed from "-root" to "--root".
+     If anything in .xscreensaver still ends with "-root", silently change
+     it, so that the "Reset to Defaults" button is enabled/disabled as
+     appropriate, and doesn't think the command differs from the default.
+   */
+  if (out > cmd2+7 && !strcmp (out-6, " -root"))
+    strcpy (out-6, " --root");  /* malloc had enough slack */
+
   return cmd2;
 }
 
index 6e522d30aff574406f4e8e589566ffd71929bdd8..6385a1f1ba23493e22ca35bd7f38620a2df9d5e8 100644 (file)
@@ -1,5 +1,5 @@
 /* subprocs.c --- choosing, spawning, and killing screenhacks.
- * xscreensaver, Copyright © 1991-2021 Jamie Zawinski <jwz@jwz.org>
+ * xscreensaver, Copyright © 1991-2022 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
@@ -461,6 +461,16 @@ xt_sigterm_handler (XtPointer data, XtSignalId *id)
         fprintf (stderr, "%s: %s: unblanking\n", blurb(), 
                  signal_name (sigterm_received));
 
+       /* We are in the process of shutting down and are about to exit,
+          so don't accidentally re-launch hacks. */
+      si->terminating_p = True;
+
+      if (si->watchdog_id)
+        {
+          XtRemoveTimeOut (si->watchdog_id);
+          si->watchdog_id = 0;
+        }
+
       /* Kill before unblanking, to stop drawing as soon as possible. */
       for (i = 0; i < si->nscreens; i++)
         {
index 8fa7c8e7c5df0d917f356a77a98c91f0248ddd74..6eca284d841f9aba7ad14f0c9aa7d9f7544a8753 100644 (file)
@@ -105,6 +105,7 @@ struct saver_preferences {
   char *load_url_command;      /* How one loads URLs. */
   char *new_login_command;     /* Command for the "New Login" button. */
   char *dialog_theme;          /* Color scheme on the unlock dialog */
+  char *settings_geom;         /* Saved positions of the settings windows */
 
   int auth_warning_slack;      /* Don't warn about login failures if they
                                    all happen within this many seconds of
@@ -139,6 +140,8 @@ struct saver_info {
   Bool demoing_p;              /* Whether we are demoing a single hack
                                   (without UI.) */
   Bool emergency_p;            /* Restarted because of a crash */
+  Bool terminating_p;          /* In the process of shutting down */
+
   XtIntervalId watchdog_id;    /* Timer to implement `prefs.watchdog */
 
   int selection_mode;          /* Set to -1 if the NEXT ClientMessage has just
index c92486aa61b0878e629e1d6649f06d7572d12bec..cd47f4f88fff7cf123402572983570af7fec3a9d 100644 (file)
@@ -959,7 +959,7 @@ watchdog_timer (XtPointer closure, XtIntervalId *id)
 {
   saver_info *si = (saver_info *) closure;
   saver_preferences *p = &si->prefs;
-  Bool running_p, on_p;
+  Bool running_p, on_p, terminating_p;
 
   /* If the DPMS settings on the server have changed, change them back to
      what ~/.xscreensaver says they should be. */
@@ -972,6 +972,7 @@ watchdog_timer (XtPointer closure, XtIntervalId *id)
 
   running_p = any_screenhacks_running_p (si);
   on_p = monitor_powered_on_p (si->dpy);
+  terminating_p = si->terminating_p;
   if (running_p && !on_p)
     {
       int i;
@@ -983,6 +984,11 @@ watchdog_timer (XtPointer closure, XtIntervalId *id)
         kill_screenhack (&si->screens[i]);
       /* Do not clear current_hack here. */
     }
+  else if (terminating_p)
+    {
+       /* If we are in the process of shutting down and are about to exit,
+          don't re-launch anything just because the monitor came back on. */
+    }
   else if (!running_p && on_p)
     {
       /* If the hack number is set but no hack is running, it is because the
index b5cce926b6719e3db98f5700e90fcb07c1a651c2..0a1cc6126d96dbb0fb53b40016864f1d00af3d21 100644 (file)
@@ -167,6 +167,66 @@ oom_assassin_immunity (void)
 #endif /* HAVE_PROC_OOM */
 
 
+#ifndef HAVE_DPMS_EXTENSION
+# define dpms_init (dpy) /** */
+
+#else /* HAVE_DPMS_EXTENSION */
+
+# include <X11/Xproto.h>
+# include <X11/extensions/dpms.h>
+
+static int
+ignore_all_errors_ehandler (Display *dpy, XErrorEvent *error)
+{
+  return 0;
+}
+
+/* When XScreenSaver first launches, power on the monitor and disable DPMS.
+   The DPMS settings will be re-written when 'xscreensaver-gfx' launches for
+   the first time to blank the screen, and will be re-enabled if that is what
+   is configured in ~/.xscreensaver.
+
+   Without this, if the server's default DPMS timeouts are different than, and
+   less than, the .xscreensaver file's 'timeout' and 'dpmsStandby' the monitor
+   will already be powered down when 'xscreensaver-gfx' launches for the first
+   time, and it will never change them, as it can't touch those settings if
+   the monitor is already powered off.
+
+   It would be better for us to call sync_server_dpms_settings() here, but
+   that requires a full 'saver_preferences' struct.  Once 'xscreensaver-gfx'
+   is launched, it will correct things.
+
+   The only way this behaves oddly is if the user has set their 'dpmsStandby'
+   to less than their 'timeout', but that would be weird, right?  That
+   probably shouldn't even be permitted (though currently it is).
+
+   This is in 'xscreensaver-auth' because that's run at startup with either
+   --splash or --init, long before 'xscreensaver-gfx' is run for the first
+   time; and putting this code into 'xscreensaver' would violate the principle
+   of linking only the bare minimum into the daemon itself.
+ */
+static void
+dpms_init (Display *dpy)
+{
+  int ev, err;
+  XErrorHandler old_handler;
+  XSync (dpy, False);
+  old_handler = XSetErrorHandler (ignore_all_errors_ehandler);
+  XSync (dpy, False);
+
+  if (DPMSQueryExtension (dpy, &ev, &err))
+    {
+      DPMSForceLevel (dpy, DPMSModeOn);
+      DPMSDisable (dpy);
+    }
+  XSetScreenSaver (dpy, 0, 0, 0, 0);
+
+  XSync (dpy, False);
+  XSetErrorHandler (old_handler);
+}
+#endif /* HAVE_DPMS_EXTENSION */
+
+
 int
 main (int argc, char **argv)
 {
@@ -273,12 +333,9 @@ main (int argc, char **argv)
   if (!splash_p && !init_p)
     lock_priv_init ();
 
-  if (!splash_p && init_p)
-    exit (0);
-
   disavow_privileges ();
 
-  if (!splash_p)
+  if (!splash_p && !init_p)
     lock_init ();
 
   /* Setting the locale is necessary for XLookupString to return multi-byte
@@ -316,7 +373,14 @@ main (int argc, char **argv)
   if (xsync_p) XSynchronize (dpy, True);
   init_xscreensaver_atoms (dpy);
 
-  if (splash_p)
+  if (splash_p == 1 || init_p)
+    dpms_init (dpy);
+
+  if (!splash_p && init_p)
+    {
+      exit (0);
+    }
+  else if (splash_p)
     {
       /* Settings button is disabled with --splash --splash */
       xscreensaver_splash (root_widget, splash_p > 1);
index 16556026cb77917c07ee3732abe8019e983b7957..8be0f7cb4531a088bd86c1d8a48b353be04b96c8 100644 (file)
@@ -3,7 +3,7 @@
 xscreensaver - extensible screen saver and screen locking framework
 .SH SYNOPSIS
 .B xscreensaver-auth
-[\-display \fIhost:display.screen\fP]
+[\-\-display \fIhost:display.screen\fP]
 .SH DESCRIPTION
 The
 .BR xscreensaver (1)
index a84cbabe5b1a9a8bf50b0f192a9ec5c969dc2259..c0301d4f16a7d87ff648d94d00a3511a9cc8d85b 100644 (file)
@@ -60,14 +60,14 @@ graphics demo and run a new one (chosen randomly.)
 This is like either \fI\-\-activate\fP or \fI\-\-cycle\fP, depending on which
 is more appropriate, except that the graphics hack that will be run is the
 next one in the list, instead of a randomly-chosen one.  In other words,
-repeatedly executing -next will cause the xscreensaver process to invoke each
-graphics demo sequentially.  (Though using the \fI\-\-settings\fP option is
-probably an easier way to accomplish that.)
+repeatedly executing \-\-next will cause the xscreensaver process to invoke
+each graphics demo sequentially.  (Though using the \fI\-\-settings\fP option
+is probably an easier way to accomplish that.)
 .TP 8
 .B \-\-prev
 This is like \fI\-\-next\fP, but cycles in the other direction.
 .TP 8
-.B \-\-select \fInumber\fP
+.B \-\-select\fP \fInumber\fP
 Like \fI\-\-activate\fP, but runs the \fIN\fPth element in the list of hacks.
 By knowing what is in the \fIprograms\fP list, and in what order, you can use
 this to activate the screensaver with a particular graphics demo.  (The first
@@ -94,10 +94,8 @@ to lock things down quickly.
 Causes the xscreensaver process to exit gracefully.  
 This does nothing if the display is currently locked.
 .B Warning:
-never use \fIkill -9\fP with \fIxscreensaver\fP while the screensaver is
-active.  If you are using a virtual root window manager, that can leave
-things in an inconsistent state, and you may need to restart your window
-manager to repair the damage.
+never use \fIkill -9\fP with \fIxscreensaver\fP.  That can leave things in an
+inconsistent state, and you may need to log out to repair the damage.
 .TP 8
 .B \-\-restart
 Causes the screensaver process to exit and then restart with the same command
@@ -217,7 +215,7 @@ and related tools can always be found at https://www.jwz.org/xscreensaver/
 .BR xscreensaver\-settings (1),
 .BR xset (1)
 .SH COPYRIGHT
-Copyright \(co 1992-2021 by Jamie Zawinski.
+Copyright \(co 1992-2022 by Jamie Zawinski.
 Permission to use, copy, modify, distribute, and sell this software
 and its documentation for any purpose is hereby granted without fee,
 provided that the above copyright notice appear in all copies and that
@@ -226,6 +224,6 @@ supporting documentation.  No representations are made about the
 suitability of this software for any purpose.  It is provided "as is"
 without express or implied warranty.
 .SH AUTHOR
-Jamie Zawinski <jwz@jwz.org>, 13-aug-1992.
+Jamie Zawinski <jwz@jwz.org>.
 
 Please let me know if you find any bugs or make any improvements.
index 7b209ac33e68eb9c5bb08f1b09ef1f863a5a40bc..52e227125039678a80640bd3aa376e224bec2c33 100644 (file)
@@ -3,7 +3,7 @@
 xscreensaver - extensible screen saver and screen locking framework
 .SH SYNOPSIS
 .B xscreensaver-gfx
-[\-display \fIhost:display.screen\fP]
+[\-\-display \fIhost:display.screen\fP]
 .SH DESCRIPTION
 The
 .BR xscreensaver (1)
index 2ed70af9120d909127dfc5e0da60ab4165a1e75f..29de82880ae361ebac950b67dace356a9748c54c 100644 (file)
@@ -3,9 +3,9 @@
 xscreensaver-settings - configure and control the xscreensaver daemon
 .SH SYNOPSIS
 .B xscreensaver\-settings
-[\-display \fIhost:display.screen\fP]
-[\-prefs]
-[\-debug]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-prefs]
+[\-\-debug]
 .SH DESCRIPTION
 The \fIxscreensaver\-settings\fP program is a graphical front-end for 
 setting the parameters used by the
@@ -23,20 +23,20 @@ All of these commands are on either the \fBFile\fP or \fBHelp\fP menus:
 Activates the background \fIxscreensaver\fP daemon, which will then run
 a demo at random.  This is the same as running
 .BR xscreensaver\-command (1)
-with the \fI\-activate\fP option.
+with the \fI\-\-activate\fP option.
 .TP 4
 .B Lock Screen Now
 Just like \fBBlank Screen Now\fP, except the screen will be locked as 
 well (even if it is not configured to lock all the time.)  This is the
 same as running
 .BR xscreensaver\-command (1)
-with the \fI\-lock\fP option.
+with the \fI\-\-lock\fP option.
 .TP 4
 .B Kill Daemon
 If the xscreensaver daemon is running on this screen, kill it.
 This is the same as running
 .BR xscreensaver\-command (1)
-with the \fI\-exit\fP option.
+with the \fI\-\-exit\fP option.
 .TP 4
 .B Restart Daemon
 If the xscreensaver daemon is running on this screen, kill it.
@@ -293,16 +293,16 @@ file, or the X resource database.
 .I xscreensaver\-settings
 accepts the following command line options.
 .TP 8
-.B \-display \fIhost:display.screen\fP
+.B \-\-display \fIhost:display.screen\fP
 The X display to use.  The \fIxscreensaver\-settings\fP program will open its
 window on that display, and also control the \fIxscreensaver\fP daemon that
 is managing that same display.
 .TP 8
-.B \-prefs
+.B \-\-prefs
 Start up with the \fBAdvanced\fP tab selected by default
 instead of the \fBDisplay Modes\fP tab.
 .TP 8
-.B \-debug
+.B \-\-debug
 Causes lots of diagnostics to be printed on stderr.
 .PP
 The \fIxscreensaver\fP and \fIxscreensaver\-settings\fP processes must run
@@ -343,7 +343,7 @@ and a FAQ can always be found at https://www.jwz.org/xscreensaver/
 .BR xscreensaver\-getimage\-video (MANSUFFIX),
 .BR xscreensaver\-text (MANSUFFIX)
 .SH COPYRIGHT
-Copyright \(co 1992-2021 by Jamie Zawinski.
+Copyright \(co 1992-2022 by Jamie Zawinski.
 Permission to use, copy, modify, distribute, and sell this software
 and its documentation for any purpose is hereby granted without fee,
 provided that the above copyright notice appear in all copies and that
@@ -352,6 +352,6 @@ supporting documentation.  No representations are made about the
 suitability of this software for any purpose.  It is provided "as is"
 without express or implied warranty.
 .SH AUTHOR
-Jamie Zawinski <jwz@jwz.org>, 13-aug-1992.
+Jamie Zawinski <jwz@jwz.org>.
 
 Please let me know if you find any bugs or make any improvements.
index 355fcf47a4865c804d7a0f7f57e5d32505f864e5..9e8d611948f571fce3269b548b70a15518920fd6 100644 (file)
  *
  *****************************************************************************
  *
+ * MPV 0.33+, I think:
+ *
+ *     The developer had a hissy fit and removed "xdg-screensaver" support:
+ *
+ *     https://github.com/mpv-player/mpv/commit/c498b2846af0ee8835b9144c9f6893568a4e49c6
+ *
+ *     So now I guess you're back to figuring out how to add a "heartbeat"
+ *     command to have MPV periodically call "xscreensaver-command -reset".
+ *     Good luck with that.  Maybe you should just use VLC instead.
+ *
+ *
+ *****************************************************************************
+ *
  * VLC 3.0.16-1, Raspbian 11.1 & Debian 11.3:
  *
  *     Sends "Inhibit" to the first of these targets that exists at launch:
index ba08bec9d209ab7c91bbf17409b5749d0ef07143..1904c8ce8777c534e31359fb50ba445a80556746 100644 (file)
@@ -64,7 +64,9 @@ only inhibits for the first few seconds.
 .PP
 Firefox does not have either of these problems.
 .SS MPLAYER (2:1.4)
-Makes no attempt to inhibit the screen saver.  Use VLC or MPV instead.
+Makes no attempt to inhibit the screen saver.  Use VLC instead.
+.SS MPV (0.33)
+Makes no attempt to inhibit the screen saver.  Use VLC instead.
 .SS VARIOUS
 Most programs fail to inhibit screen blanking if they crash or are killed
 while playing.  We try to detect when this has happened and auto-uninhibit,
index 01834e9470585d40d782298d0d42acb5d3150a92..983a10dd8eb964bc3ba0aa86bcb2fc92b098dda7 100644 (file)
@@ -2364,7 +2364,8 @@ main (int argc, char **argv)
         {
           logfile = argv[++i];
           if (!logfile) goto HELP;
-          verbose_p = cmdline_verbose_p = cmdline_verbose_val = True;
+          if (! verbose_p)  /* might already be -vv */
+            verbose_p = cmdline_verbose_p = cmdline_verbose_val = True;
         }
       else if (!strcmp (argv[i], "-d") ||
                !strcmp (argv[i], "-dpy") ||
index de2aac64c907d5f00c60149b3a565c18b5c1126a..8936482254c81d1c259e97a4f9595acaa12c9892 100644 (file)
@@ -58,20 +58,12 @@ The
 .BR xscreensaver\-settings (1)
 program is where you configure if and when your monitor should power off.
 It saves the settings in your \fI~/.xscreensaver\fP file.
+Do not use
+.BR xset (1)
+to manually change the power management settings, that won't work.
 
-If the power management section is grayed out in the
-.BR xscreensaver\-settings (1)
-window,  then that means that your X server does not support
-the XDPMS extension, and so control over the monitor's power state
-is not available.
-
-When the monitor is powered down, the display hacks are stopped
+When the monitor is powered down, the display hacks will stop running
 (though it may take a minute or two for XScreenSaver to notice).
-
-Note: if you use
-.BR xset (1)
-to change the power management settings, XScreenSaver will override those
-changes.  Whatever is in the \fI~/.xscreensaver\fP file takes precedence.
 .SH LAPTOP LIDS
 If your system uses
 .BR systemd (1)
@@ -183,7 +175,7 @@ now:
 .br
 "\fIHardware / Power Management / Suspend session\fP"
 .br
-"\fIHardware / Power Management / Laptop lid closed => Do Nothing\fP"
+"\fIHardware / Power Management / Laptop lid closed" = Do Nothing\fP
 
 If there are multiple tabs, you may to change these settings on all three
 of them: "On AC power", "Battery" and "Low Battery".
@@ -267,6 +259,14 @@ these lines:
        Comment: XScreenSaver
 .sp
 .fi
+.SS LAPTOP LIDS WITHOUT SYSTEMD
+BSD systems or other systems without
+.BR systemd (1)
+or
+.BR elogind (8)
+might have luck by adding "\fIxscreensaver\-command \-\-suspend\fP" to
+some appropriate spot in \fI/etc/acpi/events/anything\fP or in
+\fI/etc/acpi/handler.sh\fP, if those files exist.
 .SS LAUNCHING XSCREENSAVER FROM GDM
 You can run \fIxscreensaver\fP from your 
 .BR gdm (1)
@@ -309,14 +309,6 @@ and
 
 There might be a way to accomplish this with other display managers.
 It's a mystery!
-.SS LAPTOP LIDS WITHOUT SYSTEMD
-BSD systems or other systems without
-.BR systemd (1)
-or
-.BR elogind (8)
-might have luck by adding "\fIxscreensaver\-command \-\-suspend\fP" to
-some appropriate spot in \fI/etc/acpi/events/anything\fP or in
-\fI/etc/acpi/handler.sh\fP, if those files exist.
 .SH THE WAYLAND PROBLEM
 Wayland is a completely different window system that is intended to replace
 X11.  After 14+ years of trying, some Linux distros have finally begun
@@ -435,6 +427,16 @@ You can disable the OOM-killer entirely with:
        echo vm.overcommit_memory = 2 >> /etc/sysctl.conf
 .sp
 .fi
+In addition to the kernel's OOM-killer, 
+.BR systemd (1)
+has its own.  The included \fIxscreensaver.service\fP file attempts to
+evade it, but you may want to just turn it off anyway:
+.nf
+.sp
+       sudo systemctl disable --now systemd-oomd
+       sudo systemctl mask systemd-oomd
+.sp
+.fi
 .SS X SERVER ACCESS IS GAME OVER
 X11's security model is all-or-nothing.  If a program can connect to your X
 server at all, either locally or over the network, it can log all of your
diff --git a/driver/xscreensaver.ui b/driver/xscreensaver.ui
deleted file mode 100644 (file)
index c04bd75..0000000
+++ /dev/null
@@ -1,3060 +0,0 @@
-<?xml version="1.0"?>
-<!--*- mode: xml -*-->
-<interface>
-  <object class="GtkAdjustment" id="adjustment1">
-    <property name="upper">720</property>
-    <property name="lower">1</property>
-    <property name="page_increment">15</property>
-    <property name="step_increment">1</property>
-    <property name="page_size">0</property>
-    <property name="value">1</property>
-  </object>
-  <object class="GtkAdjustment" id="adjustment2">
-    <property name="upper">720</property>
-    <property name="lower">0</property>
-    <property name="page_increment">15</property>
-    <property name="step_increment">1</property>
-    <property name="page_size">0</property>
-    <property name="value">0</property>
-  </object>
-  <object class="GtkAdjustment" id="adjustment3">
-    <property name="upper">720</property>
-    <property name="lower">0</property>
-    <property name="page_increment">15</property>
-    <property name="step_increment">1</property>
-    <property name="page_size">0</property>
-    <property name="value">0</property>
-  </object>
-  <object class="GtkAdjustment" id="adjustment4">
-    <property name="upper">1440</property>
-    <property name="lower">0</property>
-    <property name="page_increment">15</property>
-    <property name="step_increment">1</property>
-    <property name="page_size">0</property>
-    <property name="value">0</property>
-  </object>
-  <object class="GtkAdjustment" id="adjustment5">
-    <property name="upper">1440</property>
-    <property name="lower">0</property>
-    <property name="page_increment">15</property>
-    <property name="step_increment">1</property>
-    <property name="page_size">0</property>
-    <property name="value">0</property>
-  </object>
-  <object class="GtkAdjustment" id="adjustment6">
-    <property name="upper">1440</property>
-    <property name="lower">0</property>
-    <property name="page_increment">15</property>
-    <property name="step_increment">1</property>
-    <property name="page_size">0</property>
-    <property name="value">0</property>
-  </object>
-  <object class="GtkAdjustment" id="adjustment7">
-    <property name="upper">10</property>
-    <property name="lower">0</property>
-    <property name="page_increment">1</property>
-    <property name="step_increment">1</property>
-    <property name="page_size">0</property>
-    <property name="value">0</property>
-  </object>
-  <object class="GtkListStore" id="mode_menu_model">
-    <columns>
-      <column type="gchararray"/>
-    </columns>
-    <data>
-      <row>
-        <col id="0" translatable="yes">Disable Screen Saver</col>
-      </row>
-      <row>
-        <col id="0" translatable="yes">Blank Screen Only</col>
-      </row>
-      <row>
-        <col id="0" translatable="yes">Only One Screen Saver</col>
-      </row>
-      <row>
-        <col id="0" translatable="yes">Random Screen Saver</col>
-      </row>
-      <row>
-        <col id="0" translatable="yes">Same Random Savers</col>
-      </row>
-    </data>
-  </object>
-
-  <object class="GtkListStore" id="theme_menu_model">
-    <columns>
-      <column type="gchararray"/>
-    </columns>
-    <data>
-      <row>
-        <col id="0" translatable="yes">Default</col>
-      </row>
-    </data>
-  </object>
-
-
-
-
-
-  <object class="GtkListStore" id="visual_combo_model">
-    <columns>
-      <column type="gchararray"/>
-    </columns>
-    <data>
-      <row>
-        <col id="0" translatable="yes">Any</col>
-      </row>
-      <row>
-        <col id="0" translatable="yes">Best</col>
-      </row>
-      <row>
-        <col id="0" translatable="yes">Default</col>
-      </row>
-      <row>
-        <col id="0" translatable="yes">Default-N</col>
-      </row>
-      <row>
-        <col id="0" translatable="yes">GL</col>
-      </row>
-      <row>
-        <col id="0" translatable="yes">TrueColor</col>
-      </row>
-      <row>
-        <col id="0" translatable="yes">PseudoColor</col>
-      </row>
-      <row>
-        <col id="0" translatable="yes">StaticGray</col>
-      </row>
-      <row>
-        <col id="0" translatable="yes">GrayScale</col>
-      </row>
-      <row>
-        <col id="0" translatable="yes">DirectColor</col>
-      </row>
-      <row>
-        <col id="0" translatable="yes">Color</col>
-      </row>
-      <row>
-        <col id="0" translatable="yes">Gray</col>
-      </row>
-      <row>
-        <col id="0" translatable="yes">Mono</col>
-      </row>
-    </data>
-  </object>
-  <object class="GtkUIManager" id="uimanager1">
-    <child>
-      <object class="GtkActionGroup" id="actiongroup1">
-        <child>
-          <object class="GtkAction" id="file">
-            <property name="name">file</property>
-            <property name="label" translatable="yes">_File</property>
-            <signal handler="file_menu_cb" last_modification_time="Sun, 06 Mar 2005 21:41:13 GMT" name="activate"/>
-          </object>
-        </child>
-        <child>
-          <object class="GtkAction" id="activate_action">
-            <property name="name">activate_action</property>
-            <property name="label" translatable="yes">_Blank Screen Now</property>
-            <signal handler="activate_menu_cb" name="activate"/>
-          </object>
-        </child>
-        <child>
-          <object class="GtkAction" id="lock_action">
-            <property name="name">lock_action</property>
-            <property name="label" translatable="yes">_Lock Screen Now</property>
-            <signal handler="lock_menu_cb" name="activate"/>
-          </object>
-        </child>
-        <child>
-          <object class="GtkAction" id="kill_action">
-            <property name="name">kill_action</property>
-            <property name="label" translatable="yes">_Kill Daemon</property>
-            <signal handler="kill_menu_cb" name="activate"/>
-          </object>
-        </child>
-        <child>
-          <object class="GtkAction" id="restart_action">
-            <property name="name">restart_action</property>
-            <property name="label" translatable="yes">_Restart Daemon</property>
-            <signal handler="restart_menu_cb" name="activate"/>
-          </object>
-        </child>
-        <child>
-          <object class="GtkAction" id="exit_action">
-            <property name="name">exit_action</property>
-            <property name="label" translatable="yes">_Quit</property>
-            <signal handler="exit_menu_cb" name="activate"/>
-          </object>
-        </child>
-        <child>
-          <object class="GtkAction" id="help">
-            <property name="name">help</property>
-            <property name="label" translatable="yes">_Help</property>
-          </object>
-        </child>
-        <child>
-          <object class="GtkAction" id="about_action">
-            <property name="name">about_action</property>
-            <property name="label" translatable="yes">_About...</property>
-            <signal handler="about_menu_cb" name="activate"/>
-          </object>
-        </child>
-        <child>
-          <object class="GtkAction" id="doc_action">
-            <property name="name">doc_action</property>
-            <property name="label" translatable="yes">_Documentation...</property>
-            <signal handler="doc_menu_cb" name="activate"/>
-          </object>
-        </child>
-      </object>
-    </child>
-    <ui>
-      <menubar name="menubar">
-        <menu action="file">
-          <menuitem name="activate_menu" action="activate_action"/>
-          <menuitem name="lock_menu" action="lock_action"/>
-          <menuitem name="kill_menu" action="kill_action"/>
-          <menuitem name="restart_menu" action="restart_action"/>
-          <separator/>
-          <menuitem name="exit_menu" action="exit_action"/>
-        </menu>
-        <menu action="help">
-          <menuitem name="about_menu" action="about_action"/>
-          <menuitem name="doc_menu" action="doc_action"/>
-        </menu>
-      </menubar>
-    </ui>
-  </object>
-  <object class="GtkWindow" id="xscreensaver_demo">
-    <property name="title" translatable="yes">XScreenSaver</property>
-    <property name="type">GTK_WINDOW_TOPLEVEL</property>
-    <property name="window_position">GTK_WIN_POS_NONE</property>
-    <property name="modal">False</property>
-    <property name="resizable">True</property>
-    <property name="destroy_with_parent">False</property>
-    <property name="decorated">True</property>
-    <property name="skip_taskbar_hint">False</property>
-    <property name="skip_pager_hint">False</property>
-    <property name="type_hint">GDK_WINDOW_TYPE_HINT_NORMAL</property>
-    <property name="gravity">GDK_GRAVITY_NORTH_WEST</property>
-    <property name="focus_on_map">True</property>
-    <property name="urgency_hint">False</property>
-    <child>
-      <object class="GtkVBox" id="outer_vbox">
-        <property name="visible">True</property>
-        <property name="homogeneous">False</property>
-        <property name="spacing">5</property>
-        <child>
-          <object class="GtkMenuBar" constructor="uimanager1" id="menubar">
-            <property name="visible">True</property>
-            <property name="pack_direction">GTK_PACK_DIRECTION_LTR</property>
-            <property name="child_pack_direction">GTK_PACK_DIRECTION_LTR</property>
-          </object>
-          <packing>
-            <property name="padding">0</property>
-            <property name="expand">False</property>
-            <property name="fill">False</property>
-          </packing>
-        </child>
-        <child>
-          <object class="GtkHBox" id="spacer_hbox">
-            <property name="border_width">8</property>
-            <property name="visible">True</property>
-            <property name="homogeneous">False</property>
-            <property name="spacing">0</property>
-            <child>
-              <object class="GtkNotebook" id="notebook">
-                <property name="visible">True</property>
-                <property name="can_focus">True</property>
-                <property name="show_tabs">True</property>
-                <property name="show_border">True</property>
-                <property name="tab_pos">GTK_POS_TOP</property>
-                <property name="scrollable">False</property>
-                <property name="enable_popup">False</property>
-                <signal handler="switch_page_cb" name="switch_page"/>
-                <child>
-                  <object class="GtkTable" id="demos_table">
-                    <property name="border_width">10</property>
-                    <property name="visible">True</property>
-                    <property name="n_rows">2</property>
-                    <property name="n_columns">2</property>
-                    <property name="homogeneous">False</property>
-                    <property name="row_spacing">0</property>
-                    <property name="column_spacing">0</property>
-                    <child>
-                      <object class="GtkTable" id="blanking_table">
-                        <property name="visible">True</property>
-                        <property name="n_rows">3</property>
-                        <property name="n_columns">4</property>
-                        <property name="homogeneous">False</property>
-                        <property name="row_spacing">2</property>
-                        <property name="column_spacing">0</property>
-                        <child>
-                          <object class="GtkLabel" id="cycle_label">
-                            <property name="visible">True</property>
-                            <property name="label" translatable="yes">_Cycle After</property>
-                            <property name="use_underline">True</property>
-                            <property name="use_markup">False</property>
-                            <property name="justify">GTK_JUSTIFY_RIGHT</property>
-                            <property name="wrap">False</property>
-                            <property name="selectable">False</property>
-                            <property name="xalign">1</property>
-                            <property name="yalign">0.5</property>
-                            <property name="xpad">8</property>
-                            <property name="ypad">0</property>
-                            <property name="mnemonic_widget">cycle_spinbutton</property>
-                            <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
-                            <property name="width_chars">-1</property>
-                            <property name="single_line_mode">False</property>
-                            <property name="angle">0</property>
-                            <accessibility>
-                              <relation target="cycle_spinbutton" type="label-for"/>
-                              <relation target="cycle_spinbutton" type="flows-to"/>
-                            </accessibility>
-                          </object>
-                          <packing>
-                            <property name="left_attach">1</property>
-                            <property name="right_attach">2</property>
-                            <property name="top_attach">1</property>
-                            <property name="bottom_attach">2</property>
-                            <property name="x_options">fill</property>
-                            <property name="y_options"/>
-                          </packing>
-                        </child>
-                        <child>
-                          <object class="GtkEventBox" id="lock_button_eventbox">
-                            <property name="visible">True</property>
-                            <property name="tooltip-text" translatable="yes">Whether a password should be required to un-blank the screen.</property>
-                            <property name="visible_window">False</property>
-                            <property name="above_child">False</property>
-                            <child>
-                              <object class="GtkCheckButton" id="lock_button">
-                                <property name="visible">True</property>
-                                <property name="can_focus">True</property>
-                                <property name="label" translatable="yes">_Lock Screen After  </property>
-                                <property name="use_underline">True</property>
-                                <property name="relief">GTK_RELIEF_NORMAL</property>
-                                <property name="focus_on_click">True</property>
-                                <property name="active">False</property>
-                                <property name="inconsistent">False</property>
-                                <property name="draw_indicator">True</property>
-                                <accessibility>
-                                  <relation target="lock_spinbutton" type="controller-for"/>
-                                  <relation target="lock_spinbutton" type="label-for"/>
-                                  <relation target="lock_spinbutton" type="flows-to"/>
-                                </accessibility>
-                                <signal handler="pref_changed_cb" name="toggled"/>
-                                <child internal-child="accessible">
-                                  <object class="AtkObject" id="a11y-lock_button1">
-                                    <property name="AtkObject::accessible_name" translatable="yes">Lock Screen</property>
-                                  </object>
-                                </child>
-                              </object>
-                            </child>
-                          </object>
-                          <packing>
-                            <property name="left_attach">0</property>
-                            <property name="right_attach">2</property>
-                            <property name="top_attach">2</property>
-                            <property name="bottom_attach">3</property>
-                            <property name="x_options">fill</property>
-                            <property name="y_options"/>
-                          </packing>
-                        </child>
-                        <child>
-                          <object class="GtkSpinButton" id="timeout_spinbutton">
-                            <property name="visible">True</property>
-                            <property name="tooltip-text" translatable="yes">How long before the screen saver activates.</property>
-                            <property name="can_focus">True</property>
-                            <property name="climb_rate">15</property>
-                            <property name="digits">0</property>
-                            <property name="numeric">True</property>
-                            <property name="update_policy">GTK_UPDATE_ALWAYS</property>
-                            <property name="snap_to_ticks">True</property>
-                            <property name="wrap">False</property>
-                            <property name="adjustment">adjustment1</property>
-                            <accessibility>
-                              <relation target="timeout_label" type="labelled-by"/>
-                              <relation target="timeout_mlabel" type="labelled-by"/>
-                              <relation target="timeout_label" type="flows-from"/>
-                              <relation target="timeout_mlabel" type="flows-to"/>
-                            </accessibility>
-                            <signal handler="pref_changed_cb" name="activate"/>
-                            <signal handler="pref_changed_event_cb" name="focus_out_event"/>
-                            <signal handler="pref_changed_cb" name="value_changed"/>
-                          </object>
-                          <packing>
-                            <property name="left_attach">2</property>
-                            <property name="right_attach">3</property>
-                            <property name="top_attach">0</property>
-                            <property name="bottom_attach">1</property>
-                            <property name="x_options">fill</property>
-                            <property name="y_options"/>
-                          </packing>
-                        </child>
-                        <child>
-                          <object class="GtkSpinButton" id="lock_spinbutton">
-                            <property name="visible">True</property>
-                            <property name="tooltip-text" translatable="yes">How long after the screen blanks until a password will be required.</property>
-                            <property name="can_focus">True</property>
-                            <property name="climb_rate">15</property>
-                            <property name="digits">0</property>
-                            <property name="numeric">True</property>
-                            <property name="update_policy">GTK_UPDATE_ALWAYS</property>
-                            <property name="snap_to_ticks">True</property>
-                            <property name="wrap">False</property>
-                            <property name="adjustment">adjustment2</property>
-                            <accessibility>
-                              <relation target="lock_button" type="controlled-by"/>
-                              <relation target="lock_button" type="labelled-by"/>
-                              <relation target="lock_mlabel" type="labelled-by"/>
-                              <relation target="lock_button" type="flows-from"/>
-                              <relation target="lock_mlabel" type="flows-to"/>
-                            </accessibility>
-                            <signal handler="pref_changed_cb" name="activate"/>
-                            <signal handler="pref_changed_event_cb" name="focus_out_event"/>
-                            <signal handler="pref_changed_cb" name="value_changed"/>
-                            <child internal-child="accessible">
-                              <object class="AtkObject" id="a11y-lock_spinbutton1">
-                                <property name="AtkObject::accessible_name" translatable="yes">Lock Screen After</property>
-                              </object>
-                            </child>
-                          </object>
-                          <packing>
-                            <property name="left_attach">2</property>
-                            <property name="right_attach">3</property>
-                            <property name="top_attach">2</property>
-                            <property name="bottom_attach">3</property>
-                            <property name="y_padding">10</property>
-                            <property name="x_options">fill</property>
-                            <property name="y_options"/>
-                          </packing>
-                        </child>
-                        <child>
-                          <object class="GtkSpinButton" id="cycle_spinbutton">
-                            <property name="visible">True</property>
-                            <property name="tooltip-text" translatable="yes">How long each display mode should run before choosing a new one (in Random mode.)</property>
-                            <property name="can_focus">True</property>
-                            <property name="climb_rate">15</property>
-                            <property name="digits">0</property>
-                            <property name="numeric">True</property>
-                            <property name="update_policy">GTK_UPDATE_ALWAYS</property>
-                            <property name="snap_to_ticks">True</property>
-                            <property name="wrap">False</property>
-                            <property name="adjustment">adjustment3</property>
-                            <accessibility>
-                              <relation target="cycle_label" type="labelled-by"/>
-                              <relation target="cycle_mlabel" type="labelled-by"/>
-                              <relation target="cycle_label" type="flows-from"/>
-                              <relation target="cycle_mlabel" type="flows-to"/>
-                            </accessibility>
-                            <signal handler="pref_changed_cb" name="activate"/>
-                            <signal handler="pref_changed_event_cb" name="focus_out_event"/>
-                            <signal handler="pref_changed_cb" name="value_changed"/>
-                          </object>
-                          <packing>
-                            <property name="left_attach">2</property>
-                            <property name="right_attach">3</property>
-                            <property name="top_attach">1</property>
-                            <property name="bottom_attach">2</property>
-                            <property name="x_options">fill</property>
-                            <property name="y_options"/>
-                          </packing>
-                        </child>
-                        <child>
-                          <object class="GtkLabel" id="lock_mlabel">
-                            <property name="visible">True</property>
-                            <property name="label" translatable="yes">minutes</property>
-                            <property name="use_underline">False</property>
-                            <property name="use_markup">False</property>
-                            <property name="justify">GTK_JUSTIFY_LEFT</property>
-                            <property name="wrap">False</property>
-                            <property name="selectable">False</property>
-                            <property name="xalign">0</property>
-                            <property name="yalign">0.5</property>
-                            <property name="xpad">8</property>
-                            <property name="ypad">0</property>
-                            <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
-                            <property name="width_chars">-1</property>
-                            <property name="single_line_mode">False</property>
-                            <property name="angle">0</property>
-                            <accessibility>
-                              <relation target="lock_spinbutton" type="label-for"/>
-                              <relation target="lock_spinbutton" type="flows-to"/>
-                            </accessibility>
-                          </object>
-                          <packing>
-                            <property name="left_attach">3</property>
-                            <property name="right_attach">4</property>
-                            <property name="top_attach">2</property>
-                            <property name="bottom_attach">3</property>
-                            <property name="y_options"/>
-                          </packing>
-                        </child>
-                        <child>
-                          <object class="GtkLabel" id="cycle_mlabel">
-                            <property name="visible">True</property>
-                            <property name="label" translatable="yes">minutes</property>
-                            <property name="use_underline">False</property>
-                            <property name="use_markup">False</property>
-                            <property name="justify">GTK_JUSTIFY_LEFT</property>
-                            <property name="wrap">False</property>
-                            <property name="selectable">False</property>
-                            <property name="xalign">0</property>
-                            <property name="yalign">0.5</property>
-                            <property name="xpad">8</property>
-                            <property name="ypad">0</property>
-                            <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
-                            <property name="width_chars">-1</property>
-                            <property name="single_line_mode">False</property>
-                            <property name="angle">0</property>
-                            <accessibility>
-                              <relation target="cycle_spinbutton" type="label-for"/>
-                              <relation target="cycle_spinbutton" type="flows-from"/>
-                            </accessibility>
-                          </object>
-                          <packing>
-                            <property name="left_attach">3</property>
-                            <property name="right_attach">4</property>
-                            <property name="top_attach">1</property>
-                            <property name="bottom_attach">2</property>
-                            <property name="y_options"/>
-                          </packing>
-                        </child>
-                        <child>
-                          <object class="GtkLabel" id="timeout_label">
-                            <property name="visible">True</property>
-                            <property name="label" translatable="yes">_Blank After</property>
-                            <property name="use_underline">True</property>
-                            <property name="use_markup">False</property>
-                            <property name="justify">GTK_JUSTIFY_RIGHT</property>
-                            <property name="wrap">False</property>
-                            <property name="selectable">False</property>
-                            <property name="xalign">1</property>
-                            <property name="yalign">0.5</property>
-                            <property name="xpad">8</property>
-                            <property name="ypad">0</property>
-                            <property name="mnemonic_widget">timeout_spinbutton</property>
-                            <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
-                            <property name="width_chars">-1</property>
-                            <property name="single_line_mode">False</property>
-                            <property name="angle">0</property>
-                            <accessibility>
-                              <relation target="timeout_spinbutton" type="label-for"/>
-                              <relation target="timeout_spinbutton" type="flows-to"/>
-                            </accessibility>
-                          </object>
-                          <packing>
-                            <property name="left_attach">1</property>
-                            <property name="right_attach">2</property>
-                            <property name="top_attach">0</property>
-                            <property name="bottom_attach">1</property>
-                            <property name="x_options">fill</property>
-                            <property name="y_options"/>
-                          </packing>
-                        </child>
-                        <child>
-                          <object class="GtkLabel" id="timeout_mlabel">
-                            <property name="visible">True</property>
-                            <property name="label" translatable="yes">minutes</property>
-                            <property name="use_underline">False</property>
-                            <property name="use_markup">False</property>
-                            <property name="justify">GTK_JUSTIFY_LEFT</property>
-                            <property name="wrap">False</property>
-                            <property name="selectable">False</property>
-                            <property name="xalign">0</property>
-                            <property name="yalign">0.5</property>
-                            <property name="xpad">8</property>
-                            <property name="ypad">0</property>
-                            <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
-                            <property name="width_chars">-1</property>
-                            <property name="single_line_mode">False</property>
-                            <property name="angle">0</property>
-                            <accessibility>
-                              <relation target="timeout_spinbutton" type="label-for"/>
-                              <relation target="timeout_spinbutton" type="flows-from"/>
-                            </accessibility>
-                          </object>
-                          <packing>
-                            <property name="left_attach">3</property>
-                            <property name="right_attach">4</property>
-                            <property name="top_attach">0</property>
-                            <property name="bottom_attach">1</property>
-                            <property name="y_options"/>
-                          </packing>
-                        </child>
-                      </object>
-                      <packing>
-                        <property name="left_attach">0</property>
-                        <property name="right_attach">1</property>
-                        <property name="top_attach">1</property>
-                        <property name="bottom_attach">2</property>
-                        <property name="x_options">fill</property>
-                        <property name="y_options">fill</property>
-                      </packing>
-                    </child>
-                    <child>
-                      <object class="GtkHButtonBox" id="demo_manual_hbbox">
-                        <property name="visible">True</property>
-                        <property name="layout_style">GTK_BUTTONBOX_SPREAD</property>
-                        <property name="spacing">30</property>
-                        <child>
-                          <object class="GtkButton" id="demo">
-                            <property name="visible">True</property>
-                            <property name="tooltip-text" translatable="yes">Demo the selected screen saver in full-screen mode (click the mouse to return.)</property>
-                            <property name="can_default">True</property>
-                            <property name="can_focus">True</property>
-                            <property name="label" translatable="yes">_Preview</property>
-                            <property name="use_underline">True</property>
-                            <property name="relief">GTK_RELIEF_NORMAL</property>
-                            <property name="focus_on_click">True</property>
-                            <signal handler="run_this_cb" name="clicked"/>
-                          </object>
-                        </child>
-                        <child>
-                          <object class="GtkButton" id="settings">
-                            <property name="visible">True</property>
-                            <property name="tooltip-text" translatable="yes">Customization and explanation of the selected screen saver.</property>
-                            <property name="can_default">True</property>
-                            <property name="can_focus">True</property>
-                            <property name="label" translatable="yes">_Settings...</property>
-                            <property name="use_underline">True</property>
-                            <property name="relief">GTK_RELIEF_NORMAL</property>
-                            <property name="focus_on_click">True</property>
-                            <signal handler="settings_cb" name="clicked"/>
-                          </object>
-                        </child>
-                      </object>
-                      <packing>
-                        <property name="left_attach">1</property>
-                        <property name="right_attach">2</property>
-                        <property name="top_attach">1</property>
-                        <property name="bottom_attach">2</property>
-                        <property name="x_options">fill</property>
-                        <property name="y_options">fill</property>
-                      </packing>
-                    </child>
-                    <child>
-                      <object class="GtkVBox" id="list_vbox">
-                        <property name="border_width">10</property>
-                        <property name="visible">True</property>
-                        <property name="homogeneous">False</property>
-                        <property name="spacing">0</property>
-                        <child>
-                          <object class="GtkHBox" id="mode_hbox">
-                            <property name="visible">True</property>
-                            <property name="homogeneous">False</property>
-                            <property name="spacing">0</property>
-                            <child>
-                              <object class="GtkLabel" id="mode_label">
-                                <property name="visible">True</property>
-                                <property name="label" translatable="yes">_Mode:</property>
-                                <property name="use_underline">True</property>
-                                <property name="use_markup">False</property>
-                                <property name="justify">GTK_JUSTIFY_LEFT</property>
-                                <property name="wrap">False</property>
-                                <property name="selectable">False</property>
-                                <property name="xalign">0</property>
-                                <property name="yalign">0.5</property>
-                                <property name="xpad">0</property>
-                                <property name="ypad">0</property>
-                                <property name="mnemonic_widget">mode_menu</property>
-                                <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
-                                <property name="width_chars">-1</property>
-                                <property name="single_line_mode">False</property>
-                                <property name="angle">0</property>
-                                <accessibility>
-                                  <relation target="mode_menu" type="label-for"/>
-                                </accessibility>
-                              </object>
-                              <packing>
-                                <property name="padding">0</property>
-                                <property name="expand">False</property>
-                                <property name="fill">False</property>
-                              </packing>
-                            </child>
-                            <child>
-                              <object class="GtkComboBox" id="mode_menu">
-                                <property name="visible">True</property>
-                                <property name="can_focus">True</property>
-                                <property name="has_entry">False</property>
-                                <property name="model">mode_menu_model</property>
-                                <accessibility>
-                                  <relation target="mode_label" type="labelled-by"/>
-                                </accessibility>
-                                <child>
-                                  <object class="GtkCellRendererText" id="renderer1"/>
-                                  <attributes>
-                                    <attribute name="text">0</attribute>
-                                  </attributes>
-                                </child>
-                              </object>
-                              <packing>
-                                <property name="padding">4</property>
-                                <property name="expand">True</property>
-                                <property name="fill">True</property>
-                              </packing>
-                            </child>
-                          </object>
-                          <packing>
-                            <property name="padding">10</property>
-                            <property name="expand">False</property>
-                            <property name="fill">True</property>
-                          </packing>
-                        </child>
-                        <child>
-                          <object class="GtkScrolledWindow" id="scroller">
-                            <property name="visible">True</property>
-                            <property name="can_focus">True</property>
-                            <property name="hscrollbar_policy">GTK_POLICY_NEVER</property>
-                            <property name="vscrollbar_policy">GTK_POLICY_ALWAYS</property>
-                            <property name="shadow_type">GTK_SHADOW_IN</property>
-                            <property name="window_placement">GTK_CORNER_TOP_LEFT</property>
-                            <child>
-                              <object class="GtkTreeView" id="list">
-                                <property name="visible">True</property>
-                                <property name="can_focus">True</property>
-                                <property name="headers_visible">False</property>
-                                <property name="rules_hint">True</property>
-                                <property name="reorderable">False</property>
-                                <property name="enable_search">True</property>
-                                <property name="fixed_height_mode">False</property>
-                                <property name="hover_selection">False</property>
-                                <property name="hover_expand">False</property>
-                              </object>
-                            </child>
-                          </object>
-                          <packing>
-                            <property name="padding">0</property>
-                            <property name="expand">True</property>
-                            <property name="fill">True</property>
-                          </packing>
-                        </child>
-                        <child>
-                          <object class="GtkHBox" id="centering_hbox">
-                            <property name="visible">True</property>
-                            <property name="homogeneous">True</property>
-                            <property name="spacing">0</property>
-                            <child>
-                              <object class="GtkHBox" id="next_prev_hbox">
-                                <property name="visible">True</property>
-                                <property name="homogeneous">False</property>
-                                <property name="spacing">0</property>
-                                <child>
-                                  <object class="GtkButton" id="next">
-                                    <property name="visible">True</property>
-                                    <property name="tooltip-text" translatable="yes">Run the next screen saver in the list in full-screen mode (click the mouse to return.)</property>
-                                    <property name="can_focus">True</property>
-                                    <property name="relief">GTK_RELIEF_NORMAL</property>
-                                    <property name="focus_on_click">True</property>
-                                    <signal handler="run_next_cb" name="clicked"/>
-                                    <child>
-                                      <object class="GtkArrow" id="arrow1">
-                                        <property name="visible">True</property>
-                                        <property name="arrow_type">GTK_ARROW_DOWN</property>
-                                        <property name="shadow_type">GTK_SHADOW_OUT</property>
-                                        <property name="xalign">0.5</property>
-                                        <property name="yalign">0.5</property>
-                                        <property name="xpad">0</property>
-                                        <property name="ypad">0</property>
-                                      </object>
-                                    </child>
-                                  </object>
-                                  <packing>
-                                    <property name="padding">0</property>
-                                    <property name="expand">False</property>
-                                    <property name="fill">False</property>
-                                  </packing>
-                                </child>
-                                <child>
-                                  <object class="GtkButton" id="prev">
-                                    <property name="visible">True</property>
-                                    <property name="tooltip-text" translatable="yes">Run the previous screen saver in the list in full-screen mode (click the mouse to return.)</property>
-                                    <property name="can_focus">True</property>
-                                    <property name="relief">GTK_RELIEF_NORMAL</property>
-                                    <property name="focus_on_click">True</property>
-                                    <signal handler="run_prev_cb" name="clicked"/>
-                                    <child>
-                                      <object class="GtkArrow" id="arrow2">
-                                        <property name="visible">True</property>
-                                        <property name="arrow_type">GTK_ARROW_UP</property>
-                                        <property name="shadow_type">GTK_SHADOW_OUT</property>
-                                        <property name="xalign">0.5</property>
-                                        <property name="yalign">0.5</property>
-                                        <property name="xpad">0</property>
-                                        <property name="ypad">0</property>
-                                      </object>
-                                    </child>
-                                  </object>
-                                  <packing>
-                                    <property name="padding">0</property>
-                                    <property name="expand">False</property>
-                                    <property name="fill">False</property>
-                                  </packing>
-                                </child>
-                              </object>
-                              <packing>
-                                <property name="padding">0</property>
-                                <property name="expand">False</property>
-                                <property name="fill">False</property>
-                              </packing>
-                            </child>
-                          </object>
-                          <packing>
-                            <property name="padding">0</property>
-                            <property name="expand">False</property>
-                            <property name="fill">True</property>
-                            <property name="pack_type">GTK_PACK_END</property>
-                          </packing>
-                        </child>
-                      </object>
-                      <packing>
-                        <property name="left_attach">0</property>
-                        <property name="right_attach">1</property>
-                        <property name="top_attach">0</property>
-                        <property name="bottom_attach">1</property>
-                        <property name="x_options">fill</property>
-                      </packing>
-                    </child>
-                    <child>
-                      <object class="GtkFrame" id="preview_frame">
-                        <property name="visible">True</property>
-                        <property name="label_xalign">0</property>
-                        <property name="label_yalign">0.5</property>
-                        <property name="shadow_type">GTK_SHADOW_ETCHED_IN</property>
-                        <accessibility>
-                          <relation target="label1" type="labelled-by"/>
-                        </accessibility>
-                        <child>
-                          <object class="GtkVBox" id="preview_vbox">
-                            <property name="border_width">5</property>
-                            <property name="visible">True</property>
-                            <property name="homogeneous">False</property>
-                            <property name="spacing">5</property>
-                            <child>
-                              <object class="GtkNotebook" id="preview_notebook">
-                                <property name="visible">True</property>
-                                <property name="can_focus">True</property>
-                                <property name="show_tabs">True</property>
-                                <property name="show_border">False</property>
-                                <property name="tab_pos">GTK_POS_BOTTOM</property>
-                                <property name="scrollable">False</property>
-                                <property name="enable_popup">False</property>
-                                <child>
-                                  <object class="GtkAspectFrame" id="preview_aspectframe">
-                                    <property name="border_width">8</property>
-                                    <property name="visible">True</property>
-                                    <property name="label_xalign">0</property>
-                                    <property name="label_yalign">0.5</property>
-                                    <property name="shadow_type">GTK_SHADOW_ETCHED_IN</property>
-                                    <property name="xalign">0.5</property>
-                                    <property name="yalign">0.5</property>
-                                    <property name="ratio">1.777777</property>
-                                    <property name="obey_child">False</property>
-                                    <child>
-                                      <object class="GtkDrawingArea" id="preview">
-                                        <property name="visible">True</property>
-                                      </object>
-                                    </child>
-                                  </object>
-                                  <packing>
-                                    <property name="tab_expand">False</property>
-                                    <property name="tab_fill">True</property>
-                                  </packing>
-                                </child>
-                                <child type="tab">
-                                  <object class="GtkLabel" id="preview_tab">
-                                    <property name="visible">True</property>
-                                    <property name="label" translatable="yes">preview</property>
-                                    <property name="use_underline">False</property>
-                                    <property name="use_markup">False</property>
-                                    <property name="justify">GTK_JUSTIFY_LEFT</property>
-                                    <property name="wrap">False</property>
-                                    <property name="selectable">False</property>
-                                    <property name="xalign">0.5</property>
-                                    <property name="yalign">0.5</property>
-                                    <property name="xpad">0</property>
-                                    <property name="ypad">0</property>
-                                    <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
-                                    <property name="width_chars">-1</property>
-                                    <property name="single_line_mode">False</property>
-                                    <property name="angle">0</property>
-                                  </object>
-                                </child>
-                                <child>
-                                  <object class="GtkLabel" id="no_preview_label">
-                                    <property name="visible">True</property>
-                                    <property name="label" translatable="yes">No Preview
-Available</property>
-                                    <property name="use_underline">False</property>
-                                    <property name="use_markup">False</property>
-                                    <property name="justify">GTK_JUSTIFY_CENTER</property>
-                                    <property name="wrap">False</property>
-                                    <property name="selectable">False</property>
-                                    <property name="xalign">0.5</property>
-                                    <property name="yalign">0.5</property>
-                                    <property name="xpad">0</property>
-                                    <property name="ypad">0</property>
-                                    <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
-                                    <property name="width_chars">-1</property>
-                                    <property name="single_line_mode">False</property>
-                                    <property name="angle">0</property>
-                                  </object>
-                                  <packing>
-                                    <property name="tab_expand">False</property>
-                                    <property name="tab_fill">True</property>
-                                  </packing>
-                                </child>
-                                <child type="tab">
-                                  <object class="GtkLabel" id="no_preview_tab">
-                                    <property name="visible">True</property>
-                                    <property name="label" translatable="yes">no preview</property>
-                                    <property name="use_underline">False</property>
-                                    <property name="use_markup">False</property>
-                                    <property name="justify">GTK_JUSTIFY_LEFT</property>
-                                    <property name="wrap">False</property>
-                                    <property name="selectable">False</property>
-                                    <property name="xalign">0.5</property>
-                                    <property name="yalign">0.5</property>
-                                    <property name="xpad">0</property>
-                                    <property name="ypad">0</property>
-                                    <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
-                                    <property name="width_chars">-1</property>
-                                    <property name="single_line_mode">False</property>
-                                    <property name="angle">0</property>
-                                  </object>
-                                </child>
-                                <child>
-                                  <object class="GtkLabel" id="not_installed_label">
-                                    <property name="visible">True</property>
-                                    <property name="label" translatable="yes">Not
-Installed</property>
-                                    <property name="use_underline">False</property>
-                                    <property name="use_markup">False</property>
-                                    <property name="justify">GTK_JUSTIFY_CENTER</property>
-                                    <property name="wrap">False</property>
-                                    <property name="selectable">False</property>
-                                    <property name="xalign">0.5</property>
-                                    <property name="yalign">0.5</property>
-                                    <property name="xpad">0</property>
-                                    <property name="ypad">0</property>
-                                    <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
-                                    <property name="width_chars">-1</property>
-                                    <property name="single_line_mode">False</property>
-                                    <property name="angle">0</property>
-                                  </object>
-                                  <packing>
-                                    <property name="tab_expand">False</property>
-                                    <property name="tab_fill">True</property>
-                                  </packing>
-                                </child>
-                                <child type="tab">
-                                  <object class="GtkLabel" id="not_installed_tab">
-                                    <property name="visible">True</property>
-                                    <property name="label" translatable="yes">not installed</property>
-                                    <property name="use_underline">False</property>
-                                    <property name="use_markup">False</property>
-                                    <property name="justify">GTK_JUSTIFY_LEFT</property>
-                                    <property name="wrap">False</property>
-                                    <property name="selectable">False</property>
-                                    <property name="xalign">0.5</property>
-                                    <property name="yalign">0.5</property>
-                                    <property name="xpad">0</property>
-                                    <property name="ypad">0</property>
-                                    <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
-                                    <property name="width_chars">-1</property>
-                                    <property name="single_line_mode">False</property>
-                                    <property name="angle">0</property>
-                                  </object>
-                                </child>
-                                <child>
-                                  <object class="GtkLabel" id="nothing_label">
-                                    <property name="visible">True</property>
-                                    <property name="label" translatable="yes">Very few (or no) screen savers appear to be available.
-
-This probably means that the "xscreensaver-extras" and
-"xscreensaver-gl-extras" packages are not installed.</property>
-                                    <property name="use_underline">False</property>
-                                    <property name="use_markup">False</property>
-                                    <property name="justify">GTK_JUSTIFY_CENTER</property>
-                                    <property name="wrap">False</property>
-                                    <property name="selectable">False</property>
-                                    <property name="xalign">0.5</property>
-                                    <property name="yalign">0.5</property>
-                                    <property name="xpad">0</property>
-                                    <property name="ypad">0</property>
-                                    <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
-                                    <property name="width_chars">-1</property>
-                                    <property name="single_line_mode">False</property>
-                                    <property name="angle">0</property>
-                                  </object>
-                                  <packing>
-                                    <property name="tab_expand">False</property>
-                                    <property name="tab_fill">True</property>
-                                  </packing>
-                                </child>
-                                <child type="tab">
-                                  <object class="GtkLabel" id="nothing_tab">
-                                    <property name="visible">True</property>
-                                    <property name="label" translatable="yes">nothing</property>
-                                    <property name="use_underline">False</property>
-                                    <property name="use_markup">False</property>
-                                    <property name="justify">GTK_JUSTIFY_LEFT</property>
-                                    <property name="wrap">False</property>
-                                    <property name="selectable">False</property>
-                                    <property name="xalign">0.5</property>
-                                    <property name="yalign">0.5</property>
-                                    <property name="xpad">0</property>
-                                    <property name="ypad">0</property>
-                                    <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
-                                    <property name="width_chars">-1</property>
-                                    <property name="single_line_mode">False</property>
-                                    <property name="angle">0</property>
-                                  </object>
-                                </child>
-                              </object>
-                            </child>
-
-                            <child>
-                              <object class="GtkLabel" id="short_preview_label">
-                                <property name="visible">True</property>
-                                <property name="label" translatable="yes"></property>
-                                <property name="use_underline">False</property>
-                                <property name="use_markup">False</property>
-                                <property name="justify">GTK_JUSTIFY_LEFT</property>
-                                <property name="wrap">True</property>
-                                <property name="selectable">False</property>
-                                <property name="xalign">0.5</property>
-                                <property name="yalign">0.0</property>
-                                <property name="xpad">0</property>
-                                <property name="ypad">0</property>
-                                <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
-                                <property name="width_chars">72</property>
-                                <property name="single_line_mode">False</property>
-                                <property name="angle">0</property>
-                                <accessibility>
-                                  <relation target="preview_aspectframe" type="label-for"/>
-                                </accessibility>
-                              </object>
-                              <packing>
-                                <property name="padding">0</property>
-                                <property name="expand">False</property>
-                                <property name="fill">True</property>
-                              </packing>
-                            </child>
-
-                            <child>
-                              <object class="GtkLabel" id="preview_author_label">
-                                <property name="visible">True</property>
-                                <property name="label" translatable="yes"></property>
-                                <property name="use_underline">False</property>
-                                <property name="use_markup">False</property>
-                                <property name="justify">GTK_JUSTIFY_CENTER</property>
-                                <property name="wrap">True</property>
-                                <property name="selectable">False</property>
-                                <property name="xalign">0.5</property>
-                                <property name="yalign">0.0</property>
-                                <property name="xpad">0</property>
-                                <property name="ypad">0</property>
-                                <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
-                                <property name="width_chars">72</property>
-                                <property name="single_line_mode">False</property>
-                                <property name="angle">0</property>
-                                <accessibility>
-                                  <relation target="preview_aspectframe" type="label-for"/>
-                                </accessibility>
-                              </object>
-                              <packing>
-                                <property name="padding">0</property>
-                                <property name="expand">False</property>
-                                <property name="fill">True</property>
-                              </packing>
-                            </child>
-
-                          </object>
-                        </child>
-
-                        <child type="label">
-                          <object class="GtkLabel" id="label1">
-                            <property name="visible">True</property>
-                            <property name="label" translatable="yes">Description</property>
-                            <property name="use_underline">False</property>
-                            <property name="use_markup">False</property>
-                            <property name="justify">GTK_JUSTIFY_LEFT</property>
-                            <property name="wrap">False</property>
-                            <property name="selectable">False</property>
-                            <property name="xalign">0.5</property>
-                            <property name="yalign">0.5</property>
-                            <property name="xpad">0</property>
-                            <property name="ypad">0</property>
-                            <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
-                            <property name="width_chars">-1</property>
-                            <property name="single_line_mode">False</property>
-                            <property name="angle">0</property>
-                            <accessibility>
-                              <relation target="preview_frame" type="label-for"/>
-                            </accessibility>
-                          </object>
-                        </child>
-                      </object>
-                      <packing>
-                        <property name="left_attach">1</property>
-                        <property name="right_attach">2</property>
-                        <property name="top_attach">0</property>
-                        <property name="bottom_attach">1</property>
-                        <property name="y_padding">6</property>
-                        <property name="x_options">expand|shrink|fill</property>
-                        <property name="y_options">expand|shrink|fill</property>
-                      </packing>
-                    </child>
-                  </object>
-                  <packing>
-                    <property name="tab_expand">False</property>
-                    <property name="tab_fill">True</property>
-                  </packing>
-                </child>
-                <child type="tab">
-                  <object class="GtkLabel" id="demo_tab">
-                    <property name="visible">True</property>
-                    <property name="label" translatable="yes">_Display Modes</property>
-                    <property name="use_underline">True</property>
-                    <property name="use_markup">False</property>
-                    <property name="justify">GTK_JUSTIFY_CENTER</property>
-                    <property name="wrap">False</property>
-                    <property name="selectable">False</property>
-                    <property name="xalign">0.5</property>
-                    <property name="yalign">0.5</property>
-                    <property name="xpad">0</property>
-                    <property name="ypad">0</property>
-                    <property name="mnemonic_widget">notebook</property>
-                    <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
-                    <property name="width_chars">-1</property>
-                    <property name="single_line_mode">False</property>
-                    <property name="angle">0</property>
-                  </object>
-                </child>
-                <child>
-                  <object class="GtkTable" id="options_table">
-                    <property name="visible">True</property>
-                    <property name="n_rows">2</property>
-                    <property name="n_columns">2</property>
-                    <property name="homogeneous">True</property>
-                    <property name="row_spacing">0</property>
-                    <property name="column_spacing">0</property>
-                    <child>
-                      <object class="GtkFrame" id="grab_frame">
-                        <property name="border_width">10</property>
-                        <property name="visible">True</property>
-                        <property name="label_xalign">0</property>
-                        <property name="label_yalign">0.5</property>
-                        <property name="shadow_type">GTK_SHADOW_ETCHED_IN</property>
-                        <accessibility>
-                          <relation target="label2" type="labelled-by"/>
-                        </accessibility>
-                        <child>
-                          <object class="GtkHBox" id="grab_hbox">
-                            <property name="border_width">8</property>
-                            <property name="visible">True</property>
-                            <property name="homogeneous">False</property>
-                            <property name="spacing">8</property>
-                            <child>
-                              <object class="GtkImage" id="image2">
-                                <property name="visible">True</property>
-                                <property name="pixbuf">screensaver-snap.png</property>
-                                <property name="xalign">0</property>
-                                <property name="yalign">0</property>
-                                <property name="xpad">4</property>
-                                <property name="ypad">8</property>
-                              </object>
-                              <packing>
-                                <property name="padding">0</property>
-                                <property name="expand">False</property>
-                                <property name="fill">False</property>
-                              </packing>
-                            </child>
-                            <child>
-                              <object class="GtkVBox" id="grab_vbox">
-                                <property name="visible">True</property>
-                                <property name="homogeneous">False</property>
-                                <property name="spacing">0</property>
-                                <child>
-                                  <object class="GtkCheckButton" id="grab_desk_button">
-                                    <property name="visible">True</property>
-                                    <property name="tooltip-text" translatable="yes">Whether the image-manipulating modes should be allowed to operate on an image of your desktop.</property>
-                                    <property name="can_focus">True</property>
-                                    <property name="label" translatable="yes">Grab Desktop _Images</property>
-                                    <property name="use_underline">True</property>
-                                    <property name="relief">GTK_RELIEF_NORMAL</property>
-                                    <property name="focus_on_click">True</property>
-                                    <property name="active">False</property>
-                                    <property name="inconsistent">False</property>
-                                    <property name="draw_indicator">True</property>
-                                    <signal handler="pref_changed_cb" name="toggled"/>
-                                  </object>
-                                  <packing>
-                                    <property name="padding">0</property>
-                                    <property name="expand">False</property>
-                                    <property name="fill">False</property>
-                                  </packing>
-                                </child>
-                                <child>
-                                  <object class="GtkCheckButton" id="grab_video_button">
-                                    <property name="visible">True</property>
-                                    <property name="tooltip-text" translatable="yes">Whether the image-manipulating modes should operate on images captured from the system's video input (if there is one.)</property>
-                                    <property name="can_focus">True</property>
-                                    <property name="label" translatable="yes">Grab _Video Frames</property>
-                                    <property name="use_underline">True</property>
-                                    <property name="relief">GTK_RELIEF_NORMAL</property>
-                                    <property name="focus_on_click">True</property>
-                                    <property name="active">False</property>
-                                    <property name="inconsistent">False</property>
-                                    <property name="draw_indicator">True</property>
-                                    <signal handler="pref_changed_cb" name="toggled"/>
-                                  </object>
-                                  <packing>
-                                    <property name="padding">0</property>
-                                    <property name="expand">False</property>
-                                    <property name="fill">False</property>
-                                  </packing>
-                                </child>
-                                <child>
-                                  <object class="GtkCheckButton" id="grab_image_button">
-                                    <property name="visible">True</property>
-                                    <property name="tooltip-text" translatable="yes">Whether the image-manipulating modes should load image files.</property>
-                                    <property name="can_focus">True</property>
-                                    <property name="label" translatable="yes">Choose _Random Image:</property>
-                                    <property name="use_underline">True</property>
-                                    <property name="relief">GTK_RELIEF_NORMAL</property>
-                                    <property name="focus_on_click">True</property>
-                                    <property name="active">False</property>
-                                    <property name="inconsistent">False</property>
-                                    <property name="draw_indicator">True</property>
-                                    <accessibility>
-                                      <relation target="image_text" type="controller-for"/>
-                                      <relation target="image_browse_button" type="controller-for"/>
-                                    </accessibility>
-                                    <signal handler="pref_changed_cb" name="toggled"/>
-                                  </object>
-                                  <packing>
-                                    <property name="padding">0</property>
-                                    <property name="expand">False</property>
-                                    <property name="fill">False</property>
-                                  </packing>
-                                </child>
-                                <child>
-                                  <object class="GtkHBox" id="image_hbox">
-                                    <property name="visible">True</property>
-                                    <property name="homogeneous">False</property>
-                                    <property name="spacing">0</property>
-                                    <child>
-                                      <object class="GtkLabel" id="grab_dummy">
-                                        <property name="visible">True</property>
-                                        <property name="label" translatable="yes"/>
-                                        <property name="use_underline">False</property>
-                                        <property name="use_markup">False</property>
-                                        <property name="justify">GTK_JUSTIFY_LEFT</property>
-                                        <property name="wrap">False</property>
-                                        <property name="selectable">False</property>
-                                        <property name="xalign">0.5</property>
-                                        <property name="yalign">0.5</property>
-                                        <property name="xpad">8</property>
-                                        <property name="ypad">0</property>
-                                        <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
-                                        <property name="width_chars">-1</property>
-                                        <property name="single_line_mode">False</property>
-                                        <property name="angle">0</property>
-                                      </object>
-                                      <packing>
-                                        <property name="padding">0</property>
-                                        <property name="expand">False</property>
-                                        <property name="fill">False</property>
-                                      </packing>
-                                    </child>
-                                    <child>
-                                      <object class="GtkEntry" id="image_text">
-                                        <property name="visible">True</property>
-                                        <property name="tooltip-text" translatable="yes">The local directory, RSS feed or Atom feed from which images will be randomly chosen.</property>
-                                        <property name="can_focus">True</property>
-                                        <property name="editable">True</property>
-                                        <property name="visibility">True</property>
-                                        <property name="max_length">0</property>
-                                        <property name="text" translatable="yes"/>
-                                        <property name="has_frame">True</property>
-                                        <property name="invisible_char">*</property>
-                                        <property name="activates_default">False</property>
-                                        <accessibility>
-                                          <relation target="grab_image_button" type="labelled-by"/>
-                                          <relation target="grab_image_button" type="controlled-by"/>
-                                        </accessibility>
-                                        <signal handler="pref_changed_cb" name="activate"/>
-                                        <signal handler="image_text_pref_changed_event_cb" name="focus_out_event"/>
-                                      </object>
-                                      <packing>
-                                        <property name="padding">2</property>
-                                        <property name="expand">True</property>
-                                        <property name="fill">True</property>
-                                      </packing>
-                                    </child>
-                                    <child>
-                                      <object class="GtkButton" id="image_browse_button">
-                                        <property name="visible">True</property>
-                                        <property name="can_focus">True</property>
-                                        <property name="label" translatable="yes">_Browse</property>
-                                        <property name="use_underline">True</property>
-                                        <property name="relief">GTK_RELIEF_NORMAL</property>
-                                        <property name="focus_on_click">True</property>
-                                        <signal handler="browse_image_dir_cb" name="clicked"/>
-                                      </object>
-                                      <packing>
-                                        <property name="padding">0</property>
-                                        <property name="expand">False</property>
-                                        <property name="fill">False</property>
-                                      </packing>
-                                    </child>
-                                  </object>
-                                  <packing>
-                                    <property name="padding">0</property>
-                                    <property name="expand">False</property>
-                                    <property name="fill">False</property>
-                                  </packing>
-                                </child>
-                                <child>
-                                  <object class="GtkLabel" id="label8">
-                                    <property name="visible">True</property>
-                                    <property name="label" translatable="yes">Local directory, or URL of RSS or Atom feed.</property>
-                                    <property name="use_underline">False</property>
-                                    <property name="use_markup">False</property>
-                                    <property name="justify">GTK_JUSTIFY_LEFT</property>
-                                    <property name="wrap">False</property>
-                                    <property name="selectable">False</property>
-                                    <property name="xalign">0</property>
-                                    <property name="yalign">0.5</property>
-                                    <property name="xpad">20</property>
-                                    <property name="ypad">0</property>
-                                    <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
-                                    <property name="width_chars">-1</property>
-                                    <property name="single_line_mode">False</property>
-                                    <property name="angle">0</property>
-                                  </object>
-                                  <packing>
-                                    <property name="padding">0</property>
-                                    <property name="expand">False</property>
-                                    <property name="fill">False</property>
-                                  </packing>
-                                </child>
-                              </object>
-                              <packing>
-                                <property name="padding">0</property>
-                                <property name="expand">True</property>
-                                <property name="fill">True</property>
-                              </packing>
-                            </child>
-                          </object>
-                        </child>
-                        <child type="label">
-                          <object class="GtkLabel" id="label2">
-                            <property name="visible">True</property>
-                            <property name="label" translatable="yes">Image Manipulation</property>
-                            <property name="use_underline">False</property>
-                            <property name="use_markup">False</property>
-                            <property name="justify">GTK_JUSTIFY_LEFT</property>
-                            <property name="wrap">False</property>
-                            <property name="selectable">False</property>
-                            <property name="xalign">0.5</property>
-                            <property name="yalign">0.5</property>
-                            <property name="xpad">0</property>
-                            <property name="ypad">0</property>
-                            <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
-                            <property name="width_chars">-1</property>
-                            <property name="single_line_mode">False</property>
-                            <property name="angle">0</property>
-                            <accessibility>
-                              <relation target="grab_frame" type="label-for"/>
-                            </accessibility>
-                          </object>
-                        </child>
-                      </object>
-                      <packing>
-                        <property name="left_attach">0</property>
-                        <property name="right_attach">1</property>
-                        <property name="top_attach">0</property>
-                        <property name="bottom_attach">1</property>
-                      </packing>
-                    </child>
-                    <child>
-                      <object class="GtkFrame" id="diag_frame">
-                        <property name="border_width">10</property>
-                        <property name="visible">True</property>
-                        <property name="label_xalign">0</property>
-                        <property name="label_yalign">0.5</property>
-                        <property name="shadow_type">GTK_SHADOW_ETCHED_IN</property>
-                        <accessibility>
-                          <relation target="label3" type="labelled-by"/>
-                        </accessibility>
-                        <child>
-                          <object class="GtkHBox" id="diag_hbox">
-                            <property name="border_width">8</property>
-                            <property name="visible">True</property>
-                            <property name="homogeneous">False</property>
-                            <property name="spacing">8</property>
-                            <child>
-                              <object class="GtkImage" id="diag_logo">
-                                <property name="visible">True</property>
-                                <property name="pixbuf">screensaver-diagnostic.png</property>
-                                <property name="xalign">0.5</property>
-                                <property name="yalign">0</property>
-                                <property name="xpad">0</property>
-                                <property name="ypad">0</property>
-                              </object>
-                              <packing>
-                                <property name="padding">0</property>
-                                <property name="expand">False</property>
-                                <property name="fill">False</property>
-                              </packing>
-                            </child>
-                            <child>
-                              <object class="GtkTable" id="text_table">
-                                <property name="visible">True</property>
-                                <property name="n_rows">5</property>
-                                <property name="n_columns">3</property>
-                                <property name="homogeneous">False</property>
-                                <property name="row_spacing">2</property>
-                                <property name="column_spacing">2</property>
-                                <child>
-                                  <object class="GtkRadioButton" id="text_radio">
-                                    <property name="visible">True</property>
-                                    <property name="tooltip-text" translatable="yes">Text-displaying modes will display the text typed here.</property>
-                                    <property name="can_focus">True</property>
-                                    <property name="label" translatable="yes">_Text</property>
-                                    <property name="use_underline">True</property>
-                                    <property name="relief">GTK_RELIEF_NORMAL</property>
-                                    <property name="focus_on_click">True</property>
-                                    <property name="active">False</property>
-                                    <property name="inconsistent">False</property>
-                                    <property name="draw_indicator">True</property>
-                                    <accessibility>
-                                      <relation target="text_entry" type="controller-for"/>
-                                      <relation target="text_entry" type="label-for"/>
-                                    </accessibility>
-                                    <signal handler="pref_changed_cb" last_modification_time="Sun, 20 Mar 2005 21:31:44 GMT" name="toggled"/>
-                                  </object>
-                                  <packing>
-                                    <property name="left_attach">0</property>
-                                    <property name="right_attach">1</property>
-                                    <property name="top_attach">1</property>
-                                    <property name="bottom_attach">2</property>
-                                    <property name="x_options">fill</property>
-                                    <property name="y_options"/>
-                                  </packing>
-                                </child>
-                                <child>
-                                  <object class="GtkRadioButton" id="text_file_radio">
-                                    <property name="visible">True</property>
-                                    <property name="tooltip-text" translatable="yes">Text-displaying modes will display the contents of this file.</property>
-                                    <property name="can_focus">True</property>
-                                    <property name="label" translatable="yes">Text _file</property>
-                                    <property name="use_underline">True</property>
-                                    <property name="relief">GTK_RELIEF_NORMAL</property>
-                                    <property name="focus_on_click">True</property>
-                                    <property name="active">False</property>
-                                    <property name="inconsistent">False</property>
-                                    <property name="draw_indicator">True</property>
-                                    <property name="group">text_radio</property>
-                                    <accessibility>
-                                      <relation target="text_file_entry" type="label-for"/>
-                                      <relation target="text_file_entry" type="controller-for"/>
-                                    </accessibility>
-                                    <signal handler="pref_changed_cb" last_modification_time="Sun, 20 Mar 2005 21:31:55 GMT" name="toggled"/>
-                                  </object>
-                                  <packing>
-                                    <property name="left_attach">0</property>
-                                    <property name="right_attach">1</property>
-                                    <property name="top_attach">2</property>
-                                    <property name="bottom_attach">3</property>
-                                    <property name="x_options">fill</property>
-                                    <property name="y_options"/>
-                                  </packing>
-                                </child>
-                                <child>
-                                  <object class="GtkRadioButton" id="text_program_radio">
-                                    <property name="visible">True</property>
-                                    <property name="tooltip-text" translatable="yes">Text-displaying modes will display the output of this program.</property>
-                                    <property name="can_focus">True</property>
-                                    <property name="label" translatable="yes">_Program</property>
-                                    <property name="use_underline">True</property>
-                                    <property name="relief">GTK_RELIEF_NORMAL</property>
-                                    <property name="focus_on_click">True</property>
-                                    <property name="active">False</property>
-                                    <property name="inconsistent">False</property>
-                                    <property name="draw_indicator">True</property>
-                                    <property name="group">text_radio</property>
-                                    <accessibility>
-                                      <relation target="text_program_entry" type="label-for"/>
-                                      <relation target="text_program_entry" type="controller-for"/>
-                                      <relation target="text_program_browse" type="controller-for"/>
-                                    </accessibility>
-                                    <signal handler="pref_changed_cb" last_modification_time="Sun, 20 Mar 2005 21:32:07 GMT" name="toggled"/>
-                                  </object>
-                                  <packing>
-                                    <property name="left_attach">0</property>
-                                    <property name="right_attach">1</property>
-                                    <property name="top_attach">3</property>
-                                    <property name="bottom_attach">4</property>
-                                    <property name="x_options">fill</property>
-                                    <property name="y_options"/>
-                                  </packing>
-                                </child>
-                                <child>
-                                  <object class="GtkRadioButton" id="text_url_radio">
-                                    <property name="visible">True</property>
-                                    <property name="tooltip-text" translatable="yes">Text-displaying modes will display the contents of this URL (HTML or RSS).</property>
-                                    <property name="can_focus">True</property>
-                                    <property name="label" translatable="yes">_URL</property>
-                                    <property name="use_underline">True</property>
-                                    <property name="relief">GTK_RELIEF_NORMAL</property>
-                                    <property name="focus_on_click">True</property>
-                                    <property name="active">False</property>
-                                    <property name="inconsistent">False</property>
-                                    <property name="draw_indicator">True</property>
-                                    <property name="group">text_radio</property>
-                                    <accessibility>
-                                      <relation target="text_url_entry" type="label-for"/>
-                                      <relation target="text_url_entry" type="controller-for"/>
-                                    </accessibility>
-                                    <signal handler="pref_changed_cb" last_modification_time="Sun, 20 Mar 2005 21:32:17 GMT" name="toggled"/>
-                                  </object>
-                                  <packing>
-                                    <property name="left_attach">0</property>
-                                    <property name="right_attach">1</property>
-                                    <property name="top_attach">4</property>
-                                    <property name="bottom_attach">5</property>
-                                    <property name="x_options">fill</property>
-                                    <property name="y_options"/>
-                                  </packing>
-                                </child>
-                                <child>
-                                  <object class="GtkRadioButton" id="text_host_radio">
-                                    <property name="visible">True</property>
-                                    <property name="tooltip-text" translatable="yes">Text-displaying modes will display the local host name, date, and time.</property>
-                                    <property name="can_focus">True</property>
-                                    <property name="label" translatable="yes">_Host Name and Time</property>
-                                    <property name="use_underline">True</property>
-                                    <property name="relief">GTK_RELIEF_NORMAL</property>
-                                    <property name="focus_on_click">True</property>
-                                    <property name="active">True</property>
-                                    <property name="inconsistent">False</property>
-                                    <property name="draw_indicator">True</property>
-                                    <property name="group">text_radio</property>
-                                    <signal handler="pref_changed_cb" last_modification_time="Sun, 20 Mar 2005 21:31:32 GMT" name="toggled"/>
-                                  </object>
-                                  <packing>
-                                    <property name="left_attach">0</property>
-                                    <property name="right_attach">3</property>
-                                    <property name="top_attach">0</property>
-                                    <property name="bottom_attach">1</property>
-                                    <property name="x_options">fill</property>
-                                    <property name="y_options"/>
-                                  </packing>
-                                </child>
-                                <child>
-                                  <object class="GtkEntry" id="text_url_entry">
-                                    <property name="visible">True</property>
-                                    <property name="tooltip-text" translatable="yes">Text-displaying modes will display the contents of this URL (HTML or RSS).</property>
-                                    <property name="can_focus">True</property>
-                                    <property name="editable">True</property>
-                                    <property name="visibility">True</property>
-                                    <property name="max_length">0</property>
-                                    <property name="text" translatable="yes"/>
-                                    <property name="has_frame">True</property>
-                                    <property name="invisible_char">*</property>
-                                    <property name="activates_default">False</property>
-                                    <accessibility>
-                                      <relation target="text_url_radio" type="controlled-by"/>
-                                    </accessibility>
-                                    <signal handler="pref_changed_cb" last_modification_time="Sun, 20 Mar 2005 21:33:10 GMT" name="activate"/>
-                                    <signal handler="pref_changed_event_cb" last_modification_time="Sun, 20 Mar 2005 21:34:26 GMT" name="focus_out_event"/>
-                                  </object>
-                                  <packing>
-                                    <property name="left_attach">1</property>
-                                    <property name="right_attach">3</property>
-                                    <property name="top_attach">4</property>
-                                    <property name="bottom_attach">5</property>
-                                    <property name="y_options"/>
-                                  </packing>
-                                </child>
-                                <child>
-                                  <object class="GtkButton" id="text_file_browse">
-                                    <property name="visible">True</property>
-                                    <property name="can_focus">True</property>
-                                    <property name="label" translatable="yes">_Browse</property>
-                                    <property name="use_underline">True</property>
-                                    <property name="relief">GTK_RELIEF_NORMAL</property>
-                                    <property name="focus_on_click">True</property>
-                                    <accessibility>
-                                      <relation target="text_file_radio" type="controlled-by"/>
-                                    </accessibility>
-                                    <signal handler="browse_text_file_cb" last_modification_time="Sun, 20 Mar 2005 01:24:38 GMT" name="clicked"/>
-                                  </object>
-                                  <packing>
-                                    <property name="left_attach">2</property>
-                                    <property name="right_attach">3</property>
-                                    <property name="top_attach">2</property>
-                                    <property name="bottom_attach">3</property>
-                                    <property name="x_options">fill</property>
-                                    <property name="y_options"/>
-                                  </packing>
-                                </child>
-                                <child>
-                                  <object class="GtkEntry" id="text_entry">
-                                    <property name="visible">True</property>
-                                    <property name="tooltip-text" translatable="yes">Text-displaying modes will display the text typed here.</property>
-                                    <property name="can_focus">True</property>
-                                    <property name="editable">True</property>
-                                    <property name="visibility">True</property>
-                                    <property name="max_length">0</property>
-                                    <property name="text" translatable="yes"/>
-                                    <property name="has_frame">True</property>
-                                    <property name="invisible_char">*</property>
-                                    <property name="activates_default">False</property>
-                                    <accessibility>
-                                      <relation target="text_program_radio" type="labelled-by"/>
-                                      <relation target="text_program_radio" type="controlled-by"/>
-                                    </accessibility>
-                                    <signal handler="pref_changed_cb" last_modification_time="Sun, 20 Mar 2005 21:32:42 GMT" name="activate"/>
-                                    <signal handler="pref_changed_event_cb" last_modification_time="Sun, 20 Mar 2005 21:33:43 GMT" name="focus_out_event"/>
-                                  </object>
-                                  <packing>
-                                    <property name="left_attach">1</property>
-                                    <property name="right_attach">3</property>
-                                    <property name="top_attach">1</property>
-                                    <property name="bottom_attach">2</property>
-                                    <property name="y_options"/>
-                                  </packing>
-                                </child>
-                                <child>
-                                  <object class="GtkEntry" id="text_program_entry">
-                                    <property name="visible">True</property>
-                                    <property name="tooltip-text" translatable="yes">Text-displaying modes will display the output of this program.</property>
-                                    <property name="can_focus">True</property>
-                                    <property name="editable">True</property>
-                                    <property name="visibility">True</property>
-                                    <property name="max_length">0</property>
-                                    <property name="text" translatable="yes"/>
-                                    <property name="has_frame">True</property>
-                                    <property name="invisible_char">*</property>
-                                    <property name="activates_default">False</property>
-                                    <accessibility>
-                                      <relation target="text_program_radio" type="labelled-by"/>
-                                      <relation target="text_program_radio" type="controlled-by"/>
-                                    </accessibility>
-                                    <signal handler="pref_changed_cb" last_modification_time="Sun, 20 Mar 2005 21:33:02 GMT" name="activate"/>
-                                    <signal handler="pref_changed_event_cb" last_modification_time="Sun, 20 Mar 2005 21:34:15 GMT" name="focus_out_event"/>
-                                  </object>
-                                  <packing>
-                                    <property name="left_attach">1</property>
-                                    <property name="right_attach">2</property>
-                                    <property name="top_attach">3</property>
-                                    <property name="bottom_attach">4</property>
-                                    <property name="y_options"/>
-                                  </packing>
-                                </child>
-                                <child>
-                                  <object class="GtkButton" id="text_program_browse">
-                                    <property name="visible">True</property>
-                                    <property name="can_focus">True</property>
-                                    <property name="label" translatable="yes">_Browse</property>
-                                    <property name="use_underline">True</property>
-                                    <property name="relief">GTK_RELIEF_NORMAL</property>
-                                    <property name="focus_on_click">True</property>
-                                    <accessibility>
-                                      <relation target="text_program_radio" type="controller-for"/>
-                                    </accessibility>
-                                    <signal handler="browse_text_program_cb" last_modification_time="Sun, 20 Mar 2005 01:24:51 GMT" name="clicked"/>
-                                  </object>
-                                  <packing>
-                                    <property name="left_attach">2</property>
-                                    <property name="right_attach">3</property>
-                                    <property name="top_attach">3</property>
-                                    <property name="bottom_attach">4</property>
-                                    <property name="x_options">fill</property>
-                                    <property name="y_options"/>
-                                  </packing>
-                                </child>
-                                <child>
-                                  <object class="GtkEntry" id="text_file_entry">
-                                    <property name="visible">True</property>
-                                    <property name="tooltip-text" translatable="yes">Text-displaying modes will display the contents of this file.</property>
-                                    <property name="can_focus">True</property>
-                                    <property name="editable">True</property>
-                                    <property name="visibility">True</property>
-                                    <property name="max_length">0</property>
-                                    <property name="text" translatable="yes"/>
-                                    <property name="has_frame">True</property>
-                                    <property name="invisible_char">*</property>
-                                    <property name="activates_default">False</property>
-                                    <accessibility>
-                                      <relation target="text_file_radio" type="labelled-by"/>
-                                      <relation target="text_file_radio" type="controlled-by"/>
-                                    </accessibility>
-                                    <signal handler="pref_changed_cb" last_modification_time="Sun, 20 Mar 2005 21:32:53 GMT" name="activate"/>
-                                    <signal handler="pref_changed_event_cb" last_modification_time="Sun, 20 Mar 2005 21:33:55 GMT" name="focus_out_event"/>
-                                  </object>
-                                  <packing>
-                                    <property name="left_attach">1</property>
-                                    <property name="right_attach">2</property>
-                                    <property name="top_attach">2</property>
-                                    <property name="bottom_attach">3</property>
-                                    <property name="y_options"/>
-                                  </packing>
-                                </child>
-                              </object>
-                              <packing>
-                                <property name="padding">0</property>
-                                <property name="expand">True</property>
-                                <property name="fill">True</property>
-                              </packing>
-                            </child>
-                          </object>
-                        </child>
-                        <child type="label">
-                          <object class="GtkLabel" id="label3">
-                            <property name="visible">True</property>
-                            <property name="label" translatable="yes">Text Manipulation</property>
-                            <property name="use_underline">False</property>
-                            <property name="use_markup">False</property>
-                            <property name="justify">GTK_JUSTIFY_LEFT</property>
-                            <property name="wrap">False</property>
-                            <property name="selectable">False</property>
-                            <property name="xalign">0.5</property>
-                            <property name="yalign">0.5</property>
-                            <property name="xpad">0</property>
-                            <property name="ypad">0</property>
-                            <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
-                            <property name="width_chars">-1</property>
-                            <property name="single_line_mode">False</property>
-                            <property name="angle">0</property>
-                            <accessibility>
-                              <relation target="diag_frame" type="label-for"/>
-                            </accessibility>
-                          </object>
-                        </child>
-                      </object>
-                      <packing>
-                        <property name="left_attach">0</property>
-                        <property name="right_attach">1</property>
-                        <property name="top_attach">1</property>
-                        <property name="bottom_attach">2</property>
-                        <property name="x_options">fill</property>
-                      </packing>
-                    </child>
-                    <child>
-                      <object class="GtkFrame" id="dpms_frame">
-                        <property name="border_width">10</property>
-                        <property name="visible">True</property>
-                        <property name="label_xalign">0</property>
-                        <property name="label_yalign">0.5</property>
-                        <property name="shadow_type">GTK_SHADOW_ETCHED_IN</property>
-                        <child>
-                          <object class="GtkHBox" id="dpms_hbox">
-                            <property name="border_width">8</property>
-                            <property name="visible">True</property>
-                            <property name="homogeneous">False</property>
-                            <property name="spacing">8</property>
-                            <child>
-                              <object class="GtkImage" id="dpms_logo">
-                                <property name="visible">True</property>
-                                <property name="pixbuf">screensaver-power.png</property>
-                                <property name="xalign">0.5</property>
-                                <property name="yalign">0</property>
-                                <property name="xpad">0</property>
-                                <property name="ypad">0</property>
-                              </object>
-                              <packing>
-                                <property name="padding">0</property>
-                                <property name="expand">False</property>
-                                <property name="fill">False</property>
-                              </packing>
-                            </child>
-                            <child>
-                              <object class="GtkVBox" id="vbox6">
-                                <property name="visible">True</property>
-                                <property name="homogeneous">False</property>
-                                <property name="spacing">0</property>
-                                <child>
-                                  <object class="GtkCheckButton" id="dpms_button">
-                                    <property name="visible">True</property>
-                                    <property name="tooltip-text" translatable="yes">Whether the monitor should be powered down after a while.</property>
-                                    <property name="can_focus">True</property>
-                                    <property name="label" translatable="yes">_Power Management Enabled</property>
-                                    <property name="use_underline">True</property>
-                                    <property name="relief">GTK_RELIEF_NORMAL</property>
-                                    <property name="focus_on_click">True</property>
-                                    <property name="active">True</property>
-                                    <property name="inconsistent">False</property>
-                                    <property name="draw_indicator">True</property>
-                                    <accessibility>
-                                      <relation target="dpms_suspend_spinbutton" type="controller-for"/>
-                                      <relation target="dpms_standby_spinbutton" type="controller-for"/>
-                                      <relation target="dpms_off_spinbutton" type="controller-for"/>
-                                    </accessibility>
-                                    <signal handler="pref_changed_cb" name="toggled"/>
-                                  </object>
-                                  <packing>
-                                    <property name="padding">0</property>
-                                    <property name="expand">False</property>
-                                    <property name="fill">False</property>
-                                  </packing>
-                                </child>
-                                <child>
-                                  <object class="GtkTable" id="dpms_table">
-                                    <property name="visible">True</property>
-                                    <property name="n_rows">3</property>
-                                    <property name="n_columns">3</property>
-                                    <property name="homogeneous">False</property>
-                                    <property name="row_spacing">2</property>
-                                    <property name="column_spacing">4</property>
-                                    <child>
-                                      <object class="GtkLabel" id="dpms_standby_label">
-                                        <property name="visible">True</property>
-                                        <property name="label" translatable="yes">Stand_by After</property>
-                                        <property name="use_underline">True</property>
-                                        <property name="use_markup">False</property>
-                                        <property name="justify">GTK_JUSTIFY_LEFT</property>
-                                        <property name="wrap">False</property>
-                                        <property name="selectable">False</property>
-                                        <property name="xalign">1</property>
-                                        <property name="yalign">0.5</property>
-                                        <property name="xpad">10</property>
-                                        <property name="ypad">0</property>
-                                        <property name="mnemonic_widget">dpms_standby_spinbutton</property>
-                                        <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
-                                        <property name="width_chars">-1</property>
-                                        <property name="single_line_mode">False</property>
-                                        <property name="angle">0</property>
-                                        <accessibility>
-                                          <relation target="dpms_standby_spinbutton" type="label-for"/>
-                                          <relation target="dpms_standby_spinbutton" type="flows-to"/>
-                                        </accessibility>
-                                      </object>
-                                      <packing>
-                                        <property name="left_attach">0</property>
-                                        <property name="right_attach">1</property>
-                                        <property name="top_attach">0</property>
-                                        <property name="bottom_attach">1</property>
-                                        <property name="x_options">fill</property>
-                                        <property name="y_options"/>
-                                      </packing>
-                                    </child>
-                                    <child>
-                                      <object class="GtkLabel" id="dpms_suspend_label">
-                                        <property name="visible">True</property>
-                                        <property name="label" translatable="yes">Sus_pend After</property>
-                                        <property name="use_underline">True</property>
-                                        <property name="use_markup">False</property>
-                                        <property name="justify">GTK_JUSTIFY_LEFT</property>
-                                        <property name="wrap">False</property>
-                                        <property name="selectable">False</property>
-                                        <property name="xalign">1</property>
-                                        <property name="yalign">0.5</property>
-                                        <property name="xpad">10</property>
-                                        <property name="ypad">0</property>
-                                        <property name="mnemonic_widget">dpms_suspend_spinbutton</property>
-                                        <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
-                                        <property name="width_chars">-1</property>
-                                        <property name="single_line_mode">False</property>
-                                        <property name="angle">0</property>
-                                        <accessibility>
-                                          <relation target="dpms_suspend_spinbutton" type="label-for"/>
-                                          <relation target="dpms_suspend_spinbutton" type="flows-to"/>
-                                        </accessibility>
-                                      </object>
-                                      <packing>
-                                        <property name="left_attach">0</property>
-                                        <property name="right_attach">1</property>
-                                        <property name="top_attach">1</property>
-                                        <property name="bottom_attach">2</property>
-                                        <property name="x_options">fill</property>
-                                        <property name="y_options"/>
-                                      </packing>
-                                    </child>
-                                    <child>
-                                      <object class="GtkLabel" id="dpms_off_label">
-                                        <property name="visible">True</property>
-                                        <property name="label" translatable="yes">_Off After</property>
-                                        <property name="use_underline">True</property>
-                                        <property name="use_markup">False</property>
-                                        <property name="justify">GTK_JUSTIFY_LEFT</property>
-                                        <property name="wrap">False</property>
-                                        <property name="selectable">False</property>
-                                        <property name="xalign">1</property>
-                                        <property name="yalign">0.5</property>
-                                        <property name="xpad">10</property>
-                                        <property name="ypad">0</property>
-                                        <property name="mnemonic_widget">dpms_off_spinbutton</property>
-                                        <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
-                                        <property name="width_chars">-1</property>
-                                        <property name="single_line_mode">False</property>
-                                        <property name="angle">0</property>
-                                        <accessibility>
-                                          <relation target="dpms_off_spinbutton" type="label-for"/>
-                                          <relation target="dpms_off_spinbutton" type="flows-to"/>
-                                        </accessibility>
-                                      </object>
-                                      <packing>
-                                        <property name="left_attach">0</property>
-                                        <property name="right_attach">1</property>
-                                        <property name="top_attach">2</property>
-                                        <property name="bottom_attach">3</property>
-                                        <property name="x_options">fill</property>
-                                        <property name="y_options"/>
-                                      </packing>
-                                    </child>
-                                    <child>
-                                      <object class="GtkLabel" id="dpms_standby_mlabel">
-                                        <property name="visible">True</property>
-                                        <property name="label" translatable="yes">minutes</property>
-                                        <property name="use_underline">False</property>
-                                        <property name="use_markup">False</property>
-                                        <property name="justify">GTK_JUSTIFY_LEFT</property>
-                                        <property name="wrap">False</property>
-                                        <property name="selectable">False</property>
-                                        <property name="xalign">0</property>
-                                        <property name="yalign">0.5</property>
-                                        <property name="xpad">0</property>
-                                        <property name="ypad">0</property>
-                                        <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
-                                        <property name="width_chars">-1</property>
-                                        <property name="single_line_mode">False</property>
-                                        <property name="angle">0</property>
-                                        <accessibility>
-                                          <relation target="dpms_standby_spinbutton" type="label-for"/>
-                                          <relation target="dpms_standby_spinbutton" type="flows-from"/>
-                                        </accessibility>
-                                      </object>
-                                      <packing>
-                                        <property name="left_attach">2</property>
-                                        <property name="right_attach">3</property>
-                                        <property name="top_attach">0</property>
-                                        <property name="bottom_attach">1</property>
-                                        <property name="x_options">fill</property>
-                                        <property name="y_options"/>
-                                      </packing>
-                                    </child>
-                                    <child>
-                                      <object class="GtkLabel" id="dpms_suspend_mlabel">
-                                        <property name="visible">True</property>
-                                        <property name="label" translatable="yes">minutes</property>
-                                        <property name="use_underline">False</property>
-                                        <property name="use_markup">False</property>
-                                        <property name="justify">GTK_JUSTIFY_LEFT</property>
-                                        <property name="wrap">False</property>
-                                        <property name="selectable">False</property>
-                                        <property name="xalign">0</property>
-                                        <property name="yalign">0.5</property>
-                                        <property name="xpad">0</property>
-                                        <property name="ypad">0</property>
-                                        <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
-                                        <property name="width_chars">-1</property>
-                                        <property name="single_line_mode">False</property>
-                                        <property name="angle">0</property>
-                                        <accessibility>
-                                          <relation target="dpms_suspend_spinbutton" type="label-for"/>
-                                          <relation target="dpms_suspend_spinbutton" type="flows-from"/>
-                                        </accessibility>
-                                      </object>
-                                      <packing>
-                                        <property name="left_attach">2</property>
-                                        <property name="right_attach">3</property>
-                                        <property name="top_attach">1</property>
-                                        <property name="bottom_attach">2</property>
-                                        <property name="x_options">fill</property>
-                                        <property name="y_options"/>
-                                      </packing>
-                                    </child>
-                                    <child>
-                                      <object class="GtkLabel" id="dpms_off_mlabel">
-                                        <property name="visible">True</property>
-                                        <property name="label" translatable="yes">minutes</property>
-                                        <property name="use_underline">False</property>
-                                        <property name="use_markup">False</property>
-                                        <property name="justify">GTK_JUSTIFY_LEFT</property>
-                                        <property name="wrap">False</property>
-                                        <property name="selectable">False</property>
-                                        <property name="xalign">0</property>
-                                        <property name="yalign">0.5</property>
-                                        <property name="xpad">0</property>
-                                        <property name="ypad">0</property>
-                                        <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
-                                        <property name="width_chars">-1</property>
-                                        <property name="single_line_mode">False</property>
-                                        <property name="angle">0</property>
-                                        <accessibility>
-                                          <relation target="dpms_off_spinbutton" type="label-for"/>
-                                          <relation target="dpms_off_spinbutton" type="flows-from"/>
-                                        </accessibility>
-                                      </object>
-                                      <packing>
-                                        <property name="left_attach">2</property>
-                                        <property name="right_attach">3</property>
-                                        <property name="top_attach">2</property>
-                                        <property name="bottom_attach">3</property>
-                                        <property name="x_options">fill</property>
-                                        <property name="y_options"/>
-                                      </packing>
-                                    </child>
-                                    <child>
-                                      <object class="GtkSpinButton" id="dpms_off_spinbutton">
-                                        <property name="visible">True</property>
-                                        <property name="tooltip-text" translatable="yes">How long until the monitor powers down.</property>
-                                        <property name="can_focus">True</property>
-                                        <property name="climb_rate">15</property>
-                                        <property name="digits">0</property>
-                                        <property name="numeric">True</property>
-                                        <property name="update_policy">GTK_UPDATE_ALWAYS</property>
-                                        <property name="snap_to_ticks">True</property>
-                                        <property name="wrap">False</property>
-                                        <property name="adjustment">adjustment4</property>
-                                        <accessibility>
-                                          <relation target="dpms_button" type="controlled-by"/>
-                                          <relation target="dpms_off_label" type="labelled-by"/>
-                                          <relation target="dpms_off_mlabel" type="labelled-by"/>
-                                          <relation target="dpms_off_label" type="flows-from"/>
-                                          <relation target="dpms_off_mlabel" type="flows-to"/>
-                                        </accessibility>
-                                        <signal handler="pref_changed_cb" name="activate"/>
-                                        <signal handler="pref_changed_event_cb" name="focus_out_event"/>
-                                        <signal handler="pref_changed_cb" name="value_changed"/>
-                                      </object>
-                                      <packing>
-                                        <property name="left_attach">1</property>
-                                        <property name="right_attach">2</property>
-                                        <property name="top_attach">2</property>
-                                        <property name="bottom_attach">3</property>
-                                        <property name="x_options"/>
-                                        <property name="y_options"/>
-                                      </packing>
-                                    </child>
-                                    <child>
-                                      <object class="GtkSpinButton" id="dpms_suspend_spinbutton">
-                                        <property name="visible">True</property>
-                                        <property name="tooltip-text" translatable="yes">How long until the monitor goes into power-saving mode.</property>
-                                        <property name="can_focus">True</property>
-                                        <property name="climb_rate">15</property>
-                                        <property name="digits">0</property>
-                                        <property name="numeric">True</property>
-                                        <property name="update_policy">GTK_UPDATE_ALWAYS</property>
-                                        <property name="snap_to_ticks">True</property>
-                                        <property name="wrap">False</property>
-                                        <property name="adjustment">adjustment5</property>
-                                        <accessibility>
-                                          <relation target="dpms_button" type="controlled-by"/>
-                                          <relation target="dpms_suspend_label" type="labelled-by"/>
-                                          <relation target="dpms_suspend_mlabel" type="labelled-by"/>
-                                          <relation target="dpms_suspend_label" type="flows-from"/>
-                                          <relation target="dpms_suspend_mlabel" type="flows-to"/>
-                                        </accessibility>
-                                        <signal handler="pref_changed_cb" name="activate"/>
-                                        <signal handler="pref_changed_event_cb" name="focus_out_event"/>
-                                        <signal handler="pref_changed_cb" name="value_changed"/>
-                                      </object>
-                                      <packing>
-                                        <property name="left_attach">1</property>
-                                        <property name="right_attach">2</property>
-                                        <property name="top_attach">1</property>
-                                        <property name="bottom_attach">2</property>
-                                        <property name="x_options"/>
-                                        <property name="y_options"/>
-                                      </packing>
-                                    </child>
-                                    <child>
-                                      <object class="GtkSpinButton" id="dpms_standby_spinbutton">
-                                        <property name="visible">True</property>
-                                        <property name="tooltip-text" translatable="yes">How long until the monitor goes completely black.</property>
-                                        <property name="can_focus">True</property>
-                                        <property name="climb_rate">15</property>
-                                        <property name="digits">0</property>
-                                        <property name="numeric">True</property>
-                                        <property name="update_policy">GTK_UPDATE_ALWAYS</property>
-                                        <property name="snap_to_ticks">True</property>
-                                        <property name="wrap">False</property>
-                                        <property name="adjustment">adjustment6</property>
-                                        <accessibility>
-                                          <relation target="dpms_button" type="controlled-by"/>
-                                          <relation target="dpms_standby_label" type="labelled-by"/>
-                                          <relation target="dpms_standby_mlabel" type="labelled-by"/>
-                                          <relation target="dpms_standby_label" type="flows-from"/>
-                                          <relation target="dpms_standby_mlabel" type="flows-to"/>
-                                        </accessibility>
-                                        <signal handler="pref_changed_cb" name="activate"/>
-                                        <signal handler="pref_changed_event_cb" name="focus_out_event"/>
-                                        <signal handler="pref_changed_cb" name="value_changed"/>
-                                      </object>
-                                      <packing>
-                                        <property name="left_attach">1</property>
-                                        <property name="right_attach">2</property>
-                                        <property name="top_attach">0</property>
-                                        <property name="bottom_attach">1</property>
-                                        <property name="x_options"/>
-                                        <property name="y_options"/>
-                                      </packing>
-                                    </child>
-                                  </object>
-                                  <packing>
-                                    <property name="padding">0</property>
-                                    <property name="expand">False</property>
-                                    <property name="fill">True</property>
-                                  </packing>
-                                </child>
-                                <child>
-                                  <object class="GtkCheckButton" id="dpms_quickoff_button">
-                                    <property name="visible">True</property>
-                                    <property name="tooltip-text" translatable="yes">Whether the monitor should be powered off immediately in "Blank Screen Only" mode, regardless of the above power-management timeouts.</property>
-                                    <property name="can_focus">True</property>
-                                    <property name="label" translatable="yes">_Quick Power-off in Blank Only Mode</property>
-                                    <property name="use_underline">True</property>
-                                    <property name="relief">GTK_RELIEF_NORMAL</property>
-                                    <property name="focus_on_click">True</property>
-                                    <property name="active">False</property>
-                                    <property name="inconsistent">False</property>
-                                    <property name="draw_indicator">True</property>
-                                    <signal handler="pref_changed_cb" name="toggled"/>
-                                  </object>
-                                  <packing>
-                                    <property name="padding">0</property>
-                                    <property name="expand">False</property>
-                                    <property name="fill">False</property>
-                                  </packing>
-                                </child>
-                              </object>
-                              <packing>
-                                <property name="padding">0</property>
-                                <property name="expand">True</property>
-                                <property name="fill">True</property>
-                              </packing>
-                            </child>
-                          </object>
-                        </child>
-                        <child type="label">
-                          <object class="GtkLabel" id="label4">
-                            <property name="visible">True</property>
-                            <property name="label" translatable="yes">Display Power Management</property>
-                            <property name="use_underline">False</property>
-                            <property name="use_markup">False</property>
-                            <property name="justify">GTK_JUSTIFY_LEFT</property>
-                            <property name="wrap">False</property>
-                            <property name="selectable">False</property>
-                            <property name="xalign">0.5</property>
-                            <property name="yalign">0.5</property>
-                            <property name="xpad">0</property>
-                            <property name="ypad">0</property>
-                            <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
-                            <property name="width_chars">-1</property>
-                            <property name="single_line_mode">False</property>
-                            <property name="angle">0</property>
-                            <accessibility>
-                              <relation target="dpms_frame" type="label-for"/>
-                            </accessibility>
-                          </object>
-                        </child>
-                      </object>
-                      <packing>
-                        <property name="left_attach">1</property>
-                        <property name="right_attach">2</property>
-                        <property name="top_attach">0</property>
-                        <property name="bottom_attach">1</property>
-                        <property name="y_options">fill</property>
-                      </packing>
-                    </child>
-                    <child>
-                      <object class="GtkFrame" id="blanking_frame">
-                        <property name="border_width">10</property>
-                        <property name="visible">True</property>
-                        <property name="label_xalign">0</property>
-                        <property name="label_yalign">0.5</property>
-                        <property name="shadow_type">GTK_SHADOW_ETCHED_IN</property>
-                        <accessibility>
-                          <relation target="label5" type="labelled-by"/>
-                        </accessibility>
-                        <child>
-                          <object class="GtkHBox" id="fading_hbox">
-                            <property name="border_width">8</property>
-                            <property name="visible">True</property>
-                            <property name="homogeneous">False</property>
-                            <property name="spacing">8</property>
-                            <child>
-                              <object class="GtkImage" id="image5">
-                                <property name="visible">True</property>
-                                <property name="pixbuf">screensaver-colorselector.png</property>
-                                <property name="xalign">0.5</property>
-                                <property name="yalign">0</property>
-                                <property name="xpad">0</property>
-                                <property name="ypad">0</property>
-                              </object>
-                              <packing>
-                                <property name="padding">0</property>
-                                <property name="expand">False</property>
-                                <property name="fill">False</property>
-                              </packing>
-                            </child>
-                            <child>
-                              <object class="GtkVBox" id="vbox7">
-                                <property name="visible">True</property>
-                                <property name="homogeneous">False</property>
-                                <property name="spacing">0</property>
-                                <child>
-                                  <object class="GtkCheckButton" id="fade_button">
-                                    <property name="visible">True</property>
-                                    <property name="tooltip-text" translatable="yes">Whether the screen should slowly fade to black when the screen saver activates.</property>
-                                    <property name="can_focus">True</property>
-                                    <property name="label" translatable="yes">Fade to Black when _Blanking</property>
-                                    <property name="use_underline">True</property>
-                                    <property name="relief">GTK_RELIEF_NORMAL</property>
-                                    <property name="focus_on_click">True</property>
-                                    <property name="active">False</property>
-                                    <property name="inconsistent">False</property>
-                                    <property name="draw_indicator">True</property>
-                                    <accessibility>
-                                      <relation target="fade_spinbutton" type="controller-for"/>
-                                    </accessibility>
-                                    <signal handler="pref_changed_cb" name="toggled"/>
-                                  </object>
-                                  <packing>
-                                    <property name="padding">0</property>
-                                    <property name="expand">False</property>
-                                    <property name="fill">False</property>
-                                  </packing>
-                                </child>
-                                <child>
-                                  <object class="GtkCheckButton" id="unfade_button">
-                                    <property name="visible">True</property>
-                                    <property name="tooltip-text" translatable="yes">Whether the screen should slowly fade in from black when the screen saver deactivates.</property>
-                                    <property name="can_focus">True</property>
-                                    <property name="label" translatable="yes">Fade from Black When _Unblanking</property>
-                                    <property name="use_underline">True</property>
-                                    <property name="relief">GTK_RELIEF_NORMAL</property>
-                                    <property name="focus_on_click">True</property>
-                                    <property name="active">False</property>
-                                    <property name="inconsistent">False</property>
-                                    <property name="draw_indicator">True</property>
-                                    <accessibility>
-                                      <relation target="fade_spinbutton" type="controller-for"/>
-                                    </accessibility>
-                                    <signal handler="pref_changed_cb" name="toggled"/>
-                                  </object>
-                                  <packing>
-                                    <property name="padding">0</property>
-                                    <property name="expand">False</property>
-                                    <property name="fill">False</property>
-                                  </packing>
-                                </child>
-                                <child>
-                                  <object class="GtkHBox" id="fade_hbox">
-                                    <property name="visible">True</property>
-                                    <property name="homogeneous">False</property>
-                                    <property name="spacing">0</property>
-                                    <child>
-                                      <object class="GtkLabel" id="fade_dummy">
-                                        <property name="visible">True</property>
-                                        <property name="label" translatable="yes"/>
-                                        <property name="use_underline">False</property>
-                                        <property name="use_markup">False</property>
-                                        <property name="justify">GTK_JUSTIFY_LEFT</property>
-                                        <property name="wrap">False</property>
-                                        <property name="selectable">False</property>
-                                        <property name="xalign">0.5</property>
-                                        <property name="yalign">0.5</property>
-                                        <property name="xpad">3</property>
-                                        <property name="ypad">0</property>
-                                        <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
-                                        <property name="width_chars">-1</property>
-                                        <property name="single_line_mode">False</property>
-                                        <property name="angle">0</property>
-                                      </object>
-                                      <packing>
-                                        <property name="padding">0</property>
-                                        <property name="expand">False</property>
-                                        <property name="fill">False</property>
-                                      </packing>
-                                    </child>
-                                    <child>
-                                      <object class="GtkLabel" id="fade_label">
-                                        <property name="visible">True</property>
-                                        <property name="label" translatable="yes">F_ade Duration</property>
-                                        <property name="use_underline">True</property>
-                                        <property name="use_markup">False</property>
-                                        <property name="justify">GTK_JUSTIFY_LEFT</property>
-                                        <property name="wrap">False</property>
-                                        <property name="selectable">False</property>
-                                        <property name="xalign">0</property>
-                                        <property name="yalign">0.5</property>
-                                        <property name="xpad">0</property>
-                                        <property name="ypad">0</property>
-                                        <property name="mnemonic_widget">fade_spinbutton</property>
-                                        <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
-                                        <property name="width_chars">-1</property>
-                                        <property name="single_line_mode">False</property>
-                                        <property name="angle">0</property>
-                                        <accessibility>
-                                          <relation target="fade_spinbutton" type="label-for"/>
-                                          <relation target="fade_spinbutton" type="flows-to"/>
-                                        </accessibility>
-                                      </object>
-                                      <packing>
-                                        <property name="padding">14</property>
-                                        <property name="expand">False</property>
-                                        <property name="fill">False</property>
-                                      </packing>
-                                    </child>
-                                    <child>
-                                      <object class="GtkSpinButton" id="fade_spinbutton">
-                                        <property name="visible">True</property>
-                                        <property name="tooltip-text" translatable="yes">How long it should take for the screen to fade in and out.</property>
-                                        <property name="can_focus">True</property>
-                                        <property name="climb_rate">1</property>
-                                        <property name="digits">0</property>
-                                        <property name="numeric">True</property>
-                                        <property name="update_policy">GTK_UPDATE_ALWAYS</property>
-                                        <property name="snap_to_ticks">True</property>
-                                        <property name="wrap">False</property>
-                                        <property name="adjustment">adjustment7</property>
-                                        <accessibility>
-                                          <relation target="unfade_button" type="controlled-by"/>
-                                          <relation target="fade_button" type="controlled-by"/>
-                                          <relation target="fade_label" type="labelled-by"/>
-                                          <relation target="fade_sec_label" type="labelled-by"/>
-                                          <relation target="fade_label" type="flows-from"/>
-                                          <relation target="fade_sec_label" type="flows-to"/>
-                                        </accessibility>
-                                        <signal handler="pref_changed_cb" name="activate"/>
-                                        <signal handler="pref_changed_event_cb" name="focus_out_event"/>
-                                        <signal handler="pref_changed_cb" name="value_changed"/>
-                                      </object>
-                                      <packing>
-                                        <property name="padding">4</property>
-                                        <property name="expand">False</property>
-                                        <property name="fill">False</property>
-                                      </packing>
-                                    </child>
-                                    <child>
-                                      <object class="GtkLabel" id="fade_sec_label">
-                                        <property name="visible">True</property>
-                                        <property name="label" translatable="yes">seconds</property>
-                                        <property name="use_underline">False</property>
-                                        <property name="use_markup">False</property>
-                                        <property name="justify">GTK_JUSTIFY_LEFT</property>
-                                        <property name="wrap">False</property>
-                                        <property name="selectable">False</property>
-                                        <property name="xalign">0</property>
-                                        <property name="yalign">0.5</property>
-                                        <property name="xpad">0</property>
-                                        <property name="ypad">0</property>
-                                        <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
-                                        <property name="width_chars">-1</property>
-                                        <property name="single_line_mode">False</property>
-                                        <property name="angle">0</property>
-                                        <accessibility>
-                                          <relation target="fade_spinbutton" type="label-for"/>
-                                          <relation target="fade_spinbutton" type="flows-from"/>
-                                        </accessibility>
-                                      </object>
-                                      <packing>
-                                        <property name="padding">2</property>
-                                        <property name="expand">False</property>
-                                        <property name="fill">False</property>
-                                      </packing>
-                                    </child>
-                                  </object>
-                                  <packing>
-                                    <property name="padding">0</property>
-                                    <property name="expand">False</property>
-                                    <property name="fill">False</property>
-                                  </packing>
-                                </child>
-                                <child>
-                                  <object class="GtkHSeparator" id="blanking_hr">
-                                    <property name="visible">True</property>
-                                  </object>
-                                  <packing>
-                                    <property name="padding">8</property>
-                                    <property name="expand">False</property>
-                                    <property name="fill">False</property>
-                                  </packing>
-                                </child>
-
-
-                                <child>
-                                  <object class="GtkHBox" id="theme_hbox">
-                                    <property name="visible">True</property>
-                                    <property name="homogeneous">False</property>
-                                    <property name="spacing">0</property>
-                                    <child>
-                                      <object class="GtkLabel" id="theme_label">
-                                        <property name="visible">True</property>
-                                        <property name="label" translatable="yes">_Theme:</property>
-                                        <property name="tooltip-text" translatable="yes">The color scheme to use on the unlock dialog.</property>
-                                        <property name="use_underline">True</property>
-                                        <property name="use_markup">False</property>
-                                        <property name="justify">GTK_JUSTIFY_LEFT</property>
-                                        <property name="wrap">False</property>
-                                        <property name="selectable">False</property>
-                                        <property name="xalign">0</property>
-                                        <property name="yalign">0.5</property>
-                                        <property name="xpad">0</property>
-                                        <property name="ypad">0</property>
-                                        <property name="mnemonic_widget">theme_menu</property>
-                                        <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
-                                        <property name="width_chars">-1</property>
-                                        <property name="single_line_mode">False</property>
-                                        <property name="angle">0</property>
-                                        <accessibility>
-                                          <relation target="theme_menu" type="label-for"/>
-                                        </accessibility>
-                                      </object>
-                                      <packing>
-                                        <property name="padding">0</property>
-                                        <property name="expand">False</property>
-                                        <property name="fill">False</property>
-                                      </packing>
-                                    </child>
-                                    <child>
-                                      <object class="GtkComboBox" id="theme_menu">
-                                        <property name="visible">True</property>
-                                        <property name="can_focus">True</property>
-                                        <property name="has_entry">False</property>
-                                        <property name="model">theme_menu_model</property>
-                                        <accessibility>
-                                          <relation target="theme_label" type="labelled-by"/>
-                                        </accessibility>
-                                        <child>
-                                          <object class="GtkCellRendererText" id="renderer2"/>
-                                          <attributes>
-                                            <attribute name="text">0</attribute>
-                                          </attributes>
-                                        </child>
-                                      </object>
-                                      <packing>
-                                        <property name="padding">4</property>
-                                        <property name="expand">True</property>
-                                        <property name="fill">True</property>
-                                      </packing>
-                                    </child>
-                                    <child>
-                                      <object class="GtkButton" id="theme_preview">
-                                        <property name="visible">True</property>
-                                        <property name="tooltip-text" translatable="yes">Show the what the unlock dialog will look like.</property>
-                                        <property name="can_default">True</property>
-                                        <property name="can_focus">True</property>
-                                        <property name="label" translatable="yes">_Preview</property>
-                                        <property name="use_underline">True</property>
-                                        <property name="relief">GTK_RELIEF_NORMAL</property>
-                                        <property name="focus_on_click">True</property>
-                                        <signal handler="preview_theme_cb" name="clicked"/>
-                                      </object>
-                                      <packing>
-                                        <property name="padding">0</property>
-                                        <property name="expand">False</property>
-                                        <property name="fill">False</property>
-                                      </packing>
-                                    </child>
-                                  </object>
-                                  <packing>
-                                    <property name="padding">10</property>
-                                    <property name="expand">False</property>
-                                    <property name="fill">True</property>
-                                  </packing>
-                                </child>
-
-
-
-                              </object>
-                              <packing>
-                                <property name="padding">0</property>
-                                <property name="expand">True</property>
-                                <property name="fill">True</property>
-                              </packing>
-                            </child>
-                          </object>
-                        </child>
-                        <child type="label">
-                          <object class="GtkLabel" id="label5">
-                            <property name="visible">True</property>
-                            <property name="label" translatable="yes">Blanking</property>
-                            <property name="use_underline">False</property>
-                            <property name="use_markup">False</property>
-                            <property name="justify">GTK_JUSTIFY_LEFT</property>
-                            <property name="wrap">False</property>
-                            <property name="selectable">False</property>
-                            <property name="xalign">0.5</property>
-                            <property name="yalign">0.5</property>
-                            <property name="xpad">0</property>
-                            <property name="ypad">0</property>
-                            <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
-                            <property name="width_chars">-1</property>
-                            <property name="single_line_mode">False</property>
-                            <property name="angle">0</property>
-                            <accessibility>
-                              <relation target="blanking_frame" type="label-for"/>
-                            </accessibility>
-                          </object>
-                        </child>
-                      </object>
-                      <packing>
-                        <property name="left_attach">1</property>
-                        <property name="right_attach">2</property>
-                        <property name="top_attach">1</property>
-                        <property name="bottom_attach">2</property>
-                        <property name="x_options">fill</property>
-                        <property name="y_options">fill</property>
-                      </packing>
-                    </child>
-                  </object>
-                  <packing>
-                    <property name="tab_expand">False</property>
-                    <property name="tab_fill">True</property>
-                  </packing>
-                </child>
-                <child type="tab">
-                  <object class="GtkLabel" id="options_tab">
-                    <property name="visible">True</property>
-                    <property name="label" translatable="yes">_Advanced</property>
-                    <property name="use_underline">True</property>
-                    <property name="use_markup">False</property>
-                    <property name="justify">GTK_JUSTIFY_LEFT</property>
-                    <property name="wrap">False</property>
-                    <property name="selectable">False</property>
-                    <property name="xalign">0.5</property>
-                    <property name="yalign">0.5</property>
-                    <property name="xpad">0</property>
-                    <property name="ypad">0</property>
-                    <property name="mnemonic_widget">notebook</property>
-                    <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
-                    <property name="width_chars">-1</property>
-                    <property name="single_line_mode">False</property>
-                    <property name="angle">0</property>
-                  </object>
-                </child>
-              </object>
-              <packing>
-                <property name="padding">0</property>
-                <property name="expand">True</property>
-                <property name="fill">True</property>
-              </packing>
-            </child>
-          </object>
-          <packing>
-            <property name="padding">0</property>
-            <property name="expand">True</property>
-            <property name="fill">True</property>
-          </packing>
-        </child>
-        <child>
-          <object class="GtkHButtonBox" id="hbuttonbox2">
-            <property name="border_width">5</property>
-            <property name="layout_style">GTK_BUTTONBOX_EDGE</property>
-            <property name="spacing">10</property>
-            <child>
-              <object class="GtkButton" id="helpbutton">
-                <property name="visible">True</property>
-                <property name="can_default">True</property>
-                <property name="can_focus">True</property>
-                <property name="label">gtk-help</property>
-                <property name="use_stock">True</property>
-                <property name="relief">GTK_RELIEF_NORMAL</property>
-                <property name="focus_on_click">True</property>
-                <signal handler="doc_menu_cb" name="clicked"/>
-              </object>
-            </child>
-            <child>
-              <object class="GtkButton" id="closebutton">
-                <property name="visible">True</property>
-                <property name="can_default">True</property>
-                <property name="can_focus">True</property>
-                <property name="label">gtk-close</property>
-                <property name="use_stock">True</property>
-                <property name="relief">GTK_RELIEF_NORMAL</property>
-                <property name="focus_on_click">True</property>
-                <signal handler="exit_menu_cb" name="clicked"/>
-              </object>
-            </child>
-          </object>
-          <packing>
-            <property name="padding">0</property>
-            <property name="expand">False</property>
-            <property name="fill">True</property>
-            <property name="pack_type">GTK_PACK_END</property>
-          </packing>
-        </child>
-      </object>
-    </child>
-  </object>
-  <object class="GtkDialog" id="xscreensaver_settings_dialog">
-    <property name="title" translatable="yes">dialog1</property>
-    <property name="type">GTK_WINDOW_TOPLEVEL</property>
-    <property name="window_position">GTK_WIN_POS_NONE</property>
-    <property name="modal">False</property>
-    <property name="resizable">True</property>
-    <property name="destroy_with_parent">False</property>
-    <property name="decorated">True</property>
-    <property name="skip_taskbar_hint">False</property>
-    <property name="skip_pager_hint">False</property>
-    <property name="type_hint">GDK_WINDOW_TYPE_HINT_DIALOG</property>
-    <property name="gravity">GDK_GRAVITY_NORTH_WEST</property>
-    <property name="focus_on_map">True</property>
-    <property name="urgency_hint">False</property>
-    <property name="has_separator">False</property>
-    <child internal-child="vbox">
-      <object class="GtkVBox" id="dialog_vbox">
-        <property name="visible">True</property>
-        <property name="homogeneous">False</property>
-        <property name="spacing">0</property>
-        <child internal-child="action_area">
-          <object class="GtkHButtonBox" id="dialog_action_area">
-            <property name="visible">True</property>
-            <property name="layout_style">GTK_BUTTONBOX_END</property>
-            <child>
-              <object class="GtkButton" id="adv_button">
-                <property name="visible">True</property>
-                <property name="can_default">True</property>
-                <property name="can_focus">True</property>
-                <property name="label" translatable="yes">_Advanced &gt;&gt;</property>
-                <property name="use_underline">True</property>
-                <property name="relief">GTK_RELIEF_NORMAL</property>
-                <property name="focus_on_click">True</property>
-                <signal handler="settings_adv_cb" name="clicked"/>
-              </object>
-            </child>
-            <child>
-              <object class="GtkButton" id="std_button">
-                <property name="visible">True</property>
-                <property name="can_default">True</property>
-                <property name="can_focus">True</property>
-                <property name="label" translatable="yes">_Standard &lt;&lt;</property>
-                <property name="use_underline">True</property>
-                <property name="relief">GTK_RELIEF_NORMAL</property>
-                <property name="focus_on_click">True</property>
-                <signal handler="settings_std_cb" name="clicked"/>
-              </object>
-            </child>
-            <child>
-              <object class="GtkButton" id="reset_button">
-                <property name="visible">True</property>
-                <property name="can_default">True</property>
-                <property name="can_focus">True</property>
-                <property name="label" translatable="yes">_Reset to Defaults</property>
-                <property name="use_underline">True</property>
-                <property name="relief">GTK_RELIEF_NORMAL</property>
-                <property name="focus_on_click">True</property>
-                <signal handler="settings_reset_cb" name="clicked"/>
-              </object>
-            </child>
-            <child>
-              <object class="GtkButton" id="cancel_button">
-                <property name="visible">True</property>
-                <property name="can_default">True</property>
-                <property name="can_focus">True</property>
-                <property name="label">gtk-cancel</property>
-                <property name="use_stock">True</property>
-                <property name="relief">GTK_RELIEF_NORMAL</property>
-                <property name="focus_on_click">True</property>
-                <signal handler="settings_cancel_cb" name="clicked"/>
-              </object>
-            </child>
-            <child>
-              <object class="GtkButton" id="ok_button">
-                <property name="visible">True</property>
-                <property name="can_default">True</property>
-                <property name="can_focus">True</property>
-                <property name="label">gtk-ok</property>
-                <property name="use_stock">True</property>
-                <property name="relief">GTK_RELIEF_NORMAL</property>
-                <property name="focus_on_click">True</property>
-                <signal handler="settings_ok_cb" name="clicked"/>
-              </object>
-            </child>
-          </object>
-          <packing>
-            <property name="padding">0</property>
-            <property name="expand">False</property>
-            <property name="fill">True</property>
-            <property name="pack_type">GTK_PACK_END</property>
-          </packing>
-        </child>
-        <child>
-          <object class="GtkVBox" id="vbox1">
-            <property name="visible">True</property>
-            <property name="homogeneous">False</property>
-            <property name="spacing">0</property>
-            <child>
-              <object class="GtkFrame" id="opt_frame">
-                <property name="visible">True</property>
-                <property name="label_xalign">0</property>
-                <property name="label_yalign">0</property>
-                <property name="shadow_type">GTK_SHADOW_ETCHED_IN</property>
-                <accessibility>
-                  <relation target="label6" type="labelled-by"/>
-                </accessibility>
-                <child>
-                  <object class="GtkNotebook" id="opt_notebook">
-                    <property name="border_width">12</property>
-                    <property name="visible">True</property>
-                    <property name="can_focus">True</property>
-                    <property name="show_tabs">True</property>
-                    <property name="show_border">False</property>
-                    <property name="tab_pos">GTK_POS_BOTTOM</property>
-                    <property name="scrollable">False</property>
-                    <property name="enable_popup">False</property>
-                    <signal handler="settings_switch_page_cb" name="switch_page"/>
-                    <child>
-                      <object class="GtkVBox" id="settings_vbox">
-                        <property name="visible">True</property>
-                        <property name="homogeneous">False</property>
-                        <property name="spacing">0</property>
-                        <child>
-                          <placeholder/>
-                        </child>
-                      </object>
-                      <packing>
-                        <property name="tab_expand">True</property>
-                        <property name="tab_fill">True</property>
-                        <property name="tab_pack">GTK_PACK_END</property>
-                      </packing>
-                    </child>
-                    <child type="tab">
-                      <object class="GtkLabel" id="std_label">
-                        <property name="visible">True</property>
-                        <property name="label" translatable="yes">Standard</property>
-                        <property name="use_underline">False</property>
-                        <property name="use_markup">False</property>
-                        <property name="justify">GTK_JUSTIFY_LEFT</property>
-                        <property name="wrap">False</property>
-                        <property name="selectable">False</property>
-                        <property name="xalign">0.5</property>
-                        <property name="yalign">0.5</property>
-                        <property name="xpad">0</property>
-                        <property name="ypad">0</property>
-                        <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
-                        <property name="width_chars">-1</property>
-                        <property name="single_line_mode">False</property>
-                        <property name="angle">0</property>
-                      </object>
-                    </child>
-                    <child>
-                      <object class="GtkTable" id="adv_table">
-                        <property name="visible">True</property>
-                        <property name="n_rows">4</property>
-                        <property name="n_columns">2</property>
-                        <property name="homogeneous">False</property>
-                        <property name="row_spacing">0</property>
-                        <property name="column_spacing">0</property>
-                        <child>
-                          <object class="GtkImage" id="cmd_logo">
-                            <property name="visible">True</property>
-                            <property name="pixbuf">screensaver-cmndln.png</property>
-                            <property name="xalign">0.5</property>
-                            <property name="yalign">0.5</property>
-                            <property name="xpad">4</property>
-                            <property name="ypad">8</property>
-                          </object>
-                          <packing>
-                            <property name="left_attach">0</property>
-                            <property name="right_attach">1</property>
-                            <property name="top_attach">0</property>
-                            <property name="bottom_attach">1</property>
-                            <property name="x_options">fill</property>
-                            <property name="y_options">fill</property>
-                          </packing>
-                        </child>
-                        <child>
-                          <object class="GtkLabel" id="cmd_label">
-                            <property name="visible">True</property>
-                            <property name="label" translatable="yes">_Command Line:</property>
-                            <property name="use_underline">True</property>
-                            <property name="use_markup">False</property>
-                            <property name="justify">GTK_JUSTIFY_LEFT</property>
-                            <property name="wrap">False</property>
-                            <property name="selectable">False</property>
-                            <property name="xalign">0</property>
-                            <property name="yalign">0.5</property>
-                            <property name="xpad">0</property>
-                            <property name="ypad">0</property>
-                            <property name="mnemonic_widget">cmd_text</property>
-                            <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
-                            <property name="width_chars">-1</property>
-                            <property name="single_line_mode">False</property>
-                            <property name="angle">0</property>
-                            <accessibility>
-                              <relation target="cmd_text" type="label-for"/>
-                            </accessibility>
-                          </object>
-                          <packing>
-                            <property name="left_attach">1</property>
-                            <property name="right_attach">2</property>
-                            <property name="top_attach">1</property>
-                            <property name="bottom_attach">2</property>
-                            <property name="x_options">fill</property>
-                            <property name="y_options"/>
-                          </packing>
-                        </child>
-                        <child>
-                          <object class="GtkEntry" id="cmd_text">
-                            <property name="visible">True</property>
-                            <property name="can_focus">True</property>
-                            <property name="editable">True</property>
-                            <property name="visibility">True</property>
-                            <property name="max_length">0</property>
-                            <property name="text" translatable="yes"/>
-                            <property name="has_frame">True</property>
-                            <property name="invisible_char">*</property>
-                            <property name="activates_default">False</property>
-                            <accessibility>
-                              <relation target="cmd_label" type="labelled-by"/>
-                            </accessibility>
-                          </object>
-                          <packing>
-                            <property name="left_attach">1</property>
-                            <property name="right_attach">2</property>
-                            <property name="top_attach">2</property>
-                            <property name="bottom_attach">3</property>
-                            <property name="y_options"/>
-                          </packing>
-                        </child>
-                        <child>
-                          <object class="GtkHBox" id="visual_hbox">
-                            <property name="visible">True</property>
-                            <property name="homogeneous">False</property>
-                            <property name="spacing">0</property>
-                            <child>
-                              <object class="GtkLabel" id="visual">
-                                <property name="visible">True</property>
-                                <property name="label" translatable="yes">_Visual:</property>
-                                <property name="use_underline">True</property>
-                                <property name="use_markup">False</property>
-                                <property name="justify">GTK_JUSTIFY_LEFT</property>
-                                <property name="wrap">False</property>
-                                <property name="selectable">False</property>
-                                <property name="xalign">1</property>
-                                <property name="yalign">0.5</property>
-                                <property name="xpad">3</property>
-                                <property name="ypad">0</property>
-                                <property name="mnemonic_widget">visual_combo</property>
-                                <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
-                                <property name="width_chars">-1</property>
-                                <property name="single_line_mode">False</property>
-                                <property name="angle">0</property>
-                                <accessibility>
-                                  <relation target="visual_combo" type="label-for"/>
-                                </accessibility>
-                              </object>
-                              <packing>
-                                <property name="padding">0</property>
-                                <property name="expand">False</property>
-                                <property name="fill">False</property>
-                              </packing>
-                            </child>
-                            <child>
-                              <object class="GtkComboBoxEntry" id="visual_combo">
-                                <property name="has_entry">False</property>
-                                <property name="visible">True</property>
-                                <property name="model">visual_combo_model</property>
-                                <property name="text-column">0</property>
-                                <accessibility>
-                                  <relation target="visual" type="labelled-by"/>
-                                </accessibility>
-                                <child internal-child="entry">
-                                  <object class="GtkEntry" id="visual_entry">
-                                    <property name="visible">True</property>
-                                    <property name="can_focus">True</property>
-                                    <property name="editable">True</property>
-                                    <property name="visibility">True</property>
-                                    <property name="max_length">0</property>
-                                    <property name="text" translatable="yes"/>
-                                    <property name="has_frame">True</property>
-                                    <property name="invisible_char">*</property>
-                                    <property name="activates_default">False</property>
-                                  </object>
-                                </child>
-                              </object>
-                              <packing>
-                                <property name="padding">0</property>
-                                <property name="expand">False</property>
-                                <property name="fill">False</property>
-                              </packing>
-                            </child>
-                          </object>
-                          <packing>
-                            <property name="left_attach">1</property>
-                            <property name="right_attach">2</property>
-                            <property name="top_attach">3</property>
-                            <property name="bottom_attach">4</property>
-                            <property name="x_options">fill</property>
-                            <property name="y_options">fill</property>
-                          </packing>
-                        </child>
-                      </object>
-                      <packing>
-                        <property name="tab_expand">False</property>
-                        <property name="tab_fill">True</property>
-                      </packing>
-                    </child>
-                    <child type="tab">
-                      <object class="GtkLabel" id="adv_label">
-                        <property name="visible">True</property>
-                        <property name="label" translatable="yes">Advanced</property>
-                        <property name="use_underline">False</property>
-                        <property name="use_markup">False</property>
-                        <property name="justify">GTK_JUSTIFY_LEFT</property>
-                        <property name="wrap">False</property>
-                        <property name="selectable">False</property>
-                        <property name="xalign">0.5</property>
-                        <property name="yalign">0.5</property>
-                        <property name="xpad">0</property>
-                        <property name="ypad">0</property>
-                        <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
-                        <property name="width_chars">-1</property>
-                        <property name="single_line_mode">False</property>
-                        <property name="angle">0</property>
-                      </object>
-                    </child>
-                  </object>
-                </child>
-                <child type="label">
-                  <object class="GtkLabel" id="label6">
-                    <property name="visible">True</property>
-                    <property name="label" translatable="yes">Settings</property>
-                    <property name="use_underline">False</property>
-                    <property name="use_markup">False</property>
-                    <property name="justify">GTK_JUSTIFY_LEFT</property>
-                    <property name="wrap">False</property>
-                    <property name="selectable">False</property>
-                    <property name="xalign">0.5</property>
-                    <property name="yalign">0.5</property>
-                    <property name="xpad">0</property>
-                    <property name="ypad">0</property>
-                    <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
-                    <property name="width_chars">-1</property>
-                    <property name="single_line_mode">False</property>
-                    <property name="angle">0</property>
-                    <accessibility>
-                      <relation target="opt_frame" type="label-for"/>
-                    </accessibility>
-                  </object>
-                </child>
-              </object>
-              <packing>
-                <property name="padding">5</property>
-                <property name="expand">True</property>
-                <property name="fill">True</property>
-              </packing>
-            </child>
-            <child>
-              <object class="GtkFrame" id="doc_frame">
-                <property name="visible">True</property>
-                <property name="label_xalign">0</property>
-                <property name="label_yalign">0</property>
-                <property name="shadow_type">GTK_SHADOW_NONE</property>
-                <child>
-                  <object class="GtkVBox" id="doc_vbox">
-                    <property name="border_width">5</property>
-                    <property name="visible">True</property>
-                    <property name="homogeneous">False</property>
-                    <property name="spacing">5</property>
-                    <child>
-                      <object class="GtkLabel" id="doc">
-                        <property name="visible">True</property>
-                        <property name="can_focus">True</property>
-                        <property name="label" translatable="yes"/>
-                        <property name="use_underline">False</property>
-                        <property name="use_markup">False</property>
-                        <property name="justify">GTK_JUSTIFY_LEFT</property>
-                        <property name="wrap">True</property>
-                        <property name="selectable">True</property>
-                        <property name="xalign">0</property>
-                        <property name="yalign">0</property>
-                        <property name="xpad">0</property>
-                        <property name="ypad">0</property>
-                        <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
-                        <property name="width_chars">-1</property>
-                        <property name="single_line_mode">False</property>
-                        <property name="angle">0</property>
-                      </object>
-                      <packing>
-                        <property name="padding">0</property>
-                        <property name="expand">True</property>
-                        <property name="fill">True</property>
-                      </packing>
-                    </child>
-                    <child>
-                      <object class="GtkHBox" id="hbox1">
-                        <property name="visible">True</property>
-                        <property name="homogeneous">False</property>
-                        <property name="spacing">0</property>
-                        <child>
-                          <object class="GtkButton" id="manual">
-                            <property name="visible">True</property>
-                            <property name="can_focus">True</property>
-                            <property name="label" translatable="yes">_Documentation...</property>
-                            <property name="use_underline">True</property>
-                            <property name="relief">GTK_RELIEF_NORMAL</property>
-                            <property name="focus_on_click">True</property>
-                            <signal handler="manual_cb" name="clicked"/>
-                          </object>
-                          <packing>
-                            <property name="padding">0</property>
-                            <property name="expand">False</property>
-                            <property name="fill">False</property>
-                            <property name="pack_type">GTK_PACK_END</property>
-                          </packing>
-                        </child>
-                      </object>
-                      <packing>
-                        <property name="padding">0</property>
-                        <property name="expand">False</property>
-                        <property name="fill">False</property>
-                      </packing>
-                    </child>
-                  </object>
-                </child>
-                <child type="label">
-                  <object class="GtkLabel" id="label7">
-                    <property name="visible">True</property>
-                    <property name="label" translatable="yes"/>
-                    <property name="use_underline">False</property>
-                    <property name="use_markup">False</property>
-                    <property name="justify">GTK_JUSTIFY_LEFT</property>
-                    <property name="wrap">False</property>
-                    <property name="selectable">False</property>
-                    <property name="xalign">0.5</property>
-                    <property name="yalign">0.5</property>
-                    <property name="xpad">0</property>
-                    <property name="ypad">0</property>
-                    <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
-                    <property name="width_chars">-1</property>
-                    <property name="single_line_mode">False</property>
-                    <property name="angle">0</property>
-                  </object>
-                </child>
-              </object>
-              <packing>
-                <property name="padding">0</property>
-                <property name="expand">False</property>
-                <property name="fill">False</property>
-              </packing>
-            </child>
-          </object>
-          <packing>
-            <property name="padding">0</property>
-            <property name="expand">True</property>
-            <property name="fill">True</property>
-          </packing>
-        </child>
-      </object>
-    </child>
-    <action-widgets>
-      <action-widget response="0">adv_button</action-widget>
-      <action-widget response="0">std_button</action-widget>
-      <action-widget response="0">reset_button</action-widget>
-      <action-widget response="-6">cancel_button</action-widget>
-      <action-widget response="-5">ok_button</action-widget>
-    </action-widgets>
-  </object>
-</interface>
index bbb096ce2b0e637643bb2b6f3a105a3339ab2498..ee9f211a60cd1f57e73e0c00af17deeabfdbbee8 100644 (file)
@@ -3,8 +3,14 @@
 abstractile \- draw abstract mosaic patterns of interlocking tiles
 .SH SYNOPSIS
 .B abstractile
-[\-sleep \fIseconds\fP] [\-speed \fIint\fP] [\-tile \fItile_mode\fP]
-[\-fps]
+[\-\-sleep \fIseconds\fP]
+[\-\-speed \fIint\fP]
+[\-\-tile \fItile_mode\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIabstractile\fP program draws chaotic grids of randomly colored
 and shaped interlocking tiles.
@@ -12,19 +18,32 @@ and shaped interlocking tiles.
 .I abstractile
 accepts the following options:
 .TP 8
-.B \-sleep \fIseconds\fP
+.B \-\-sleep \fIseconds\fP
 Specify the number of seconds to sleep between screens (0-60).
 .TP 8
-.B \-speed \fIint\fP
+.B \-\-speed \fIint\fP
 A value between 0 and 5 used to specify the speed at which each screen is drawn.
 .TP 8
-.B \-tile \fItile_mode\fP
+.B \-\-tile \fItile_mode\fP
 The type of tile that is drawn on each screen.  Legal values are
 \fIrandom\fP, \fIflat\fP, \fIthin\fP, \fIoutline\fP, 
 \fIblock\fP, \fIneon\fP, and \fItiled\fP
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
+.TP 8
+.B \-\-visual \fIvisual\fP
+Specify which visual to use.  Legal values are the name of a visual class,
+or the id number (decimal or hex) of a specific visual.
+.TP 8
+.B \-\-window
+Draw on a newly-created window.  This is the default.
+.TP 8
+.B \-\-root
+Draw on the root window.
+.TP 8
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
 .SH ENVIRONMENT
 .PP
 .TP 8
@@ -34,14 +53,16 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
 .SH COPYRIGHT
 Copyright \(co 2004 by Steve Sundstrom.  Based on
 examples from the hacks directory of xscreensaver,
-Copyright (c) 1997, 1998, 2002 Jamie Zawinski
-<jwz@jwz.org>
+Copyright (c) 1997, 1998, 2002 Jamie Zawinski <jwz@jwz.org>
 
 Permission to use, copy, modify, and distribute this software and its
 documentation for any purpose and without fee is hereby granted,
index 8c5464ea62108c1097c8ffd86e3e79885b6e406a..c324346646b01bc6da5a51e1f77c6b7cbfd0062c 100644 (file)
@@ -3,52 +3,56 @@
 anemone \- wiggling tentacles.
 .SH SYNOPSIS
 .B anemone
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-arms \fInumber\fP]
-[\-finpoints \fInumber\fP]
-[\-width \fInumber\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-arms \fInumber\fP]
+[\-\-finpoints \fInumber\fP]
+[\-\-width \fInumber\fP]
+[\-\-fps]
 .SH DESCRIPTION
 Wiggling tentacles.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 40000 (0.04 seconds.).
 .TP 8
-.B \-arms \fInumber\fP
+.B \-\-arms \fInumber\fP
 Arms.  2 - 500.  Default: 128.
 .TP 8
-.B \-finpoints \fInumber\fP
+.B \-\-finpoints \fInumber\fP
 Tentacles.  3 - 200.  Default: 64.
 .TP 8
-.B \-withdraw \fInumber\fP
+.B \-\-withdraw \fInumber\fP
 Frequency that the arms withdraw. Arms withdraw on randomly generated
 values between 1 and 11; this value determines the maximum value of
 that range. So 100 spends a lot of time withdrawn, while 1000,000 tends
 not to withdraw at all. Default: 1200.
 .TP 8
-.B \-turnspeed \fInumber\fP
+.B \-\-turnspeed \fInumber\fP
 How fast it turns. At zero, not at all, all they way up to thousands 
 which are very fast indeed.  Default: 50.
 .TP 8
-.B \-width \fInumber\fP
+.B \-\-width \fInumber\fP
 Thickness.  1 - 10.  Default: 2.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -59,6 +63,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 7da956666e09cc5f65ce6320da0a546eb5fd3181..6067121101728cdc450aceafcfb7766f904acc45 100644 (file)
@@ -3,15 +3,16 @@
 anemotaxis \- directional search on a plane.
 .SH SYNOPSIS
 .B anemotaxis
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-distance \fInumber\fP]
-[\-sources \fInumber\fP]
-[\-searchers \fInumber\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-distance \fInumber\fP]
+[\-\-sources \fInumber\fP]
+[\-\-searchers \fInumber\fP]
+[\-\-fps]
 .SH DESCRIPTION
 The program demonstrates a search algorithm designed for locating a
 source of odor in turbulent atmosphere. The odor is convected by wind
@@ -30,29 +31,32 @@ particles released by them as well as trajectories of searchers who are
 trying to capture the sources.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 20000 (0.02 seconds.).
 .TP 8
-.B \-distance \fInumber\fP
+.B \-\-distance \fInumber\fP
 Max initial distance to the source .  10 - 250.  Default: 40.
 .TP 8
-.B \-sources \fInumber\fP
+.B \-\-sources \fInumber\fP
 Max number of sources.  Default: 25.
 .TP 8
-.B \-searchers \fInumber\fP
+.B \-\-searchers \fInumber\fP
 Max number of searchers. Default: 25.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -63,6 +67,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index aa006b6ad2273b5e780e8e49760eff9af58c3ade..05a4ae643fcdca82586a7172214e7224032b7104 100644 (file)
@@ -3,29 +3,30 @@
 ant \- cellular automaton.
 .SH SYNOPSIS
 .B ant
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-install]
-[\-noinstall]
-[\-root]
-[\-eyes]
-[\-no-eyes]
-[\-truchet]
-[\-no-truchet]
-[\-sharpturn]
-[\-no-sharpturn]
-[\-delay \fInumber\fP]
-[\-cycles \fInumber\fP]
-[\-count \fInumber\fP]
-[\-size \fInumber\fP]
-[\-neighbors 3]
-[\-neighbors 4]
-[\-neighbors 6]
-[\-neighbors 9]
-[\-neighbors 12]
-[\-ncolors \fInumber\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-install]
+[\-\-noinstall]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-eyes]
+[\-\-no-eyes]
+[\-\-truchet]
+[\-\-no-truchet]
+[\-\-sharpturn]
+[\-\-no-sharpturn]
+[\-\-delay \fInumber\fP]
+[\-\-cycles \fInumber\fP]
+[\-\-count \fInumber\fP]
+[\-\-size \fInumber\fP]
+[\-\-neighbors 3]
+[\-\-neighbors 4]
+[\-\-neighbors 6]
+[\-\-neighbors 9]
+[\-\-neighbors 12]
+[\-\-ncolors \fInumber\fP]
+[\-\-fps]
 .SH DESCRIPTION
 A cellular automaton that is really a two-dimensional Turing machine: as
 the heads ("ants") walk along the screen, they change pixel values in
@@ -33,44 +34,47 @@ their path. Then, as they pass over changed pixels, their behavior is
 influenced.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-sharpturns | \-no-sharpturns
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-sharpturns | \-\-no-sharpturns
 Whether to do sharp turns.
 .TP 8
-.B \-truchet | \-no-truchet
+.B \-\-truchet | \-\-no-truchet
 Whether to use truchet lines.
 .TP 8
-.B \-eyes | \-no-eyes
+.B \-\-eyes | \-\-no-eyes
 Whether to draw eyes on the ants.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 1000 (0.0001 seconds.).
 .TP 8
-.B \-cycles \fInumber\fP
+.B \-\-cycles \fInumber\fP
 How long to wait until resetting.  0 - 800000.  Default: 40000.
 .TP 8
-.B \-count \fInumber\fP
+.B \-\-count \fInumber\fP
 Ants Count.  -20 - 20. Default: -3.
 .TP 8
-.B \-size \fInumber\fP
+.B \-\-size \fInumber\fP
 Ant Size.  -18 - 18.  Default: -12.
 .TP 8
-.B \-neighbors \fIN\fP
+.B \-\-neighbors \fIN\fP
 How many neighbors each cell has.  Legal values are 3, 4, 6, 9, and 12.
 .TP 8
-.B \-ncolors \fInumber\fP
+.B \-\-ncolors \fInumber\fP
 Number of colors.  Default: 64.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -81,6 +85,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 3dd3ad1ddcd53ba0b75a8e06ec22cf0d638a5785..64497db264b7a19a065cc6a5df0f69f1030dc3b4 100644 (file)
@@ -3,47 +3,51 @@
 apollonian \- Descartes Circle Theorem.
 .SH SYNOPSIS
 .B apollonian
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-no-label]
-[\-no-altgeom]
-[\-cycles \fInumber\fP]
-[\-ncolors \fInumber\fP]
-[\-delay \fInumber\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-no-label]
+[\-\-no-altgeom]
+[\-\-cycles \fInumber\fP]
+[\-\-ncolors \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-fps]
 .SH DESCRIPTION
 Packs a large circle with smaller circles, demonstrating the Descartes
 Circle Theorem.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-label | \-no-label
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-label | \-\-no-label
 Draw Labels.  Boolean.
 .TP 8
-.B \-altgeom | \-no-altgeom
+.B \-\-altgeom | \-\-no-altgeom
 Include Alternate Geometries.  Boolean.
 .TP 8
-.B \-cycles \fInumber\fP
+.B \-\-cycles \fInumber\fP
 Depth. 1 - 20.  Default: 20.
 .TP 8
-.B \-ncolors \fInumber\fP
+.B \-\-ncolors \fInumber\fP
 Number of Colors.  Default: 64.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 1000000 (1.00 seconds.).
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -54,6 +58,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index ec0bcd304a49ca62ab21e3393c95ea892bb62fbe..f764bf158d8c33050e1ca8a87e6eb4f02864fcf8 100644 (file)
@@ -3,13 +3,14 @@
 apple2 \- Apple ][ display emulator
 .SH SYNOPSIS
 .B apple2
-[\-display \fIhost:display.screen\fP] [\-foreground \fIcolor\fP]
-[\-background \fIcolor\fP] [\-window] [\-root] [\-mono] [\-install]
-[\-visual \fIvisual\fP]
-[\-program \fIcommand to run\fP]
-[\-basic] [\-slideshow] [\-text]
-[\-meta] [\-esc] [\-bs] [\-del] [\-fast]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP] [\-\-foreground \fIcolor\fP]
+[\-\-background \fIcolor\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-mono] [\-\-install]
+[\-\-visual \fIvisual\fP]
+[\-\-program \fIcommand to run\fP]
+[\-\-basic] [\-\-slideshow] [\-\-text]
+[\-\-meta] [\-\-esc] [\-\-bs] [\-\-del] [\-\-fast]
+[\-\-fps]
 .SH DESCRIPTION
 The
 .I apple2 
@@ -18,8 +19,8 @@ glory. It also reproduces the appearance of display on a color
 television set of the period.
 .PP
 There are 3 modes: basic, slideshow, and text. Normally it chooses a
-mode randomly, but you can override with the \fI\-basic\fP,
-\fI\-slideshow\fP, or \fI\-text\fP options.
+mode randomly, but you can override with the \fI\-\-basic\fP,
+\fI\-\-slideshow\fP, or \fI\-\-text\fP options.
 
 In basic mode a simulated user types in a Basic program and runs it.
 
@@ -31,7 +32,7 @@ colors, you can only make out the general shape of the pictures.
 In text mode it displays the output of a command or the contents of
 a file or URL (via the default
 .BR xscreensaver\-text (MANSUFFIX)
-program, which can be overridden with \fI\-program\fP).
+program, which can be overridden with \fI\-\-program\fP).
 
 In text mode, it is also a fully functional (if anachronistic)
 vt100 terminal emulator.
@@ -39,32 +40,35 @@ vt100 terminal emulator.
 .I apple2
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-mono 
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-mono 
 If on a color display, pretend we're on a monochrome display.
 .TP 8
-.B \-install
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-basic
+.B \-\-basic
 Choose basic mode
 .TP 8
-.B \-slideshow
+.B \-\-slideshow
 Choose slideshow mode
 .TP 8
-.B \-text
+.B \-\-text
 Choose text mode
 .TP 8
-.B \-program \fIsh-command\fP
+.B \-\-program \fIsh-command\fP
 In text mode, the command to run to generate the text to display. This
 option may be any string acceptable to /bin/sh. The program will be
 run at the end of a pipe, and any characters that it prints to
@@ -100,37 +104,37 @@ terminal emulators:
 .sp
 .fi
 .TP 8
-.B \-pty
-In \fI\-text\fP mode, launch the sub-program under a pty so that it
+.B \-\-pty
+In \fI\-\-text\fP mode, launch the sub-program under a pty so that it
 can address the screen directly.  This is the default.
 .TP 8
-.B \-pipe
-In \fI\-text\fP mode, launch the sub-program at the end of a pipe: 
+.B \-\-pipe
+In \fI\-\-text\fP mode, launch the sub-program at the end of a pipe: 
 do not let it address the screen directly.
 .TP 8
-.B \-esc
+.B \-\-esc
 When the user types a key with the Alt or Meta keys held down, send an
 ESC character first.  This is the default.
 .TP 8
-.B \-meta
+.B \-\-meta
 When Meta or Alt are held down, set the high bit on the character instead.
 .TP 8
-.B \-del
+.B \-\-del
 Swap Backspace and Delete.  This is the default.
 .TP 8
-.B \-bs
+.B \-\-bs
 Do not swap Backspace and Delete.
 .TP 8
-.B \-fast
+.B \-\-fast
 Normally, characters are printed at the speed of an original Apple][
 computer; however, when using this program as a terminal emulator,
 the novelty of those 300 baud characters might wear off.  You can use
-the \fI\-fast\fP option to speed things up a bit.
+the \fI\-\-fast\fP option to speed things up a bit.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH TERMINAL EMULATION
-By default, \fIapple2\fP allocates a pseudo-tty for the \fI\-text\fP-mode
+By default, \fIapple2\fP allocates a pseudo-tty for the \fI\-\-text\fP-mode
 sub-process to run under.  This has the desirable side effect that the
 program will be able to use
 .BR ioctl (2)
@@ -142,7 +146,7 @@ variable \fITERM\fP to \fIvt100\fP in the child process.
 
 Any characters typed on the apple2 window will be passed along to
 the sub-process.  (Note that this only works when running in "window"
-mode, not when running in \fI\-root\fP mode under xscreensaver.)
+mode, not when running in \fI\-\-root\fP mode under xscreensaver.)
 .SH ENVIRONMENT
 .PP
 .TP 8
@@ -153,6 +157,9 @@ to get the default host and display number.
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
 .TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
+.TP 8
 .B TERM
 to inform the sub-process of the type of terminal emulation.
 .SH X RESOURCES
index 1238f92a1499083ad9416e388bc01743b354267f..c7d9d2172ba8abd635ae41fd81a5c4c4a297680c 100644 (file)
@@ -3,17 +3,18 @@
 attraction \- interactions of opposing forces
 .SH SYNOPSIS
 .B attraction
-[\-display \fIhost:display.screen\fP] [\-foreground \fIcolor\fP]
-[\-background \fIcolor\fP] [\-window] [\-root] [\-mono] [\-install]
-[\-visual \fIvisual\fP] [\-points \fIint\fP] [\-threshold \fIint\fP]
-[\-mode balls | lines | polygons | splines | filled-splines | tails ]
-[\-size \fIint\fP] [\-segments \fIint\fP] [\-delay \fIusecs\fP]
-[\-color-shift \fIint\fP] [\-radius \fIint\fP]
-[\-vx \fIint\fP] [\-vy \fIint\fP] [\-glow] [\-noglow]
-[\-orbit] [\-viscosity \fIfloat\fP]
-[\-walls] [\-nowalls] [\-maxspeed] [\-nomaxspeed]
-[\-correct-bounce] [\-fast-bounce]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP] [\-\-foreground \fIcolor\fP]
+[\-\-background \fIcolor\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-mono] [\-\-install]
+[\-\-visual \fIvisual\fP] [\-\-points \fIint\fP] [\-\-threshold \fIint\fP]
+[\-\-mode balls | lines | polygons | splines | filled-splines | tails ]
+[\-\-size \fIint\fP] [\-\-segments \fIint\fP] [\-\-delay \fIusecs\fP]
+[\-\-color-shift \fIint\fP] [\-\-radius \fIint\fP]
+[\-\-vx \fIint\fP] [\-\-vy \fIint\fP] [\-\-glow] [\-\-noglow]
+[\-\-orbit] [\-\-viscosity \fIfloat\fP]
+[\-\-walls] [\-\-nowalls] [\-\-maxspeed] [\-\-nomaxspeed]
+[\-\-correct-bounce] [\-\-fast-bounce]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIattraction\fP program has several visually different modes of 
 operation, all of which are based on the interactions of a set of control
@@ -24,31 +25,34 @@ distance between any two particles.
 .I attraction
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-mono 
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-mono 
 If on a color display, pretend we're on a monochrome display.
 .TP 8
-.B \-install
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-points integer
+.B \-\-points integer
 How many control points should be used, or 0 to select the number randomly.
 Default 0.  Between 3 and 15 works best.
 .TP 8
-.B \-threshold integer
+.B \-\-threshold integer
 The distance (in pixels) from each particle at which the attractive force
 becomes repulsive.  Default 100.
 .TP 8
-.B \-mode "balls | lines | polygons | tails | splines | filled-splines"
+.B \-\-mode "balls | lines | polygons | tails | splines | filled-splines"
 In \fIballs\fP mode (the default) the control points are drawn as filled
 circles.  The larger the circle, the more massive the particle.
 
@@ -68,34 +72,34 @@ In \fItails\fP mode, the path which each particle follows is indicated
 by a worm-like trail, whose length is controlled by the \fIsegments\fP
 parameter.
 .TP 8
-.B \-size integer
+.B \-\-size integer
 The size of the balls in pixels, or 0, meaning to select the sizes 
 randomly (the default.)  If this is specified, then all balls will be 
 the same size.  This option has an effect in all modes, since the ``size''
 of the balls controls their mass.
 .TP 8
-.B \-segments integer
+.B \-\-segments integer
 If in \fIlines\fP or \fIpolygons\fP mode, how many sets of line segments
 or polygons should be drawn. Default 500.  This has no effect in \fIballs\fP
 mode.  If \fIsegments\fP is 0, then no segments will ever be erased (this
 is only useful in color.)
 .TP 8
-.B \-delay microseconds
+.B \-\-delay microseconds
 How much of a delay should be introduced between steps of the animation.
 Default 10000, or about 0.01 seconds.
 .TP 8
-.B \-color-shift int
+.B \-\-color-shift int
 If on a color display, the color of the line segments or polygons will 
 cycle through the color map.  This specifies how many lines will be drawn
 before a new color is chosen.  (When a small number of colors are available,
 increasing this value will yield smoother transitions.)  Default 3.
 This has no effect in \fIballs\fP mode.
 .TP 8
-.B \-radius
+.B \-\-radius
 The size in pixels of the circle on which the points are initially positioned.
 The default is slightly smaller than the size of the window.
 .TP 8
-.B \-glow
+.B \-\-glow
 This is consulted only in \fIballs\fP mode.  If this is specified, then 
 the saturation of the colors of the points will vary according to their
 current acceleration.  This has the effect that the balls flare brighter
@@ -105,27 +109,27 @@ In \fIglow\fP mode, all of the balls will be drawn the same (random)
 color, modulo the saturation shifts.  In non-glow mode, the balls will
 each be drawn in a random color that doesn't change.
 .TP 8
-.B \-noglow
+.B \-\-noglow
 Don't do ``glowing.''  This is the default.
 .TP 8
-.B \-vx pixels
+.B \-\-vx pixels
 .TP 8
-.B \-vy pixels
-Initial velocity of the balls.  This has no effect in \fB\-orbit\fP mode.
+.B \-\-vy pixels
+Initial velocity of the balls.  This has no effect in \fB\-\-orbit\fP mode.
 .TP 8
-.B \-orbit
+.B \-\-orbit
 Make the initial force on each ball be tangential to the circle on which
 they are initially placed, with the right velocity to hold them in orbit
 about each other.  After a while, roundoff errors will cause the orbit
 to decay.
 .TP 8
-.B \-vmult float
+.B \-\-vmult float
 In orbit mode, the initial velocity of the balls is multiplied by this;
 a number less than 1 will make the balls pull closer together, and a larger
 number will make them move apart.  The default is 0.9, meaning a slight
 inward pull.
 .TP 8
-.B \-viscosity float
+.B \-\-viscosity float
 This sets the viscosity of the hypothetical fluid through which the control
 points move; the default is 1, meaning no resistance.  Values higher than 1
 aren't interesting; lower values cause less motion.
@@ -140,42 +144,42 @@ One interesting thing to try is
 Give it a few seconds to settle down into a stable clump, and then move
 the drag the mouse through it to make "waves".
 .TP 8
-.B \-nowalls
+.B \-\-nowalls
 This will cause the balls to continue on past the edge of the
 screen or window.  They will still be kept track of and can come back.
 .TP 8
-.B \-walls
+.B \-\-walls
 This will cause the balls to bounce when they get
 to the edge of the screen or window.  This is the default behavior.
 .TP 8
-.B \-maxspeed
+.B \-\-maxspeed
 Imposes a maximum speed (default).  If a ball ends up going faster than
 this, it will be treated as though there were .9  viscosity until it is
 under the limit. This stops the balls from continually accelerating (which
 they have a tendency to do), but also causes balls moving very fast to
 tend to clump in the lower right corner.
 .TP 8
-.B \-nomaxspeed
+.B \-\-nomaxspeed
 If this is specified, no maximum speed is set for the balls.
 .TP 8
-.B \-fast-bounce
+.B \-\-fast-bounce
 Uses the old, simple bouncing algorithm (default).  This simply moves any
 ball that is out of bounds back to a wall and reverses its velocity.
 This works fine for most cases, but under some circumstances, the
 simplification can lead to annoying effects.
 .TP 8
-.B \-correct-bounce
+.B \-\-correct-bounce
 Uses a more intelligent bouncing algorithm.  This method actually reflects
 the balls off the walls until they are within bounds.  This can be slow
 if balls are bouncing a whole lot, perhaps because of -nomaxspeed.
 .TP 8
-.B \-graphmode none | x | y | both | speed
+.B \-\-graphmode none | x | y | both | speed
 For "x", "y", and "both", displays the given velocities of each ball as a
 bar graph in the same window as the balls.  For "speed", displays the total
 speed of each ball.  Default is "none".
 .BR
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .B DISPLAY
@@ -184,6 +188,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index b21fb8fcbeb4c702c53c0c0e0a5ea6cd26a26ba6..d1ef5d836794aefbc2d0ad6316f1c38371d044ed 100644 (file)
@@ -3,39 +3,43 @@
 barcode \- draws a random sequence of barcodes for the products you enjoy
 .SH SYNOPSIS
 .B barcode
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-clock]
-[\-clock24]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-clock]
+[\-\-clock24]
+[\-\-fps]
 .SH DESCRIPTION
 This draws a random sequence of colorful barcodes scrolling across your
 screen.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 10000 (0.02 seconds.).
 .TP 8
-.B \-clock
+.B \-\-clock
 Instead of drawing a stream of barcodes, draw a barcode-based digital clock.
 .TP 8
-.B \-clock24
-Same as \fI\-clock\fP, but display 24-hour time instead of 12-hour time.
+.B \-\-clock24
+Same as \fI\-\-clock\fP, but display 24-hour time instead of 12-hour time.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -46,6 +50,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 926bcbe9c57fb5a23b9783f476d720587e1bedfd..b909925d79d9aaea175cb3d0d69a8d9d09cf6d84 100644 (file)
@@ -3,21 +3,22 @@
 binaryhorizon - A system of path tracing particles evolves continuously. 
 .SH SYNOPSIS
 .B binaryhorizon
-[\-fps]
-[\-install]
-[\-noinstall]
-[\-mono]
-[\-root]
-[\-visual \fIvisual\fP]
-[\-window] 
-[\-window\-id \fIwindow\-id\fP]
-[\-color]
-[\-no\-color]
-[\-growth\-delay \fIdelayms\fP]
-[\-particle\-number \fIparticles\fP]
-[\-duration \fIsecs\fP]
-[\-bicolor]
-[\-monocolor]
+[\-\-fps]
+[\-\-install]
+[\-\-noinstall]
+[\-\-mono]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window] 
+[\-\-window\-id \fIwindow\-id\fP]
+[\-\-color]
+[\-\-no\-color]
+[\-\-growth\-delay \fIdelayms\fP]
+[\-\-particle\-number \fIparticles\fP]
+[\-\-duration \fIsecs\fP]
+[\-\-bicolor]
+[\-\-monocolor]
 .SH DESCRIPTION
 A system of path tracing particles evolves continuously from an
 initial horizon, alternating between colors. 
@@ -25,58 +26,61 @@ initial horizon, alternating between colors.
 .I binaryhorizon
 accepts the following options:
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .TP 8
-.B \-install
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-mono
+.B \-\-mono
 If on a color display, pretend we're on a monochrome display.
 .TP 8
-.B \-noinstall
+.B \-\-noinstall
 Don't install a private colormap for the window.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-visual \fIvisual\fP
 Specify which visual to use. Legal values are the name of a visual
 class or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window. This is the default.
 .TP 8
-.B \-window\-id \fIwindow\-id\fP
+.B \-\-window\-id \fIwindow\-id\fP
 Specify which window id to use.
 .TP 8
-.B \-color (Default)
+.B \-\-color (Default)
 Particles have random generated colors that gradually change over time.
 .TP 8
-.B \-no\-color
+.B \-\-no\-color
 Use the original black and white visualization.
 .TP 8
-.B \-bicolor (Default)
+.B \-\-bicolor (Default)
 Particles have 2 random colors, starting as white and black.
 .TP 8
-.B \-monocolor
+.B \-\-monocolor
 Particles have 2 colors, one starting as white and gradually changing,
 and one staying black.
 .TP 8
-.B \-fade (Default)
+.B \-\-fade (Default)
 Particles gradually fade between colors over time.
 .TP 8
-.B \-no-fade
+.B \-\-no-fade
 Every particle is a random color.
 .TP 8
-.B \-growth\-delay \fIdelayms\fP (Default: \fI10000\fP)
+.B \-\-growth\-delay \fIdelayms\fP (Default: \fI10000\fP)
 Delay in ms between growth cycles. More delay, slower (but less CPU intensive).
 .TP 8
-.B \-particles\-number \fIparticles\fP (Default: \fI5000\fP)
+.B \-\-particles\-number \fIparticles\fP (Default: \fI5000\fP)
 The number of particles in the system. With more particles the fps
 can also be affected.
 .TP 8
-.B \-duration \fIsecs\fP (Default: \fI30\fP)
+.B \-\-duration \fIsecs\fP (Default: \fI30\fP)
 How long between full resets.
 .SH ENVIRONMENT
 .PP
@@ -87,6 +91,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global
 resources stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1),
index 6d72b3b30bebd312cd9d55152aca1e75fc21678d..28c0b1e7012040c08470b13d014e1fdd874807f5 100644 (file)
@@ -3,19 +3,20 @@
 binaryring \- A system of path tracing particles evolves continuously from an initial creation. 
 .SH SYNOPSIS
 .B binaryring
-[\-fps]
-[\-install]
-[\-noinstall]
-[\-mono]
-[\-root]
-[\-visual \fIvisual\fP]
-[\-window] 
-[\-window\-id \fIwindow\-id\fP]
-[\-color]
-[\-no\-color]
-[\-growth\-delay \fIdelayms\fP]
-[\-particle\-number \fIparticles\fP]
-[\-ring\-radius \fIradius\fP]
+[\-\-fps]
+[\-\-install]
+[\-\-noinstall]
+[\-\-mono]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window] 
+[\-\-window\-id \fIwindow\-id\fP]
+[\-\-color]
+[\-\-no\-color]
+[\-\-growth\-delay \fIdelayms\fP]
+[\-\-particle\-number \fIparticles\fP]
+[\-\-ring\-radius \fIradius\fP]
 .SH DESCRIPTION
 A system of path tracing particles evolves continuously from an
 initial circular creation.  Ages of darkness play arbitrarily with
@@ -24,45 +25,48 @@ ages of light.
 .I binaryring
 accepts the following options:
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .TP 8
-.B \-install
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-mono
+.B \-\-mono
 If on a color display, pretend we're on a monochrome display.
 .TP 8
-.B \-noinstall
+.B \-\-noinstall
 Don't install a private colormap for the window.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-visual \fIvisual\fP
 Specify which visual to use. Legal values are the name of a visual
 class or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window. This is the default.
 .TP 8
-.B \-window\-id \fIwindow\-id\fP
+.B \-\-window\-id \fIwindow\-id\fP
 Specify which window id to use.
 .TP 8
-.B \-color (Default)
+.B \-\-color (Default)
 Particles have random generated colors that gradually change over time.
 .TP 8
-.B \-no\-color
+.B \-\-no\-color
 Use the original black and white visualization.
 .TP 8
-.B \-growth\-delay \fIdelayms\fP (Default: \fI10000\fP)
+.B \-\-growth\-delay \fIdelayms\fP (Default: \fI10000\fP)
 Delay in ms between growth cycles. More delay, slower (but less CPU intensive).
 .TP 8
-.B \-particles\-number \fIparticles\fP (Default: \fI5000\fP)
+.B \-\-particles\-number \fIparticles\fP (Default: \fI5000\fP)
 The number of particles in the system. With more particles the fps
 can also be affected.
 .TP 8
-.B \-ring\-radius \fIradius\fP (Default: \fI40\fP)
+.B \-\-ring\-radius \fIradius\fP (Default: \fI40\fP)
 The radius of the ring where the particles are born, in pixels.
 .SH ENVIRONMENT
 .PP
@@ -73,6 +77,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global
 resources stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1),
index 92f26fd26501a3332a7752ce00231cff55a24f4b..fc0ff22f8d61176a1d951b2d802acdfcfc2e3035 100644 (file)
@@ -3,43 +3,47 @@
 blaster \- simulation of space combat
 .SH SYNOPSIS
 .B blaster
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-num_robots \fInumber\fP]
-[\-num_lasers \fInumber\fP]
-[\-num_stars \fInumber\fP]
-[\-delay \fInumber\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-num_robots \fInumber\fP]
+[\-\-num_lasers \fInumber\fP]
+[\-\-num_stars \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-fps]
 .SH DESCRIPTION
 Draws a simulation of flying space-combat robots (cleverly disguised as
 colored circles) doing battle in front of a moving star field.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-num_robots \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-num_robots \fInumber\fP
 Robots.  2 - 50.  Default: 5.
 .TP 8
-.B \-num_lasers \fInumber\fP
+.B \-\-num_lasers \fInumber\fP
 Lasers.  1 - 100.  Default: 3.
 .TP 8
-.B \-num_stars \fInumber\fP
+.B \-\-num_stars \fInumber\fP
 Stars. 5 - 200.  Default: 50.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 10000 (0.01 seconds.).
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -50,6 +54,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 1b70c7bf889830a6a99c98cd29db9b9746d2fc16..8a4ef0d0f4bc713af02e7c5f24c77f323f879095 100644 (file)
@@ -3,10 +3,12 @@
 blitspin \- rotate a bitmap in an interesting way
 .SH SYNOPSIS
 .B blitspin
-[\-display \fIhost:display.screen\fP]
-[\-foreground \fIcolor\fP] [\-background \fIcolor\fP] [\-window] [\-root]
-[\-mono] [\-install] [\-visual \fIvisual\fP] [\-bitmap \fIfilename\fP]
-[\-delay \fIusecs\fP] [\-delay2 \fIusecs\fP] [\-duration \fIsecs\fP]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-foreground \fIcolor\fP] [\-\-background \fIcolor\fP] [\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-mono] [\-\-install] [\-\-visual \fIvisual\fP] [\-\-bitmap \fIfilename\fP]
+[\-\-delay \fIusecs\fP] [\-\-delay2 \fIusecs\fP] [\-\-duration \fIsecs\fP]
 .SH DESCRIPTION
 The \fIblitspin\fP program repeatedly rotates a bitmap by 90 degrees by
 using logical operations: the bitmap is divided into quadrants, and the
@@ -19,23 +21,26 @@ and the size must be a power of 2.
 .I blitspin
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-mono 
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-mono 
 If on a color display, pretend we're on a monochrome display.
 .TP 8
-.B \-install
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-bitmap \fIfilename\fP
+.B \-\-bitmap \fIfilename\fP
 The file name of a bitmap to rotate.  It need not be square: it 
 will be padded with the background color.  If unspecified or the
 string \fI(default)\fP, a builtin bitmap is used.
@@ -47,7 +52,7 @@ thus may be a color image.
 The \fB*bitmapFilePath\fP resource will be searched if the bitmap
 name is not a fully-qualified pathname.
 .TP 8
-.B \-grab\-screen
+.B \-\-grab\-screen
 If this option is specified, then the image which is spun will be grabbed
 from the portion of the screen underlying the blitspin window, or from
 the system's video input, or from a random file on disk, as indicated by
@@ -57,25 +62,28 @@ see
 .BR xscreensaver\-settings (1)
 for more details.
 .TP 8
-.B \-delay \fImicroseconds\fP
+.B \-\-delay \fImicroseconds\fP
 How long to delay between steps of the rotation process, in microseconds.
 Default is 500000, one-half second.
 .TP 8
-.B \-duration \fIseconds\fP
+.B \-\-duration \fIseconds\fP
 How long to run before loading a new image.  Default 120 seconds.
 .TP 8
-.B \-delay2 \fImicroseconds\fP
+.B \-\-delay2 \fImicroseconds\fP
 How long to delay between each 90-degree rotation, in microseconds.
 Default is 500000, one-half second.
 .B DISPLAY
 to get the default host and display number.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1),
index cc50c28bcfdf7865fb466e7b1cc967a715ca536a..e9e4e22e338fc0a3fd8b5f60d741cfb717449b8e 100644 (file)
@@ -3,47 +3,52 @@
 bouboule \- draws spinning 3D blobs
 .SH SYNOPSIS
 .B bouboule
-[\-display \fIhost:display.screen\fP] [\-foreground \fIcolor\fP] [\-background \fIcolor\fP] [\-window] [\-root] [\-mono] [\-install] [\-visual \fIvisual\fP] [\-ncolors \fIinteger\fP] [\-delay \fImicroseconds\fP] [\-cycles \fIinteger\fP] [\-count \fIinteger\fP] [\-3d]
+[\-\-display \fIhost:display.screen\fP] [\-\-foreground \fIcolor\fP]
+[\-\-background \fIcolor\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-mono] [\-\-install] [\-\-visual \fIvisual\fP] [\-\-ncolors \fIinteger\fP] [\-\-delay \fImicroseconds\fP] [\-\-cycles \fIinteger\fP] [\-\-count \fIinteger\fP] [\-3d]
 
-[\-fps]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIbouboule\fP program draws spinning 3D blobs.
 .SH OPTIONS
 .I bouboule
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-mono 
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-mono 
 If on a color display, pretend we're on a monochrome display.
 .TP 8
-.B \-install
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-ncolors \fIinteger\fP
+.B \-\-ncolors \fIinteger\fP
 How many colors should be used (if possible).  Default 64.
 The colors used cycle through the hue, making N stops around
 the color wheel.
 .TP 8
-.B \-cycles \fIinteger\fP
+.B \-\-cycles \fIinteger\fP
 
 .TP 8
-.B \-count \fIinteger\fP
+.B \-\-count \fIinteger\fP
 
 .TP 8
 .B \-3d
 Do red/blue 3d separations (for 3d glasses.)
 
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -54,6 +59,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1),
index 8e14dba5670b2a938d3f4590c6d2cf2fe89be322..dc49a8eed8c47d7992878d287ae4dc63a51e15df 100644 (file)
@@ -3,19 +3,20 @@
 boxfit \- fills space with a gradient of growing boxes or circles.
 .SH SYNOPSIS
 .B boxfit
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fIusecs\fP]
-[\-count \fIint\fP]
-[\-growby \fIint\fP]
-[\-spacing \fIint\fP]
-[\-border \fIint\fP]
-[\-circles | \-squares | \-random]
-[\-grab]
-[\-peek]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fIusecs\fP]
+[\-\-count \fIint\fP]
+[\-\-growby \fIint\fP]
+[\-\-spacing \fIint\fP]
+[\-\-border \fIint\fP]
+[\-\-circles | \-\-squares | \-\-random]
+[\-\-grab]
+[\-\-peek]
+[\-\-fps]
 .SH DESCRIPTION
 Packs the screen with growing boxes or circles, colored according to a
 horizontal or vertical gradient.  The objects grow until they touch,
@@ -23,39 +24,42 @@ then stop.  When the screen is full, they shrink away and the process
 restarts.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fImicroseconds\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fImicroseconds\fP
 How much of a delay should be introduced between steps of the animation.
 Default 20000, or about 0.02 seconds.
 .TP 8
-.B \-count \fIint\fP
+.B \-\-count \fIint\fP
 How many boxes or circles to animate simultaneously; default 50.
 Smaller numbers yield larger boxes/circles.
 .TP 8
-.B \-growby \fIint\fP
+.B \-\-growby \fIint\fP
 How many pixels the objects should grow by, each frame.  Default 1.
 .TP 8
-.B \-spacing \fIint\fP
+.B \-\-spacing \fIint\fP
 How many pixels of space should be left between the objects.  Default 1.
 .TP 8
-.B \-border \fIint\fP
+.B \-\-border \fIint\fP
 Thickness of the colored border around each object.  Default 1.
 .TP 8
-.B \-circles\fB | \-squares\fP | \-random\fP
+.B \-\-circles\fB | \-\-squares\fP | \-\-random\fP
 Draw circles, squares, or choose randomly (the default).
 .TP 8
-.B \-grab
+.B \-\-grab
 Normally it colors the boxes with a horizontal or vertical gradient.
-If \fI\-grab\fP is specified, it will instead load a random image,
+If \fI\-\-grab\fP is specified, it will instead load a random image,
 and color the boxes according to the colors in that image.
 As the picture fills in, some features of the underlying image
 may become recognisable.
@@ -69,12 +73,12 @@ file; see
 .BR xscreensaver\-settings (1)
 for more details.
 .TP 8
-.B \-peek
+.B \-\-peek
 This option says to briefly show you the underlying image before
 beginning.  The default is not to show the unadulterated image at all.
-(This only has an effect when \fI\-grab\fP is used.)
+(This only has an effect when \fI\-\-grab\fP is used.)
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -85,6 +89,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 19a32820d8c5cf05c0fa1d68abd58e37e888d86b..ec6cfb52fca9daf04049caadb9e388480d5818ea 100644 (file)
@@ -3,43 +3,48 @@
 braid \- draws random color-cycling braids around a circle
 .SH SYNOPSIS
 .B braid
-[\-display \fIhost:display.screen\fP] [\-foreground \fIcolor\fP] [\-background \fIcolor\fP] [\-window] [\-root] [\-mono] [\-install] [\-visual \fIvisual\fP] [\-ncolors \fIinteger\fP] [\-delay \fImicroseconds\fP] [\-cycles \fIinteger\fP] [\-count \fIinteger\fP]
+[\-\-display \fIhost:display.screen\fP] [\-\-foreground \fIcolor\fP]
+[\-\-background \fIcolor\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-mono] [\-\-install] [\-\-visual \fIvisual\fP] [\-\-ncolors \fIinteger\fP] [\-\-delay \fImicroseconds\fP] [\-\-cycles \fIinteger\fP] [\-\-count \fIinteger\fP]
 
-[\-fps]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIbraid\fP program draws random color-cycling braids around a circle.
 .SH OPTIONS
 .I braid
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-mono 
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-mono 
 If on a color display, pretend we're on a monochrome display.
 .TP 8
-.B \-install
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-ncolors \fIinteger\fP
+.B \-\-ncolors \fIinteger\fP
 How many colors should be used (if possible).  Default 64.
 The colors used cycle through the hue, making N stops around
 the color wheel.
 .TP 8
-.B \-cycles \fIinteger\fP
+.B \-\-cycles \fIinteger\fP
 
 .TP 8
-.B \-count \fIinteger\fP
+.B \-\-count \fIinteger\fP
 
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -50,6 +55,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1),
index e9d55b6903307c6f588fb703e302bd9b7d5e6329..85203fa5265d879a6abab04124d97da28f052eca 100644 (file)
@@ -217,7 +217,7 @@ struct bsod_state {
   (bst)->pos++; \
   } while (0)
 
-/* Set the prevailing top/bottom margins (used when scrolling and cropping text)
+/* Set the prevailing top/bottom margins (used when scrolling/cropping text)
  */
 #define BSOD_VERT_MARGINS(bst,top,bottom) do { \
   ensure_queue (bst); \
@@ -1254,21 +1254,21 @@ vmware (Display *dpy, Window window)
                "VMware ESX Server [Releasebuild-98103]\n");
   BSOD_COLOR (bst, fg, bg);
   BSOD_TEXT   (bst, LEFT,
-               "PCPU 1 locked up. Failed to ack TLB invalidate.\n"
-               "frame=0x3a37d98 ip=0x625e94 cr2=0x0 cr3=0x40c66000 cr4=0x16c\n"
-               "es=0xffffffff ds=0xffffffff fs=0xffffffff gs=0xffffffff\n"
-               "eax=0xffffffff ebx=0xffffffff ecx=0xffffffff edx=0xffffffff\n"
-               "ebp=0x3a37ef4 esi=0xffffffff edi=0xffffffff err=-1 eflags=0xffffffff\n"
-               "*0:1037/helper1-4 1:1107/vmm0:Fagi 2:1121/vmware-vm 3:1122/mks:Franc\n"
-               "0x3a37ef4:[0x625e94]Panic+0x17 stack: 0x833ab4, 0x3a37f10, 0x3a37f48\n"
-               "0x3a37f04:[0x625e94]Panic+0x17 stack: 0x833ab4, 0x1, 0x14a03a0\n"
-               "0x3a37f48:[0x64bfa4]TLBDoInvalidate+0x38f stack: 0x3a37f54, 0x40, 0x2\n"
-               "0x3a37f70:[0x66da4d]XMapForceFlush+0x64 stack: 0x0, 0x4d3a, 0x0\n"
-               "0x3a37fac:[0x652b8b]helpFunc+0x2d2 stack: 0x1, 0x14a4580, 0x0\n"
-               "0x3a37ffc:[0x750902]CpuSched_StartWorld+0x109 stack: 0x0, 0x0, 0x0\n"
-               "0x3a38000:[0x0]blk_dev+0xfd76461f stack: 0x0, 0x0, 0x0\n"
-               "VMK uptime: 7:05:43:45.014 TSC: 1751259712918392\n"
-               "Starting coredump to disk\n");
+    "PCPU 1 locked up. Failed to ack TLB invalidate.\n"
+    "frame=0x3a37d98 ip=0x625e94 cr2=0x0 cr3=0x40c66000 cr4=0x16c\n"
+    "es=0xffffffff ds=0xffffffff fs=0xffffffff gs=0xffffffff\n"
+    "eax=0xffffffff ebx=0xffffffff ecx=0xffffffff edx=0xffffffff\n"
+    "ebp=0x3a37ef4 esi=0xffffffff edi=0xffffffff err=-1 eflags=0xffffffff\n"
+    "*0:1037/helper1-4 1:1107/vmm0:Fagi 2:1121/vmware-vm 3:1122/mks:Franc\n"
+    "0x3a37ef4:[0x625e94]Panic+0x17 stack: 0x833ab4, 0x3a37f10, 0x3a37f48\n"
+    "0x3a37f04:[0x625e94]Panic+0x17 stack: 0x833ab4, 0x1, 0x14a03a0\n"
+    "0x3a37f48:[0x64bfa4]TLBDoInvalidate+0x38f stack: 0x3a37f54, 0x40, 0x2\n"
+    "0x3a37f70:[0x66da4d]XMapForceFlush+0x64 stack: 0x0, 0x4d3a, 0x0\n"
+    "0x3a37fac:[0x652b8b]helpFunc+0x2d2 stack: 0x1, 0x14a4580, 0x0\n"
+    "0x3a37ffc:[0x750902]CpuSched_StartWorld+0x109 stack: 0x0, 0x0, 0x0\n"
+    "0x3a38000:[0x0]blk_dev+0xfd76461f stack: 0x0, 0x0, 0x0\n"
+    "VMK uptime: 7:05:43:45.014 TSC: 1751259712918392\n"
+    "Starting coredump to disk\n");
   BSOD_CHAR_DELAY (bst, 10000);                
   BSOD_TEXT (bst, LEFT,        "using slot 1 of 1... ");
   BSOD_CHAR_DELAY (bst, 300000);
@@ -1284,7 +1284,8 @@ vmware (Display *dpy, Window window)
   BSOD_CHAR_DELAY (bst, 10000);
   BSOD_TEXT (bst, LEFT, "Press Escape to enter local debugger\n");
   BSOD_CHAR_DELAY (bst, 10000);
-  BSOD_TEXT (bst, LEFT, "Remote debugger activated. Local debugger no longer available.\n");
+  BSOD_TEXT (bst, LEFT,
+    "Remote debugger activated. Local debugger no longer available.\n");
 
 /*  BSOD_CURSOR (bst, CURSOR_LINE, 240000, 999999);*/
                
@@ -1296,6 +1297,217 @@ vmware (Display *dpy, Window window)
   return bst;
 }
 
+/* VMware ESXi 7.0 on a 64-bit Arm host (actually ESXi-Arm Fling)
+   by Andrei E. Warkentin <andreiw@mm.st>.
+ */
+static struct bsod_state *
+vmware_arm (Display *dpy, Window window)
+{
+  struct bsod_state *bst = make_bsod_state (dpy, window,
+                                            "vmware-arm", "VMwareArm");
+
+  unsigned i = 2;
+  unsigned msg_row;
+  unsigned long fg = bst->fg;
+  char t_string[25];
+  time_t t_now = time(NULL);
+  unsigned long font_height = bst->font->ascent + bst->font->descent;
+
+  unsigned long psod_bg = get_pixel_resource(dpy, bst->xgwa.colormap,
+                                           "vmware-arm-psod.background",
+                                           "vmware-arm-psod.background");
+  unsigned long term_bg = get_pixel_resource(dpy, bst->xgwa.colormap,
+                                           "vmware-arm-term.background",
+                                           "vmware-arm-term.background");
+  unsigned long term_fg2 = get_pixel_resource(dpy, bst->xgwa.colormap,
+                                            "vmware-arm-term.foreground2",
+                                            "vmware-arm-term.foreground2");
+  unsigned long term_fg3 = get_pixel_resource(dpy, bst->xgwa.colormap,
+                                            "vmware-arm-term.foreground3",
+                                            "vmware-arm-term.foreground3");
+  unsigned long dbg_bg = get_pixel_resource(dpy, bst->xgwa.colormap,
+                                           "vmware-arm-dbg.background",
+                                           "vmware-arm-dbg.background");
+  unsigned long dbg_fg = get_pixel_resource(dpy, bst->xgwa.colormap,
+                                           "vmware-arm-dbg.foreground",
+                                           "vmware-arm-dbg.foreground");
+  unsigned long fg2 = get_pixel_resource (dpy, bst->xgwa.colormap,
+                                          "vmware-arm.foreground2",
+                                          "vmware-arm.foreground2");
+
+  BSOD_WRAP (bst);
+  BSOD_MARGINS(bst, 0, 0);
+  BSOD_VERT_MARGINS(bst, 0, 0);
+
+  /*
+   * statusterm.
+   */
+  BSOD_TRUNCATE(bst);
+  BSOD_COLOR (bst, term_bg, fg);
+  BSOD_RECT (bst, True, 0, 0, bst->xgwa.width, bst->xgwa.height);
+  BSOD_MOVETO(bst, 0, font_height * 6);
+  BSOD_COLOR (bst, fg, term_bg);
+  BSOD_TEXT (bst, LEFT,
+    "                VMware ESXi 7.0.0 (VMKernel Release Build 19076756)");
+  BSOD_MOVETO(bst, 0, font_height * 8);
+  BSOD_COLOR (bst, fg, term_bg);
+  BSOD_TEXT (bst, LEFT, "                PINE64 Quartz64 Model A");
+  BSOD_MOVETO(bst, 0, font_height * 10);
+  BSOD_COLOR (bst, term_fg2, term_bg);
+  BSOD_TEXT (bst, LEFT, "                ARM Limited Cortex-A55 r2p0");
+  BSOD_MOVETO(bst, 0, font_height * 11);
+  BSOD_COLOR (bst, term_fg2, term_bg);
+  BSOD_TEXT (bst, LEFT, "                7.7 GiB Memory");
+
+  msg_row = 1 + (bst->xgwa.height / (font_height * 2));
+  if (msg_row > 11) {
+    BSOD_WRAP(bst);
+    BSOD_MOVETO(bst, 0, font_height * msg_row);
+    BSOD_COLOR (bst, term_fg3, term_bg);
+    strftime(t_string, sizeof(t_string), "%Y-%m-%dT%H:%M:%S.000Z",
+             localtime(&t_now));
+    BSOD_TEXT (bst, LEFT, t_string);
+    BSOD_TEXT (bst, LEFT,
+      " cpu0:65802)Failed to verify signatures of the following vib(s):"
+      " [bnxtnet bnxtroce brcmfcoe brcmnvmefc elx-esx-libelxima.so"
+      " eslxiscsi elxnet ena esx base esx-dvfilter-generic-fastpath"
+      " esx-ui esx-update i40en i40iwn iavmd igbn iser$");
+  }
+
+  BSOD_PAUSE (bst, 10000000);
+
+  /*
+   * Now the PSOD.
+   */
+  BSOD_TRUNCATE(bst);
+  BSOD_COLOR (bst, psod_bg, fg);
+  BSOD_RECT (bst, True, 0, 0, bst->xgwa.width, bst->xgwa.height);
+  BSOD_MOVETO(bst, 0, bst->font->ascent);
+  BSOD_COLOR (bst, fg2, psod_bg);
+  BSOD_TEXT   (bst, LEFT,
+               "VMware ESX 7.0.0 [Releasebuild-19076756 aarch64]\n");
+  BSOD_COLOR (bst, fg, psod_bg);
+  BSOD_LINE_DELAY (bst, 1000);
+  BSOD_TEXT   (bst, LEFT,
+    "EXCVEC_CUREL_SP_EL0_SYNCH Exception 0 in world 131126:HELPER_UPLIN"
+    " (ec 0x25 il 1 iss 0x47 far_el1 0x315d3541b8 far_el2 0x4501843b1000)"
+    "\nTTB=0x12ade8000"
+    "\nCurrentEL=2 SP_EL0 DAIF"
+    "\nSCTLR_EL2=0x30c0180d sa0 SA C a M"
+    "\n[ 0]     4501843b0000 [ 1]                0 [ 2]"
+    "             1000 [ 3]     4501843b1000"
+    "\n[ 4]     451a01b1be20 [ 5]                0 [ 6]"
+    "     4305be607a5a [ 7]     4200400001c0"
+    "\n[ 8]                0 [ 9]     451a01b1be20 [10]"
+    "                1 [11]                1"
+    "\n[12]         ffffed40 [13]     420040000080 [14]"
+    "     41fffa5d7000 [15]     41fffa5d7c20"
+    "\n[16]                1 [17]                4 [18]"
+    "     41fffa5d7c08 [19]     451a01b1be70"
+    "\n[20]     43024240b680 [21]     4305be601900 [22]"
+    "     4305be6012c0 [23]     41ffd0c00000"
+    "\n[24]     4305be601220 [25]          bad0001 [26]"
+    "                0 [27]     43006fc01220"
+    "\n[28]     4303d5001220 [29]                0 [30]     42003b3ceb6c"
+    "\n[pc]     42003a344d54 [sp]     451a01b1bdd0 [psr]        20000248"
+    "\n*PCPU0:131126/HELPER_UPLINK_ASYNC_CALL_QUEUE"
+    "\nPCPU  0: SUUU"
+    "\nCode start: 0x42003a200000 VMK uptime: 0:00:05:35.425"
+    "\n0x451a01b1bdd0:[0x42003a344d54]vmk_Memset@vmkernel#nover+0x28"
+    " stack: 0x42003b3cfa48"
+    "\n0x451a01b1bdd0:[0x42003b3ceb68]EQOSEnable@(eqos)#<None>+0xe0"
+    " stack: 0x42003b3cfa48"
+    "\n0x451a01b1be20:[0x42003b3c9220]SETHUplAssociate@(eqos)#<None>+0x88"
+    " stack: 0x43024240b680"
+    "\n0x451a01b1be80:[0x42003a48a078]UplinkDeviceAssociateAsyncCB"
+    "@vmkernel#nover+0x50 stack: 0x43024240bb08"
+    "\n0x451a01b1bed0:[0x42003a555a6c]UplinkAsyncProcessCallsHelperCB"
+    "@vmkernel#nover+0x12c stack: 0x451a01b21000"
+    "\n0x451a01b1bf20:[0x42003a2fd510]HelperQueueFunc@vmkernel#nover+0x174"
+    " stack: 0x451a01b21100"
+    "\n0x451a01b1bfe0:[0x42003a59e4fc]CpuSched_StartWorld@vmkernel#nover+0x70"
+    " stack: 0x0"
+    "\n0x451a01b1c000:[0x42003a5ec610]CpuSched_UseMwaitCallback"
+    "@vmkernel#nover+0x8 stack: 0x0"
+    "\nNo place on disk to dump data."
+    "\nCoredump to file: /vmfs/volumes/3a4fcb25-5f6ca096-c940-70886b86100c"
+    "/vmkdump/00000000-0000-0000-0000-000000000000.dumpfile."
+    "\nFaulting world regs (01/15)");
+  BSOD_PAUSE (bst, 300000);
+  BSOD_TEXT (bst, LEFT, "\nVmm code/data (02/15)");
+  BSOD_PAUSE (bst, 300000);
+  BSOD_TEXT (bst, LEFT,  "\nVmk code/rodata/stack (03/15)");
+  BSOD_PAUSE (bst, 300000);
+  BSOD_TEXT (bst, LEFT, "\nVmk data/heap (04/15)");
+  BSOD_PAUSE (bst, 300000);
+  BSOD_TEXT (bst, LEFT, "\nPCPU (05/15)");
+  BSOD_PAUSE (bst, 300000);
+  BSOD_TEXT (bst, LEFT, "\nWorld-specific data (06/15)");
+  BSOD_PAUSE (bst, 300000);
+  BSOD_TEXT (bst, LEFT, "\nVASpace (08/15)");
+  BSOD_PAUSE (bst, 1000000);
+  BSOD_TEXT (bst, LEFT,        "\nPFrame (09/15)");
+  BSOD_PAUSE (bst, 1000000);
+  BSOD_TEXT (bst, LEFT, "\nMemXferFs (11/15)");
+  BSOD_PAUSE (bst, 300000);
+  BSOD_TEXT (bst, LEFT, "\nDump Files (13/15)");
+  BSOD_PAUSE (bst, 600000);
+  BSOD_TEXT (bst, LEFT, "\nCollecting userworld dumps (14/15)");
+  BSOD_PAUSE (bst, 600000);
+  BSOD_TEXT (bst, LEFT,
+    "\nFinalized dump header (15/15) FileDump: Successful.");
+  BSOD_PAUSE (bst, 10000);
+  BSOD_TEXT (bst, LEFT,
+    "\nNo port for remote debugger. Press \"Escape\" for local debugger.");
+  BSOD_PAUSE (bst, 1000000);
+
+  /*
+   * Local debugger.
+   */
+  BSOD_COLOR (bst, dbg_bg, dbg_fg);
+  BSOD_RECT (bst, True, 0, 0, bst->xgwa.width, bst->xgwa.height);
+  BSOD_MOVETO(bst, 0, bst->font->ascent);
+  BSOD_TEXT (bst, LEFT, "vmkernel debugger (h for help)");
+  BSOD_RECT (bst, True, 0, bst->font->ascent + bst->font->descent / 2,
+            bst->xgwa.width, bst->font->ascent);
+  BSOD_COLOR (bst, dbg_fg, dbg_bg);
+  BSOD_TEXT (bst, LEFT, "\n[PCPU2] VMKDBG> _");
+  while (i--) {
+    BSOD_PAUSE (bst, 1000000);
+    BSOD_TEXT (bst, LEFT, "\bh_");
+    BSOD_PAUSE (bst, 10000);
+    BSOD_TEXT (bst, LEFT, "\b \nh       : help"
+              "\nreboot  : reboot"
+              "\nlivedump: Create live coredump without crashing system"
+              "\nl       : display vmkernel log"
+              "\np       : display content of symbol"
+              "\ns       : display storage dump+boot info"
+              "\nx       : display 32-bit content of address"
+              "\nx/N     : display N bytes of content at address"
+              "\ng port  : bind remote debugger to port (com1 or com2)"
+              "\nbt N    : show backtrace for CPU N"
+              "\nq       : quit debug terminal"
+              "\n[PCPU2] VMKDBG> _");
+  }
+  BSOD_PAUSE (bst, 100000);
+  BSOD_TEXT (bst, LEFT, "\bre_");
+  BSOD_PAUSE (bst, 500000);
+  BSOD_TEXT (bst, LEFT, "\bb_");
+  BSOD_PAUSE (bst, 50000);
+  BSOD_TEXT (bst, LEFT, "\bo_");
+  BSOD_PAUSE (bst, 50000);
+  BSOD_TEXT (bst, LEFT, "\bo_");
+  BSOD_PAUSE (bst, 50000);
+  BSOD_TEXT (bst, LEFT, "\bt_");
+  BSOD_PAUSE (bst, 2000000);
+  BSOD_COLOR (bst, dbg_bg, dbg_fg);
+  BSOD_RECT (bst, True, 0, 0, bst->xgwa.width, bst->xgwa.height);
+  BSOD_PAUSE (bst, 1000000);
+
+  XClearWindow (dpy, window);
+  return bst;
+}
+
 
 /* Windows NT 3.1 - 4.0
  */
@@ -1357,29 +1569,30 @@ windows_nt (Display *dpy, Window window)
 
   case 3:
     BSOD_TEXT (bst, CENTER,
-   "Microsoft (R) Windows NT (R) Version 5.0 (Build 1796)\n"
-   "1 System Processor [128 MB Memory] MultiProcessor Kernel\n"
-   "\n"
-   "*** STOP: 0x0000006B (0xC000003A, 0x00000002,0x00000000,0x00000000)\n"
-   "PROCESS1_INITIALIZATION_FAILED\n"
-   "\n"
-   "If this is the first time you[ve seen this Stop error screen,\n"
-   "restart your computer. If this screen appears again, follow\n"
-   "these steps:\n"
-   "\n"
-   "Check to make sure any new hardware or software is properly installed.\n"
-   "If this is a new installation, ask your hardware or software manufacturer\n"
-   "for any Windows NT updates you might need.\n"
-   "\n"
-   "If problems continue, disable or remove any newly installed hardware\n"
-   "or software. Disable BIOS memory options such as caching or shadowing.\n"
-   "If you need to use Safe Mode to remove or disable components, restart\n"
-   "your computer, press F8 to select Advanced Startup Options, and then\n"
-   "select Safe Mode.\n"
-   "\n"
-   "Refer to your Getting Started manual for more information on\n"
-   "troubleshooting Stop errors.\n"
-      "\n");
+     "Microsoft (R) Windows NT (R) Version 5.0 (Build 1796)\n"
+     "1 System Processor [128 MB Memory] MultiProcessor Kernel\n"
+     "\n"
+     "*** STOP: 0x0000006B (0xC000003A, 0x00000002,0x00000000,0x00000000)\n"
+     "PROCESS1_INITIALIZATION_FAILED\n"
+     "\n"
+     "If this is the first time you[ve seen this Stop error screen,\n"
+     "restart your computer. If this screen appears again, follow\n"
+     "these steps:\n"
+     "\n"
+     "Check to make sure any new hardware or software is properly installed.\n"
+     "If this is a new installation, ask your hardware or software"
+     " manufacturer\n"
+     "for any Windows NT updates you might need.\n"
+     "\n"
+     "If problems continue, disable or remove any newly installed hardware\n"
+     "or software. Disable BIOS memory options such as caching or shadowing.\n"
+     "If you need to use Safe Mode to remove or disable components, restart\n"
+     "your computer, press F8 to select Advanced Startup Options, and then\n"
+     "select Safe Mode.\n"
+     "\n"
+     "Refer to your Getting Started manual for more information on\n"
+     "troubleshooting Stop errors.\n"
+     "\n");
     break;
   default:
     abort();
@@ -1559,35 +1772,35 @@ windows_xp (Display *dpy, Window window)
     break;
   case 5:  /* Windows 8 */
     BSOD_TEXT (bst, LEFT,
-      "A problem has been detected and windows has been shut down to prevent\n"
-      "damage to your computer.\n"
-      "\n"
-      "SYSTEM_SERVICE_EXCEPTION\n"
-      "\n"
-      "If this is the first time you[ve seen this Stop error screen,\n"
-      "restart your computer. If this screen appears again, follow\n"
-      "these steps:\n"
-      "\n"
-      "Check to make sure any new hardware or software is properly installed.\n"
-      "If this is a new installation, ask your hardware or software"
-      " manufacturer\n"
-      "for any Windows NT updates you might need.\n"
-      "\n"
-      "If problems continue, disable or remove any newly installed hardware\n"
-      "or software. Disable BIOS memory options such as caching or shadowing.\n"
-      "If you need to use Safe Mode to remove or disable components, restart\n"
-      "your computer, press F8 to select Advanced Startup Options, and then\n"
-      "select Safe Mode.\n"
-      "\n"
-      "Technical information:\n"
-      "\n"
-      "*** STOP: 0x0000003B (0x00000000c000005,0xFFFFF880041C9062,"
-               "0xFFFFF88002E22F60,0x0000000000000000(\n"
-      "\n"
-      "***   dxgmms1.sys - Address FFFFF880041C9062 base at FFFFF8800418F000,"
-               " DateStamp 4cdb7409\n"
-      "\n"
-      "Collecting data for crash dump ...\n");
+     "A problem has been detected and windows has been shut down to prevent\n"
+     "damage to your computer.\n"
+     "\n"
+     "SYSTEM_SERVICE_EXCEPTION\n"
+     "\n"
+     "If this is the first time you[ve seen this Stop error screen,\n"
+     "restart your computer. If this screen appears again, follow\n"
+     "these steps:\n"
+     "\n"
+     "Check to make sure any new hardware or software is properly installed.\n"
+     "If this is a new installation, ask your hardware or software"
+     " manufacturer\n"
+     "for any Windows NT updates you might need.\n"
+     "\n"
+     "If problems continue, disable or remove any newly installed hardware\n"
+     "or software. Disable BIOS memory options such as caching or shadowing.\n"
+     "If you need to use Safe Mode to remove or disable components, restart\n"
+     "your computer, press F8 to select Advanced Startup Options, and then\n"
+     "select Safe Mode.\n"
+     "\n"
+     "Technical information:\n"
+     "\n"
+     "*** STOP: 0x0000003B (0x00000000c000005,0xFFFFF880041C9062,"
+              "0xFFFFF88002E22F60,0x0000000000000000(\n"
+     "\n"
+     "***   dxgmms1.sys - Address FFFFF880041C9062 base at FFFFF8800418F000,"
+              " DateStamp 4cdb7409\n"
+     "\n"
+     "Collecting data for crash dump ...\n");
     BSOD_PAUSE (bst, 4000000);
     BSOD_TEXT (bst, LEFT,
       "Initializing disk for for crash dump ...\n");
@@ -1999,6 +2212,13 @@ windows_ransomware (Display *dpy, Window window)
     "Well actually, your screen isn't needed anymore.",
     "u just got popped with some 0day shit!!",
     "M'lady,",
+    "ALL UR APES ARE GONE!!1",
+    "Oops, all your apes are gone!",
+    "Oops, all your apes are gone!!",
+    "Oops, all ur tokens have been funged!",
+    "Oops, all your turkens have been funged!",
+    "Oops, all your tokens have been funged!",
+    "YOUR TOKENS ARE FUNGED. PRAY I DO NOT FUNGE THEM FURTHER.",
   };
 
   const char *header_quip = header_quips[random() % countof(header_quips)];
@@ -2015,9 +2235,19 @@ windows_ransomware (Display *dpy, Window window)
     "you are bad and you should feel bad",
     "you used the wifi at defcon",
     "you lack official Clown Strike[TM] threaty threat technology",
+    "Capitalism is a death cult",
+    "Web3 is in full effect",
+    "paperclip maximizers gonna paperclip maximize",
+    "the line is pleased",
+    "line goes up",
+    "you didn't HODL",
+    "you didn't click hard enough and now Tinkerbelle is dead",
+    "of your tesla stonks",
+    "MAMMON HUNGERS",
   };
 
-  const char *excuse_quip = excuse_quips[random() % countof(excuse_quips)];
+  const char *excuse_quip   = excuse_quips[random() % countof(excuse_quips)];
+  const char *excuse_quip_2 = excuse_quips[random() % countof(excuse_quips)];
 
   /* WELL ACTUALLY, screensavers aren't really necessary anymore because... */
   const char * const screensaver_quips[] = {
@@ -2062,8 +2292,7 @@ windows_ransomware (Display *dpy, Window window)
     "payment, press <Check Payment>. Best time to check: 4-6am, Mon-Fri.\n",
     "\n",
     "*Why Did I Get This?\n",
-    "You got this because ", "[Q]",
-    ". Also you didn't click hard enough and now Tinkerbelle is dead.\n",
+    "You got this because ", "[Q]", ". Also ", "[Q2]", ".\n",
     "\n",
     "*But Aren't Screensavers Are Necessary?\n",
     "WELL ACTUALLY, screensavers aren't really necessary anymore because ",
@@ -2136,6 +2365,9 @@ windows_ransomware (Display *dpy, Window window)
   int top_height, bottom_height;
   int x, y;
 
+  while (excuse_quip == excuse_quip_2)
+    excuse_quip_2 = excuse_quips[random() % countof(excuse_quips)];
+
   if (bst->xgwa.width > 2560) n++;  /* Retina displays */
   for (i = 0; i < n; i++)
     {
@@ -2278,7 +2510,8 @@ windows_ransomware (Display *dpy, Window window)
     {
       const char *s = lines[i];
       if (!strcmp(s, "[C]")) s = currency;
-      else if  (!strcmp(s, "[Q]")) s = excuse_quip;
+      else if  (!strcmp(s, "[Q]"))  s = excuse_quip;
+      else if  (!strcmp(s, "[Q2]")) s = excuse_quip_2;
       else if  (!strcmp(s, "[S]")) s = screensaver_quip;
 
       if (*s == '*')
@@ -2312,7 +2545,8 @@ windows_ransomware (Display *dpy, Window window)
                x + left_column_width + margin,
                y + top_height + right_column_height + line_height * 2);
 
-  sprintf(buf, "Send $%.2f of %s to this address:\n", 101+frand(888), currency);
+  sprintf(buf, "Send $%.2f of %s to this address:\n", 101+frand(888),
+          currency);
   BSOD_TEXT (bst, LEFT, buf);
   BSOD_COLOR (bst, fg2, bg2);
 
@@ -6489,6 +6723,7 @@ static const struct {
   { "GLaDOS",          glados },
   { "Android",         android },
   { "VMware",          vmware },
+  { "VMwareArm",       vmware_arm },
   { "Encom",           encom },
   { "DVD",             dvd },
   { "Tivo",            tivo },
@@ -6814,6 +7049,7 @@ static const char *bsod_defaults [] = {
   "*doGLaDOS:             True",
   "*doAndroid:            False",
   "*doVMware:             True",
+  "*doVMwareArm:          True",
   "*doEncom:              True",
   "*doDVD:                True",
   "*doTivo:               True",
@@ -6930,6 +7166,16 @@ static const char *bsod_defaults [] = {
   ".vmware.foreground2:           Yellow",
   ".vmware.background:    #a700a8",    /* purple */
 
+  ".vmware-arm.foreground:       #FFFFFF",
+  ".vmware-arm.foreground2:      #FFFF00",
+  ".vmware-arm.background:       #555555",
+  ".vmware-arm-psod.background:  #a700a8",
+  ".vmware-arm-dbg.background:   #000000",
+  ".vmware-arm-dbg.foreground:   #ABABAB",
+  ".vmware-arm-term.background:  #555555",
+  ".vmware-arm-term.foreground2: #AAAAAA",
+  ".vmware-arm-term.foreground3: #FF5757",
+
   ".tivo.background:      #339020",
   ".tivo.foreground:      #B8E6BA",
 
@@ -7078,6 +7324,8 @@ static const XrmOptionDescRec bsod_options [] = {
   { "-no-android",     ".doAndroid",           XrmoptionNoArg,  "False" },
   { "-vmware",         ".doVMware",            XrmoptionNoArg,  "True"  },
   { "-no-vmware",      ".doVMware",            XrmoptionNoArg,  "False" },
+  { "-vmware-arm",     ".doVMwareArm",         XrmoptionNoArg,  "True"  },
+  { "-no-vmware-arm",  ".doVMwareArm",         XrmoptionNoArg,  "False" },
   { "-encom",          ".doEncom",             XrmoptionNoArg,  "True"  },
   { "-no-encom",       ".doEncom",             XrmoptionNoArg,  "False" },
   { "-dvd",            ".doDVD",               XrmoptionNoArg,  "True"  },
index de054fc1b1f2c9261154d5110b73eff0164d2ea0..dce09e0334bbe8954d4218557e2ec839795dc375 100644 (file)
@@ -3,10 +3,11 @@
 bsod \- Blue Screen of Death emulator
 .SH SYNOPSIS
 .B bsod
-[\-display \fIhost:display.screen\fP] [\-foreground \fIcolor\fP]
-[\-background \fIcolor\fP] [\-window] [\-root] [\-mono] [\-install]
-[\-visual \fIvisual\fP] [\-delay \fIseconds\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP] [\-\-foreground \fIcolor\fP]
+[\-\-background \fIcolor\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-mono] [\-\-install]
+[\-\-visual \fIvisual\fP] [\-\-delay \fIseconds\fP]
+[\-\-fps]
 .SH DESCRIPTION
 The
 .I bsod
@@ -24,29 +25,32 @@ NCD X Terminals.
 .I bsod
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-mono 
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-mono 
 If on a color display, pretend we're on a monochrome display.
 .TP 8
-.B \-install
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-delay \fIdelay\fP
+.B \-\-delay \fIdelay\fP
 The duration each crash-mode is displayed before selecting another.
 .TP 8
-.B \-only \fIwhich\fP
-Tell it to run only one mode, e.g., \fI\-only HPUX\fP.
+.B \-\-only \fIwhich\fP
+Tell it to run only one mode, e.g., \fI\-\-only HPUX\fP.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -57,6 +61,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH X RESOURCES
 Notable X resources supported include the following, which control which
 hacks are displayed and which aren't.
@@ -95,7 +102,7 @@ by default, because they're really not all that interesting looking
 unless you're a fan of those systems.  
 
 There are command-line options for all of these:
-e.g., \fI\-bsd\fP, \fI\-no-bsd\fP.  (Also note the \fI\-only\fP option.)
+e.g., \fI\-\-bsd\fP, \fI\-\-no-bsd\fP.  (Also note the \fI\-\-only\fP option.)
 .SH BUGS
 Unlike the systems being simulated, \fIbsod\fP does not require a
 reboot after running.
index 25d77f69c38136ed246cb0c5fc5fd260a4829c2a..5e1ac0688c74dcd02521d8d0122d100934ab4a0d 100644 (file)
@@ -3,8 +3,10 @@
 bubbles \- frying pan / soft drink simulation
 .SH SYNOPSIS
 .B bubbles
-[\-display \fIhost:display.screen\fP] [\-foreground \fIcolor\fP] [\-background \fIcolor\fP] [\-window] [\-root] [\-mono] [\-install] [\-visual \fIvisual\fP] [\-simple] [\-broken] [\-3D] [\-rise|\-drop] [-trails]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP] [\-\-foreground \fIcolor\fP]
+[\-\-background \fIcolor\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-mono] [\-\-install] [\-\-visual \fIvisual\fP] [\-\-simple] [\-\-broken] [\-3D] [\-\-rise|\-\-drop] [-trails]
+[\-\-fps]
 .SH DESCRIPTION
 \fIBubbles\fP sprays lots of little random bubbles all over the window which
 then grow until they reach their maximum size and go pop.  The inspiration
@@ -17,43 +19,46 @@ Depending on how your
 .I bubbles
 was compiled, it accepts the following options:
 .TP 8
-.B \-foreground
-Colour of circles if \fI\-simple\fP mode is selected.
+.B \-\-foreground
+Colour of circles if \fI\-\-simple\fP mode is selected.
 .TP 8
-.B \-background
+.B \-\-background
 Colour of window background.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-mono 
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-mono 
 If on a color display, pretend we're on a monochrome display.
 .TP 8
-.B \-install
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-delay microseconds
+.B \-\-delay microseconds
 How much of a delay should be introduced between steps of the animation.
 Default 800, or about 800 microsecond.  Actually, this is the delay between each
 group of 15 new bubbles since such a delay between each step results in a
 very slow animation rate.
 .TP 8
-.B \-nodelay
-Same as \fI\-delay 0\fP.
+.B \-\-nodelay
+Same as \fI\-\-delay 0\fP.
 .TP 8
-.B \-simple
+.B \-\-simple
 Don't use the default fancy pixmap bubbles.  Just draw circles instead.
 This may give more bearable performance if your hardware wasn't made for
 this sort of thing.
 .TP 8
-.B \-broken
+.B \-\-broken
 Don't hide bubbles when they pop.  This was a bug during development
 but the results were actually quite attractive.
 .TP 8
@@ -66,25 +71,25 @@ whole thing looks more realistic but I find it attracts attention to
 the flickering of each bubble as they are move and are redrawn.  Your
 mileage may vary.
 .TP 8
-.B \-quiet
+.B \-\-quiet
 Don't print messages explaining why one or several command line options
 were ignored.  This is disabled by default.
 .TP 8
-.B \-rise | \-drop 
+.B \-\-rise | \-\-drop 
 .TP 8
-.B \-trails
+.B \-\-trails
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH NOTES
 If you find the pace of things too slow, remember that there is a delay
-even though you specify no \fI\-delay\fP option.  Try using \fI\-nodelay\fP
+even though you specify no \fI\-\-delay\fP option.  Try using \fI\-\-nodelay\fP
 although beware of the effects of irritation of other users if you're on a 
 shared system as you bleed their CPU time away.
 
 Some tools to assist in creation of new bubbles are included in the source
-distribution.  These can either be loaded with the \fI\-file\fP or
-\fI\-directory\fP options (if available) or they can be used in place
+distribution.  These can either be loaded with the \fI\-\-file\fP or
+\fI\-\-directory\fP options (if available) or they can be used in place
 of the distributed default bubble (bubble_default.c).
 You might like to copy these scripts to a permanent location and
 use them.  Read bubbles.README.
@@ -101,7 +106,7 @@ The movement of the bubbles looks jerky if an incomplete set of bubbles
 is used.  
 
 The hide/display algorithm could do with some work to avoid flickering
-when \fI\-nodelay\fP is set.
+when \fI\-\-nodelay\fP is set.
 .SH ENVIRONMENT
 .PP
 .TP 8
@@ -111,6 +116,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 717c1c37bc5877ae24c27888c7d474f37f51a312..117bc93a7ea53e9ae4df7f9fbe75e11e85ea365f 100644 (file)
@@ -3,17 +3,18 @@
 bumps \- move distorting spotlight around desktop
 .SH SYNOPSIS
 .B bumps
-[\-display \fIhost:display.screen\fP]
-[\-foreground \fIcolor\fP]
-[\-background \fIcolor\fP]
-[\-window]
-[\-root]
-[\-mono]
-[\-install]
-[\-visual \fIvisual\fP]
-[\-delay \fIusecs\fP]
-[\-duration \fIsecs\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-foreground \fIcolor\fP]
+[\-\-background \fIcolor\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-mono]
+[\-\-install]
+[\-\-visual \fIvisual\fP]
+[\-\-delay \fIusecs\fP]
+[\-\-duration \fIsecs\fP]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIbumps\fP program takes an image and exposes small, distorted
 sections of it as if through an odd wandering spotlight beam.
@@ -30,29 +31,32 @@ for more details.
 .I bumps
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-mono 
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-mono 
 If on a color display, pretend we're on a monochrome display.
 .TP 8
-.B \-install
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-delay \fImicroseconds\fP
+.B \-\-delay \fImicroseconds\fP
 Slow it down.
 .TP 8
-.B \-duration \fIseconds\fP
+.B \-\-duration \fIseconds\fP
 How long to run before loading a new image.  Default 120 seconds.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -63,6 +67,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1),
index d2b8ae846050341eecee6489ccff173ecf424b6e..8c5b05376cbe19176df8c7339dd3441ccb046308 100644 (file)
@@ -3,38 +3,42 @@
 ccurve \- self-similar linear fractals.
 .SH SYNOPSIS
 .B ccurve
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-pause \fInumber\fP]
-[\-limit \fInumber\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-pause \fInumber\fP]
+[\-\-limit \fInumber\fP]
+[\-\-fps]
 .SH DESCRIPTION
 Generates self-similar linear fractals, including the classic ``C Curve.''
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Delay. 0 - 60.  Default: 1.
 .TP 8
-.B \-pause \fInumber\fP
+.B \-\-pause \fInumber\fP
 Duration.  1 - 60.  Default: 3.
 .TP 8
-.B \-limit \fInumber\fP
+.B \-\-limit \fInumber\fP
 Density.  3 - 300000.  Default: 200000.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -45,6 +49,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 06b81d70f11e19caa754c0db567641dceb241b84..a0218c1afbd55bd8031b45843f00acdfe17740f7 100644 (file)
@@ -3,42 +3,46 @@
 celtic \- draws celtic cross-stich patterns
 .SH SYNOPSIS
 .B ifs
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-delay2 \fInumber\fP]
-[\-ncolors \fInumber\fP]
-[\-graph \fImode\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-delay2 \fInumber\fP]
+[\-\-ncolors \fInumber\fP]
+[\-\-graph \fImode\fP]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIceltic\fP program repeatedly draws random cross-stitch patterns.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 10000.
 .TP 8
-.B \-delay2 \fInumber\fP
+.B \-\-delay2 \fInumber\fP
 Delay between patterns, in seconds.  Default: 5.
 .TP 8
-.B \-ncolors \fInumber\fP
+.B \-\-ncolors \fInumber\fP
 Number of colours to use. Default: 20.
 .TP 8
-.B \-graph
+.B \-\-graph
 Whether to render the underlying graph.  Default: no.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -49,6 +53,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index c94d77b3bc3e33ce10db7e9cfb5bc8b5c454fcdb..6b2326e7b0f882ae8c592f97a1d6eb9d84d3abc6 100644 (file)
@@ -3,9 +3,11 @@
 cloudlife \- a cellular automaton based on Conway's Life
 .SH SYNOPSIS
 .B cloudlife
-[\-display \fIhost:display.screen\fP] [\-foreground \fIcolor\fP] [\-background \fIcolor\fP] [\-window] [\-root] [\-mono] [\-install] [\-visual \fIvisual\fP] [\-ncolors \fIinteger\fP] [\-cycle-delay \fImicroseconds\fP] [\-cycle-colors \fIinteger\fP][\-cell-size \fIinteger\fP] [\-initial-density \fIinteger\fP] [\-max-age \fIinteger\fP]
+[\-\-display \fIhost:display.screen\fP] [\-\-foreground \fIcolor\fP]
+[\-\-background \fIcolor\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-mono] [\-\-install] [\-\-visual \fIvisual\fP] [\-\-ncolors \fIinteger\fP] [\-\-cycle-delay \fImicroseconds\fP] [\-\-cycle-colors \fIinteger\fP][\-\-cell-size \fIinteger\fP] [\-\-initial-density \fIinteger\fP] [\-\-max-age \fIinteger\fP]
 
-[\-fps]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIcloudlife\fP program draws a cellular
 automaton based on Conway's Life, except that
@@ -15,44 +17,47 @@ cell is drawn every tick.
 .I cloudlife
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-mono 
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-mono 
 If on a color display, pretend we're on a monochrome display.
 .TP 8
-.B \-install
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-cycle-delay \fIinteger\fP
+.B \-\-cycle-delay \fIinteger\fP
 Time in microseconds to sleep between ticks.  Default 25000.
 .TP 8
-.B \-cycle-colors \fIinteger\fP
+.B \-\-cycle-colors \fIinteger\fP
 How many ticks should elapse between cycling colors.  0 to disable
 color cycling.  Default 2.
 .TP 8
-.B \-ncolors \fIinteger\fP
+.B \-\-ncolors \fIinteger\fP
 How many colors should be used (if possible).  Default 64.
 The colors are chosen randomly.
 .TP 8
-.B \-cell-size \fIinteger\fP
+.B \-\-cell-size \fIinteger\fP
 Size of each cell, in powers of 2.  Default 3 (8-pixel cells).
 .TP 8
-.B \-initial-density \fIinteger\fP
+.B \-\-initial-density \fIinteger\fP
 Percentage of cells that are alive at start and when the
 field is repopulated.  Default 30.  
 .TP 8
-.B \-max-age \fIinteger\fP
+.B \-\-max-age \fIinteger\fP
 Maximum age for a cell.  Default 64.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -63,6 +68,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1),
index 13ffde4b22e1ba69252c445a73082e79d28e821e..3e959128bc9886e46d1ce0260ba976b491315019 100644 (file)
@@ -3,35 +3,39 @@
 compass \- draws a spinning compass.
 .SH SYNOPSIS
 .B compass
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-no-db]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-no-db]
+[\-\-fps]
 .SH DESCRIPTION
 This draws a compass, with all elements spinning about randomly, for that
 ``lost and nauseous'' feeling.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 20000 (0.02 seconds.).
 .TP 8
-.B \-db | \-no-db
+.B \-\-db | \-\-no-db
 Double Buffer. Boolean.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -42,6 +46,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 8d8ac1260017cc3cb3ade57274cbbf93fb58ee9e..e411a1266a229df0a0216c0d734cee327cf1f296 100644 (file)
@@ -2,30 +2,29 @@
 
 <screensaver name="abstractile" _label="Abstractile">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=NgSetBY6VP4"/>
 
-  <number id="speed" type="slider" arg="-speed %"
+  <number id="speed" type="slider" arg="--speed %"
           _label="Speed" _low-label="Slow" _high-label="Fast"
-          low="0" high="5" default="3"
-          convert="ratio"/>
+          low="0" high="5" default="3"/>
 
-  <number id="sleep" type="slider" arg="-sleep %"
+  <number id="sleep" type="slider" arg="--sleep %"
             _label="Linger" _low-label="0 seconds" _high-label="60 seconds"
             low="0" high="60" default="3"/>
 
   <select id="tile">
     <option id="random" _label="Random tile layout"/>
-    <option id="random" _label="Flat tiles"    arg-set="-tile flat"/>
-    <option id="random" _label="Thin tiles"    arg-set="-tile thin"/>
-    <option id="random" _label="Outline tiles" arg-set="-tile outline"/>
-    <option id="random" _label="Block tiles"   arg-set="-tile block"/>
-    <option id="random" _label="Neon tiles"    arg-set="-tile neon"/>
-    <option id="random" _label="Tiled tiles"   arg-set="-tile tiled"/>
+    <option id="random" _label="Flat tiles"    arg-set="--tile flat"/>
+    <option id="random" _label="Thin tiles"    arg-set="--tile thin"/>
+    <option id="random" _label="Outline tiles" arg-set="--tile outline"/>
+    <option id="random" _label="Block tiles"   arg-set="--tile block"/>
+    <option id="random" _label="Neon tiles"    arg-set="--tile neon"/>
+    <option id="random" _label="Tiled tiles"   arg-set="--tile tiled"/>
   </select>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 90dff7a38b9535473c9fc739c9ce591fa22a33f7..92b047d0c77521abddc0b6fd21056372b7ad9706 100644 (file)
@@ -2,54 +2,42 @@
 
 <screensaver name="anemone" _label="Anemone">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=usITxM2YJZs"/>
 
-<!--
- -withdraw 1200
- -turnspeed 50
--->
-
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Speed" _low-label="Slow" _high-label="Fast"
             low="0" high="80000" default="40000"
             convert="invert"/>
 
-    <number id="arms" type="slider" arg="-arms %"
+    <number id="arms" type="slider" arg="--arms %"
              _label="Arms" _low-label="Few" _high-label="Many"
             low="2" high="500" default="128"/>
 
-    <number id="finpoints" type="slider" arg="-finpoints %"
+    <number id="finpoints" type="slider" arg="--finpoints %"
              _label="Tentacles" _low-label="Few" _high-label="Many"
             low="3" high="200" default="64"/>
    </vgroup>
 
    <vgroup>
-    <number id="width" type="slider" arg="-width %"
+    <number id="width" type="slider" arg="--width %"
              _label="Thickness" _low-label="Thin" _high-label="Thick"
             low="1" high="10" default="2"/>
 
-    <number id="withdraw" type="slider" arg="-withdraw %"
+    <number id="withdraw" type="slider" arg="--withdraw %"
              _label="Withdraw freqency" _low-label="Often" _high-label="Rarely"
             low="12" high="10000" default="1200"/>
 
-    <number id="turnspeed" type="slider" arg="-turnspeed %"
+    <number id="turnspeed" type="slider" arg="--turnspeed %"
              _label="Turn speed" _low-label="Slow" _high-label="Fast"
             low="0" high="1000" default="50"/>
-
-  <!--
-    <number id="ncolors" type="slider" arg="-ncolors %"
-              _label="Number of colors" _low-label="Two" _high-label="Many"
-              low="2" high="255" default="64"/>
-  -->
-
    </vgroup>
   </hgroup>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 6c3785f71ecc4110d62b046d7be8486bbff6135d..b5ef17b0578b1cd10d9fc77777e086135238c04c 100644 (file)
@@ -2,28 +2,28 @@
 
 <screensaver name="anemotaxis" _label="Anemotaxis">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=hIqmIQbQkW8"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="20000"
           convert="invert"/>
 
-  <number id="distance" type="slider" arg="-distance %"
+  <number id="distance" type="slider" arg="--distance %"
            _label="Distance" _low-label="Near" _high-label="Far"
           low="10" high="250" default="40"/>
 
-  <number id="sources" type="slider" arg="-sources %"
+  <number id="sources" type="slider" arg="--sources %"
            _label="Sources" _low-label="Few" _high-label="Many"
           low="1" high="100" default="25"/>
 
-  <number id="searchers" type="slider" arg="-searchers %"
+  <number id="searchers" type="slider" arg="--searchers %"
            _label="Searchers" _low-label="Few" _high-label="Many"
           low="1" high="100" default="25"/>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 8bb74235342631219af6611f1042bbc9ae6a742d..414346e2cf7ea2f2bd87e8c54e15f863b84c9b71 100644 (file)
@@ -2,56 +2,56 @@
 
 <screensaver name="ant" _label="Ant">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=PaG7RCO4ezs"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="20000"
             convert="invert"/>
 
-    <number id="cycles" type="slider" arg="-cycles %"
+    <number id="cycles" type="slider" arg="--cycles %"
              _label="Timeout" _low-label="Small" _high-label="Large"
             low="0" high="800000" default="40000"/>
 
     <hgroup>
-     <boolean id="sharpturn" _label="Sharp turns" arg-set="-sharpturn"/>
-     <boolean id="truchet" _label="Truchet lines" arg-set="-truchet"/>
-     <boolean id="eyes" _label="Draw eyes" arg-set="-eyes"/>
+     <boolean id="sharpturn" _label="Sharp turns" arg-set="--sharpturn"/>
+     <boolean id="truchet" _label="Truchet lines" arg-set="--truchet"/>
+     <boolean id="eyes" _label="Draw eyes" arg-set="--eyes"/>
     </hgroup>
    </vgroup>
 
    <vgroup>
-    <number id="ncolors" type="slider" arg="-ncolors %"
+    <number id="ncolors" type="slider" arg="--ncolors %"
               _label="Number of colors" _low-label="Three" _high-label="Many"
               low="3" high="255" default="64"/>
 
 
     <hgroup>
-     <number id="count" type="spinbutton" arg="-count %"
+     <number id="count" type="spinbutton" arg="--count %"
              _label="Ants count" low="-20" high="20" default="-3"/>
-     <number id="size" type="spinbutton" arg="-size %"
+     <number id="size" type="spinbutton" arg="--size %"
               _label="Ant size" low="-18" high="18" default="-12"/>
     </hgroup>
 
     <select id="neighbors">
       <option id="rand" _label="Random cell shape"/>
       <option id="three" _label="Three sided cells"
-              arg-set="-neighbors 3"/>
+              arg-set="--neighbors 3"/>
       <option id="four" _label="Four sided cells"
-              arg-set="-neighbors 4"/>
+              arg-set="--neighbors 4"/>
       <option id="six" _label="Six sided cells"
-              arg-set="-neighbors 6"/>
+              arg-set="--neighbors 6"/>
       <option id="nine" _label="Nine sided cells"
-              arg-set="-neighbors 9"/>
+              arg-set="--neighbors 9"/>
       <option id="twelve" _label="Twelve sided cells"
-              arg-set="-neighbors 12"/>
+              arg-set="--neighbors 12"/>
     </select>
 
-    <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+    <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
    </vgroup>
   </hgroup>
 
index 9878e6b77f1040726980d62d7b4d7e06a725937d..e6df0b9bea89fd0a412bb88b5b0f1822a06881a3 100644 (file)
@@ -2,18 +2,18 @@
 
 <screensaver name="antinspect" _label="Ant Inspect" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=Ecw9dDc0db0"/>
 
-  <number id="speed" type="slider" arg="-delay %"
+  <number id="speed" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="20000"
           convert="invert"/>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
-  <boolean id="shadows" _label="Draw shadows" arg-set="-shadows"/>
+  <boolean id="shadows" _label="Draw shadows" arg-set="--shadows"/>
 
   <xscreensaver-updater />
 
index 3344c240daa8164f90cf09ba52b15601c2774f9e..8cd2e1dac0c424ccb3b292f12d286b8d95c6512b 100644 (file)
@@ -2,16 +2,16 @@
 
 <screensaver name="antmaze" _label="Ant Maze" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=Bwa5-n6UUj8"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="20000"
           convert="invert"/>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 3df385c7444ff75c1af7a4f32122d73fac965376..62c70be6211f618ad8d8426749b52e9d95d8037c 100644 (file)
@@ -2,18 +2,18 @@
 
 <screensaver name="antspotlight" _label="Ant Spotlight" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=NYisFYtODTA"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="20000"
           convert="invert"/>
 
   <xscreensaver-image />
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 72d0e415d23ff9a6d5ec88e4097c7422ef4bb3f4..d7cd52d7de086052cc9a7da574415f83f2744207 100644 (file)
@@ -2,31 +2,29 @@
 
 <screensaver name="apollonian" _label="Apollonian">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=aeWnjSROR8U"/>
 
-  <boolean id="label" _label="Draw labels" arg-unset="-no-label"/>
+  <boolean id="label" _label="Draw labels" arg-unset="--no-label"/>
 
   <boolean id="altgeom" _label="Include alternate geometries"
-           arg-unset="-no-altgeom"/>
+           arg-unset="--no-altgeom"/>
 
-<!-- don't know what -count does -->
-
-  <number id="cycles" type="slider" arg="-cycles %"
+  <number id="cycles" type="slider" arg="--cycles %"
            _label="Depth" _low-label="Shallow" _high-label="Deep"
           low="1" high="20" default="20"/>
 
-  <number id="ncolors" type="slider" arg="-ncolors %"
+  <number id="ncolors" type="slider" arg="--ncolors %"
             _label="Number of colors" _low-label="Two" _high-label="Many"
             low="2" high="255" default="64"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Speed" _low-label="Slow" _high-label="Fast"
           low="0" high="1000000" default="1000000"
           convert="invert"/>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index dcfa241a7fe53cc8ce7793db7b4abc94d167c346..835e90ad96825f2cde5912b15507ac868031ee05 100644 (file)
@@ -2,7 +2,7 @@
 
 <screensaver name="apple2" _label="Apple ][">
 
- <command arg="-root"/>
+ <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=p3QZqhp67l8"/>
 
   <vgroup>
    <select id="mode">
     <option id="random"    _label="Choose display mode randomly"/>
-    <option id="text"      _label="Display scrolling text" arg-set="-mode text"/>
-    <option id="slideshow" _label="Display images"         arg-set="-mode slideshow"/>
-    <option id="basic"     _label="Run basic programs"     arg-set="-mode basic"/>
+    <option id="text"      _label="Display scrolling text" arg-set="--mode text"/>
+    <option id="slideshow" _label="Display images"         arg-set="--mode slideshow"/>
+    <option id="basic"     _label="Run basic programs"     arg-set="--mode basic"/>
    </select>
 
    <xscreensaver-text />
   </vgroup>
   <vgroup>
-   <number id="duration" type="slider" arg="-duration %"
+   <number id="duration" type="slider" arg="--duration %"
            _label="Duration" _low-label="10 seconds" _high-label="10 minutes"
            low="10" high="600" default="60"/>
 
    <xscreensaver-image />
-   <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+   <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
    <xscreensaver-updater />
   </vgroup>
 
    <vgroup>
-    <number id="tvcolor" type="slider" arg="-tv-color %"
+    <number id="tvcolor" type="slider" arg="--tv-color %"
             _label="Color Knob" _low-label="Low" _high-label="High"
             low="0" high="400" default="70"/>
-    <number id="tvtint" type="slider" arg="-tv-tint %"
+    <number id="tvtint" type="slider" arg="--tv-tint %"
             _label="Tint Knob" _low-label="Low" _high-label="High"
             low="0" high="360" default="5"/>
-    <number id="tvbrightness" type="slider" arg="-tv-brightness %"
+    <number id="tvbrightness" type="slider" arg="--tv-brightness %"
             _label="Brightness Knob" _low-label="Low" _high-label="High"
             low="-75.0" high="100.0" default="3.0"/>
-    <number id="tvcontrast" type="slider" arg="-tv-contrast %"
+    <number id="tvcontrast" type="slider" arg="--tv-contrast %"
             _label="Contrast Knob" _low-label="Low" _high-label="High"
             low="0" high="500" default="150"/>
    </vgroup>
index 2e06b8540f74eeade9b3f7c89e3f5776f10f80fc..151531879f1485c597ee4434d895a3e5cc76b8b0 100644 (file)
@@ -2,42 +2,42 @@
 
 <screensaver name="atlantis" _label="Atlantis" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=U78xPez5UGg"/>
 
-  <number id="sharkspeed" type="slider" arg="-delay %"
+  <number id="sharkspeed" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="25000"
           convert="invert"/>
 
-  <number id="whalespeed" type="slider" arg="-whalespeed %"
+  <number id="whalespeed" type="slider" arg="--whalespeed %"
            _label="Whale speed" _low-label="Slow" _high-label="Fast"
           low="0" high="1000" default="250"/>
 
-  <number id="sharkproximity" type="slider" arg="-size %"
+  <number id="sharkproximity" type="slider" arg="--size %"
           _label="Shark proximity" _low-label="Shy" _high-label="Agressive"
           low="100" high="10000" default="6000"/>
 
-  <number id="sharkcount" type="slider" arg="-count %"
+  <number id="sharkcount" type="slider" arg="--count %"
           _label="Number of sharks" _low-label="None" _high-label="20"
           low="0" high="20" default="4"/>
 
   <hgroup>
    <select id="water">
      <option id="shimmer" _label="Shimmering water"/>
-     <option id="clear"   _label="Clear water" arg-set="-no-texture"/>
+     <option id="clear"   _label="Clear water" arg-set="--no-texture"/>
    </select>
 
    <select id="bg">
-     <option id="flat"     _label="Flat background" arg-set="-no-gradient"/>
+     <option id="flat"     _label="Flat background" arg-set="--no-gradient"/>
      <option id="gradient" _label="Gradient background"/>
    </select>
   </hgroup>
 
   <hgroup>
-   <boolean id="wire"    _label="Wireframe"              arg-set="-wireframe"/>
-   <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+   <boolean id="wire"    _label="Wireframe"              arg-set="--wireframe"/>
+   <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
   </hgroup>
 
   <xscreensaver-updater />
index 97f9e92f59b565f503d1730239eafdea768f46a8..54034aca13a98db86032140a2c8c3420ec1d6b03 100644 (file)
@@ -2,53 +2,53 @@
 
 <screensaver name="attraction" _label="Attraction">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=KAT9nkXCdms"/>
 
   <hgroup>
   <select id="mode">
     <option id="balls"    _label="Balls"/>
-    <option id="lines"    _label="Lines"    arg-set="-mode lines"/>
-    <option id="tails"    _label="Tails"    arg-set="-mode tails"/>
-    <option id="polygons" _label="Polygons" arg-set="-mode polygons"/>
-    <option id="splines"  _label="Splines"  arg-set="-mode splines"/>
+    <option id="lines"    _label="Lines"    arg-set="--mode lines"/>
+    <option id="tails"    _label="Tails"    arg-set="--mode tails"/>
+    <option id="polygons" _label="Polygons" arg-set="--mode polygons"/>
+    <option id="splines"  _label="Splines"  arg-set="--mode splines"/>
     <option id="fsplines" _label="Filled splines"
-                                           arg-set="-mode filled-splines"/>
+                                           arg-set="--mode filled-splines"/>
   </select>
 
   <select id="wallmode">
     <option id="walls"   _label="Bounce off walls"/>
-    <option id="nowalls" _label="Ignore screen edges" arg-set="-nowalls"/>
+    <option id="nowalls" _label="Ignore screen edges" arg-set="--nowalls"/>
   </select>
 
   </hgroup>
 
   <hgroup>
    <vgroup>
-    <number id="points" type="spinbutton" arg="-points %"
+    <number id="points" type="spinbutton" arg="--points %"
               _label="Ball count" low="0" high="200" default="0"/>
-    <number id="viscosity" type="slider" arg="-viscosity %"
+    <number id="viscosity" type="slider" arg="--viscosity %"
             _label="Environmental viscosity"
             _low-label="Low" _high-label="High"
             low="0.0" high="1.0" default="1.0"
             convert="invert"/>
-    <number id="segments" type="slider" arg="-segments %"
+    <number id="segments" type="slider" arg="--segments %"
             _label="Trail length" _low-label="Short" _high-label="Long"
             low="2" high="1000" default="500"/>
-    <number id="ncolors" type="slider" arg="-colors %"
+    <number id="ncolors" type="slider" arg="--colors %"
               _label="Number of colors" _low-label="Two" _high-label="Many"
               low="1" high="255" default="200"/>
    </vgroup>
    <vgroup>
-    <number id="size" type="slider" arg="-size %"
+    <number id="size" type="slider" arg="--size %"
               _low-label="Ball mass" _high-label="High"
               low="0" high="100" default="0"/>
-    <number id="threshold" type="slider" arg="-threshold %"
+    <number id="threshold" type="slider" arg="--threshold %"
             _label="Repulsion threshold"
             _low-label="Small" _high-label="Large"
             low="0" high="600" default="200"/>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Speed" _low-label="Slow" _high-label="Fast"
             low="0" high="40000" default="10000"
             convert="invert"/>
   </hgroup>
 
   <hgroup>
-    <boolean id="orbit" _label="Orbital mode" arg-set="-orbit"/>
-    <number id="radius" type="spinbutton" arg="-radius %"
+    <boolean id="orbit" _label="Orbital mode" arg-set="--orbit"/>
+    <number id="radius" type="spinbutton" arg="--radius %"
               _label="Radius" low="0" high="1000" default="0"/>
-    <number id="vmult" type="slider" arg="-vmult %"
+    <number id="vmult" type="slider" arg="--vmult %"
             _low-label="Outward" _high-label="Inward"
             low="-5.0" high="5.0" default="0.9"/>
   </hgroup>
 
-  <!-- #### -vx [?] -->
-  <!-- #### -vy [?] -->
-  <!-- #### -glow -->
-  <!-- #### -nomaxspeed -->
-  <!-- #### -correct-bounce -->
-  <!-- #### -graphmode [none] -->
-
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index eea3b96928d35fe17aa073049312a9f76832c492..3279368f626850ecd3e83745c2dff8c00e3a430f 100644 (file)
@@ -2,19 +2,19 @@
 
 <screensaver name="atunnel" _label="Atunnel" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=mpCRbi3jkuc"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="10000"
           convert="invert"/>
 
-  <boolean id="tex"     _label="Textured"    arg-unset="-no-texture"/>
-  <boolean id="light"   _label="Lighting"    arg-set="-light"/>
-  <boolean id="wire"    _label="Wireframe"   arg-set="-wireframe"/>
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="tex"     _label="Textured"    arg-unset="--no-texture"/>
+  <boolean id="light"   _label="Lighting"    arg-set="--light"/>
+  <boolean id="wire"    _label="Wireframe"   arg-set="--wireframe"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 55f1b2c1244d37d014d41dbe08c72cb279d5b0c5..3f00483dac0ae0d27690734e531a8675ead31879 100644 (file)
@@ -2,23 +2,23 @@
 
 <screensaver name="barcode" _label="Barcode">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=gmtAySJdsfg"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="10000"
           convert="invert"/>
 
   <select id="mode">
     <option id="scroll"  _label="Scrolling barcodes"/>
-    <option id="scroll"  _label="Barcode grid"            arg-set="-mode grid"/>
-    <option id="clock12" _label="Barcode clock (AM/PM)"   arg-set="-mode clock12"/>
-    <option id="clock24" _label="Barcode clock (24 hour)" arg-set="-mode clock24"/>
+    <option id="scroll"  _label="Barcode grid"            arg-set="--mode grid"/>
+    <option id="clock12" _label="Barcode clock (AM/PM)"   arg-set="--mode clock12"/>
+    <option id="clock24" _label="Barcode clock (24 hour)" arg-set="--mode clock24"/>
   </select>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 581ebf92d0ce7722025abb01d67b85020c2d114f..2278ee682db7ea120c0338c5ae8d284d8bbbdafb 100644 (file)
@@ -2,34 +2,34 @@
 
 <screensaver name="beats" _label="Beats" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=u7N5l0LXryg"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="30000"
           convert="invert"/>
 
-  <number id="count" type="slider" arg="-count %"
+  <number id="count" type="slider" arg="--count %"
           _label="Number of balls" _low-label="Few" _high-label="Many"
           low="1" high="100" default="30"/>
 
   <select id="cycle">
    <option id="random" _label="Random cycle style"/>
-   <option _label="Clockwise cycle"  arg-set="-cycle 0"/>
-   <option _label="Rain dance cycle" arg-set="-cycle 1"/>
-   <option _label="Metronome cycle"  arg-set="-cycle 2"/>
-   <option _label="Galaxy cycle"     arg-set="-cycle 3"/>
+   <option _label="Clockwise cycle"  arg-set="--cycle 0"/>
+   <option _label="Rain dance cycle" arg-set="--cycle 1"/>
+   <option _label="Metronome cycle"  arg-set="--cycle 2"/>
+   <option _label="Galaxy cycle"     arg-set="--cycle 3"/>
   </select>
 
   <hgroup>
-   <boolean id="tick"    _label="Tick"         arg-unset="-no-tick"/>
-   <boolean id="blur"    _label="Motion Blur"  arg-unset="-no-blur"/>
-   <boolean id="wire"    _label="Wireframe"    arg-set="-wireframe"/>
+   <boolean id="tick"    _label="Tick"         arg-unset="--no-tick"/>
+   <boolean id="blur"    _label="Motion Blur"  arg-unset="--no-blur"/>
+   <boolean id="wire"    _label="Wireframe"    arg-set="--wireframe"/>
   </hgroup>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 5219a99d7b4c2313d543e95c4d85d5b7919017bb..a19f0fd2fa88b5c8833ee5838d3bbc67fe2aa5a1 100644 (file)
@@ -2,26 +2,26 @@
 
 <screensaver name="binaryhorizon" _label="Binary Horizon">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=upB7CSoxNTs"/>
 
-  <number id="growth-delay" type="slider" arg="-growth-delay %"
+  <number id="growth-delay" type="slider" arg="--growth-delay %"
           _label="Growth delay" _low-label="Low" _high-label="High"
           low="0" high="100000" default="10000" />
 
-  <number id="particles-number" type="slider" arg="-particles-number %"
+  <number id="particles-number" type="slider" arg="--particles-number %"
           _label="Number of particles" _low-label="Few" _high-label="Lots"
           low="100" high="20000" default="5000" />
 
-  <number id="duration" type="slider" arg="-duration %"
+  <number id="duration" type="slider" arg="--duration %"
           _label="Duration" _low-label="1 sec" _high-label="2 minutes"
           low="1" high="120" default="30" />
 
-  <boolean id="color" _label="Random colors" arg-unset="-no-color"/>
-  <boolean id="bicolor" _label="Two contrasting colors" arg-unset="-monocolor"/>
-  <boolean id="no-fade" _label="Randomize every particle's color" arg-set="-no-fade"/>
-  <boolean id="fps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="color" _label="Random colors" arg-unset="--no-color"/>
+  <boolean id="bicolor" _label="Two contrasting colors" arg-unset="--monocolor"/>
+  <boolean id="no-fade" _label="Randomize every particle's color" arg-set="--no-fade"/>
+  <boolean id="fps" _label="Show frame rate" arg-set="--fps"/>
   <xscreensaver-updater />
 
   <_description>
index 479d40e3e60c417f4c2205935fcb79778cad855d..c5f9c7c46c89ba602dc2261f562be136d36b2e38 100644 (file)
@@ -2,23 +2,23 @@
 
 <screensaver name="binaryring" _label="Binary Ring">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=KPiJb0Qm1SE"/>
 
-  <number id="growth-delay" type="slider" arg="-growth-delay %"
+  <number id="growth-delay" type="slider" arg="--growth-delay %"
           _label="Growth delay" _low-label="Low" _high-label="High"
           low="0" high="100000" default="10000" />
 
-  <number id="ring-radius" type="slider" arg="-ring-radius %"
+  <number id="ring-radius" type="slider" arg="--ring-radius %"
           _label="Ring Radius"  _low-label="Short" _high-label="Long"
           low="0" high="400" default="40" />
 
-  <number id="particles-number" type="slider" arg="-particles-number %"
+  <number id="particles-number" type="slider" arg="--particles-number %"
           _label="Number of particles" _low-label="Few" _high-label="Lots"
           low="500" high="20000" default="5000" />
 
-  <boolean id="color" _label="Fade with colors" arg-unset="-no-color"/>
+  <boolean id="color" _label="Fade with colors" arg-unset="--no-color"/>
 
   <xscreensaver-updater />
 
index d7cb42db44f93ceb519be36ef60004b30d3fa7b1..af99825051d6eb361076954927032df6d7b1d828 100644 (file)
@@ -2,55 +2,26 @@
 
 <screensaver name="blaster" _label="Blaster">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=bp3J3si2Hr0"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="10000"
           convert="invert"/>
 
-  <number id="num_robots" type="spinbutton" arg="-num_robots %"
+  <number id="num_robots" type="spinbutton" arg="--num_robots %"
           _label="Robots" low="2" high="50" default="5"/>
 
-  <number id="num_lasers" type="spinbutton" arg="-num_lasers %"
+  <number id="num_lasers" type="spinbutton" arg="--num_lasers %"
           _label="Lasers" low="1" high="100" default="3"/>
 
-  <number id="num_stars" type="slider" arg="-num_stars %"
+  <number id="num_stars" type="slider" arg="--num_stars %"
           _label="Stars" _low-label="Few" _high-label="Many"
           low="5" high="200" default="50"/>
 
-  <!-- #### -move_stars_x [2] -->
-  <!-- #### -move_stars_y [1] -->
-  <!-- #### -move_stars_random [0] -->
-  <!-- #### -star_color [white] -->
-
-  <!-- #### -explode_size_1 [27] -->
-  <!-- #### -explode_size_2 [19] -->
-  <!-- #### -explode_size_3 [7] -->
-  <!-- #### -explode_color_1 [yellow] -->
-  <!-- #### -explode_color_2 [orange] -->
-
-  <!-- #### -r_color0 [magenta] -->
-  <!-- #### -r_color1 [orange] -->
-  <!-- #### -r_color2 [yellow] -->
-  <!-- #### -r_color3 [white] -->
-  <!-- #### -r_color4 [blue] -->
-  <!-- #### -r_color5 [cyan] -->
-  <!-- #### -l_color0 [green] -->
-  <!-- #### -l_color1 [red] -->
-
-  <!-- #### -mother_ship -->
-  <!-- #### -mother_ship_width [25] -->
-  <!-- #### -mother_ship_height [7] -->
-  <!-- #### -mother_ship_laser [15] -->
-  <!-- #### -mother_ship_period [150] -->
-  <!-- #### -mother_ship_hits [10] -->
-  <!-- #### -mother_ship_color0 [darkblue] -->
-  <!-- #### -mother_ship_color1 [white] -->
-
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 0f84baf2f37ebd1855abeef85079ef1138ad0777..6d24cc8f45356b73d994761a617597c84940f443 100644 (file)
@@ -2,27 +2,27 @@
 
 <screensaver name="blinkbox" _label="Blink Box" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=lgjbHMcSd8U"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="30000"
           convert="invert"/>
 
-  <number id="boxsize" type="slider" arg="-boxsize %"
+  <number id="boxsize" type="slider" arg="--boxsize %"
           _label="Box size" _low-label="Small" _high-label="Large"
           low="1" high="8" default="2"/>
 
   <hgroup>
-   <boolean id="fade"      _label="Fade"        arg-unset="-no-fade"/>
-   <boolean id="blur"      _label="Motion blur" arg-unset="-no-blur"/>
-   <boolean id="dissolve"  _label="Dissolve"    arg-set="-dissolve"/>
-   <boolean id="wire"      _label="Wireframe"   arg-set="-wireframe"/>
+   <boolean id="fade"      _label="Fade"        arg-unset="--no-fade"/>
+   <boolean id="blur"      _label="Motion blur" arg-unset="--no-blur"/>
+   <boolean id="dissolve"  _label="Dissolve"    arg-set="--dissolve"/>
+   <boolean id="wire"      _label="Wireframe"   arg-set="--wireframe"/>
   </hgroup>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 42b1edb8a1e1eec377c3efb739e57c1cc4fb7284..fdecc328ecce06c0f1a77e26a776b0f8ee534f5d 100644 (file)
@@ -2,31 +2,30 @@
 
 <screensaver name="blitspin" _label="Blit Spin">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=UTtcwb-UWW8"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Fuzzy rotation speed" _low-label="Slow" _high-label="Fast"
             low="1" high="800000" default="500000"
             convert="invert"/>
 
-    <number id="delay2" type="slider" arg="-delay2 %"
+    <number id="delay2" type="slider" arg="--delay2 %"
             _label="90 degree rotation speed" _low-label="Slow" _high-label="Fast"
             low="1" high="800000" default="500000"
             convert="invert"/>
 
-    <number id="duration" type="slider" arg="-duration %"
+    <number id="duration" type="slider" arg="--duration %"
             _label="Duration" _low-label="10 seconds" _high-label="10 minutes"
             low="10" high="600" default="120"/>
    </vgroup>
 
    <vgroup>
-    <!--  <file id="bitmap" _label="Bitmap to rotate" arg="-bitmap %"/> -->
     <xscreensaver-image />
-    <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+    <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
    </vgroup>
   </hgroup>
 
index 87d91c1b4a678cd520a263f8b637819fce478efc..364a3ff3419510e719bd8c3730a3b422eed16382 100644 (file)
@@ -2,26 +2,26 @@
 
 <screensaver name="blocktube" _label="Block Tube" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=L0JUBhpZlMw"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
            low="0" high="100000" default="40000"
           convert="invert"/>
 
-  <number id="holdtime" type="slider" arg="-holdtime %"
+  <number id="holdtime" type="slider" arg="--holdtime %"
           _label="Color hold time" _low-label="Short" _high-label="Long"
           low="10" high="2000" default="1000"/>
 
-  <number id="changetime" type="slider" arg="-changetime %"
+  <number id="changetime" type="slider" arg="--changetime %"
           _label="Color change time" _low-label="Short" _high-label="Long"
           low="10" high="1000" default="200"/>
 
-  <boolean id="tex"     _label="Textured"  arg-unset="-no-texture"/>
-  <boolean id="wire"    _label="Wireframe"   arg-set="-wireframe"/>
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="tex"     _label="Textured"  arg-unset="--no-texture"/>
+  <boolean id="wire"    _label="Wireframe"   arg-set="--wireframe"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 9983e8664b7af54cf4f7ffe2ed88ed0e111c94e9..dbdd84411112ca226081fb54435e7c86efa6daa7 100644 (file)
@@ -2,34 +2,34 @@
 
 <screensaver name="boing" _label="Boing" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=J3KAsV31d6M"/>
 
-  <number id="size" type="slider" arg="-size %"
+  <number id="size" type="slider" arg="--size %"
           _label="Size" _low-label="Tiny" _high-label="Huge"
           low="0.02" high="0.9" default="0.5"/>
 
-  <number id="speed" type="slider" arg="-speed %"
+  <number id="speed" type="slider" arg="--speed %"
           _label="Speed" _low-label="Slow" _high-label="Fast"
           low="0.1" high="10.0" default="1.0"
           convert="ratio"/>
 
   <vgroup>
    <hgroup>
-    <number id="meridians" type="spinbutton" arg="-meridians %"
+    <number id="meridians" type="spinbutton" arg="--meridians %"
             _label="Meridians" low="1" high="90" default="16"/>
-    <number id="parallels" type="spinbutton" arg="-parallels %"
+    <number id="parallels" type="spinbutton" arg="--parallels %"
             _label="Parallels" low="1" high="90" default="8"/>
    </hgroup>
    <hgroup>
-    <boolean id="smoothing" _label="Smoothing" arg-set="-smooth"/>
-    <boolean id="lighting"  _label="Lighting" arg-set="-lighting"/>
-    <boolean id="scanlines" _label="Scanlines" arg-unset="-no-scanlines"/>
+    <boolean id="smoothing" _label="Smoothing" arg-set="--smooth"/>
+    <boolean id="lighting"  _label="Lighting" arg-set="--lighting"/>
+    <boolean id="scanlines" _label="Scanlines" arg-unset="--no-scanlines"/>
    </hgroup>
    <hgroup>
-    <boolean id="wire"      _label="Wireframe" arg-set="-wireframe"/>
-    <boolean id="showfps"   _label="Show frame rate" arg-set="-fps"/>
+    <boolean id="wire"      _label="Wireframe" arg-set="--wireframe"/>
+    <boolean id="showfps"   _label="Show frame rate" arg-set="--fps"/>
    </hgroup>
   </vgroup>
 
index b28912eece23680c3d1b17a0e74aa66517c8ad30..08dd7d5a9b9548897b310b1b997ce297d659d2bc 100644 (file)
@@ -2,26 +2,26 @@
 
 <screensaver name="bouboule" _label="Bouboule">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=MdmIBmlkyFw"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="20000"
           convert="invert"/>
 
-  <number id="count" type="slider" arg="-count %"
+  <number id="count" type="slider" arg="--count %"
           _label="Number of spots" _low-label="Few" _high-label="Many"
           low="1" high="400" default="100"/>
 
-  <number id="ncolors" type="slider" arg="-ncolors %"
+  <number id="ncolors" type="slider" arg="--ncolors %"
             _label="Number of colors" _low-label="Two" _high-label="Many"
             low="1" high="255" default="64"/>
 
-  <boolean id="3d" _label="Do Red/Blue 3D separation" arg-unset="-no-3d"/>
+  <boolean id="3d" _label="Do Red/Blue 3D separation" arg-unset="--no-3d"/>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index af849cf5e07336831ce33f0f1f2e50c7ea841f65..f4a17ecca16326c815c8e8dcf965816b5b246c43 100644 (file)
@@ -2,30 +2,30 @@
 
 <screensaver name="bouncingcow" _label="Bouncing Cow" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=O_b5UWhv49w"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="30000"
           convert="invert"/>
 
-  <number id="speed" type="slider" arg="-speed %"
+  <number id="speed" type="slider" arg="--speed %"
           _label="Bounce speed" _low-label="Slow" _high-label="Fast"
           low="0.05" high="2.0" default="1.0"
           convert="ratio"/>
 
-  <number id="count" type="slider" arg="-count %"
+  <number id="count" type="slider" arg="--count %"
           _label="Number of cows" _low-label="Moo" _high-label="Herd"
           low="1" high="9" default="1"/>
 
   <boolean id="mathematical"
    _label="Mathematically ideal cows (spherical, frictionless)"
-   arg-set="-mathematical"/>
+   arg-set="--mathematical"/>
 
-  <boolean id="wire"    _label="Wireframe" arg-set="-wireframe"/>
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="wire"    _label="Wireframe" arg-set="--wireframe"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index e5230bd08c189ea9ab1944d1084abeb00fe31efd..8412e160108bbae8405def9b2597976828d61ab5 100644 (file)
@@ -2,27 +2,27 @@
 
 <screensaver name="boxed" _label="Boxed" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=CU4QFtZm9So"/>
 
   <hgroup>
    <vgroup>
 
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="15000"
             convert="invert"/>
-    <number id="speed" type="slider" arg="-speed %"
+    <number id="speed" type="slider" arg="--speed %"
             _label="Speed" _low-label="Slow" _high-label="Fast"
             low="0.001" high="4.0" default="0.5"
             convert="ratio"/>
 
-    <number id="balls" type="slider" arg="-balls %"
+    <number id="balls" type="slider" arg="--balls %"
             _label="Number of balls" _low-label="Few" _high-label="Lots"
             low="3" high="40" default="20"/>
 
-    <number id="ballsize" type="slider" arg="-ballsize %"
+    <number id="ballsize" type="slider" arg="--ballsize %"
             _label="Ball size" _low-label="Tiny" _high-label="Huge"
             low="1.0" high="5.0" default="3.0"/>
 
 
    <vgroup>
 
-    <number id="explosion" type="slider" arg="-explosion %"
+    <number id="explosion" type="slider" arg="--explosion %"
             _label="Explosion force" _low-label="Popcorn" _high-label="Nuke"
             low="1.0" high="50.0" default="15.0"/>
 
-    <number id="decay" type="slider" arg="-decay %"
+    <number id="decay" type="slider" arg="--decay %"
             _label="Explosion decay" _low-label="Linger" _high-label="Pop!"
             low="0.0" high="1.0" default="0.07"/>
 
-    <number id="momentum" type="slider" arg="-momentum %"
+    <number id="momentum" type="slider" arg="--momentum %"
             _label="Explosion momentum" _low-label="None" _high-label="Full"
             low="0.0" high="1.0" default="0.6"/>
 
-   <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
-   <boolean id="wire"    _label="Wireframe" arg-set="-wireframe"/>
+   <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
+   <boolean id="wire"    _label="Wireframe" arg-set="--wireframe"/>
 
    </vgroup>
   </hgroup>
index 2ccf42bea6884eeb0d0d1d7f869770059c86a424..e8dcbdd3e9d45a043b09253155d0f93257bfe138 100644 (file)
@@ -2,43 +2,43 @@
 
 <screensaver name="boxfit" _label="Box Fit">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=8GkcbBbcwBk"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="20000"
             convert="invert"/>
 
     <hgroup>
-     <number id="count" type="spinbutton" arg="-count %"
+     <number id="count" type="spinbutton" arg="--count %"
              _label="Boxes" low="1" high="1000" default="50"/>
 
-     <number id="growby" type="spinbutton" arg="-growby %"
+     <number id="growby" type="spinbutton" arg="--growby %"
              _label="Grow by" low="1" high="10" default="1"/>
     </hgroup>
 
     <hgroup>
-     <number id="spacing" type="spinbutton" arg="-spacing %"
+     <number id="spacing" type="spinbutton" arg="--spacing %"
              _label="Spacing" low="1" high="10" default="1"/>
 
-     <number id="border" type="spinbutton" arg="-border %"
+     <number id="border" type="spinbutton" arg="--border %"
              _label="Border" low="1" high="10" default="1"/>
     </hgroup>
 
     <hgroup>
      <select id="mode">
        <option id="random"  _label="Boxes or circles"/>
-       <option id="boxes"   _label="Boxes only"   arg-set="-mode squares"/>
-       <option id="circles" _label="Circles only" arg-set="-mode circles"/>
+       <option id="boxes"   _label="Boxes only"   arg-set="--mode squares"/>
+       <option id="circles" _label="Circles only" arg-set="--mode circles"/>
      </select>
 
      <select id="mode2">
        <option id="gradient" _label="Color gradient"/>
-       <option id="image"    _label="Grab images" arg-set="-grab"/>
+       <option id="image"    _label="Grab images" arg-set="--grab"/>
      </select>
     </hgroup>
    </vgroup>
@@ -46,9 +46,9 @@
    <vgroup>
     <xscreensaver-image />
 
-    <boolean id="peek" _label="Peek at underlying images" arg-set="-peek"/>
+    <boolean id="peek" _label="Peek at underlying images" arg-set="--peek"/>
 
-    <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+    <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
    </vgroup>
   </hgroup>
 
index b49fa2237d184f8518d9f6a9d023772fce805f55..d5f3edcfe16ebe3e517c7800b7caedac1d2c13a0 100644 (file)
@@ -2,32 +2,32 @@
 
 <screensaver name="braid" _label="Braid">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=PUhJq56ViGM"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="1000"
           convert="invert"/>
 
-  <number id="cycles" type="slider" arg="-cycles %"
+  <number id="cycles" type="slider" arg="--cycles %"
            _label="Duration" _low-label="Short" _high-label="Long"
           low="0" high="500" default="100"/>
 
-  <number id="ncolors" type="slider" arg="-ncolors %"
+  <number id="ncolors" type="slider" arg="--ncolors %"
             _label="Number of colors" _low-label="Two" _high-label="Many"
             low="1" high="255" default="64"/>
 
   <hgroup>
-  <number id="count" type="spinbutton" arg="-count %"
+  <number id="count" type="spinbutton" arg="--count %"
           _label="Number of rings" low="3" high="15" default="15"/>
 
-  <number id="size" type="spinbutton" arg="-size %"
+  <number id="size" type="spinbutton" arg="--size %"
            _label="Line thickness" low="-20" high="20" default="-7"/>
   </hgroup>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index b23240b412ac59ea589265b392187dced3f5cda2..aad37f6bf539488d4856ce62eeef4344af1af110 100644 (file)
@@ -2,71 +2,71 @@
 
 <screensaver name="bsod" _label="BSOD">
 
- <command arg="-root"/>
+ <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=YIqbMCfR3r0"/>
 
  <hgroup>
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Duration" _low-label="5 seconds" _high-label="2 minutes"
           low="5" high="120" default="45"/>
-<!--  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/> -->
  </hgroup>
 
  <hgroup>
   <vgroup>
-   <boolean id="windows"    _label="Windows 3.1"    arg-unset="-no-windows"/>
-   <boolean id="nt"         _label="Windows NT"     arg-unset="-no-nt"/>
-   <boolean id="2k"         _label="Windows 2000  " arg-unset="-no-2k"/>
-   <boolean id="win10"      _label="Windows 10    " arg-unset="-no-win10"/>
+   <boolean id="windows"    _label="Windows 3.1"     arg-unset="--no-windows"/>
+   <boolean id="nt"         _label="Windows NT"      arg-unset="--no-nt"/>
+   <boolean id="2k"         _label="Windows 2000  "  arg-unset="--no-2k"/>
+   <boolean id="win10"      _label="Windows 10    "  arg-unset="--no-win10"/>
+   <boolean id="vmwareArm"  _label="VMware ESXi-Arm" arg-unset="--no-vmwareArm"/>   
   </vgroup>
   <vgroup>
-   <boolean id="msdos"      _label="MS-DOS"         arg-unset="-no-msdos"/>
-   <boolean id="glados"     _label="GLaDOS"         arg-unset="-no-glados"/>
-   <boolean id="amiga"      _label="AmigaDOS"       arg-unset="-no-amiga"/>
-   <boolean id="android"    _label="Android"        arg-set="-android"/>
+   <boolean id="msdos"      _label="MS-DOS"         arg-unset="--no-msdos"/>
+   <boolean id="glados"     _label="GLaDOS"         arg-unset="--no-glados"/>
+   <boolean id="amiga"      _label="AmigaDOS"       arg-unset="--no-amiga"/>
+   <boolean id="android"    _label="Android"        arg-set="--android"/>
   </vgroup>
   <vgroup>
-   <boolean id="apple2"     _label="Apple ]["       arg-unset="-no-apple2"/>
-   <boolean id="ransomware" _label="Ransomware"     arg-unset="-no-ransomware"/>
-   <boolean id="nvidia"     _label="NVidia"         arg-unset="-no-nvidia"/>
-   <boolean id="os2"        _label="OS/2"           arg-unset="-no-os2"/>
+   <boolean id="apple2"     _label="Apple ]["       arg-unset="--no-apple2"/>
+   <boolean id="ransomware" _label="Ransomware"     arg-unset="--no-ransomware"/>
+   <boolean id="nvidia"     _label="NVidia"         arg-unset="--no-nvidia"/>
+   <boolean id="os2"        _label="OS/2"           arg-unset="--no-os2"/>
   </vgroup>
   <vgroup>
-   <boolean id="mac"        _label="Sad Mac"        arg-unset="-no-mac"/>
-   <boolean id="mac1"       _label="Mac bomb"       arg-unset="-no-mac1"/>
-   <boolean id="macsbug"    _label="MacsBug"        arg-unset="-no-macsbug"/>
-   <boolean id="macx"       _label="MacOS X"        arg-unset="-no-macx"/>
+   <boolean id="mac"        _label="Sad Mac"        arg-unset="--no-mac"/>
+   <boolean id="mac1"       _label="Mac bomb"       arg-unset="--no-mac1"/>
+   <boolean id="macsbug"    _label="MacsBug"        arg-unset="--no-macsbug"/>
+   <boolean id="macx"       _label="MacOS X"        arg-unset="--no-macx"/>
   </vgroup>
   <vgroup>
-   <boolean id="vmware"     _label="VMware"         arg-unset="-no-vmware"/>
-   <boolean id="atari"      _label="Atari"          arg-set="-atari"/>
-   <boolean id="os390"      _label="OS/390"         arg-unset="-no-os390"/>
-   <boolean id="hvx"        _label="HVX/GCOS"       arg-unset="-no-hvx"/>
+   <boolean id="vmware"     _label="VMware"         arg-unset="--no-vmware"/>
+   <boolean id="atari"      _label="Atari"          arg-set="--atari"/>
+   <boolean id="os390"      _label="OS/390"         arg-unset="--no-os390"/>
+   <boolean id="hvx"        _label="HVX/GCOS"       arg-unset="--no-hvx"/>
   </vgroup>
   <vgroup>
-   <boolean id="encom"      _label="Encom"          arg-unset="-no-encom"/>
-   <boolean id="blitdamage" _label="NCD XTerm"      arg-unset="-no-blitdamage"/>
-   <boolean id="atm"        _label="ATM"            arg-unset="-no-atm"/>
-   <boolean id="dvd"        _label="DVD"            arg-unset="-no-dvd"/>
+   <boolean id="encom"      _label="Encom"          arg-unset="--no-encom"/>
+   <boolean id="blitdamage" _label="NCD XTerm"      arg-unset="--no-blitdamage"/>
+   <boolean id="atm"        _label="ATM"            arg-unset="--no-atm"/>
+   <boolean id="dvd"        _label="DVD"            arg-unset="--no-dvd"/>
   </vgroup>
   <vgroup>
-   <boolean id="nintendo"   _label="Nintendo"       arg-unset="-no-nintendo"/>
-   <boolean id="tivo"       _label="Tivo"           arg-unset="-no-tivo"/>
-   <boolean id="vms"        _label="VMS"            arg-unset="-no-vms"/>
-   <boolean id="bsd"        _label="BSD"            arg-set="-bsd"/>
+   <boolean id="nintendo"   _label="Nintendo"       arg-unset="--no-nintendo"/>
+   <boolean id="tivo"       _label="Tivo"           arg-unset="--no-tivo"/>
+   <boolean id="vms"        _label="VMS"            arg-unset="--no-vms"/>
+   <boolean id="bsd"        _label="BSD"            arg-set="--bsd"/>
   </vgroup>
   <vgroup>
-   <boolean id="linux"      _label="Linux (fsck)"   arg-unset="-no-linux"/>
-   <boolean id="sparclinux" _label="Linux (sparc)"  arg-set="-sparclinux"/>
-   <boolean id="hppalinux"  _label="Linux (hppa)"   arg-unset="-no-hppalinux"/>
-   <boolean id="solaris"    _label="Solaris"        arg-unset="-no-solaris"/>
+   <boolean id="linux"      _label="Linux (fsck)"   arg-unset="--no-linux"/>
+   <boolean id="sparclinux" _label="Linux (sparc)"  arg-set="--sparclinux"/>
+   <boolean id="hppalinux"  _label="Linux (hppa)"   arg-unset="--no-hppalinux"/>
+   <boolean id="solaris"    _label="Solaris"        arg-unset="--no-solaris"/>
   </vgroup>
   <vgroup>
-   <boolean id="sco"        _label="SCO"            arg-unset="-no-sco"/>
-   <boolean id="hpux"       _label="HPUX"           arg-unset="-no-hpux"/>
-   <boolean id="tru64"      _label="Tru64"          arg-unset="-no-tru64"/>
-   <boolean id="gnome"      _label="GNOME"          arg-unset="-no-gnome"/>
+   <boolean id="sco"        _label="SCO"            arg-unset="--no-sco"/>
+   <boolean id="hpux"       _label="HPUX"           arg-unset="--no-hpux"/>
+   <boolean id="tru64"      _label="Tru64"          arg-unset="--no-tru64"/>
+   <boolean id="gnome"      _label="GNOME"          arg-unset="--no-gnome"/>
   </vgroup>
  </hgroup>
 
   <xscreensaver-updater />
  </hgroup>
 
-<!--
-  <hgroup>
-   <vgroup>
-    <number id="tvcolor" type="slider" arg="-tv-color %"
-            _label="Color Knob" _low-label="Low" _high-label="High"
-            low="0" high="400" default="70"/>
-    <number id="tvtint" type="slider" arg="-tv-tint %"
-            _label="Tint Knob" _low-label="Low" _high-label="High"
-            low="0" high="360" default="5"/>
-   </vgroup>
-   <vgroup>
-    <number id="tvbrightness" type="slider" arg="-tv-brightness %"
-            _label="Brightness Knob" _low-label="Low" _high-label="High"
-            low="-75.0" high="100.0" default="3.0"/>
-    <number id="tvcontrast" type="slider" arg="-tv-contrast %"
-            _label="Contrast Knob" _low-label="Low" _high-label="High"
-            low="0" high="500" default="150"/>
-   </vgroup>
-  </hgroup>
--->
-
  <_description>
 Blue Screen of Death: a large collection of simulated crashes from
 various other operating systems.
index bcc0f4b38b2ca93ae1bccab726387af089197c2a..19aab4fa7a5425a7c2a744df5d93ecc5c46cadf0 100644 (file)
@@ -2,24 +2,24 @@
 
 <screensaver name="bubble3d" _label="Bubble 3D" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=4vcj8sq9FO8"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="10000"
           convert="invert"/>
 
-  <boolean id="transp" _label="Transparent bubbles" arg-unset="-no-transparent"/>
+  <boolean id="transp" _label="Transparent bubbles" arg-unset="--no-transparent"/>
    <select id="bubblecolor">
     <option id="random" _label="Random" />
-    <option id="Red"    _label="Amber" arg-set="-color #FF0000" />
-    <option id="Green"  _label="Green" arg-set="-color #00FF00" />
-    <option id="Blue"   _label="Blue"  arg-set="-color #0000FF" />
-    <option id="white"  _label="White" arg-set="-color #FFFFFF" />
+    <option id="Red"    _label="Amber" arg-set="--color #FF0000" />
+    <option id="Green"  _label="Green" arg-set="--color #00FF00" />
+    <option id="Blue"   _label="Blue"  arg-set="--color #0000FF" />
+    <option id="white"  _label="White" arg-set="--color #FFFFFF" />
    </select>
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
   <xscreensaver-updater />
 
   <_description>
index 86cb132312fad697e58398e896821b8d24b33cee..f0118054e649c2788d93bda7170bfeb885f7b73d 100644 (file)
@@ -2,30 +2,30 @@
 
 <screensaver name="bubbles" _label="Bubbles">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=Mli1TjZY1YA"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="10000"
           convert="invert"/>
 
   <boolean id="simple" _label="Draw circles instead of bubble images"
-           arg-set="-simple"/>
+           arg-set="--simple"/>
 
   <boolean id="broken" _label="Don't hide bubbles when they pop"
-           arg-set="-broken"/>
+           arg-set="--broken"/>
 
-  <boolean id="trails" _label="Leave trails" arg-set="-trails"/>
+  <boolean id="trails" _label="Leave trails" arg-set="--trails"/>
 
   <select id="gravity">
-    <option id="rise"     _label="Bubbles rise"  arg-set="-mode rise"/>
+    <option id="rise"     _label="Bubbles rise"  arg-set="--mode rise"/>
     <option id="float"    _label="Bubbles float"/>
-    <option id="drop"     _label="Bubbles fall"  arg-set="-mode drop"/>
+    <option id="drop"     _label="Bubbles fall"  arg-set="--mode drop"/>
   </select>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 78ee9698fd057b13592f078411a530a93142933a..6de2635b4d49e4be59788e98726c012eeab7788d 100644 (file)
@@ -2,29 +2,22 @@
 
 <screensaver name="bumps" _label="Bumps">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=IV7D-NYRCiU"/>
 
-  <!-- #### -degrees [360] -->
-  <!-- #### -color [random] -->
-  <!-- #### -colorcount [64] -->
-
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="30000"
           convert="invert"/>
 
-  <number id="duration" type="slider" arg="-duration %"
+  <number id="duration" type="slider" arg="--duration %"
           _label="Duration" _low-label="10 seconds" _high-label="10 minutes"
           low="10" high="600" default="120"/>
 
-  <!-- #### -soften [1] -->
-  <!-- #### -invert -->
-
   <xscreensaver-image />
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 39694024a991ba073126619b971c032a1c1624c7..e400b3cd9b06e26523af045ff79ffd6b3407bccf 100644 (file)
@@ -2,17 +2,17 @@
 
 <screensaver name="cage" _label="Cage" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=BxGHUFvI2Zo"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="25000"
           convert="invert"/>
 
-  <boolean id="wire"    _label="Wireframe"   arg-set="-wireframe"/>
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="wire"    _label="Wireframe"   arg-set="--wireframe"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index edf4a638656fe75aeb447a00ce74a629525dbd76..61cdd607b19c36fcc620fcc78c9b3ec03643c782 100644 (file)
@@ -2,24 +2,24 @@
 
 <screensaver name="carousel" _label="Carousel" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=IyqWkGVrFIY"/>
 
   <hgroup>
    <vgroup>
 
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="10000"
             convert="invert"/>
 
-    <number id="speed" type="slider" arg="-speed %"
+    <number id="speed" type="slider" arg="--speed %"
             _label="Animation speed" _low-label="Slow" _high-label="Fast"
             low="0.1" high="8.0" default="1.0"
             convert="ratio"/>
 
-    <number id="duration" type="slider" arg="-duration %"
+    <number id="duration" type="slider" arg="--duration %"
             _label="Time until loading a new image"
             _low-label="5 seconds" _high-label="1 minute"
             low="5" high="60" default="20"/>
    </vgroup>
    <vgroup>
 
-    <number id="count" type="spinbutton" arg="-count %"
+    <number id="count" type="spinbutton" arg="--count %"
             _label="Number of images" low="1" high="20" default="7"/>
 
     <select id="mode">
       <option id="tiltxy"  _label="Tilt in/out and left/right"/>
-      <option id="tiltx"   _label="Tilt in/out only"     arg-set="-tilt x"/>
-      <option id="tilty"   _label="Tilt left/right only" arg-set="-tilt y"/>
-      <option id="notilt"  _label="No tilting"           arg-set="-tilt 0"/>
+      <option id="tiltx"   _label="Tilt in/out only"     arg-set="--tilt x"/>
+      <option id="tilty"   _label="Tilt left/right only" arg-set="--tilt y"/>
+      <option id="notilt"  _label="No tilting"           arg-set="--tilt 0"/>
     </select>
 
-    <boolean id="zoom" _label="Zoom in/out" arg-unset="-no-zoom"/>
-    <boolean id="titles" _label="Show file names" arg-unset="-no-titles"/>
-    <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+    <boolean id="zoom" _label="Zoom in/out" arg-unset="--no-zoom"/>
+    <boolean id="titles" _label="Show file names" arg-unset="--no-titles"/>
+    <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
    </vgroup>
   </hgroup>
index 84a61215f9626731d8884445ef0537acb45f3e66..61f40032608ab2d4f8d00b5d4cd27fd5683e1aaa 100644 (file)
@@ -2,23 +2,23 @@
 
 <screensaver name="ccurve" _label="C Curve">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=zqIlWzUHOz8"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Change image every" _low-label="0 seconds" _high-label="30 seconds"
           low="0" high="30" default="3"/>
 
-  <number id="pause" type="slider" arg="-pause %"
+  <number id="pause" type="slider" arg="--pause %"
           _label="Animation speed" _low-label="Slow" _high-label="Fast"
           low="0.0" high="5.0" default="0.4" convert="invert"/>
 
-  <number id="limit" type="slider" arg="-limit %"
+  <number id="limit" type="slider" arg="--limit %"
           _label="Density" _low-label="Low" _high-label="High"
           low="3" high="300000" default="200000"/>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index f84d12bf07ddfc171ffe29eafe5c1fd400fe1c97..297954b1208e17ff4bc88ff97f0b93c1b7fa0025 100644 (file)
@@ -2,22 +2,22 @@
 
 <screensaver name="celtic" _label="Celtic">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=PnX60AAoTdw"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="10000"
           convert="invert"/>
 
-  <number id="delay2" type="slider" arg="-delay2 %"
+  <number id="delay2" type="slider" arg="--delay2 %"
           _label="Linger" _low-label="Short" _high-label="Long"
           low="0" high="10" default="5"/>
 
-  <boolean id="graph" _label="Draw graph" arg-set="-graph"/>
+  <boolean id="graph" _label="Draw graph" arg-set="--graph"/>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index ff89cfa4e33804be1f7dc6c29c56fe0bd5030d20..017bcff2baf377c5af2292802c40895416ce6628 100644 (file)
@@ -2,34 +2,34 @@
 
 <screensaver name="chompytower" _label="Chompy Tower" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=pQh_hLUKPao"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="30000"
             convert="invert"/>
 
-    <number id="speed" type="slider" arg="-speed %"
+    <number id="speed" type="slider" arg="--speed %"
             _label="Scrolling speed" _low-label="Slow" _high-label="Fast"
             low="0.01" high="8.0" default="1.0"
             convert="ratio"/>
 
-    <number id="resolution" type="slider" arg="-resolution %"
+    <number id="resolution" type="slider" arg="--resolution %"
             _label="Resolution" _low-label="Low" _high-label="high"
             low="0.1" high="4.0" default="1.0"
             convert="ratio"/>
 
     <hgroup>
-      <boolean id="spin"    _label="Spin"   arg-unset="-no-spin"/>
-      <boolean id="wander"  _label="Wander" arg-set="-wander"/>
-      <boolean id="tilt"    _label="Tilt"   arg-unset="-no-tilt"/>
-      <boolean id="smooth"  _label="Smooth" arg-set="-no-smooth"/>
-      <boolean id="wire"    _label="Wireframe" arg-set="-wireframe"/>
-      <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+      <boolean id="spin"    _label="Spin"   arg-unset="--no-spin"/>
+      <boolean id="wander"  _label="Wander" arg-set="--wander"/>
+      <boolean id="tilt"    _label="Tilt"   arg-unset="--no-tilt"/>
+      <boolean id="smooth"  _label="Smooth" arg-set="--no-smooth"/>
+      <boolean id="wire"    _label="Wireframe" arg-set="--wireframe"/>
+      <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
     </hgroup>
    </vgroup>
 
index 0605002c9b812786a31534631d77b0678614acc6..745546434fb80c84218174df4e802f14f05505dc 100644 (file)
@@ -2,30 +2,30 @@
 
 <screensaver name="circuit" _label="Circuit" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=tfqR1j1OQs8"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="20000"
           convert="invert"/>
 
-  <number id="count" type="slider" arg="-parts %"
+  <number id="count" type="slider" arg="--parts %"
           _label="Parts" _low-label="One" _high-label="Lots"
           low="1" high="30" default="10"/>
 
-  <number id="speed" type="slider" arg="-rotate-speed %"
+  <number id="speed" type="slider" arg="--rotate-speed %"
           _label="Rotation speed" _low-label="Slow" _high-label="Fast"
           low="0" high="100" default="1"/>
-  <boolean id="spin"   _label="Spin" arg-unset="-no-spin"/>
+  <boolean id="spin"   _label="Spin" arg-unset="--no-spin"/>
 
   <select id="render">
-    <option id="flat"  _label="Flat coloring" arg-set="-no-light"/>
+    <option id="flat"  _label="Flat coloring" arg-set="--no-light"/>
     <option id="light" _label="Directional lighting"/>
   </select>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 4a94c351c7e1a63e55ebd1afc1d13d80a20038cd..0ba887f2880f40a812410f822dd0bc5c180974bc 100644 (file)
@@ -2,38 +2,38 @@
 
 <screensaver name="cityflow" _label="City Flow" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=LJMtu-9T3U0"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="20000"
             convert="invert"/>
 
-    <number id="count" type="slider" arg="-count %"
+    <number id="count" type="slider" arg="--count %"
             _label="Boxes" _low-label="Few" _high-label="Many"
             low="50" high="4000" default="800"/>
 
-    <number id="skew" type="slider" arg="-skew %"
+    <number id="skew" type="slider" arg="--skew %"
             _label="Skew"
             _low-label="Low" _high-label="High"
             low="0" high="45" default="12"/>
    </vgroup>
 
    <vgroup>
-    <number id="wave-speed" type="slider" arg="-wave-speed %"
+    <number id="wave-speed" type="slider" arg="--wave-speed %"
             _label="Wave speed" _low-label="Slow" _high-label="Fast"
             low="5" high="150" default="25"/>
 
-    <number id="wave-radius" type="slider" arg="-wave-radius %"
+    <number id="wave-radius" type="slider" arg="--wave-radius %"
             _label="Wave overlap"
             _low-label="Small" _high-label="Large"
             low="5" high="512" default="256"/>
 
-    <number id="waves" type="slider" arg="-waves %"
+    <number id="waves" type="slider" arg="--waves %"
             _label="Wave complexity"
             _low-label="Low" _high-label="High"
             low="1" high="20" default="6"/>
@@ -41,8 +41,8 @@
   </hgroup>
 
   <hgroup>
-   <boolean id="wire"    _label="Wireframe"   arg-set="-wireframe"/>
-   <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+   <boolean id="wire"    _label="Wireframe"   arg-set="--wireframe"/>
+   <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
    <xscreensaver-updater />
   </hgroup>
index b1ec22a9ac3283c91ce4df66bd6614a88ac4bc7a..4fe833404a4d3fc4f9c43a05736151266a753a9d 100644 (file)
@@ -2,28 +2,28 @@
 
 <screensaver name="cloudlife" _label="Cloud Life">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=TkVDO3nTTsE"/>
 
-  <number id="delay" type="slider" arg="-cycle-delay %"
+  <number id="delay" type="slider" arg="--cycle-delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="25000"
           convert="invert"/>
 
-  <number id="maxage" type="slider" arg="-max-age %"
+  <number id="maxage" type="slider" arg="--max-age %"
           _label="Max age" _low-label="Young" _high-label="Old"
           low="2" high="255" default="64"/>
 
-  <number id="density" type="slider" arg="-initial-density %"
+  <number id="density" type="slider" arg="--initial-density %"
           _label="Initial density" _low-label="Low" _high-label="High"
           low="1" high="99" default="30"/>
 
-  <number id="cellsize" type="slider" arg="-cell-size %"
+  <number id="cellsize" type="slider" arg="--cell-size %"
           _label="Cell size" _low-label="Small" _high-label="Large"
           low="1" high="20" default="3"/>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 993787cc53906a06c7ad1004c7903ade11017d91..85737b101e99330de44f9e87e85b4cd031794d25 100644 (file)
@@ -2,32 +2,32 @@
 
 <screensaver name="co____9" _label="Co____9" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=xJDxZXbO8mY"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="30000"
           convert="invert"/>
 
-  <number id="speed" type="slider" arg="-speed %"
+  <number id="speed" type="slider" arg="--speed %"
           _label="Speed" _low-label="Slow" _high-label="Fast"
           low="0.1" high="4.0" default="1.0"
           convert="ratio"/>
 
-  <number id="count" type="slider" arg="-count %"
+  <number id="count" type="slider" arg="--count %"
           _label="How many pretty pretty balls"
           _low-label="Not so many" _high-label="A bunch"
           low="1" high="400" default="60"/>
 
   <hgroup>
-   <boolean id="wander" _label="Wander"    arg-unset="-no-wander"/>
-   <boolean id="spin"   _label="Spin"      arg-unset="-no-spin"/>
-   <boolean id="wire"   _label="Wireframe" arg-set="-wireframe"/>
+   <boolean id="wander" _label="Wander"    arg-unset="--no-wander"/>
+   <boolean id="spin"   _label="Spin"      arg-unset="--no-spin"/>
+   <boolean id="wire"   _label="Wireframe" arg-set="--wireframe"/>
   </hgroup>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 58ada2f76a3756b010f050ac9f6f17634fc276fa..c156af35a7ca7c5cd9fc5bb3dadcb6b61cfb8757 100644 (file)
@@ -2,19 +2,19 @@
 
 <screensaver name="companioncube" _label="Companion Cube" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=Q54NVuxhGso"/>
 
   <hgroup>
    <vgroup>
 
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="30000"
             convert="invert"/>
 
-    <number id="speed" type="slider" arg="-speed %"
+    <number id="speed" type="slider" arg="--speed %"
             _label="Bounce" _low-label="Slow" _high-label="Fast"
             low="0.05" high="2.0" default="1.0"
             convert="ratio"/>
    </vgroup>
    <vgroup>
 
-    <number id="count" type="slider" arg="-count %"
+    <number id="count" type="slider" arg="--count %"
             _label="Number of cubes" _low-label="1" _high-label="20"
             low="1" high="20" default="3"/>
 
     <hgroup>
      <vgroup>
-      <boolean id="spin"    _label="Spin"            arg-set="-spin"/>
-      <boolean id="wander"  _label="Wander"          arg-set="-wander"/>
+      <boolean id="spin"    _label="Spin"            arg-set="--spin"/>
+      <boolean id="wander"  _label="Wander"          arg-set="--wander"/>
      </vgroup>
      <vgroup>
-      <boolean id="wire"    _label="Wireframe"       arg-set="-wireframe"/>
-      <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+      <boolean id="wire"    _label="Wireframe"       arg-set="--wireframe"/>
+      <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
      </vgroup>
     </hgroup>
 
index 83e0c83bc30ac8d51420323b9e191d546b3958cb..6805ed012c60646c1f4a8b0792957beccab1559e 100644 (file)
@@ -2,16 +2,16 @@
 
 <screensaver name="compass" _label="Compass">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=IssDEcgB550"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="20000"
           convert="invert"/>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index c722ea558c1c455db0adfb495a1928f8e5793c9e..a357dec21f8b9e4db892aefa86f6de54e28bec07 100644 (file)
@@ -2,29 +2,29 @@
 
 <screensaver name="coral" _label="Coral">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=3WTSvzJcQhw"/>
 
-  <number id="delay2" type="slider" arg="-delay2 %"
+  <number id="delay2" type="slider" arg="--delay2 %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="1" high="500000" default="20000"
           convert="invert"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Linger" _low-label="1 second" _high-label="1 minute"
           low="1" high="60" default="5"/>
 
-  <number id="density" type="slider" arg="-density %"
+  <number id="density" type="slider" arg="--density %"
           _label="Density" _low-label="Sparse" _high-label="Dense"
           low="1" high="90" default="25"
           convert="invert"/>
 
-  <number id="seeds" type="slider" arg="-seeds %"
+  <number id="seeds" type="slider" arg="--seeds %"
           _label="Seeds" _low-label="Few" _high-label="Many"
           low="1" high="100" default="20"/>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index cb01ddb1217c43bfabd9b7f6011bb4c5da10263b..e622fc426a1154fba7969476b0555231a49e7ecf 100644 (file)
@@ -2,32 +2,32 @@
 
 <screensaver name="covid19" _label="COVID19" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=xJDxZXbO8mY"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="30000"
           convert="invert"/>
 
-  <number id="speed" type="slider" arg="-speed %"
+  <number id="speed" type="slider" arg="--speed %"
           _label="Speed" _low-label="Slow" _high-label="Fast"
           low="0.1" high="4.0" default="1.0"
           convert="ratio"/>
 
-  <number id="count" type="slider" arg="-count %"
+  <number id="count" type="slider" arg="--count %"
           _label="Government Response"
           _low-label="Taiwan" _high-label="United States"
           low="1" high="400" default="60"/>
 
   <hgroup>
-   <boolean id="wander" _label="Wander"    arg-unset="-no-wander"/>
-   <boolean id="spin"   _label="Spin"      arg-unset="-no-spin"/>
-   <boolean id="wire"   _label="Wireframe" arg-set="-wireframe"/>
+   <boolean id="wander" _label="Wander"    arg-unset="--no-wander"/>
+   <boolean id="spin"   _label="Spin"      arg-unset="--no-spin"/>
+   <boolean id="wire"   _label="Wireframe" arg-set="--wireframe"/>
   </hgroup>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index dacf2798d6418cb0c948ef42526b4c53cda0ec41..1d426ab354608a92c3feb9cf40293b9b29c465b8 100644 (file)
@@ -2,43 +2,43 @@
 
 <screensaver name="crackberg" _label="Crackberg" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=ej1No4EK8Rc"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="20000"
           convert="invert"/>
 
-  <number id="visibility" type="slider" arg="-visibility %"
+  <number id="visibility" type="slider" arg="--visibility %"
           _label="Visibility" _low-label="Mouse hole" _high-label="Eagle nest"
           low="0.2" high="1.0" default="0.6" />
-  <number id="nsubdivs" type="slider" arg="-nsubdivs %"
+  <number id="nsubdivs" type="slider" arg="--nsubdivs %"
           _label="Subdivisions" _low-label="Few" _high-label="Hurt me"
           low="2" high="9" default="4" />
 
   <hgroup>
    <vgroup>
-    <boolean id="flat" _label="Flat shading" arg-unset="-no-flat"/>
-    <boolean id="lit" _label="Lighting" arg-unset="-no-lit"/>
-    <boolean id="water" _label="Water" arg-unset="-no-water"/>
-    <boolean id="crack" _label="Confused" arg-unset="-no-crack"/>
+    <boolean id="flat" _label="Flat shading" arg-unset="--no-flat"/>
+    <boolean id="lit" _label="Lighting" arg-unset="--no-lit"/>
+    <boolean id="water" _label="Water" arg-unset="--no-water"/>
+    <boolean id="crack" _label="Confused" arg-unset="--no-crack"/>
    </vgroup>
    <vgroup>
-    <boolean id="boring" _label="Immediate"   arg-set="-boring"/>
-    <boolean id="letter" _label="Letterbox"   arg-set="-letterbox"/>
-    <boolean id="wire"   _label="Wireframe"   arg-set="-wireframe"/>
-    <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+    <boolean id="boring" _label="Immediate"   arg-set="--boring"/>
+    <boolean id="letter" _label="Letterbox"   arg-set="--letterbox"/>
+    <boolean id="wire"   _label="Wireframe"   arg-set="--wireframe"/>
+    <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
    </vgroup>
   </hgroup>
 
   <select id="color">
     <option id="random" _label="Random coloration"/>
-    <option id="plain" _label="Earthy coloration" arg-set="-color plain"/>
-    <option id="ice" _label="Icy coloration" arg-set="-color ice"/>
-    <option id="magma" _label="Swampy coloration" arg-set="-color magma"/>
-    <option id="vomit" _label="Vomitous coloration" arg-set="-color vomit"/>
+    <option id="plain" _label="Earthy coloration" arg-set="--color plain"/>
+    <option id="ice" _label="Icy coloration" arg-set="--color ice"/>
+    <option id="magma" _label="Swampy coloration" arg-set="--color magma"/>
+    <option id="vomit" _label="Vomitous coloration" arg-set="--color vomit"/>
   </select>  
 
   <xscreensaver-updater />
index 399c569165cb313c0ee8ec8f519afea01f32ce77..11b6d050c5419f4b6075b69f9937e01f9023ae83 100644 (file)
@@ -2,20 +2,20 @@
 
 <screensaver name="critical" _label="Critical">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=HN2ykbM2cTk"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="10000"
           convert="invert"/>
 
-  <number id="ncolors" type="slider" arg="-ncolors %"
+  <number id="ncolors" type="slider" arg="--ncolors %"
             _label="Number of colors" _low-label="Two" _high-label="Many"
             low="3" high="255" default="64"/>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 33e65631a36645b5ca8fab24d0d4aefd3c8407d7..f6c8cd46467bb951acfbc6596523753a4acd2f68 100644 (file)
@@ -2,37 +2,37 @@
 
 <screensaver name="crumbler" _label="Crumbler" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=oERz1IPluYQ"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="30000"
             convert="invert"/>
 
-    <number id="speed" type="slider" arg="-speed %"
+    <number id="speed" type="slider" arg="--speed %"
             _label="Speed" _low-label="Slow" _high-label="Fast"
             low="0.05" high="2.0" default="1.0"
             convert="ratio"/>
 
-    <number id="density" type="slider" arg="-density %"
+    <number id="density" type="slider" arg="--density %"
             _label="Polygons" _low-label="Few" _high-label="Many"
             low="0.2" high="5.0" default="1.0"
             convert="ratio"/>
 
-    <number id="fracture" type="slider" arg="-fracture %"
+    <number id="fracture" type="slider" arg="--fracture %"
             _label="Fractures" _low-label="Few" _high-label="Many"
             low="0" high="20" default="0"/>
    </vgroup>
 
    <vgroup>
-    <boolean id="wander" _label="Wander"    arg-unset="-no-wander"/>
-    <boolean id="spin"   _label="Spin"      arg-unset="-no-spin"/>
-    <boolean id="wire"    _label="Wireframe"  arg-set="-wireframe"/>
-    <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+    <boolean id="wander" _label="Wander"    arg-unset="--no-wander"/>
+    <boolean id="spin"   _label="Spin"      arg-unset="--no-spin"/>
+    <boolean id="wire"    _label="Wireframe"  arg-set="--wireframe"/>
+    <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
     <xscreensaver-updater />
    </vgroup>
index 63e1bddaa91737063de5961737ba469853e1f398..f8a5172189245e33e8ec39172d8b1a2fa294a81b 100644 (file)
@@ -2,38 +2,35 @@
 
 <screensaver name="crystal" _label="Crystal">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=M27wWKGXIvw"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="60000"
           convert="invert"/>
 
-  <number id="ncolors" type="slider" arg="-ncolors %"
+  <number id="ncolors" type="slider" arg="--ncolors %"
             _label="Number of colors" _low-label="Two" _high-label="Many"
             low="1" high="255" default="100"/>
 
-  <!-- #### -maxsize -->
-  <!-- #### -shift (color cycling) -->
-
-  <number id="count" type="spinbutton" arg="-count %"
+  <number id="count" type="spinbutton" arg="--count %"
           _label="Number of crystals" low="-5000" high="5000" default="-500"/>
 
-  <number id="nx" type="spinbutton" arg="-nx %"
+  <number id="nx" type="spinbutton" arg="--nx %"
           _label="Horizontal symmetries" low="-10" high="10" default="-3"/>
 
-  <number id="ny" type="spinbutton" arg="-ny %"
+  <number id="ny" type="spinbutton" arg="--ny %"
           _label="Vertical symmetries" low="-10" high="10" default="-3"/>
 
   <hgroup>
-   <boolean id="grid" _label="Draw grid" arg-set="-grid"/>
-   <boolean id="cells" _label="Draw cell" arg-unset="-no-cell"/>
-   <boolean id="centre" _label="Center on screen" arg-set="-centre"/>
+   <boolean id="grid" _label="Draw grid" arg-set="--grid"/>
+   <boolean id="cells" _label="Draw cell" arg-unset="--no-cell"/>
+   <boolean id="centre" _label="Center on screen" arg-set="--centre"/>
   </hgroup>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index de99cf8dcf5d3c7bd24b10d43ee4f5780c9c12de..55f690202d846e1e137d2f90c877e99f2fd06be7 100644 (file)
@@ -2,63 +2,63 @@
 
 <screensaver name="cube21" _label="Cube 21" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=AFtxL6--lTQ"/>
 
   <hgroup>
    <vgroup>
 
-    <number id="speed" type="slider" arg="-delay %"
+    <number id="speed" type="slider" arg="--delay %"
       _label="Frame rate" _low-label="Low" _high-label="High"
       low="0" high="100000" default="20000" convert="invert"/>
 
-    <number id="cubesize" type="slider" arg="-cubesize %"
+    <number id="cubesize" type="slider" arg="--cubesize %"
       _label="Cube size" _low-label="Small" _high-label="Large"
       low="0.4" high="1.0" default="0.7"/>  
 
-    <number id="rotspeed" type="slider" arg="-rotspeed %"
+    <number id="rotspeed" type="slider" arg="--rotspeed %"
       _label="Rotation" _low-label="Slow" _high-label="Fast"
       low="1.0" high="10.0" default="3.0"/>
 
     <select id="start">
-      <option id="cube"    _label="Start as cube" arg-set="-no-randomize"/>
+      <option id="cube"    _label="Start as cube" arg-set="--no-randomize"/>
       <option id="shuffle" _label="Start as random shape"/>
     </select>
 
     <select id="colors">
-      <option id="white" _label="White"  arg-set="-colormode white"/>
-      <option id="one"   _label="Random color" arg-set="-colormode rnd"/>
-      <option id="se"    _label="Silver edition" arg-set="-colormode se"/>
-      <option id="two"   _label="Two random colors" arg-set="-colormode two"/>
-      <option id="ce"    _label="Classic edition" arg-set="-colormode ce"/>
+      <option id="white" _label="White"  arg-set="--colormode white"/>
+      <option id="one"   _label="Random color" arg-set="--colormode rnd"/>
+      <option id="se"    _label="Silver edition" arg-set="--colormode se"/>
+      <option id="two"   _label="Two random colors" arg-set="--colormode two"/>
+      <option id="ce"    _label="Classic edition" arg-set="--colormode ce"/>
       <option id="six"   _label="Six random colors"/>
     </select>
 
    </vgroup>
    <vgroup>
 
-    <number id="spinspeed" type="slider" arg="-spinspeed %"
+    <number id="spinspeed" type="slider" arg="--spinspeed %"
       _label="Spin" _low-label="Slow" _high-label="Fast"
       low="0.01" high="4.0" default="1.0"
       convert="ratio"/>
 
-    <number id="wanderspeed" type="slider" arg="-wanderspeed %"
+    <number id="wanderspeed" type="slider" arg="--wanderspeed %"
       _label="Wander" _low-label="Slow" _high-label="Fast"
       low="0.001" high="0.1" default="0.02"/>
 
-    <number id="wait" type="slider" arg="-wait %"
+    <number id="wait" type="slider" arg="--wait %"
       _label="Linger" _low-label="Short" _high-label="Long"
       low="10.0" high="100.0" default="40.0"/>
 
     <hgroup>
-     <boolean id="spin"    _label="Spin"     arg-unset="-no-spin"/>
-     <boolean id="wander"  _label="Wander"   arg-unset="-no-wander"/>
-     <boolean id="tex"     _label="Outlines" arg-unset="-no-texture"/>
+     <boolean id="spin"    _label="Spin"     arg-unset="--no-spin"/>
+     <boolean id="wander"  _label="Wander"   arg-unset="--no-wander"/>
+     <boolean id="tex"     _label="Outlines" arg-unset="--no-texture"/>
     </hgroup>
     <hgroup>
-     <boolean id="wire"    _label="Wireframe"      arg-set="-wireframe"/>
-     <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+     <boolean id="wire"    _label="Wireframe"      arg-set="--wireframe"/>
+     <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
     </hgroup>
 
    </vgroup>
index 3907214fa141d7036de25f7a8cadd5e8f6b910a8..e87040c410f823245c4f12c62fb0059d1d775d2e 100644 (file)
@@ -2,48 +2,48 @@
 
 <screensaver name="cubenetic" _label="Cubenetic" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=aElbM0rZZNg"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="20000"
             convert="invert"/>
 
-    <number id="count" type="slider" arg="-count %"
+    <number id="count" type="slider" arg="--count %"
             _label="Boxes" _low-label="Few" _high-label="Many"
             low="1" high="20" default="5"/>
 
     <hgroup>
-     <boolean id="wander" _label="Wander" arg-unset="-no-wander"/>
+     <boolean id="wander" _label="Wander" arg-unset="--no-wander"/>
 
      <select id="rotation">
-       <option id="no"  _label="Don't rotate"               arg-set="-spin 0"/>
-       <option id="x"   _label="Rotate around X axis"       arg-set="-spin X"/>
-       <option id="y"   _label="Rotate around Y axis"       arg-set="-spin Y"/>
-       <option id="z"   _label="Rotate around Z axis"       arg-set="-spin Z"/>
-       <option id="xy"  _label="Rotate around X and Y axes" arg-set="-spin XY"/>
-       <option id="xz"  _label="Rotate around X and Z axes" arg-set="-spin XZ"/>
-       <option id="yz"  _label="Rotate around Y and Z axes" arg-set="-spin YZ"/>
+       <option id="no"  _label="Don't rotate"               arg-set="--spin 0"/>
+       <option id="x"   _label="Rotate around X axis"       arg-set="--spin X"/>
+       <option id="y"   _label="Rotate around Y axis"       arg-set="--spin Y"/>
+       <option id="z"   _label="Rotate around Z axis"       arg-set="--spin Z"/>
+       <option id="xy"  _label="Rotate around X and Y axes" arg-set="--spin XY"/>
+       <option id="xz"  _label="Rotate around X and Z axes" arg-set="--spin XZ"/>
+       <option id="yz"  _label="Rotate around Y and Z axes" arg-set="--spin YZ"/>
        <option id="xyz" _label="Rotate around all three axes"/>
      </select>
     </hgroup>
    </vgroup>
 
    <vgroup>
-    <number id="wave-speed" type="slider" arg="-wave-speed %"
+    <number id="wave-speed" type="slider" arg="--wave-speed %"
             _label="Surface pattern speed" _low-label="Slow" _high-label="Fast"
             low="5" high="150" default="80"/>
 
-    <number id="wave-radius" type="slider" arg="-wave-radius %"
+    <number id="wave-radius" type="slider" arg="--wave-radius %"
             _label="Surface pattern overlap"
             _low-label="Small" _high-label="Large"
             low="5" high="600" default="512"/>
 
-    <number id="waves" type="slider" arg="-waves %"
+    <number id="waves" type="slider" arg="--waves %"
             _label="Surface pattern complexity"
             _low-label="Low" _high-label="High"
             low="1" high="20" default="3"/>
@@ -51,9 +51,9 @@
   </hgroup>
 
   <hgroup>
-   <boolean id="tex"     _label="Textured"  arg-unset="-no-texture"/>
-   <boolean id="wire"    _label="Wireframe"   arg-set="-wireframe"/>
-   <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+   <boolean id="tex"     _label="Textured"  arg-unset="--no-texture"/>
+   <boolean id="wire"    _label="Wireframe"   arg-set="--wireframe"/>
+   <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
   </hgroup>
 
   <xscreensaver-updater />
index 600833041065ea075ebb871a3e1acddacfbc0668..ba9ba6bf74ec316599ace9efa2569e8494e39ebf 100644 (file)
@@ -2,37 +2,37 @@
 
 <screensaver name="cubestack" _label="Cube Stack" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=rZi5yav6sRo"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="30000"
             convert="invert"/>
 
-    <number id="speed" type="slider" arg="-speed %"
+    <number id="speed" type="slider" arg="--speed %"
             _label="Animation speed" _low-label="Slow" _high-label="Fast"
             low="0.1" high="10" default="1.0"
             convert="ratio"/>
    </vgroup>
    <vgroup>
-    <number id="thickness" type="slider" arg="-thickness %"
+    <number id="thickness" type="slider" arg="--thickness %"
             _label="Thickness" _low-label="Thin" _high-label="Thick"
             low="0.0" high="0.5" default="0.13"/>
 
-    <number id="opacity" type="slider" arg="-opacity %"
+    <number id="opacity" type="slider" arg="--opacity %"
             _label="Opacity" _low-label="Transparent" _high-label="Opaque"
             low="0.01" high="1.0" default="0.7"/>
    </vgroup>
   </hgroup>
 
   <hgroup>
-   <boolean id="wander" _label="Wander"    arg-unset="-no-wander"/>
-   <boolean id="wire"   _label="Wireframe" arg-set="-wireframe"/>
-   <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+   <boolean id="wander" _label="Wander"    arg-unset="--no-wander"/>
+   <boolean id="wire"   _label="Wireframe" arg-set="--wireframe"/>
+   <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
   </hgroup>
 
   <xscreensaver-updater />
index 62eb64ff10f632f2548de8587b707412161e4948..96790c46b7dcb636753b61b39532077665929429 100644 (file)
@@ -2,47 +2,47 @@
 
 <screensaver name="cubestorm" _label="Cube Storm" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=enuZbkMiqCE"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="30000"
             convert="invert"/>
 
-    <number id="speed" type="slider" arg="-speed %"
+    <number id="speed" type="slider" arg="--speed %"
             _label="Speed" _low-label="Slow" _high-label="Fast"
             low="0.01" high="5.0" default="1.0"
             convert="ratio"/>
 
-    <number id="count" type="slider" arg="-count %"
+    <number id="count" type="slider" arg="--count %"
             _label="Cubes" _low-label="Few" _high-label="Many"
             low="1" high="20" default="4"/>
 
    </vgroup>
    <vgroup>
 
-    <number id="length" type="slider" arg="-length %"
+    <number id="length" type="slider" arg="--length %"
             _label="Length" _low-label="Short" _high-label="Long"
             low="20" high="1000" default="200"/>
 
-    <number id="thickness" type="slider" arg="-thickness %"
+    <number id="thickness" type="slider" arg="--thickness %"
             _label="Struts" _low-label="Thin" _high-label="Thick"
             low="0.01" high="1.0" default="0.06"/>
 
     <hgroup>
-     <boolean id="wander" _label="Wander"    arg-unset="-no-wander"/>
-     <boolean id="spin"   _label="Spin"      arg-unset="-no-spin"/>
-     <boolean id="wire"   _label="Wireframe" arg-set="-wireframe"/>
+     <boolean id="wander" _label="Wander"    arg-unset="--no-wander"/>
+     <boolean id="spin"   _label="Spin"      arg-unset="--no-spin"/>
+     <boolean id="wire"   _label="Wireframe" arg-set="--wireframe"/>
     </hgroup>
 
    </vgroup>
   </hgroup>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 89d3831983025a9ecbf4b1490a46d38a2dbc011b..807c4211f1f405089d19e616cf1a371134d79de1 100644 (file)
@@ -2,39 +2,39 @@
 
 <screensaver name="cubetwist" _label="Cube Twist" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=RjrtUtMEa_4"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="30000"
             convert="invert"/>
 
-    <number id="speed" type="slider" arg="-speed %"
+    <number id="speed" type="slider" arg="--speed %"
             _label="Animation speed" _low-label="Slow" _high-label="Fast"
             low="0.1" high="10" default="1.0"
             convert="ratio"/>
    </vgroup>
    <vgroup>
-    <number id="thickness" type="slider" arg="-thickness %"
+    <number id="thickness" type="slider" arg="--thickness %"
             _label="Thickness" _low-label="Thin" _high-label="Thick"
             low="0.0" high="0.5" default="0.0"/>
 
-    <number id="displacement" type="slider" arg="-displacement %"
+    <number id="displacement" type="slider" arg="--displacement %"
             _label="Displacement" _low-label="Tight" _high-label="Wide"
             low="0.0" high="0.5" default="0.0"/>
    </vgroup>
   </hgroup>
 
   <hgroup>
-   <boolean id="flat"   _label="Flat shading" arg-unset="-no-flat"/>
-   <boolean id="wander" _label="Wander"    arg-unset="-no-wander"/>
-   <boolean id="spin"   _label="Spin"      arg-unset="-no-spin"/>
-   <boolean id="wire"   _label="Wireframe" arg-set="-wireframe"/>
-   <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+   <boolean id="flat"   _label="Flat shading" arg-unset="--no-flat"/>
+   <boolean id="wander" _label="Wander"    arg-unset="--no-wander"/>
+   <boolean id="spin"   _label="Spin"      arg-unset="--no-spin"/>
+   <boolean id="wire"   _label="Wireframe" arg-set="--wireframe"/>
+   <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
   </hgroup>
 
   <xscreensaver-updater />
index 604a43ae1f68c71638ed45097475205cc50b8dc5..248bdd9d03672e55a6979ab227c68210811987ad 100644 (file)
@@ -2,30 +2,30 @@
 
 <screensaver name="cubicgrid" _label="Cubic Grid" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=nOTi7gy9l-I"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
     _label="Frame rate" _low-label="Low" _high-label="High"
     low="0" high="100000" default="20000" convert="invert"/>
 
-  <number id="speed" type="slider" arg="-speed %"
+  <number id="speed" type="slider" arg="--speed %"
     _label="Speed" _low-label="Slow" _high-label="Fast"
     low="0.2" high="10.0" default="1.0"
     convert="ratio"/>
 
-  <number id="zoom" type="slider" arg="-zoom %"
+  <number id="zoom" type="slider" arg="--zoom %"
     _label="Dot spacing" _low-label="Close" _high-label="Far"
     low="15" high="100" default="20"/>  
 
-  <boolean id="bigdots" _label="Big dots"            arg-unset="-no-bigdots"/>
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="bigdots" _label="Big dots"            arg-unset="--no-bigdots"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <select id="symmetry">
     <option id="random"    _label="Random symmetry"/>
-    <option id="cubic"     _label="Cubic symmetry" arg-set="-symmetry cubic"/>
-    <option id="hexagonal" _label="Hexagonal symmetry" arg-set="-symmetry hexagonal"/>
+    <option id="cubic"     _label="Cubic symmetry" arg-set="--symmetry cubic"/>
+    <option id="hexagonal" _label="Hexagonal symmetry" arg-set="--symmetry hexagonal"/>
   </select>
 
   <xscreensaver-updater />
index 3e77b42dde83f35dffe6d281a6621419f73be4f4..bf390879504e5b8446a5da2e62666261e5a8fc4c 100644 (file)
@@ -2,24 +2,24 @@
 
 <screensaver name="cwaves" _label="C Waves">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=yOuJqiDUrpY"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="20000"
           convert="invert"/>
 
-  <number id="waves" type="slider" arg="-waves %"
+  <number id="waves" type="slider" arg="--waves %"
           _label="Complexity" _low-label="Low" _high-label="High"
           low="1" high="100" default="15"/>
 
-  <number id="ncolors" type="slider" arg="-colors %"
+  <number id="ncolors" type="slider" arg="--colors %"
             _label="Color transitions" _low-label="Rough" _high-label="Smooth"
             low="2" high="1000" default="600"/>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index c81130d8f0c241abaa7d7d9ae21fef91836daf14..21214b1a1b1416ac1f446fece08bc09d80bbbe98 100644 (file)
@@ -2,25 +2,25 @@
 
 <screensaver name="cynosure" _label="Cynosure">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=If7FOc8UnYs"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="1000000" default="500000"
           convert="invert"/>
 
-  <number id="ncolors" type="slider" arg="-ncolors %"
+  <number id="ncolors" type="slider" arg="--ncolors %"
             _label="Number of colors" _low-label="Two" _high-label="Many"
             low="2" high="255" default="128"/>
 
-  <number id="iterations" type="slider" arg="-iterations %"
+  <number id="iterations" type="slider" arg="--iterations %"
           _label="Duration" _low-label="Short" _high-label="Long"
           low="2" high="200" default="100"/>
 
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 51d9fe1404f06dee95daa6debd9b14e894c9a6c4..f40114e826b86c82685d7b1b4fa00e597eae04d0 100644 (file)
@@ -2,30 +2,30 @@
 
 <screensaver name="dangerball" _label="Danger Ball" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=QU0aPwWwHbg"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="30000"
           convert="invert"/>
 
-  <number id="spikespeed" type="slider" arg="-speed %"
+  <number id="spikespeed" type="slider" arg="--speed %"
           _label="Spike growth" _low-label="Slow" _high-label="Fast"
           low="0.001" high="0.25" default="0.05"/>
 
-  <number id="count" type="slider" arg="-count %"
+  <number id="count" type="slider" arg="--count %"
           _label="Number of spikes" _low-label="Few" _high-label="Ouch"
           low="1" high="100" default="30"/>
 
   <hgroup>
-   <boolean id="wander" _label="Wander"    arg-unset="-no-wander"/>
-   <boolean id="spin"   _label="Spin"      arg-unset="-no-spin"/>
-   <boolean id="wire"   _label="Wireframe" arg-set="-wireframe"/>
+   <boolean id="wander" _label="Wander"    arg-unset="--no-wander"/>
+   <boolean id="spin"   _label="Spin"      arg-unset="--no-spin"/>
+   <boolean id="wire"   _label="Wireframe" arg-set="--wireframe"/>
   </hgroup>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 266d8d64e26cd66d62255e1e6ae87a3a752938a2..e77b315ecd871a14d98251d0e72fc0210dd42529 100644 (file)
@@ -2,40 +2,40 @@
 
 <screensaver name="decayscreen" _label="Decay Screen">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=dFlyRTObuDo"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="10000"
           convert="invert"/>
 
-  <number id="duration" type="slider" arg="-duration %"
+  <number id="duration" type="slider" arg="--duration %"
           _label="Duration" _low-label="10 seconds" _high-label="10 minutes"
           low="10" high="600" default="120"/>
 
   <select id="mode">
     <option id="random" _label="Random melt style"/>
-    <option id="random" _label="Shuffle melt" arg-set="-mode shuffle"/>
-    <option id="random" _label="Melt up"    arg-set="-mode up"/>
-    <option id="random" _label="Melt down"  arg-set="-mode down"/>
-    <option id="random" _label="Melt left"  arg-set="-mode left"/>
-    <option id="random" _label="Melt right" arg-set="-mode right"/>
-    <option id="random" _label="Melt up, left"    arg-set="-mode upleft"/>
-    <option id="random" _label="Melt up, right"   arg-set="-mode upright"/>
-    <option id="random" _label="Melt down, left"  arg-set="-mode downleft"/>
-    <option id="random" _label="Melt down, right" arg-set="-mode downright"/>
-    <option id="random" _label="Melt towards center" arg-set="-mode in"/>
-    <option id="random" _label="Melt away from center" arg-set="-mode out"/>
-    <option id="random" _label="Melty melt" arg-set="-mode melt"/>
-    <option id="random" _label="Stretchy melt" arg-set="-mode stretch"/>
-    <option id="random" _label="Fuzzy melt" arg-set="-mode fuzz"/>
+    <option id="random" _label="Shuffle melt" arg-set="--mode shuffle"/>
+    <option id="random" _label="Melt up"    arg-set="--mode up"/>
+    <option id="random" _label="Melt down"  arg-set="--mode down"/>
+    <option id="random" _label="Melt left"  arg-set="--mode left"/>
+    <option id="random" _label="Melt right" arg-set="--mode right"/>
+    <option id="random" _label="Melt up, left"    arg-set="--mode upleft"/>
+    <option id="random" _label="Melt up, right"   arg-set="--mode upright"/>
+    <option id="random" _label="Melt down, left"  arg-set="--mode downleft"/>
+    <option id="random" _label="Melt down, right" arg-set="--mode downright"/>
+    <option id="random" _label="Melt towards center" arg-set="--mode in"/>
+    <option id="random" _label="Melt away from center" arg-set="--mode out"/>
+    <option id="random" _label="Melty melt" arg-set="--mode melt"/>
+    <option id="random" _label="Stretchy melt" arg-set="--mode stretch"/>
+    <option id="random" _label="Fuzzy melt" arg-set="--mode fuzz"/>
   </select>
 
   <xscreensaver-image />
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index b5347cf1699328f8322c308c1ae0253939156bd2..061f633b57cb77a484854c9b258dbdccd9b2ad03 100644 (file)
@@ -2,34 +2,34 @@
 
 <screensaver name="deco" _label="Deco">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=kfdDTv07Nhw"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Duration" _low-label="1 second" _high-label="1 minute"
           low="1" high="60" default="5"/>
 
-  <number id="ncolors" type="slider" arg="-ncolors %"
+  <number id="ncolors" type="slider" arg="--ncolors %"
             _label="Number of colors" _low-label="Two" _high-label="Many"
             low="1" high="255" default="64"/>
 
   <hgroup>
    <vgroup>
-    <number id="minwidth" type="spinbutton" arg="-min-width %"
+    <number id="minwidth" type="spinbutton" arg="--min-width %"
               _label="Minimum width" low="1" high="100" default="20"/>
 
-    <number id="minheight" type="spinbutton" arg="-min-height %"
+    <number id="minheight" type="spinbutton" arg="--min-height %"
               _label="Minimum height" low="1" high="100" default="20"/>
 
-    <number id="maxdepth" type="spinbutton" arg="-max-depth %"
+    <number id="maxdepth" type="spinbutton" arg="--max-depth %"
               _label="Maximum depth" low="1" high="40" default="12"/>
    </vgroup>
    <vgroup>
-    <boolean id="smooth-colors" _label="Smooth colors" arg-set="-smooth-colors"/>
-    <boolean id="golden-ratio" _label="Golden ratio" arg-set="-golden-ratio"/>
-    <boolean id="mondrian" _label="Mondrian" arg-set="-mondrian"/>
-    <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+    <boolean id="smooth-colors" _label="Smooth colors" arg-set="--smooth-colors"/>
+    <boolean id="golden-ratio" _label="Golden ratio" arg-set="--golden-ratio"/>
+    <boolean id="mondrian" _label="Mondrian" arg-set="--mondrian"/>
+    <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
    </vgroup>
   </hgroup>
 
index ed075800d3c9aaea2c316a95f6b3bee875f1af04..3c33d48f0a344772439ef12791ee560eff127ec0 100644 (file)
@@ -2,26 +2,26 @@
 
 <screensaver name="deepstars" _label="Deep Stars" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=_FhYeKXGpxs"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="30000"
           convert="invert"/>
 
-  <number id="speed" type="slider" arg="-speed %"
+  <number id="speed" type="slider" arg="--speed %"
           _label="Speed" _low-label="Slow" _high-label="Fast"
           low="0.01" high="8.0" default="1.0"
           convert="ratio"/>
 
-  <number id="smear" type="slider" arg="-smear %"
+  <number id="smear" type="slider" arg="--smear %"
           _label="Smear" _low-label="Low" _high-label="High"
           low="0.1" high="5.0" default="1.0"
           convert="ratio"/>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 0cd4746476a77a28f8f4e242aebbcb8df7da7685..99fc1a6e87bd9fa54fbd5003083592606db73b18 100644 (file)
@@ -2,32 +2,30 @@
 
 <screensaver name="deluxe" _label="Deluxe">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=2CsKEVR3ecs"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="50000" default="10000"
           convert="invert"/>
 
-  <number id="thickness" type="slider" arg="-thickness %"
+  <number id="thickness" type="slider" arg="--thickness %"
           _label="Lines" _low-label="Thin" _high-label="Thick"
           low="1" high="150" default="50"/>
 
-  <number id="count" type="slider" arg="-count %"
+  <number id="count" type="slider" arg="--count %"
           _label="Shapes" _low-label="1" _high-label="20"
            low="1" high="20" default="5"/>
 
-  <number id="ncolors" type="slider" arg="-ncolors %"
+  <number id="ncolors" type="slider" arg="--ncolors %"
             _label="Number of colors" _low-label="Two" _high-label="Many"
             low="1" high="255" default="20"/>
 
-  <!-- #### -speed [15] -->
+  <boolean id="transparent" _label="Transparency" arg-unset="--no-transparent"/>
 
-  <boolean id="transparent" _label="Transparency" arg-unset="-no-transparent"/>
-
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index bd78bf10dc58f72f933fbb6339d309050f575953..bf6175478397c1512802e6dc2a98cd3d28529709 100644 (file)
@@ -2,31 +2,31 @@
 
 <screensaver name="demon" _label="Demon">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=OhHI-pIHddA"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="50000"
           convert="invert"/>
 
-  <number id="count" type="slider" arg="-count %"
+  <number id="count" type="slider" arg="--count %"
           _label="States" _low-label="0" _high-label="20"
            low="0" high="20" default="0"/>
 
-  <number id="cycles" type="slider" arg="-cycles %"
+  <number id="cycles" type="slider" arg="--cycles %"
            _label="Timeout" _low-label="Small" _high-label="Large"
           low="0" high="800000" default="1000"/>
 
-  <number id="ncolors" type="slider" arg="-ncolors %"
+  <number id="ncolors" type="slider" arg="--ncolors %"
             _label="Number of colors" _low-label="Two" _high-label="Many"
             low="1" high="255" default="64"/>
 
-  <number id="size" type="spinbutton" arg="-size %"
+  <number id="size" type="spinbutton" arg="--size %"
            _label="Cell size" low="-40" high="40" default="-30"/>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index d54cd6bf0f667003ce019bf824c81b8d90648f94..06348f2c9df635044563eaa3b56c2116a84120a7 100644 (file)
@@ -2,31 +2,31 @@
 
 <screensaver name="discoball" _label="Discoball" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=8yd4PYJQrMw"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="30000"
           convert="invert"/>
 
-  <number id="speed" type="slider" arg="-speed %"
+  <number id="speed" type="slider" arg="--speed %"
           _label="Speed" _low-label="Slow" _high-label="Fast"
           low="0.1" high="5" default="1.0"
           convert="ratio"/>
 
-  <number id="count" type="slider" arg="-count %"
+  <number id="count" type="slider" arg="--count %"
           _label="Size" _low-label="Small" _high-label="Large"
           low="10" high="100" default="30"/>
 
   <hgroup>
-   <boolean id="wander" _label="Wander"    arg-unset="-no-wander"/>
-   <boolean id="spin"   _label="Spin"      arg-set="-spin"/>
-   <boolean id="wire"   _label="Wireframe" arg-set="-wireframe"/>
+   <boolean id="wander" _label="Wander"    arg-unset="--no-wander"/>
+   <boolean id="spin"   _label="Spin"      arg-set="--spin"/>
+   <boolean id="wire"   _label="Wireframe" arg-set="--wireframe"/>
   </hgroup>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 01c7d4f4aed6796e17e6803a15f4df0568e6ce32..9146d19e7d2fafe551647c40388f13a8ac4f8436 100644 (file)
@@ -2,24 +2,24 @@
 
 <screensaver name="discrete" _label="Discrete">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=l-yIY8vRlHA"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="20000"
           convert="invert"/>
 
-  <number id="cycles" type="slider" arg="-cycles %"
+  <number id="cycles" type="slider" arg="--cycles %"
            _label="Timeout" _low-label="Small" _high-label="Large"
           low="100" high="10000" default="2500"/>
 
-  <number id="ncolors" type="slider" arg="-ncolors %"
+  <number id="ncolors" type="slider" arg="--ncolors %"
             _label="Number of colors" _low-label="Two" _high-label="Many"
             low="1" high="255" default="100"/>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index fa815d637a14854243d9e5ff519ab8a02b33fc62..2ad853a78290695fa449fa25bee702bdc037646c 100644 (file)
@@ -2,43 +2,40 @@
 
 <screensaver name="distort" _label="Distort">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=ENaG3gwtukM"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="200000" default="20000"
           convert="invert"/>
 
-  <number id="duration" type="slider" arg="-duration %"
+  <number id="duration" type="slider" arg="--duration %"
           _label="Duration" _low-label="10 seconds" _high-label="10 minutes"
           low="10" high="600" default="120"/>
 
-  <!-- #### -speed [0] -->
-  <!-- #### -slow -->
-
-  <number id="radius" type="slider" arg="-radius %"
+  <number id="radius" type="slider" arg="--radius %"
           _label="Lens size" _low-label="Small" _high-label="Large"
           low="0" high="1000" default="0"/>
 
   <hgroup>
-   <number id="count" type="spinbutton" arg="-number %"
+   <number id="count" type="spinbutton" arg="--number %"
            _label="Lens count" low="0" high="10" default="0"/>
 
    <select id="effect">
     <option id="normal" _label="Normal"/>
-    <option id="swamp"  _label="Swamp thing" arg-set="-effect swamp"/>
-    <option id="bounce" _label="Bounce"      arg-set="-effect bounce"/>
+    <option id="swamp"  _label="Swamp thing" arg-set="--effect swamp"/>
+    <option id="bounce" _label="Bounce"      arg-set="--effect bounce"/>
    </select>
   </hgroup>
 
   <hgroup>
-   <boolean id="reflect" _label="Reflect"      arg-set="-reflect"/>
-   <boolean id="magnify" _label="Magnify"      arg-set="-magnify"/>
-   <boolean id="blackhole" _label="Black hole" arg-set="-blackhole"/>
-   <boolean id="vortex" _label="Vortex"        arg-set="-vortex"/>
-   <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+   <boolean id="reflect" _label="Reflect"      arg-set="--reflect"/>
+   <boolean id="magnify" _label="Magnify"      arg-set="--magnify"/>
+   <boolean id="blackhole" _label="Black hole" arg-set="--blackhole"/>
+   <boolean id="vortex" _label="Vortex"        arg-set="--vortex"/>
+   <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
   </hgroup>
 
   <xscreensaver-image />
index 48cd2ee6002e273be3f341af1c1964c93ca7633b..66b099db880b793312e64b5aa1f70b1298addf3a 100644 (file)
@@ -2,24 +2,23 @@
 
 <screensaver name="dnalogo" _label="DNA Logo" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=B7I5A7E3SP0"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame Rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="25000"
           convert="invert"/>
 
   <select id="mode">
-   <option id="glyph"    _label="DNA Lounge logo" arg-set="-mode helix"/>
-   <option id="pizza"    _label="DNA Pizza logo"  arg-set="-mode pizza"/>
+   <option id="glyph"    _label="DNA Lounge logo" arg-set="--mode helix"/>
+   <option id="pizza"    _label="DNA Pizza logo"  arg-set="--mode pizza"/>
    <option id="both"     _label="DNA Lounge and DNA Pizza logos"/>
-<!--<option id="codeword" _label="Codeword logo"  arg-set="-mode codeword"/>-->
   </select>
   <hgroup>
-   <boolean id="wire"    _label="Wireframe"       arg-set="-wireframe"/>
-   <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+   <boolean id="wire"    _label="Wireframe"       arg-set="--wireframe"/>
+   <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
   </hgroup>
 
   <xscreensaver-updater />
index 9eda2b457496d71a841976d85be738f055d047e1..db90e5acc277ec5059f8b850fa99ee718ad507f4 100644 (file)
@@ -2,24 +2,24 @@
 
 <screensaver name="drift" _label="Drift">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=cppZgCh6U7I"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="10000"
           convert="invert"/>
 
-  <number id="count" type="slider" arg="-count %"
+  <number id="count" type="slider" arg="--count %"
           _label="Duration" _low-label="Short" _high-label="Long"
           low="1" high="200" default="30"/>
 
-  <number id="ncolors" type="slider" arg="-ncolors %"
+  <number id="ncolors" type="slider" arg="--ncolors %"
             _label="Number of colors" _low-label="Two" _high-label="Many"
             low="1" high="255" default="200"/>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index c682af89bb5fc024bd79313cfe0d2b609a3c6b31..21771c49f4fee3a15dcde0c9e434fa7f2b8dc311 100644 (file)
@@ -2,17 +2,17 @@
 
 <screensaver name="dymaxionmap" _label="Dymaxion Map" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=4LnO0UiccGs"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="20000"
             convert="invert"/>
-    <number id="speed" type="slider" arg="-speed %"
+    <number id="speed" type="slider" arg="--speed %"
             _label="Animation speed" _low-label="Slow" _high-label="Fast"
             low="0.05" high="10.0" default="1.0"
             convert="ratio"/>
     <hgroup>
      <select id="map">
       <option id="flat"  _label="Flat map"/>
-      <option id="day"   _label="Satellite map" arg-set="-image BUILTIN_SAT"/>
+      <option id="day"   _label="Satellite map" arg-set="--image BUILTIN_SAT"/>
      </select>
-
-     <!-- <file id="image" _label="Image file" arg="-image %"/> -->
     </hgroup>
 
-    <number id="frames" type="slider" arg="-frames %"
+    <number id="frames" type="slider" arg="--frames %"
             _label="Day / night smoothness" _low-label="Low" _high-label="High"
             low="24" high="1440" default="720"/>
    </vgroup>
 
    <vgroup>
     <hgroup>
-     <boolean id="stars"  _label="Stars"       arg-unset="-no-stars"/>
-     <boolean id="grid"   _label="Lat / Long"  arg-unset="-no-grid"/>
-     <boolean id="wander" _label="Wander"    arg-unset="-no-wander"/>
-     <boolean id="roll"   _label="Roll"      arg-unset="-no-roll"/>
-     <boolean id="wire"    _label="Wireframe"       arg-set="-wireframe"/>
-     <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+     <boolean id="stars"  _label="Stars"       arg-unset="--no-stars"/>
+     <boolean id="grid"   _label="Lat / Long"  arg-unset="--no-grid"/>
+     <boolean id="wander" _label="Wander"    arg-unset="--no-wander"/>
+     <boolean id="roll"   _label="Roll"      arg-unset="--no-roll"/>
+     <boolean id="wire"    _label="Wireframe"       arg-set="--wireframe"/>
+     <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
     </hgroup>
 
     <xscreensaver-updater />
index 88eac221d637c0050f83c01dfaa82b9808b57327..a5cdc53ec7c766b74f56981539e846be8ecee841 100644 (file)
@@ -2,17 +2,17 @@
 
 <screensaver name="endgame" _label="Endgame" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=QfglC_lvUTA"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="20000"
           convert="invert"/>
 
-  <boolean id="classic" _label="Low resolution chess pieces" arg-set="-classic"/>
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="classic" _label="Low resolution chess pieces" arg-set="--classic"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 685438c9e9e1def7c0c9bb03066fe8c931ab96f1..10d417838df17ccd5ef7cf6bb52cd7204a21dd06 100644 (file)
@@ -2,19 +2,19 @@
 
 <screensaver name="energystream" _label="Energy Stream" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=TbWZ6v5Zzk8"/>
 
-  <number id="speed" type="slider" arg="-speed %"
+  <number id="speed" type="slider" arg="--speed %"
           _label="Speed" _low-label="Slow" _high-label="Fast"
           low="0.01" high="5.0" default="1.0"
           convert="ratio"/>
 
   <hgroup>
-   <boolean id="wander" _label="Wander" arg-set="-wander" />
-   <boolean id="spin"   _label="Spin"   arg-set="-spin" />
-   <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+   <boolean id="wander" _label="Wander" arg-set="--wander" />
+   <boolean id="spin"   _label="Spin"   arg-set="--spin" />
+   <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
   </hgroup>
 
   <xscreensaver-updater />
index 5c91d28314d2e3a2f0912a5d26778263d0a4f499..d95a7ecfe78c0650fc9a3a086bee54d4995e6a37 100644 (file)
@@ -2,35 +2,35 @@
 
 <screensaver name="engine" _label="Engine" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=8BL2o8QJmiA"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="30000"
           convert="invert"/>
 
   <select id="engine">
    <option id="random" _label="Random engine"/>
-   <option id="1" _label="Honda Insight (3 cylinders)"     arg-set="-engine honda_insight"/>
-   <option id="2" _label="BMW M3 (4 cylinders)"            arg-set="-engine bmw_m3"/>
-   <option id="3" _label="VW Beetle (4 cylinders, flat)"   arg-set="-engine vw_beetle"/>
-   <option id="4" _label="Audi Quattro (5 cylinders)"      arg-set="-engine audi_quattro"/>
-   <option id="5" _label="BMW M5 (6 cylinders)"            arg-set="-engine bmw_m5"/>
-   <option id="6" _label="Subaru XT (6 cylinders, V)"      arg-set="-engine subaru_xt"/>
-   <option id="7" _label="Porsche 911 (6 cylinders, flat)" arg-set="-engine porsche_911"/>
-   <option id="8" _label="Corvette Z06 (8 cylinders, V)"   arg-set="-engine corvette_z06"/>
-   <option id="9" _label="Dodge Viper (10 cylinders, V)"   arg-set="-engine dodge_viper"/>
-   <option id="10" _label="Jaguar XKE (12 cylinders, V)"   arg-set="-engine jaguar_xke"/>
+   <option id="1" _label="Honda Insight (3 cylinders)"     arg-set="--engine honda_insight"/>
+   <option id="2" _label="BMW M3 (4 cylinders)"            arg-set="--engine bmw_m3"/>
+   <option id="3" _label="VW Beetle (4 cylinders, flat)"   arg-set="--engine vw_beetle"/>
+   <option id="4" _label="Audi Quattro (5 cylinders)"      arg-set="--engine audi_quattro"/>
+   <option id="5" _label="BMW M5 (6 cylinders)"            arg-set="--engine bmw_m5"/>
+   <option id="6" _label="Subaru XT (6 cylinders, V)"      arg-set="--engine subaru_xt"/>
+   <option id="7" _label="Porsche 911 (6 cylinders, flat)" arg-set="--engine porsche_911"/>
+   <option id="8" _label="Corvette Z06 (8 cylinders, V)"   arg-set="--engine corvette_z06"/>
+   <option id="9" _label="Dodge Viper (10 cylinders, V)"   arg-set="--engine dodge_viper"/>
+   <option id="10" _label="Jaguar XKE (12 cylinders, V)"   arg-set="--engine jaguar_xke"/>
   </select>
 
-  <boolean id="titles" _label="Show engine name" arg-set="-titles"/>
+  <boolean id="titles" _label="Show engine name" arg-set="--titles"/>
   <hgroup>
-    <boolean id="wander" _label="Wander" arg-unset="-no-move"/>
-    <boolean id="spin" _label="Spin" arg-unset="-no-spin"/>
+    <boolean id="wander" _label="Wander" arg-unset="--no-move"/>
+    <boolean id="spin" _label="Spin" arg-unset="--no-spin"/>
   </hgroup>
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 18b23df08a6e6aa86878e5e794c3734d618c61aa..ca7af1084935e0c611c53347a959827e49d0a37b 100644 (file)
@@ -2,44 +2,32 @@
 
 <screensaver name="epicycle" _label="Epicycle">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=rpk3zxQxaR8"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="20000"
           convert="invert"/>
 
-  <number id="ncolors" type="slider" arg="-colors %"
+  <number id="ncolors" type="slider" arg="--colors %"
             _label="Number of colors" _low-label="Two" _high-label="Many"
             low="1" high="255" default="100"/>
 
-  <number id="holdtime" type="slider" arg="-holdtime %"
+  <number id="holdtime" type="slider" arg="--holdtime %"
           _label="Linger" _low-label="1 second" _high-label="30 seconds"
           low="1" high="30" default="2"/>
 
   <hgroup>
-  <number id="linewidth" type="spinbutton" arg="-linewidth %"
+  <number id="linewidth" type="spinbutton" arg="--linewidth %"
           _label="Line thickness" low="1" high="50" default="4"/>
 
-  <number id="harmonics" type="spinbutton" arg="-harmonics %"
+  <number id="harmonics" type="spinbutton" arg="--harmonics %"
           _label="Harmonics" low="1" high="20" default="8"/>
   </hgroup>
 
-  <!-- #### -color0 [red] -->
-  <!-- #### -colours [100] -->
-  <!-- #### -foreground [white] -->
-  <!-- #### -min_circles [2] -->
-  <!-- #### -max_circles [10] -->
-  <!-- #### -min_speed [0.003] -->
-  <!-- #### -max_speed [0.005] -->
-  <!-- #### -timestep [1.0] -->
-  <!-- #### -divisor_poisson [0.4] -->
-  <!-- #### -size_factor_min [1.05] -->
-  <!-- #### -size_factor_max [2.05] -->
-
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 74684a6fbb61329677bbb69c68a6c90b7c5593db..78f46087669a14d7820610cb0d053151e2e27b83 100644 (file)
@@ -2,43 +2,43 @@
 
 <screensaver name="eruption" _label="Eruption">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=CQ6jDBnumT8"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="10000"
             convert="invert"/>
 
-    <number id="ncolors" type="slider" arg="-ncolors %"
+    <number id="ncolors" type="slider" arg="--ncolors %"
               _label="Number of colors" _low-label="Few" _high-label="Many"
               low="16" high="256" default="256"/>
 
-    <number id="nparticles" type="slider" arg="-particles %"
+    <number id="nparticles" type="slider" arg="--particles %"
               _label="Number of particles" _low-label="Little" _high-label="Many"
               low="100" high="2000" default="300"/>
 
-    <number id="cooloff" type="slider" arg="-cooloff %"
+    <number id="cooloff" type="slider" arg="--cooloff %"
               _label="Cooling factor" _low-label="Slow" _high-label="Fast"
               low="0" high="10" default="2"/>
    </vgroup>
    <vgroup>
-    <number id="heat" type="slider" arg="-heat %"
+    <number id="heat" type="slider" arg="--heat %"
               _label="Heat" _low-label="Pleasant" _high-label="Inferno"
               low="64" high="256" default="256"/>
 
-    <number id="gravity" type="slider" arg="-gravity %"
+    <number id="gravity" type="slider" arg="--gravity %"
               _label="Gravity" _low-label="Negative" _high-label="Positive"
               low="-5" high="5" default="1"/>
 
-    <number id="cycles" type="slider" arg="-cycles %"
+    <number id="cycles" type="slider" arg="--cycles %"
              _label="Duration" _low-label="Short" _high-label="Long"
             low="10" high="3000" default="80"/>
 
-    <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+    <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
    </vgroup>
   </hgroup>
 
index d6df1f053c6d8398eec878e7edbbc95880f015c8..ad2897edff413050d36c3108d7136bf79f7ef38b 100644 (file)
@@ -2,18 +2,18 @@
 
 <screensaver name="esper" _label="Esper" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=_er7xZd7zUU"/>
 
   <hgroup>
    <vgroup>
-   <number id="delay" type="slider" arg="-delay %"
+   <number id="delay" type="slider" arg="--delay %"
            _label="Frame rate" _low-label="Low" _high-label="High"
            low="0" high="100000" default="20000"
            convert="invert"/>
 
-    <number id="speed" type="slider" arg="-speed %"
+    <number id="speed" type="slider" arg="--speed %"
             _label="Speed" _low-label="Slow" _high-label="Fast"
             low="0.2" high="20" default="1.0"
             convert="ratio"/>
@@ -21,8 +21,8 @@
    </vgroup>
    <vgroup>
 
-    <boolean id="titles" _label="Show file names" arg-unset="-no-titles"/>
-    <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+    <boolean id="titles" _label="Show file names" arg-unset="--no-titles"/>
+    <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
     <xscreensaver-image />
 
index aa25799ec3e20da88dc44b7af6a41aed1a6cc136..49d96f040209db9b75ee51f7a704a79cd360fefc 100644 (file)
@@ -4,29 +4,29 @@
 
   <video href="https://www.youtube.com/watch?v=p3MgGyie6-I"/>
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <hgroup>
     <select id="view-mode">
       <option id="walk"      _label="Random motion"/>
-      <option id="walk"      _label="Walk"      arg-set="-view-mode walk"/>
-      <option id="turn"      _label="Turn"      arg-set="-view-mode turn"/>
+      <option id="walk"      _label="Walk"      arg-set="--view-mode walk"/>
+      <option id="turn"      _label="Turn"      arg-set="--view-mode turn"/>
     </select>
 
     <boolean id="orientation-marks" _label="Show orientation marks"
-              arg-set="-orientation-marks"/>
+              arg-set="--orientation-marks"/>
   </hgroup>
 
   <hgroup>
     <boolean id="deform" _label="Deform the surface"
-              arg-unset="-no-deform"/>
+              arg-unset="--no-deform"/>
 
-    <number id="deform-speed" type="slider" arg="-deformation-speed %"
+    <number id="deform-speed" type="slider" arg="--deformation-speed %"
             _label="Deformation speed"
             _low-label="1.0" _high-label="100.0"
             low="1.0" high="100.0" default="10.0"/>
 
-    <number id="init-deform" type="slider" arg="-initial-deformation %"
+    <number id="init-deform" type="slider" arg="--initial-deformation %"
             _label="Initial deformation"
             _low-label="0.0" _high-label="3999.0"
             low="0.0" high="3999.0" default="0.0"/>
     <vgroup>
       <select id="display-mode">
         <option id="random"      _label="Random surface"/>
-        <option id="wire"        _label="Wireframe mesh"      arg-set="-mode wireframe"/>
-        <option id="surface"     _label="Solid surface"       arg-set="-mode surface"/>
-        <option id="transparent" _label="Transparent surface" arg-set="-mode transparent"/>
+        <option id="wire"        _label="Wireframe mesh"      arg-set="--mode wireframe"/>
+        <option id="surface"     _label="Solid surface"       arg-set="--mode surface"/>
+        <option id="transparent" _label="Transparent surface" arg-set="--mode transparent"/>
       </select>
 
       <select id="appearance">
         <option id="random" _label="Random pattern"/>
-        <option id="solid"  _label="Solid object"    arg-set="-appearance solid"/>
-        <option id="bands"  _label="Distance bands"  arg-set="-appearance distance-bands"/>
-        <option id="bands"  _label="Direction bands" arg-set="-appearance direction-bands"/>
+        <option id="solid"  _label="Solid object"    arg-set="--appearance solid"/>
+        <option id="bands"  _label="Distance bands"  arg-set="--appearance distance-bands"/>
+        <option id="bands"  _label="Direction bands" arg-set="--appearance direction-bands"/>
       </select>
 
       <select id="colors">
         <option id="random"   _label="Random coloration"/>
-        <option id="twosided" _label="One-sided"        arg-set="-colors one-sided"/>
-        <option id="twosided" _label="Two-sided"        arg-set="-colors two-sided"/>
-        <option id="rainbow"  _label="Distance colors"  arg-set="-colors distance"/>
-        <option id="rainbow"  _label="Direction colors" arg-set="-colors direction"/>
+        <option id="twosided" _label="One-sided"        arg-set="--colors one-sided"/>
+        <option id="twosided" _label="Two-sided"        arg-set="--colors two-sided"/>
+        <option id="rainbow"  _label="Distance colors"  arg-set="--colors distance"/>
+        <option id="rainbow"  _label="Direction colors" arg-set="--colors direction"/>
       </select>
 
       <boolean id="change-colors" _label="Change colors"
-                arg-unset="-no-change-colors"/>
+                arg-unset="--no-change-colors"/>
 
       <select id="projection">
         <option id="random"       _label="Random Projection"/>
-        <option id="perspective"  _label="Perspective"  arg-set="-projection perspective"/>
-        <option id="orthographic" _label="Orthographic" arg-set="-projection orthographic"/>
+        <option id="perspective"  _label="Perspective"  arg-set="--projection perspective"/>
+        <option id="orthographic" _label="Orthographic" arg-set="--projection orthographic"/>
       </select>
     </vgroup>
 
     <vgroup>
-      <number id="speed-x" type="slider" arg="-speed-x %"
+      <number id="speed-x" type="slider" arg="--speed-x %"
               _label="X rotation speed"
               _low-label="-4.0" _high-label="4.0"
               low="-4.0" high="4.0" default="1.1"/>
 
-      <number id="speed-y" type="slider" arg="-speed-y %"
+      <number id="speed-y" type="slider" arg="--speed-y %"
               _label="Y rotation speed"
               _low-label="-4.0" _high-label="4.0"
               low="-4.0" high="4.0" default="1.3"/>
 
-      <number id="speed-z" type="slider" arg="-speed-z %"
+      <number id="speed-z" type="slider" arg="--speed-z %"
               _label="Z rotation speed"
               _low-label="-4.0" _high-label="4.0"
               low="-4.0" high="4.0" default="1.5"/>
     </vgroup>
 
     <vgroup>
-     <number id="walk-direction" type="slider" arg="-walk-direction %"
+     <number id="walk-direction" type="slider" arg="--walk-direction %"
              _label="Walking direction"
              _low-label="-180.0" _high-label="180.0"
              low="-180.0" high="180.0" default="83.0"/>
 
-     <number id="walk-speed" type="slider" arg="-walk-speed %"
+     <number id="walk-speed" type="slider" arg="--walk-speed %"
              _label="Walking speed"
              _low-label="1.0" _high-label="100.0"
              low="1.0" high="100.0" default="20.0"/>
 
-     <number id="delay" type="slider" arg="-delay %"
+     <number id="delay" type="slider" arg="--delay %"
              _label="Frame rate" _low-label="Low" _high-label="High"
              low="0" high="100000" default="25000"
              convert="invert"/>
 
     <vgroup>
      <xscreensaver-updater />
-     <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+     <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
     </vgroup>
 
   </hgroup>
index 125ae27d0c15f5cac4318a1c26b6482891ba3db0..5b4c9523acdd23fad1446b51cba5d9b793f37100 100644 (file)
@@ -2,44 +2,38 @@
 
 <screensaver name="euler2d" _label="Euler 2D">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=ZH1ZtfId0iA"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="10000"
             convert="invert"/>
 
-    <number id="count" type="slider" arg="-count %"
+    <number id="count" type="slider" arg="--count %"
              _label="Particles" _low-label="Few" _high-label="Many"
             low="2" high="5000" default="1024"/>
 
-    <number id="eulertail" type="slider" arg="-eulertail %"
+    <number id="eulertail" type="slider" arg="--eulertail %"
              _label="Trail length" _low-label="Short" _high-label="Long"
             low="2" high="500" default="10"/>
    </vgroup>
 
    <vgroup>
-  <!--
-    <number id="eulerpower" type="slider" arg="-eulerpower %"
-             _label="Power" _low-label="Low" _high-label="High"
-            low="0.5" high="3.0" default="1.0"/>
-  -->
-
-    <number id="cycles" type="slider" arg="-cycles %"
+    <number id="cycles" type="slider" arg="--cycles %"
              _label="Duration" _low-label="Short" _high-label="Long"
             low="100" high="5000" default="3000"/>
 
-    <number id="ncolors" type="slider" arg="-ncolors %"
+    <number id="ncolors" type="slider" arg="--ncolors %"
               _label="Number of colors" _low-label="Two" _high-label="Many"
               low="2" high="255" default="64"/>
    </vgroup>
   </hgroup>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
   <xscreensaver-updater />
 
   <_description>
index 97c26a8e4b452f8fdf786cdc77b5aa546ea5c61f..0acfee84a3b8385143b17d900d3826bad403df45 100644 (file)
@@ -2,37 +2,33 @@
 
 <screensaver name="extrusion" _label="Extrusion" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=eKYmqL7ndGs"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="20000"
           convert="invert"/>
 
   <select id="mode">
     <option id="random"  _label="Random object"/>
-    <option id="helix2" _label="Helix 2" arg-set="-name helix2"/>
-    <option id="helix3" _label="Helix 3" arg-set="-name helix3"/>
-    <option id="helix4" _label="Helix 4" arg-set="-name helix4"/>
-    <option id="joinoffset" _label="Join offset" arg-set="-name joinoffset"/>
-    <option id="screw" _label="Screw" arg-set="-name screw"/>
-    <option id="taper" _label="Taper" arg-set="-name taper"/>
-    <option id="twist" _label="Twistoid" arg-set="-name twistoid"/>
+    <option id="helix2" _label="Helix 2" arg-set="--name helix2"/>
+    <option id="helix3" _label="Helix 3" arg-set="--name helix3"/>
+    <option id="helix4" _label="Helix 4" arg-set="--name helix4"/>
+    <option id="joinoffset" _label="Join offset" arg-set="--name joinoffset"/>
+    <option id="screw" _label="Screw" arg-set="--name screw"/>
+    <option id="taper" _label="Taper" arg-set="--name taper"/>
+    <option id="twist" _label="Twistoid" arg-set="--name twistoid"/>
   </select>
 
   <select id="render">
-    <option id="flat"  _label="Use flat coloring" arg-set="-no-light"/>
+    <option id="flat"  _label="Use flat coloring" arg-set="--no-light"/>
     <option id="light" _label="Use lighting"/>
   </select>
 
-  <!-- #### -texture -->
-  <!-- #### -texture_quality -->
-  <!-- #### -mipmap -->
-
-  <boolean id="wire"    _label="Wireframe" arg-set="-wireframe"/>
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="wire"    _label="Wireframe" arg-set="--wireframe"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index ddca5e86ae0b7937066acc414aa651afa774e919..0445960dcea7a287b886eac2cf780976421ba59a 100644 (file)
@@ -2,28 +2,28 @@
 
 <screensaver name="fadeplot" _label="Fade Plot">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=Cev034v37JM"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="30000"
           convert="invert"/>
 
-  <number id="count" type="slider" arg="-count %"
+  <number id="count" type="slider" arg="--count %"
           _label="Thickness" _low-label="Thin" _high-label="Thick"
            low="0" high="30" default="10"/>
 
-  <number id="cycles" type="slider" arg="-cycles %"
+  <number id="cycles" type="slider" arg="--cycles %"
            _label="Cycles" _low-label="Small" _high-label="Large"
           low="0" high="10000" default="1500"/>
 
-  <number id="ncolors" type="slider" arg="-ncolors %"
+  <number id="ncolors" type="slider" arg="--ncolors %"
             _label="Number of colors" _low-label="Two" _high-label="Many"
             low="1" high="255" default="64"/>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 13787f5acaca7cf1f986b38d4b5079db28764b7d..67a02637be1686d5eb2d39cc41d33b6d5b52c4bd 100644 (file)
@@ -2,24 +2,24 @@
 
 <screensaver name="fiberlamp" _label="Fiber Lamp">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=PvYKJ-vkxE0"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="10000"
           convert="invert"/>
 
-  <number id="count" type="slider" arg="-count %"
+  <number id="count" type="slider" arg="--count %"
           _label="Fibers" _low-label="Few" _high-label="Many"
           low="10" high="500" default="500"/>
 
-  <number id="cycles" type="slider" arg="-cycles %"
+  <number id="cycles" type="slider" arg="--cycles %"
           _label="Time between knocks" _low-label="Short" _high-label="Long"
           low="100" high="10000" default="10000"/>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 2695dc973b9dc689dc8a53bf847fc33ab7c6b259..c3b5fc1d7ddef4349e9fa6783f765bb1a9b4b3b5 100644 (file)
@@ -2,30 +2,30 @@
 
 <screensaver name="filmleader" _label="Film Leader">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=Cng7hmsuLo0"/>
 
   <hgroup>
    <vgroup>
-    <number id="tvcolor" type="slider" arg="-tv-color %"
+    <number id="tvcolor" type="slider" arg="--tv-color %"
             _label="Color Knob" _low-label="Low" _high-label="High"
             low="0" high="400" default="70"/>
-    <number id="tvtint" type="slider" arg="-tv-tint %"
+    <number id="tvtint" type="slider" arg="--tv-tint %"
             _label="Tint Knob" _low-label="Low" _high-label="High"
             low="0" high="360" default="5"/>
-    <number id="noise" type="slider" arg="-noise %"
+    <number id="noise" type="slider" arg="--noise %"
             _label="Noise" _low-label="Low" _high-label="High"
             low="0.0" high="0.2" default="0.04"/>
    </vgroup>
    <vgroup>
-    <number id="tvbrightness" type="slider" arg="-tv-brightness %"
+    <number id="tvbrightness" type="slider" arg="--tv-brightness %"
             _label="Brightness Knob" _low-label="Low" _high-label="High"
             low="-75.0" high="100.0" default="3.0"/>
-    <number id="tvcontrast" type="slider" arg="-tv-contrast %"
+    <number id="tvcontrast" type="slider" arg="--tv-contrast %"
             _label="Contrast Knob" _low-label="Low" _high-label="High"
             low="0" high="500" default="150"/>
-    <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+    <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
    </vgroup>
   </hgroup>
 
index ac1294be19261dbd7ad49a68b1ce43abcb8275eb..ec70eaf3eea7aa6b03a7b2a3e28937d1d5a7efb7 100644 (file)
@@ -2,22 +2,22 @@
 
 <screensaver name="fireworkx" _label="Fireworkx">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=-l9BfvnFIPM"/>
 
-  <number id="Delay" type="slider" arg="-delay %"
+  <number id="Delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="10000"
           convert="invert"/>
 
-  <number id="maxlife" type="slider" arg="-maxlife %"
+  <number id="maxlife" type="slider" arg="--maxlife %"
           _label="Activity" _low-label="Dense" _high-label="Sparse"
           low="0" high="100" default="32"/>
 
-  <boolean id="flash" _label="Light flash" arg-unset="-no-flash"/>
-  <boolean id="shoot" _label="Shells upward" arg-set="-shoot"/>
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="flash" _label="Light flash" arg-unset="--no-flash"/>
+  <boolean id="shoot" _label="Shells upward" arg-set="--shoot"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 1e6cfb3f09c06a7c435479a69242adb6d04f48e3..78955c3c3edd8e8066fe25de6ec3525c927cc7f3 100644 (file)
@@ -2,28 +2,26 @@
 
 <screensaver name="flag" _label="Flag">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=LuEC3EONzjc"/>
 
-  <string id="text" _label="Text for flag" arg="-text %"/>
+  <string id="text" _label="Text for flag" arg="--text %"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="200000" default="50000"
           convert="invert"/>
 
-  <number id="cycles" type="slider" arg="-cycles %"
+  <number id="cycles" type="slider" arg="--cycles %"
            _label="Timeout" _low-label="Small" _high-label="Large"
           low="0" high="800000" default="1000"/>
 
-  <number id="ncolors" type="slider" arg="-ncolors %"
+  <number id="ncolors" type="slider" arg="--ncolors %"
             _label="Number of colors" _low-label="Two" _high-label="Many"
             low="1" high="255" default="200"/>
 
-  <!-- #### -size [-7] -->
-
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 8e341c6edbfc9aa9ffd4aea2c6e2d6356de4ed3d..b437e1cb14c5401ee09b13bdd921d7ecd2dd297a 100644 (file)
@@ -2,32 +2,32 @@
 
 <screensaver name="flame" _label="Flame">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=6Pu8JKNT_Jk"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="50000"
           convert="invert"/>
 
-  <number id="delay2" type="slider" arg="-delay2 %"
+  <number id="delay2" type="slider" arg="--delay2 %"
           _label="Linger" _low-label="0 seconds" _high-label="10 seconds"
           low="1000" high="10000000" default="2000000"/>
 
-  <number id="iterations" type="slider" arg="-iterations %"
+  <number id="iterations" type="slider" arg="--iterations %"
           _label="Number of fractals" _low-label="Few" _high-label="Many"
           low="1" high="250" default="25"/>
 
-  <number id="points" type="slider" arg="-points %"
+  <number id="points" type="slider" arg="--points %"
           _label="Complexity" _low-label="Low" _high-label="High"
           low="100" high="80000" default="10000"/>
 
-  <number id="ncolors" type="slider" arg="-colors %"
+  <number id="ncolors" type="slider" arg="--colors %"
             _label="Number of colors" _low-label="Two" _high-label="Many"
             low="1" high="255" default="64"/>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 398a4fd0676b5e6c5a5ab3ccbdbdf70ca2846e52..763299a7ed94e42fd33624530fd196418961d2db 100644 (file)
@@ -2,18 +2,18 @@
 
 <screensaver name="flipflop" _label="Flip Flop" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=RzWRoAMFtnw"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="20000"
             convert="invert"/>
 
-    <number id="spin" type="slider" arg="-spin %"
+    <number id="spin" type="slider" arg="--spin %"
             _label="Spin" _low-label="Stopped" _high-label="Whirlwind"
             low="0" high="3.0" default="0.1"/>
    </vgroup>
 
     <select id="mode">
       <option id="tiles"  _label="Draw Tiles"/>
-      <option id="sticks" _label="Draw Sticks" arg-set="-mode sticks"/>
+      <option id="sticks" _label="Draw Sticks" arg-set="--mode sticks"/>
     </select>
 
-     <number id="size-x" type="spinbutton" arg="-size-x %"
+     <number id="size-x" type="spinbutton" arg="--size-x %"
              _label="Width" low="3" high="20" default="9"/>
-     <number id="size-y" type="spinbutton" arg="-size-y %"
+     <number id="size-y" type="spinbutton" arg="--size-y %"
              _label="Depth" low="3" high="20" default="9"/>
    </vgroup>
   </hgroup>
 
   <hgroup>
    <vgroup>
-    <boolean id="texture" _label="Load image"      arg-set="-texture" />
-    <boolean id="wire"    _label="Wireframe"       arg-set="-wireframe"/>
-    <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+    <boolean id="texture" _label="Load image"      arg-set="--texture" />
+    <boolean id="wire"    _label="Wireframe"       arg-set="--wireframe"/>
+    <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
    </vgroup>
    <vgroup>
     <xscreensaver-image />
index 9143de0153daf8d57efa5af782346dcfe4ca103b..a45a7aa9b64e37330f82b490bba8eded9bb73a19 100644 (file)
@@ -2,18 +2,18 @@
 
 <screensaver name="flipscreen3d" _label="Flip Screen 3D" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=mu3iN_BSpt4"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="20000"
           convert="invert"/>
 
-  <boolean id="rotate" _label="Rotate" arg-unset="-no-rotate"/>
+  <boolean id="rotate" _label="Rotate" arg-unset="--no-rotate"/>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-image />
 
index 7f15ca11b7b1bbb7b266205dc6219e661b7b943e..5ad6de90b9fd0a9b10ec37a939754d82ebb8d31b 100644 (file)
@@ -2,19 +2,19 @@
 
 <screensaver name="fliptext" _label="Flip Text" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=vcB-6S7Hfuk"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="10000"
             convert="invert"/>
    </vgroup>
    <vgroup>
-    <number id="speed" type="slider" arg="-speed %"
+    <number id="speed" type="slider" arg="--speed %"
             _label="Speed" _low-label="Slow" _high-label="Fast"
             low="0.1" high="10.0" default="1.0"
             convert="ratio"/>
    <vgroup>
   <select id="align">
     <option id="left"   _label="Random text alignment"/>
-    <option id="left"   _label="Flush left text"  arg-set="-alignment left"/>
-    <option id="center" _label="Centered text"    arg-set="-alignment center"/>
-    <option id="right"  _label="Flush right text" arg-set="-alignment right"/>
+    <option id="left"   _label="Flush left text"  arg-set="--alignment left"/>
+    <option id="center" _label="Centered text"    arg-set="--alignment center"/>
+    <option id="right"  _label="Flush right text" arg-set="--alignment right"/>
   </select>
 
-    <number id="size" type="spinbutton" arg="-size %"
+    <number id="size" type="spinbutton" arg="--size %"
              _label="Font point size" low="1" high="100" default="20"/>
 
-    <number id="columns" type="spinbutton" arg="-columns %"
+    <number id="columns" type="spinbutton" arg="--columns %"
              _label="Text columns" low="1" high="200" default="80"/>
 
-    <number id="lines" type="spinbutton" arg="-lines %"
+    <number id="lines" type="spinbutton" arg="--lines %"
              _label="Text lines" low="1" high="99" default="8"/>
 
-    <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+    <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
    </vgroup>
    <vgroup>
     <xscreensaver-text />
index 804080a53829dc7e5ce6c92daa58c570cbc4b7fc..a2a066c479731402f2bf63fc8f449ac230ff45fb 100644 (file)
@@ -2,31 +2,31 @@
 
 <screensaver name="flow" _label="Flow">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=RJjbRV0FC_A"/>
 
   <hgroup>
    <vgroup>
-    <number id="speed" type="slider" arg="-delay %"
+    <number id="speed" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="10000"
             convert="invert"/>
 
-    <number id="count" type="slider" arg="-count %"
+    <number id="count" type="slider" arg="--count %"
             _label="Count" _low-label="Few" _high-label="Many"
              low="10" high="5000" default="3000"/>
 
-    <number id="cycles" type="slider" arg="-cycles %"
+    <number id="cycles" type="slider" arg="--cycles %"
              _label="Timeout" _low-label="Small" _high-label="Large"
             low="0" high="800000" default="10000"/>
    </vgroup>
    <vgroup>
-    <number id="ncolors" type="slider" arg="-ncolors %"
+    <number id="ncolors" type="slider" arg="--ncolors %"
               _label="Number of colors" _low-label="Two" _high-label="Many"
               low="1" high="255" default="200"/>
 
-    <number id="size" type="slider" arg="-size %"
+    <number id="size" type="slider" arg="--size %"
               _label="Length of trails" _low-label="Short" _high-label="Long"
               low="-20" high="-2" default="-10" convert="invert"/>
    </vgroup>
 
   <hgroup>
    <vgroup>
-    <boolean id="rotate" _label="Rotating around attractor" arg-unset="-no-rotate"/>
-    <boolean id="ride"   _label="Ride in the flow" arg-unset="-no-ride"/>
-    <boolean id="box"    _label="Draw bounding box"  arg-unset="-no-box"/>
+    <boolean id="rotate" _label="Rotating around attractor" arg-unset="--no-rotate"/>
+    <boolean id="ride"   _label="Ride in the flow" arg-unset="--no-ride"/>
+    <boolean id="box"    _label="Draw bounding box"  arg-unset="--no-box"/>
    </vgroup>
    <vgroup>
-    <boolean id="periodic" _label="Periodic attractors" arg-unset="-no-periodic"/>
-    <boolean id="search" _label="Search for new attractors" arg-unset="-no-search"/>
-    <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+    <boolean id="periodic" _label="Periodic attractors" arg-unset="--no-periodic"/>
+    <boolean id="search" _label="Search for new attractors" arg-unset="--no-search"/>
+    <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
    </vgroup>
   </hgroup>
 
index 8cbdad573cc8be14df4f9f4d00be04c732f94f8b..5a929084453ce122488145e5d82741402a33c9fc 100644 (file)
@@ -2,44 +2,44 @@
 
 <screensaver name="fluidballs" _label="Fluid Balls">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=5Iz9V-vOrxA"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="10000"
             convert="invert"/>
 
-    <number id="count" type="slider" arg="-count %"
+    <number id="count" type="slider" arg="--count %"
              _label="Number of balls" _low-label="Few" _high-label="Many"
             low="1" high="3000" default="300"/>
 
-    <number id="size" type="slider" arg="-size %"
+    <number id="size" type="slider" arg="--size %"
              _label="Ball size" _low-label="Small" _high-label="Large"
             low="3" high="200" default="25"/>
    </vgroup>
    <vgroup>
-    <number id="gravity" type="slider" arg="-gravity %"
+    <number id="gravity" type="slider" arg="--gravity %"
              _label="Gravity" _low-label="      Freefall" _high-label="Jupiter"
             low="0.0" high="0.1" default="0.01"/>
 
-    <number id="wind" type="slider" arg="-wind %"
+    <number id="wind" type="slider" arg="--wind %"
              _label="Wind" _low-label="Still" _high-label="Hurricane"
             low="0.0" high="0.1" default="0.00"/>
 
-    <number id="elasticity" type="slider" arg="-elasticity %"
+    <number id="elasticity" type="slider" arg="--elasticity %"
              _label="Friction" _low-label="Clay" _high-label="Rubber"
             low="0.2" high="1.0" default="0.97"/>
    </vgroup>
   </hgroup>
 
   <hgroup>
-   <boolean id="random" _label="Various ball sizes"    arg-unset="-no-random"/>
-   <boolean id="shake"  _label="Shake box"             arg-unset="-no-shake"/>
-   <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+   <boolean id="random" _label="Various ball sizes"    arg-unset="--no-random"/>
+   <boolean id="shake"  _label="Shake box"             arg-unset="--no-shake"/>
+   <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
   </hgroup>
 
   <xscreensaver-updater />
index 5917e324f6dd428bf5c30e0b169fefdd3bcadde6..86d75525945c0a24cf191ec2b2443ca38eb01bc8 100644 (file)
@@ -2,20 +2,20 @@
 
 <screensaver name="flurry" _label="Flurry" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=0beqUyN5ZsI"/>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <select id="preset">
-    <option id="classic" _label="Classic"     arg-set="-preset classic"/>
-    <option id="rgb"     _label="RGB"         arg-set="-preset rgb"/>
-    <option id="fire"    _label="Fire"        arg-set="-preset fire"/>
-    <option id="water"   _label="Water"       arg-set="-preset water"/>
-    <option id="binary"  _label="Binary"      arg-set="-preset binary"/>
-    <option id="psych"   _label="Psychedelic" arg-set="-preset psychedelic"/>
-    <option id="insane"  _label="Insane"      arg-set="-preset insane"/>
+    <option id="classic" _label="Classic"     arg-set="--preset classic"/>
+    <option id="rgb"     _label="RGB"         arg-set="--preset rgb"/>
+    <option id="fire"    _label="Fire"        arg-set="--preset fire"/>
+    <option id="water"   _label="Water"       arg-set="--preset water"/>
+    <option id="binary"  _label="Binary"      arg-set="--preset binary"/>
+    <option id="psych"   _label="Psychedelic" arg-set="--preset psychedelic"/>
+    <option id="insane"  _label="Insane"      arg-set="--preset insane"/>
     <option id="random"  _label="Random"/>
   </select>
 
index 71927bf792fe5bd62e8c60d1b24ae303c8eee872..c01fabe14014f602fa147a4a7354e5369f9c97ea 100644 (file)
@@ -2,33 +2,33 @@
 
 <screensaver name="flyingtoasters" _label="Flying Toasters" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=mLGDvtbFvfg"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="30000"
           convert="invert"/>
 
-  <number id="speed" type="slider" arg="-speed %"
+  <number id="speed" type="slider" arg="--speed %"
           _label="Air speed" _low-label="Slow" _high-label="Fast"
           low="0.01" high="8.0" default="1.0"
           convert="ratio"/>
 
-  <number id="ntoasters" type="slider" arg="-ntoasters %"
+  <number id="ntoasters" type="slider" arg="--ntoasters %"
           _label="Number of toasters" _low-label="None" _high-label="Swarm"
           low="0" high="50" default="20"/>
 
-  <number id="nslices" type="slider" arg="-nslices %"
+  <number id="nslices" type="slider" arg="--nslices %"
           _label="Number of slices" _low-label="None" _high-label="Swarm"
           low="0" high="50" default="25"/>
 
   <hgroup>
-   <boolean id="tex"     _label="Chrome"      arg-unset="-no-texture"/>
-   <boolean id="fog"     _label="Fog"        arg-unset="-no-fog"/>
-   <boolean id="wire"    _label="Wireframe"   arg-set="-wireframe"/>
-   <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+   <boolean id="tex"     _label="Chrome"      arg-unset="--no-texture"/>
+   <boolean id="fog"     _label="Fog"        arg-unset="--no-fog"/>
+   <boolean id="wire"    _label="Wireframe"   arg-set="--wireframe"/>
+   <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
   </hgroup>
 
   <xscreensaver-updater />
index d9ff84dc4dce1480c23456564d17b5994665839a..736187a13cbc50dfa5502e971210ef5bfe9961ce 100644 (file)
@@ -2,35 +2,35 @@
 
 <screensaver name="fontglide" _label="Font Glide">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=2KCXD19FHk0"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="10000"
             convert="invert"/>
 
-    <number id="speed" type="slider" arg="-speed %"
+    <number id="speed" type="slider" arg="--speed %"
             _label="Speed" _low-label="Slow" _high-label="Fast"
             low="0.1" high="10.0" default="1.0"
             convert="ratio"/>
 
-    <number id="linger" type="slider" arg="-linger %"
+    <number id="linger" type="slider" arg="--linger %"
             _label="Page linger" _low-label="Brief" _high-label="Long"
             low="0.1" high="10.0" default="1.0"
             convert="ratio"/>
 
     <select id="mode">
-     <option id="page"   _label="Pages of text"  arg-set="-mode page"/>
-     <option id="scroll" _label="Horizontally scrolling text" arg-set="-mode scroll"/>
+     <option id="page"   _label="Pages of text"  arg-set="--mode page"/>
+     <option id="scroll" _label="Horizontally scrolling text" arg-set="--mode scroll"/>
      <option id="random" _label="Random display style"/>
     </select>
 
     <hgroup>
-     <number id="bw" type="spinbutton" arg="-bw %"
+     <number id="bw" type="spinbutton" arg="--bw %"
               _label="Font border thickness" low="0" high="8" default="2"/>
     </hgroup>
    </vgroup>
@@ -38,8 +38,8 @@
    <vgroup>
     <xscreensaver-text />
     <hgroup>
-     <boolean id="trails" _label="Vapor trails"    arg-set="-trails"/>
-     <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+     <boolean id="trails" _label="Vapor trails"    arg-set="--trails"/>
+     <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
     </hgroup>
    </vgroup>
   </hgroup>
index 2e0bd41591d80f669ab1c7959a130c1a1d76bd77..6a8d950a825ea5a2a65704f116cd9f7786d49604 100644 (file)
@@ -2,20 +2,20 @@
 
 <screensaver name="forest" _label="Forest">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=EEK2qbAmKWs"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="3000000" default="500000"
           convert="invert"/>
 
-  <number id="ncolors" type="slider" arg="-ncolors %"
+  <number id="ncolors" type="slider" arg="--ncolors %"
             _label="Number of colors" _low-label="Two" _high-label="Many"
             low="1" high="20" default="20"/>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 96f8389a9c454cad521a6c45d24a02b5a9277b74..3ea847a5aae3a0e7e691509c2ce270a04b658ead 100644 (file)
@@ -2,52 +2,52 @@
 
 <screensaver name="fuzzyflakes" _label="Fuzzy Flakes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=NrGe3xcqAns"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="10000"
             convert="invert"/>
 
-    <number id="speed" type="slider" arg="-speed %"
+    <number id="speed" type="slider" arg="--speed %"
             _label="Speed" _low-label="Slow" _high-label="Fast"
             low="1" high="50" default="10"/>
 
-    <number id="layers" type="slider" arg="-layers %"
+    <number id="layers" type="slider" arg="--layers %"
             _label="Layers" _low-label="Few" _high-label="Many"
             low="1" high="10" default="3"/>
 
     <hgroup>
-     <boolean id="rc" _label="Random colors" arg-set="-random-colors"/>
-     <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+     <boolean id="rc" _label="Random colors" arg-set="--random-colors"/>
+     <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
     </hgroup>
 
     <select id="color">
-     <option id="lred"     _label="Red"     arg-set="-color #FF0000"/>
+     <option id="lred"     _label="Red"     arg-set="--color #FF0000"/>
      <option id="pink"     _label="Pink"/>
-     <option id="lyellow"  _label="Yellow"  arg-set="-color #FFFF00"/>
-     <option id="lgreen"   _label="Green"   arg-set="-color #00FF00"/>
-     <option id="lcyan"    _label="Cyan"    arg-set="-color #00FFFF"/>
-     <option id="lblue"    _label="Blue"    arg-set="-color #0000FF"/>
-     <option id="lmagenta" _label="Magenta" arg-set="-color #FF00FF"/>
+     <option id="lyellow"  _label="Yellow"  arg-set="--color #FFFF00"/>
+     <option id="lgreen"   _label="Green"   arg-set="--color #00FF00"/>
+     <option id="lcyan"    _label="Cyan"    arg-set="--color #00FFFF"/>
+     <option id="lblue"    _label="Blue"    arg-set="--color #0000FF"/>
+     <option id="lmagenta" _label="Magenta" arg-set="--color #FF00FF"/>
     </select>
 
    </vgroup>
    <vgroup>
-    <number id="arms" type="slider" arg="-arms %"
+    <number id="arms" type="slider" arg="--arms %"
             _label="Arms" _low-label="Few" _high-label="Many"
             low="1" high="10" default="5"/>
-    <number id="thickness" type="slider" arg="-thickness %"
+    <number id="thickness" type="slider" arg="--thickness %"
             _label="Thickness" _low-label="Thin" _high-label="Thick"
             low="1" high="50" default="10"/>
-    <number id="bthickness" type="slider" arg="-bthickness %"
+    <number id="bthickness" type="slider" arg="--bthickness %"
             _label="Border thickness" _low-label="Thin" _high-label="Thick"
             low="0" high="50" default="3"/>
-    <number id="radius" type="slider" arg="-radius %"
+    <number id="radius" type="slider" arg="--radius %"
             _label="Radius" _low-label="Small" _high-label="Large"
             low="1" high="100" default="20"/>
 
index b12d62f0b1ab0857bb79ea008fe841061c124c0c..7960a12a13c00a89c3299cc3576ce70fd22edf52 100644 (file)
@@ -2,29 +2,29 @@
 
 <screensaver name="galaxy" _label="Galaxy">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=xBprAm9w-Fo"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="20000"
           convert="invert"/>
 
-  <number id="count" type="spinbutton" arg="-count %"
+  <number id="count" type="spinbutton" arg="--count %"
           _label="Count" low="-20" high="20" default="-5"/>
 
-  <number id="cycles" type="slider" arg="-cycles %"
+  <number id="cycles" type="slider" arg="--cycles %"
            _label="Duration" _low-label="Short" _high-label="Long"
           low="10" high="1000" default="250"/>
 
-  <number id="ncolors" type="slider" arg="-ncolors %"
+  <number id="ncolors" type="slider" arg="--ncolors %"
             _label="Number of colors" _low-label="Two" _high-label="Many"
             low="10" high="255" default="64"/>
 
-  <boolean id="spin" _label="Rotate viewpoint" arg-unset="-no-spin"/>
+  <boolean id="spin" _label="Rotate viewpoint" arg-unset="--no-spin"/>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 0ed200708b0239e5e14a540e5a9f2a6d51c08c21..aa11ffdbedfab5a1822778ab6d683966c6cfd30a 100644 (file)
@@ -2,29 +2,29 @@
 
 <screensaver name="gears" _label="Gears" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=OHamiC1tcdg"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="30000"
           convert="invert"/>
 
-  <number id="speed" type="slider" arg="-speed %"
+  <number id="speed" type="slider" arg="--speed %"
           _label="Speed" _low-label="Slow" _high-label="Fast"
           low="0.01" high="5.0" default="1.0"
           convert="ratio"/>
 
-  <number id="count" type="slider" arg="-count %"
+  <number id="count" type="slider" arg="--count %"
           _label="Gear count" _low-label="0" _high-label="20"
            low="0" high="20" default="0"/>
 
   <hgroup>
-   <boolean id="wander" _label="Wander"    arg-unset="-no-wander"/>
-   <boolean id="spin"   _label="Spin"      arg-unset="-no-spin"/>
-   <boolean id="wire"   _label="Wireframe" arg-set="-wireframe"/>
-   <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+   <boolean id="wander" _label="Wander"    arg-unset="--no-wander"/>
+   <boolean id="spin"   _label="Spin"      arg-unset="--no-spin"/>
+   <boolean id="wire"   _label="Wireframe" arg-set="--wireframe"/>
+   <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
   </hgroup>
 
   <xscreensaver-updater />
index ab58add251960aeee564da9ee539e46a9c48a641..8c3b7f32d2d77b42ed17e473c4b128bad61b8c22 100644 (file)
@@ -2,7 +2,7 @@
 
 <screensaver name="geodesic" _label="Geodesic" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=qulzooBLIcU"/>
 
    <vgroup>
     <select id="object">
      <option id="mesh"       _label="Mesh faces"/>
-     <option id="solid"      _label="Solid faces" arg-set="-mode solid"/>
-     <option id="stellated"  _label="Stellated faces" arg-set="-mode stellated"/>
-     <option id="stellated2" _label="Inverse Stellated" arg-set="-mode stellated2"/>
-     <option id="wire"       _label="Wireframe" arg-set="-mode wire"/>
-     <option id="random"     _label="Random face style" arg-set="-mode random"/>
+     <option id="solid"      _label="Solid faces" arg-set="--mode solid"/>
+     <option id="stellated"  _label="Stellated faces" arg-set="--mode stellated"/>
+     <option id="stellated2" _label="Inverse Stellated" arg-set="--mode stellated2"/>
+     <option id="wire"       _label="Wireframe" arg-set="--mode wire"/>
+     <option id="random"     _label="Random face style" arg-set="--mode random"/>
     </select>
 
-    <boolean id="wander" _label="Wander"    arg-unset="-no-wander"/>
-    <boolean id="spin"   _label="Spin"      arg-unset="-no-spin"/>
-    <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+    <boolean id="wander" _label="Wander"    arg-unset="--no-wander"/>
+    <boolean id="spin"   _label="Spin"      arg-unset="--no-spin"/>
+    <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
    </vgroup>
 
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="30000"
             convert="invert"/>
 
-    <number id="speed" type="slider" arg="-speed %"
+    <number id="speed" type="slider" arg="--speed %"
             _label="Animation speed" _low-label="Slow" _high-label="Fast"
             low="0.05" high="10.0" default="1.0"
             convert="ratio"/>
 
-    <number id="count" type="slider" arg="-count %"
+    <number id="count" type="slider" arg="--count %"
             _label="Depth" _low-label="1" _high-label="8"
             low="1" high="8" default="4"/>
    </vgroup>
index 3922f70f66f01427c6e71289d0c01440e824ceb6..6a41ad33c9a13c3f5aac25b63c189eb1ec9bf930 100644 (file)
@@ -2,29 +2,29 @@
 
 <screensaver name="geodesicgears" _label="Geodesic Gears" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=gd_nTnJQ4Ps"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="30000"
           convert="invert"/>
 
-  <number id="timeout" type="slider" arg="-timeout %"
+  <number id="timeout" type="slider" arg="--timeout %"
           _label="Duration" _low-label="5 seconds" _high-label="2 minutes"
           low="5" high="120" default="20"/>
 
   <hgroup>
-   <boolean id="labels"  _label="Describe gears" arg-set="-labels"/>
-   <boolean id="numbers" _label="Number gears"   arg-set="-numbers"/>
-   <boolean id="wire"    _label="Wireframe"      arg-set="-wireframe"/>
+   <boolean id="labels"  _label="Describe gears" arg-set="--labels"/>
+   <boolean id="numbers" _label="Number gears"   arg-set="--numbers"/>
+   <boolean id="wire"    _label="Wireframe"      arg-set="--wireframe"/>
   </hgroup>
 
   <hgroup>
-   <boolean id="wander"  _label="Wander"    arg-unset="-no-wander"/>
-   <boolean id="spin"    _label="Spin"      arg-unset="-no-spin"/>
-   <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+   <boolean id="wander"  _label="Wander"    arg-unset="--no-wander"/>
+   <boolean id="spin"    _label="Spin"      arg-unset="--no-spin"/>
+   <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
   </hgroup>
 
   <xscreensaver-updater />
index baced1361b496d5192faabbc70fd78b030c875f1..8c2ec67d4830588434dfd68f89cf73229d6f9aa0 100644 (file)
@@ -2,55 +2,44 @@
 
 <screensaver name="gflux" _label="GFlux" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=vbRFlKH-LpA"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="20000"
             convert="invert"/>
 
-    <number id="wave" type="slider" arg="-speed %"
+    <number id="wave" type="slider" arg="--speed %"
             _label="Wave speed" _low-label="Slow" _high-label="Fast"
             low="0" high="0.50" default="0.05"
             convert="invert"/>
    </vgroup>
    <vgroup>
-    <number id="squares" type="slider" arg="-squares %"
+    <number id="squares" type="slider" arg="--squares %"
              _label="Mesh density" _low-label="Sparse" _high-label="Dense"
             low="2" high="40" default="19"/>
 
-    <number id="waves" type="slider" arg="-waves %"
+    <number id="waves" type="slider" arg="--waves %"
             _label="Waves" _low-label="1" _high-label="10"
              low="1" high="10" default="3"/>
    </vgroup>
   </hgroup>
 
   <select id="mode">
-   <option id="wire"    _label="Wire mesh"            arg-set="-mode wire"/>
-   <option id="solid"   _label="Flat lighting"        arg-set="-mode solid"/>
-   <option id="light"   _label="Directional lighting" arg-set="-mode light"/>
-   <option id="checker" _label="Checkerboard"         arg-set="-mode checker"/>
+   <option id="wire"    _label="Wire mesh"            arg-set="--mode wire"/>
+   <option id="solid"   _label="Flat lighting"        arg-set="--mode solid"/>
+   <option id="light"   _label="Directional lighting" arg-set="--mode light"/>
+   <option id="checker" _label="Checkerboard"         arg-set="--mode checker"/>
    <option id="grab"    _label="Picture"              />
   </select>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
-
-  <!-- #### -resolution [4] -->
-  <!-- #### -flat [0] -->
-  <!-- #### -rotationx [0.01] -->
-  <!-- #### -rotationy [0.0] -->
-  <!-- #### -rotationz [0.1] -->
-  <!-- #### -waveChange [50] -->
-  <!-- #### -waveHeight [1.0] -->
-  <!-- #### -waveFreq [3.0] -->
-  <!-- #### -zoom [1.0] -->
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-image />
-
   <xscreensaver-updater />
 
   <_description>
index ede5eed0e12ae23f69aeaaf1ba0e78aae6d5aa8c..810dfac08cf8577dc64f30a524be8a203dc64bb7 100644 (file)
@@ -2,45 +2,45 @@
 
 <screensaver name="gibson" _label="Gibson" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=_gOhMR3TrHA"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="20000"
             convert="invert"/>
 
-    <number id="speed" type="slider" arg="-speed %"
+    <number id="speed" type="slider" arg="--speed %"
             _label="Glyph speed" _low-label="Slow" _high-label="Fast"
             low="0.1" high="8.0" default="1.0"
             convert="ratio"/>
    </vgroup>
    <vgroup>
-    <number id="grid-width" type="spinbutton" arg="-grid-width %"
+    <number id="grid-width" type="spinbutton" arg="--grid-width %"
             _label="Grid width" low="1" high="20" default="6"/>
 
-    <number id="grid-depth" type="spinbutton" arg="-grid-depth %"
+    <number id="grid-depth" type="spinbutton" arg="--grid-depth %"
             _label="Grid depth" low="1" high="20" default="6"/>
    </vgroup>
    <vgroup>
-    <number id="grid-height" type="spinbutton" arg="-grid-height %"
+    <number id="grid-height" type="spinbutton" arg="--grid-height %"
             _label="Tower depth" low="1" high="20" default="7"/>
 
-    <number id="spacing" type="spinbutton" arg="-spacing %"
+    <number id="spacing" type="spinbutton" arg="--spacing %"
             _label="Tower spacing" low="1" high="5" default="2.0"/>
 
-    <number id="columns" type="spinbutton" arg="-columns %"
+    <number id="columns" type="spinbutton" arg="--columns %"
             _label="Text columns" low="1" high="20" default="5"/>
    </vgroup>
   </hgroup>
 
   <hgroup>
-   <boolean id="tex"     _label="Textured"  arg-unset="-no-texture"/>
-   <boolean id="wire"    _label="Wireframe"   arg-set="-wireframe"/>
-   <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+   <boolean id="tex"     _label="Textured"  arg-unset="--no-texture"/>
+   <boolean id="wire"    _label="Wireframe"   arg-set="--wireframe"/>
+   <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
    <xscreensaver-updater />
   </hgroup>
 
index 7aa6c52e8cc5acbfc36b9d4692d6dde38cba40d4..2944e2a79ef97c0bff3ce29f14181643d5f08eb2 100644 (file)
@@ -2,33 +2,33 @@
 
 <screensaver name="glblur" _label="GL Blur" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=wUWwQXRp8lE"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="10000"
           convert="invert"/>
 
-  <number id="blursize" type="slider" arg="-blursize %"
+  <number id="blursize" type="slider" arg="--blursize %"
           _label="Blur smoothness" _low-label="Sparse" _high-label="Dense"
           low="1" high="100" default="15"/>
 
-  <boolean id="wander" _label="Wander" arg-unset="-no-wander"/>
+  <boolean id="wander" _label="Wander" arg-unset="--no-wander"/>
 
   <select id="rotation">
-    <option id="no"  _label="Don't rotate"               arg-set="-spin 0"/>
-    <option id="x"   _label="Rotate around X axis"       arg-set="-spin X"/>
-    <option id="y"   _label="Rotate around Y axis"       arg-set="-spin Y"/>
-    <option id="z"   _label="Rotate around Z axis"       arg-set="-spin Z"/>
-    <option id="xy"  _label="Rotate around X and Y axes" arg-set="-spin XY"/>
-    <option id="xz"  _label="Rotate around X and Z axes" arg-set="-spin XZ"/>
-    <option id="yz"  _label="Rotate around Y and Z axes" arg-set="-spin YZ"/>
+    <option id="no"  _label="Don't rotate"               arg-set="--spin 0"/>
+    <option id="x"   _label="Rotate around X axis"       arg-set="--spin X"/>
+    <option id="y"   _label="Rotate around Y axis"       arg-set="--spin Y"/>
+    <option id="z"   _label="Rotate around Z axis"       arg-set="--spin Z"/>
+    <option id="xy"  _label="Rotate around X and Y axes" arg-set="--spin XY"/>
+    <option id="xz"  _label="Rotate around X and Z axes" arg-set="--spin XZ"/>
+    <option id="yz"  _label="Rotate around Y and Z axes" arg-set="--spin YZ"/>
     <option id="xyz" _label="Rotate around all three axes"/>
   </select>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 6d6cdca4348539d8b069874773ffd8649c16ef4e..808ee9dd9860b496b98585aa601390ad09952e0d 100644 (file)
@@ -2,56 +2,56 @@
 
 <screensaver name="glcells" _label="GL Cells" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=94ac7nEQyBI"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="20000"
             convert="invert"/>
-    <number id="pause" type="slider" arg="-pause %"
+    <number id="pause" type="slider" arg="--pause %"
             _label="Linger" _low-label="Short" _high-label="Long"
             low="0" high="400" default="50"/>
-    <number id="maxcells" type="slider" arg="-maxcells %"
+    <number id="maxcells" type="slider" arg="--maxcells %"
             _label="Max cells" _low-label="Few" _high-label="Many"
             low="50" high="5000" default="800"/>
-    <number id="radius" type="slider" arg="-radius %"
+    <number id="radius" type="slider" arg="--radius %"
             _label="Cell radius" _low-label="Small" _high-label="Huge"
             low="5" high="80" default="40"/>
     <select id="quality">
-      <option id="q0" _label="Lowest sphere detail"  arg-set="-quality 0"/>
-      <option id="q1" _label="Medium sphere detail"  arg-set="-quality 1"/>
-      <option id="q2" _label="Normal sphere detail"  arg-set="-quality 2"/>
+      <option id="q0" _label="Lowest sphere detail"  arg-set="--quality 0"/>
+      <option id="q1" _label="Medium sphere detail"  arg-set="--quality 1"/>
+      <option id="q2" _label="Normal sphere detail"  arg-set="--quality 2"/>
       <option id="q3" _label="More sphere detail"/>
-      <option id="q4" _label="Highest sphere detail" arg-set="-quality 4"/>
+      <option id="q4" _label="Highest sphere detail" arg-set="--quality 4"/>
     </select>
    </vgroup>
    <vgroup>
-    <number id="minfood" type="slider" arg="-minfood %"
+    <number id="minfood" type="slider" arg="--minfood %"
             _label="Min food" _low-label="Starve" _high-label="Gorge"
             low="0" high="100" default="5"/>
-    <number id="maxfood" type="slider" arg="-maxfood %"
+    <number id="maxfood" type="slider" arg="--maxfood %"
             _label="Max food" _low-label="Starve" _high-label="Gorge"
             low="10" high="100" default="20"/>
-    <number id="divideage" type="slider" arg="-divideage %"
+    <number id="divideage" type="slider" arg="--divideage %"
             _label="Cell division" _low-label="Quick" _high-label="Slow"
             low="1" high="100" default="20"/>
-    <number id="mindist" type="slider" arg="-mindist %"
+    <number id="mindist" type="slider" arg="--mindist %"
             _label="Min distance" _low-label="Small" _high-label="Large"
             low="1.0" high="3.0" default="1.4"/>
-    <number id="seeds" type="slider" arg="-seeds %"
+    <number id="seeds" type="slider" arg="--seeds %"
             _label="Seeds" _low-label="1" _high-label="15"
            low="1" high="15" default="1"/>
    </vgroup>
   </hgroup>
 
   <hgroup>
-   <boolean id="keepold" _label="Keep dead cells" arg-set="-keepold"/>
-   <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
-   <boolean id="wireframe" _label="Wireframe" arg-set="-wireframe"/>
+   <boolean id="keepold" _label="Keep dead cells" arg-set="--keepold"/>
+   <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
+   <boolean id="wireframe" _label="Wireframe" arg-set="--wireframe"/>
   </hgroup>
 
   <xscreensaver-updater />
index b75bc11f3388faf588fdd74a5381f7e9df583b76..b55c4c7f42135014cdef1825042609cf90644bc1 100644 (file)
@@ -2,29 +2,29 @@
 
 <screensaver name="gleidescope" _label="Gleidescope" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=q6F-CDX6-tU"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="20000"
           convert="invert"/>
 
-  <number id="size" _label="Size of tube" arg="-size %"
+  <number id="size" _label="Size of tube" arg="--size %"
          type="slider" _low-label="Small" _high-label="Large"
          low="0" high="10" default="0" />
 
-  <number id="duration" type="slider" arg="-duration %"
+  <number id="duration" type="slider" arg="--duration %"
           _label="Image duration"
           _low-label="10 seconds" _high-label="5 minutes"
           low="10" high="300" default="30"/>
 
   <hgroup>
-   <boolean id="move"  _label="Move"   arg-unset="-no-move"/>
-   <boolean id="rotate"        _label="Rotate" arg-unset="-no-rotate"/>
-   <boolean id="zoom"  _label="Zoom"   arg-set="-zoom"/>
-   <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+   <boolean id="move"  _label="Move"   arg-unset="--no-move"/>
+   <boolean id="rotate"        _label="Rotate" arg-unset="--no-rotate"/>
+   <boolean id="zoom"  _label="Zoom"   arg-set="--zoom"/>
+   <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
   </hgroup>
 
   <xscreensaver-image />
index a479f7f5426371a6d9c12fd3d3138d488738b79b..181eaa489356716f7d25e12e3637ecff88271723 100644 (file)
@@ -2,33 +2,33 @@
 
 <screensaver name="glforestfire" _label="GL Forest Fire" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=_0Ff3qHUfsA"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="10000"
           convert="invert"/>
 
-  <number id="count" type="slider" arg="-count %"
+  <number id="count" type="slider" arg="--count %"
           _label="Count" _low-label="Rain" _high-label="Huge fire"
           low="0" high="8000" default="800"/>
 
-  <number id="trees" type="slider" arg="-trees %"
+  <number id="trees" type="slider" arg="--trees %"
           _label="Number of trees" _low-label="Desert" _high-label="Forest"
           low="0" high="20" default="5"/>
 
   <hgroup>
    <vgroup>
-    <boolean id="wander"  _label="Wander"    arg-unset="-no-wander"/>
-    <boolean id="tex"     _label="Textures"  arg-unset="-no-texture"/>
-    <boolean id="shadow"  _label="Shadows"   arg-unset="-no-shadows"/>
+    <boolean id="wander"  _label="Wander"    arg-unset="--no-wander"/>
+    <boolean id="tex"     _label="Textures"  arg-unset="--no-texture"/>
+    <boolean id="shadow"  _label="Shadows"   arg-unset="--no-shadows"/>
    </vgroup>
    <vgroup>
-    <boolean id="fog"     _label="Fog"         arg-set="-fog"/>
-    <boolean id="wire"    _label="Wireframe"   arg-set="-wireframe"/>
-    <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+    <boolean id="fog"     _label="Fog"         arg-set="--fog"/>
+    <boolean id="wire"    _label="Wireframe"   arg-set="--wireframe"/>
+    <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
    </vgroup>
   </hgroup>
 
index c0a14141f26dd902eab088af200d5be7c0cb5ba0..40939ef02e7cd7c259f18a9162ab545e5867e734 100644 (file)
@@ -2,41 +2,41 @@
                                                                                 
 <screensaver name="glhanoi" _label="GL Hanoi" gl="yes">
 
- <command arg="-root"/>
+ <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=1qRCviRmsTY"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="15000" convert="invert"/>
 
-    <number id="count" type="slider" arg="-count %"
+    <number id="count" type="slider" arg="--count %"
             _label="Number of disks" _low-label="0" _high-label="31"
             default="0" low="0" high="31"/>
 
-    <number id="poles" type="slider" arg="-poles %"
+    <number id="poles" type="slider" arg="--poles %"
             _label="Number of poles" _low-label="0" _high-label="31"
             default="0" low="0" high="31"/>
    </vgroup>
 
    <vgroup>
-    <number id="speed" type="slider" arg="-speed %"
+    <number id="speed" type="slider" arg="--speed %"
             _label="Speed (of smallest disks)" _low-label="1" _high-label="20"
             default="1" low="1" high="20"/>
 
-    <number id="trails" type="slider" arg="-trails %"
+    <number id="trails" type="slider" arg="--trails %"
             _label="Length of disk trails" _low-label="0" _high-label="10"
             default="2" low="0" high="10"/>
 
-    <boolean id="fog" _label="Enable fog" arg-set="-fog"/>
+    <boolean id="fog" _label="Enable fog" arg-set="--fog"/>
 
-    <boolean id="wire" _label="Wireframe" arg-set="-wireframe"/>
+    <boolean id="wire" _label="Wireframe" arg-set="--wireframe"/>
 
-    <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+    <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
-    <boolean id="lighting" _label="Enable lighting" arg-unset="-no-light"/>
+    <boolean id="lighting" _label="Enable lighting" arg-unset="--no-light"/>
    </vgroup>
   </hgroup>
 
index f53777c720f312ed0315d48f5790c7106f538982..9f268b698c8e70541ce8bcbd4e71922a39d9f4bd 100644 (file)
@@ -2,22 +2,22 @@
 
 <screensaver name="glitchpeg" _label="GlitchPEG">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=Xl5vKJ65_xM"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="30000"
             convert="invert"/>
 
-    <number id="duration" type="slider" arg="-duration %"
+    <number id="duration" type="slider" arg="--duration %"
             _label="Duration" _low-label="1 second" _high-label="10 minutes"
             low="1" high="600" default="120"/>
 
-    <number id="count" type="slider" arg="-count %"
+    <number id="count" type="slider" arg="--count %"
             _label="Glitchiness" _low-label="Low" _high-label="High"
             low="1" high="1024" default="100"/>
 
index e035416c4f1f372750b06927bcdc1c81dd9aa5e6..170c4876b549b3f2460979d95f68a96d92579b5a 100644 (file)
@@ -2,51 +2,51 @@
 
 <screensaver name="glknots" _label="GL Knots" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=ILiYNkeEb_k"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="30000"
             convert="invert"/>
 
-    <number id="speed" type="slider" arg="-speed %"
+    <number id="speed" type="slider" arg="--speed %"
             _label="Speed" _low-label="Slow" _high-label="Fast"
             low="0.01" high="5.0" default="1.0"
             convert="ratio"/>
 
     <select id="rotation">
-      <option id="no"  _label="Don't rotate"               arg-set="-spin 0"/>
-      <option id="x"   _label="Rotate around X axis"       arg-set="-spin X"/>
-      <option id="y"   _label="Rotate around Y axis"       arg-set="-spin Y"/>
-      <option id="z"   _label="Rotate around Z axis"       arg-set="-spin Z"/>
-      <option id="xy"  _label="Rotate around X and Y axes" arg-set="-spin XY"/>
-      <option id="xz"  _label="Rotate around X and Z axes" arg-set="-spin XZ"/>
-      <option id="yz"  _label="Rotate around Y and Z axes" arg-set="-spin YZ"/>
+      <option id="no"  _label="Don't rotate"               arg-set="--spin 0"/>
+      <option id="x"   _label="Rotate around X axis"       arg-set="--spin X"/>
+      <option id="y"   _label="Rotate around Y axis"       arg-set="--spin Y"/>
+      <option id="z"   _label="Rotate around Z axis"       arg-set="--spin Z"/>
+      <option id="xy"  _label="Rotate around X and Y axes" arg-set="--spin XY"/>
+      <option id="xz"  _label="Rotate around X and Z axes" arg-set="--spin XZ"/>
+      <option id="yz"  _label="Rotate around Y and Z axes" arg-set="--spin YZ"/>
       <option id="xyz" _label="Rotate around all three axes"/>
     </select>
 
    </vgroup>
    <vgroup>
 
-    <number id="segments" type="slider" arg="-segments %"
+    <number id="segments" type="slider" arg="--segments %"
             _label="Resolution" _low-label="Segmented" _high-label="Smooth"
             low="100" high="2000" default="800"/>
 
-    <number id="thickness" type="slider" arg="-thickness %"
+    <number id="thickness" type="slider" arg="--thickness %"
             _label="Thickness" _low-label="Thin" _high-label="Thick"
             low="0.05" high="1.0" default="0.3"/>
 
     <hgroup>
-     <boolean id="wander" _label="Wander"    arg-unset="-no-wander"/>
-     <boolean id="wire"   _label="Wireframe" arg-set="-wireframe"/>
+     <boolean id="wander" _label="Wander"    arg-unset="--no-wander"/>
+     <boolean id="wire"   _label="Wireframe" arg-set="--wireframe"/>
     </hgroup>
 
     <hgroup>
-      <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+      <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
     </hgroup>
 
    </vgroup>
index 026181997912d4c3c226de54a4b46248d70f09e0..58f8f10c9ac5513cc3a7e2d3ed5ba28902afca8d 100644 (file)
@@ -2,41 +2,41 @@
 
 <screensaver name="glmatrix" _label="GL Matrix" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=_dktSpsaCPg"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="30000"
           convert="invert"/>
 
-  <number id="density" type="slider" arg="-density %"
+  <number id="density" type="slider" arg="--density %"
           _label="Glyph density" _low-label="Sparse" _high-label="Dense"
           low="0" high="100" default="20"/>
 
-  <number id="speed" type="slider" arg="-speed %"
+  <number id="speed" type="slider" arg="--speed %"
           _label="Glyph speed" _low-label="Slow" _high-label="Fast"
           low="0.1" high="8.0" default="1.0"
           convert="ratio"/>
 
   <select id="mode">
     <option id="matrix" _label="Matrix encoding"/>
-    <option id="binary" _label="Binary encoding"      arg-set="-mode binary"/>
-    <option id="hex"    _label="Hexadecimal encoding" arg-set="-mode hex"/>
-    <option id="dna"    _label="Genetic encoding"     arg-set="-mode dna"/>
+    <option id="binary" _label="Binary encoding"      arg-set="--mode binary"/>
+    <option id="hex"    _label="Hexadecimal encoding" arg-set="--mode hex"/>
+    <option id="dna"    _label="Genetic encoding"     arg-set="--mode dna"/>
   </select>
 
   <hgroup>
-   <boolean id="fog"    _label="Fog"     arg-unset="-no-fog"/>
-   <boolean id="waves"  _label="Waves"   arg-unset="-no-waves"/>
-   <boolean id="rotate" _label="Panning" arg-unset="-no-rotate"/>
+   <boolean id="fog"    _label="Fog"     arg-unset="--no-fog"/>
+   <boolean id="waves"  _label="Waves"   arg-unset="--no-waves"/>
+   <boolean id="rotate" _label="Panning" arg-unset="--no-rotate"/>
   </hgroup>
 
   <hgroup>
-   <boolean id="tex"     _label="Textured"  arg-unset="-no-texture"/>
-   <boolean id="wire"    _label="Wireframe"   arg-set="-wireframe"/>
-   <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+   <boolean id="tex"     _label="Textured"  arg-unset="--no-texture"/>
+   <boolean id="wire"    _label="Wireframe"   arg-set="--wireframe"/>
+   <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
   </hgroup>
 
   <xscreensaver-updater />
index 488746fdc68b104ef03e5f2d518b2abdb23d5041..cbe78ed02ca13680136aa3fab10aafb6349439c4 100644 (file)
@@ -2,39 +2,37 @@
 
 <screensaver name="glplanet" _label="GL Planet" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=ohcJ1bVkLZ4"/>
-<!--<video href="https://www.youtube.com/watch?v=OZ6zRLLFLk4"/>-->
+<!-- <video href="https://www.youtube.com/watch?v=OZ6zRLLFLk4"/> -->
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="20000"
           convert="invert"/>
 
-  <!-- #### -no-texture -->
-
-  <file id="image"  _label="Day image"   arg="-image %"  />
-  <file id="image2" _label="Night image" arg="-image2 %" />
+  <file id="image"  _label="Day image"   arg="--image %"  />
+  <file id="image2" _label="Night image" arg="--image2 %" />
 
   <hgroup>
-   <boolean id="wander" _label="Wander"    arg-unset="-no-wander"/>
-   <boolean id="rotate" _label="Rotate"    arg-unset="-no-rotate"/>
-   <boolean id="roll"   _label="Roll"      arg-unset="-no-roll"/>
-   <boolean id="stars"  _label="Stars"     arg-unset="-no-stars"/>
+   <boolean id="wander" _label="Wander"    arg-unset="--no-wander"/>
+   <boolean id="rotate" _label="Rotate"    arg-unset="--no-rotate"/>
+   <boolean id="roll"   _label="Roll"      arg-unset="--no-roll"/>
+   <boolean id="stars"  _label="Stars"     arg-unset="--no-stars"/>
    <select id="mode">
     <option id="random" _label="Random Shape"/>
-    <option id="globe" _label="Globe" arg-set="-mode globe"/>
-    <option id="mercator" _label="Mercator" arg-set="-mode mercator"/>
+    <option id="globe" _label="Globe" arg-set="--mode globe"/>
+    <option id="mercator" _label="Mercator" arg-set="--mode mercator"/>
     <option id="equirectangular" _label="Equirectangular"
-            arg-set="-mode equirectangular"/>
+            arg-set="--mode equirectangular"/>
    </select>
 
   </hgroup>
 
   <hgroup>
-   <boolean id="wire"    _label="Wireframe"       arg-set="-wireframe"/>
-   <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+   <boolean id="wire"    _label="Wireframe"       arg-set="--wireframe"/>
+   <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
   </hgroup>
 
   <xscreensaver-updater />
index ca5bb1dd094d654c80b2d1189e9450ecc1d4e2bc..88ffd500505efba0454936b848728d050a7fd0d7 100644 (file)
@@ -2,35 +2,35 @@
 
 <screensaver name="glschool" _label="GL School" gl="yes">
 
- <command arg="-root"/>
+ <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=SuMIatcSPdU"/>
 
   <hgroup>
    <vgroup>
- <number id="delay" type="slider" arg="-delay %"
+ <number id="delay" type="slider" arg="--delay %"
         _label="Frame rate" _low-label="Low" _high-label="High"
          low="0" high="100000" default="20000" convert="invert"/>
 
- <number id="NFish" type="slider" arg="-nfish %"
+ <number id="NFish" type="slider" arg="--nfish %"
     _label="Fish count" _low-label="Few" _high-label="Lots"
     low="5" high="500" default="100"/>
 
- <number id="AvoidFact" type="slider" arg="-avoidfact %" _label="Avoidance" _low-label="None" _high-label="High" low="0" high="10" default="1.5"/>
+ <number id="AvoidFact" type="slider" arg="--avoidfact %" _label="Avoidance" _low-label="None" _high-label="High" low="0" high="10" default="1.5"/>
    </vgroup>
    <vgroup>
- <number id="MatchFact" type="slider" arg="-matchfact %" _label="Velocity matching" _low-label="None" _high-label="High" low="0" high="3" default="0.15"/>
- <number id="CenterFact" type="slider" arg="-centerfact %" _label="Centering" _low-label="None" _high-label="High" low="0" high="1.0" default="0.1"/>
- <number id="TargetFact" type="slider" arg="-targetfact %" _label="Goal following" _low-label="None" _high-label="High" low="0" high="400" default="80"/>
+ <number id="MatchFact" type="slider" arg="--matchfact %" _label="Velocity matching" _low-label="None" _high-label="High" low="0" high="3" default="0.15"/>
+ <number id="CenterFact" type="slider" arg="--centerfact %" _label="Centering" _low-label="None" _high-label="High" low="0" high="1.0" default="0.1"/>
+ <number id="TargetFact" type="slider" arg="--targetfact %" _label="Goal following" _low-label="None" _high-label="High" low="0" high="400" default="80"/>
    </vgroup>
   </hgroup>
 
  <hgroup>
- <boolean id="wire"   _label="Wireframe" arg-set="-wireframe"/>
- <boolean id="fog"    _label="Fog" arg-set="-fog"/>
- <boolean id="drawgoal" _label="Draw goal" arg-set="-drawgoal"/>
- <boolean id="drawbbox" _label="Draw bounding box" arg-unset="-no-drawbbox"/>
- <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+ <boolean id="wire"   _label="Wireframe" arg-set="--wireframe"/>
+ <boolean id="fog"    _label="Fog" arg-set="--fog"/>
+ <boolean id="drawgoal" _label="Draw goal" arg-set="--drawgoal"/>
+ <boolean id="drawbbox" _label="Draw bounding box" arg-unset="--no-drawbbox"/>
+ <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
  </hgroup>
 
   <xscreensaver-updater />
index 74f67b2bbe866cd4cd7ff9a567d757e9489a7a43..ae615e8b95843f0ac4e79cc652a44a6d54aad792 100644 (file)
@@ -2,42 +2,42 @@
 
 <screensaver name="glslideshow" _label="GL Slideshow" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=Hi0xUWnqBhQ"/>
 
   <hgroup>
    <vgroup>
-   <number id="delay" type="slider" arg="-delay %"
+   <number id="delay" type="slider" arg="--delay %"
            _label="Frame rate" _low-label="Low" _high-label="High"
            low="0" high="100000" default="20000"
            convert="invert"/>
 
-   <number id="duration" type="slider" arg="-duration %"
+   <number id="duration" type="slider" arg="--duration %"
            _label="Time until loading a new image"
            _low-label="10 seconds" _high-label="5 minutes"
            low="10" high="300" default="30"/>
 
-   <number id="zoom" type="slider" arg="-zoom %"
+   <number id="zoom" type="slider" arg="--zoom %"
            _label="Always show at least this much of the image"
            _low-label="50%" _high-label="100%"
            low="50" high="100" default="75"/>
 
-   <number id="pan" type="slider" arg="-pan %"
+   <number id="pan" type="slider" arg="--pan %"
            _label="Pan/zoom duration"
            _low-label="1 second" _high-label="30 seconds"
            low="1" high="30" default="6"/>
 
-   <number id="fade" type="slider" arg="-fade %"
+   <number id="fade" type="slider" arg="--fade %"
            _label="Crossfade duration"
            _low-label="None" _high-label="30 seconds"
            low="0" high="30" default="2"/>
    </vgroup>
    <vgroup>
 
-    <boolean id="letterbox" _label="Letterbox" arg-unset="-no-letterbox"/>
-    <boolean id="titles" _label="Show file names" arg-set="-titles"/>
-    <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+    <boolean id="letterbox" _label="Letterbox" arg-unset="--no-letterbox"/>
+    <boolean id="titles" _label="Show file names" arg-set="--titles"/>
+    <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
     <xscreensaver-image />
 
index e00da6035b85ae650cad1e2b995c6f28895ef6b9..d49457406805776c74a34e731222d8001f2824f1 100644 (file)
@@ -2,35 +2,35 @@
 
 <screensaver name="glsnake" _label="GL Snake" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=AIqz-G0n1JU"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="30000"
             convert="invert"/>
 
-    <number id="duration" type="slider" arg="-statictime %"
+    <number id="duration" type="slider" arg="--statictime %"
             _label="Duration" _low-label="1" _high-label="30 seconds"
             low="1000" high="30000" default="5000"/>
 
-    <number id="packing" type="slider" arg="-explode %"
+    <number id="packing" type="slider" arg="--explode %"
             _label="Packing" _low-label="Tight" _high-label="Loose"
             low="0.0" high="0.5" default="0.03"/>
    </vgroup>
    <vgroup>
 
-    <number id="angvel" type="slider" arg="-angvel %"
+    <number id="angvel" type="slider" arg="--angvel %"
             _label="Angular velocity" _low-label="Slow" _high-label="Fast"
             low="0.05" high="5.0" default="1.0"/>
-    <number id="yangvel" type="slider" arg="-yangvel %"
+    <number id="yangvel" type="slider" arg="--yangvel %"
             _label="Y angular velocity" _low-label="Slow" _high-label="Fast"
             low="0.0" high="1.0" default="0.10"/>
 
-    <number id="zangvel" type="slider" arg="-zangvel %"
+    <number id="zangvel" type="slider" arg="--zangvel %"
             _label="Z angular velocity" _low-label="Slow" _high-label="Fast"
             low="0.0" high="1.0" default="0.14"/>
 
@@ -39,9 +39,9 @@
 
 
   <hgroup>
-   <boolean id="labels" _label="Show titles"      arg-set="-titles"/>
-   <boolean id="wire"    _label="Wireframe"       arg-set="-wireframe"/>
-   <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+   <boolean id="labels" _label="Show titles"      arg-set="--titles"/>
+   <boolean id="wire"    _label="Wireframe"       arg-set="--wireframe"/>
+   <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
   </hgroup>
 
   <xscreensaver-updater />
index dfcb98365ee08e8b50bef94acb99ba65344f7087..df821e4a8a33dff185996ed49092d220d9142990 100644 (file)
@@ -2,11 +2,11 @@
 
 <screensaver name="gltext" _label="GL Text" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=jrXa-QtY6MU"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="20000"
           convert="invert"/>
   <select id="text">
     <option id="uname"  _label="Display system information" />
     <option id="clock"  _label="Display date and time"
-            arg-set="-text '%A%n%d %b %Y%n%r'"/>
+            arg-set="--text '%A%n%d %b %Y%n%r'"/>
   </select>
 
   <hgroup>
   <select id="facing">
     <option id="front"   _label="Always face front"/>
-    <option id="nofront" _label="Spin all the way around" arg-set="-no-front"/>
+    <option id="nofront" _label="Spin all the way around" arg-set="--no-front"/>
   </select>
-  <boolean id="wander" _label="Wander" arg-unset="-no-wander"/>
+  <boolean id="wander" _label="Wander" arg-unset="--no-wander"/>
   </hgroup>
 
   <select id="rotation">
-    <option id="no"  _label="Don't rotate"               arg-set="-spin 0"/>
-    <option id="x"   _label="Rotate around X axis"       arg-set="-spin X"/>
-    <option id="y"   _label="Rotate around Y axis"       arg-set="-spin Y"/>
-    <option id="z"   _label="Rotate around Z axis"       arg-set="-spin Z"/>
-    <option id="xy"  _label="Rotate around X and Y axes" arg-set="-spin XY"/>
-    <option id="xz"  _label="Rotate around X and Z axes" arg-set="-spin XZ"/>
-    <option id="yz"  _label="Rotate around Y and Z axes" arg-set="-spin YZ"/>
+    <option id="no"  _label="Don't rotate"               arg-set="--spin 0"/>
+    <option id="x"   _label="Rotate around X axis"       arg-set="--spin X"/>
+    <option id="y"   _label="Rotate around Y axis"       arg-set="--spin Y"/>
+    <option id="z"   _label="Rotate around Z axis"       arg-set="--spin Z"/>
+    <option id="xy"  _label="Rotate around X and Y axes" arg-set="--spin XY"/>
+    <option id="xz"  _label="Rotate around X and Z axes" arg-set="--spin XZ"/>
+    <option id="yz"  _label="Rotate around Y and Z axes" arg-set="--spin YZ"/>
     <option id="xyz" _label="Rotate around all three axes"/>
   </select>
 
-  <boolean id="wire"    _label="Wireframe"              arg-set="-wireframe"/>
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="wire"    _label="Wireframe"              arg-set="--wireframe"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index d3aeabc6041a6fae884712cdcc1e33afbdf1776c..9311f4c55e6688bbcf9dfaa82b628b20048109d9 100644 (file)
@@ -2,36 +2,36 @@
 
 <screensaver name="goop" _label="Goop">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=bLMAF4Q-mGA"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="12000"
             convert="invert"/>
 
-    <number id="torque" type="slider" arg="-torque %"
+    <number id="torque" type="slider" arg="--torque %"
             _label="Speed" _low-label="Slow" _high-label="Fast"
             low="0.0002" high="0.0500" default="0.0075"/>
 
-    <number id="count" type="slider" arg="-planes %"
+    <number id="count" type="slider" arg="--planes %"
             _label="Blobs" _low-label="Few" _high-label="Many"
             low="1" high="50" default="12"/>
 
    </vgroup>
    <vgroup>
-    <number id="elasticity" type="slider" arg="-elasticity %"
+    <number id="elasticity" type="slider" arg="--elasticity %"
             _label="Elasticity" _low-label="Low" _high-label="High"
             low="0.1" high="5.0" default="0.9"/>
 
-    <number id="maxv" type="slider" arg="-max-velocity %"
+    <number id="maxv" type="slider" arg="--max-velocity %"
             _label="Speed limit" _low-label="Low" _high-label="High"
             low="0.1" high="3.0" default="0.5"/>
 
-    <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+    <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
    </vgroup>
   </hgroup>
   <hgroup>
     <select id="mode">
       <option id="transparent" _label="Transparent blobs"/>
-      <option id="opaque"      _label="Opaque blobs" arg-set="-mode opaque"/>
-      <option id="xor"         _label="XOR blobs"    arg-set="-mode xor"/>
+      <option id="opaque"      _label="Opaque blobs" arg-set="--mode opaque"/>
+      <option id="xor"         _label="XOR blobs"    arg-set="--mode xor"/>
     </select>
 
     <select id="color-mode">
       <option id="additive" _label="Additive colors (transmitted light)"/>
       <option id="subtractive" _label="Subtractive colors (reflected light)"
-              arg-set="-subtractive"/>
+              arg-set="--subtractive"/>
     </select>
   </hgroup>
 
index 0070c75bbbd7062fd8ad0b1b748e29abb41e02e3..909416b7c1cdf51f223d78e50d4ccd4c3e68023d 100644 (file)
@@ -2,27 +2,27 @@
 
 <screensaver name="grav" _label="Grav">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=spQRFDmDMeg"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="10000"
           convert="invert"/>
 
-  <number id="count" type="slider" arg="-count %"
+  <number id="count" type="slider" arg="--count %"
           _label="Number of objects" _low-label="Few" _high-label="Many"
           low="1" high="40" default="12"/>
 
-  <number id="ncolors" type="slider" arg="-ncolors %"
+  <number id="ncolors" type="slider" arg="--ncolors %"
             _label="Number of colors" _low-label="Two" _high-label="Many"
             low="1" high="255" default="64"/>
 
   <hgroup>
-   <boolean id="decay" _label="Orbital decay" arg-unset="-no-decay"/>
-   <boolean id="trail" _label="Object trails" arg-unset="-no-trail"/>
-   <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+   <boolean id="decay" _label="Orbital decay" arg-unset="--no-decay"/>
+   <boolean id="trail" _label="Object trails" arg-unset="--no-trail"/>
+   <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
   </hgroup>
 
   <xscreensaver-updater />
index 3b83ccc1a0bc72c759ffab1cc4bcf07dc029d55a..fa268a34b01a27445199e01e75a38c9ab1754472 100644 (file)
@@ -2,35 +2,35 @@
 
 <screensaver name="gravitywell" _label="Gravity Well" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=yhsw0QhIjjs"/>
 
   <hgroup>
    <vgroup>
 
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="30000"
             convert="invert"/>
 
-    <number id="speed" type="slider" arg="-speed %"
+    <number id="speed" type="slider" arg="--speed %"
             _label="Speed" _low-label="Slow" _high-label="Fast"
             low="0.01" high="8.0" default="1.0"
             convert="ratio"/>
 
-    <number id="resolution" type="slider" arg="-resolution %"
+    <number id="resolution" type="slider" arg="--resolution %"
             _label="Resolution" _low-label="Low" _high-label="High"
             low="1.0" high="5.0" default="1.0"/>
    </vgroup>
    <vgroup>
 
-    <number id="grid-size" type="slider" arg="-grid-size %"
+    <number id="grid-size" type="slider" arg="--grid-size %"
             _label="Grid Size" _low-label="Dense" _high-label="Sparse"
             low="0.1" high="5.0" default="1.0"
             convert="ratio"/>
 
-    <number id="count" type="slider" arg="-count %"
+    <number id="count" type="slider" arg="--count %"
             _label="Number of stars" _low-label="One" _high-label="Lots"
             low="1" high="40" default="15"/>
    </vgroup>
index cbc11a934aa4de9327b575d1926cafe387c2e4cf..a4b7445493378276e6e4e6a4afd8a5062bca1143 100644 (file)
@@ -2,18 +2,18 @@
 
 <screensaver name="greynetic" _label="Greynetic">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=lVEi089s1_c"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="250000" default="10000"
           convert="invert"/>
 
-  <boolean id="grey" _label="Grey" arg-set="-grey"/>
+  <boolean id="grey" _label="Grey" arg-set="--grey"/>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index be656608dc8c5505113c5f300ac4f50ca17120e2..83d43079637a27287692a7475031a68fcdcf3452 100644 (file)
@@ -2,48 +2,48 @@
 
 <screensaver name="halftone" _label="Halftone">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=K2lqgBPde4o"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="10000" convert="invert"/>
 
-    <number id="count" type="slider" arg="-count %"
+    <number id="count" type="slider" arg="--count %"
              _label="Gravity points" _low-label="Few" _high-label="Many"
             low="1" high="50" default="10"/>
 
-    <number id="size" type="slider" arg="-spacing %"
+    <number id="size" type="slider" arg="--spacing %"
              _label="Dot size" _low-label="Small" _high-label="Big"
             low="2" high="50" default="14"/>
 
-    <number id="dotfill" type="slider" arg="-sizefactor %"
+    <number id="dotfill" type="slider" arg="--sizefactor %"
              _label="Dot fill factor" _low-label="Small" _high-label="Large"
             low="0.1" high="3" default="1.5"/>
    </vgroup>
    <vgroup>
-    <number id="minspeed" type="slider" arg="-minspeed %"
+    <number id="minspeed" type="slider" arg="--minspeed %"
              _label="Minimum speed" _low-label="Low" _high-label="High"
             low="0.001" high="0.09" default="0.001"/>
 
-    <number id="maxspeed" type="slider" arg="-maxspeed %"
+    <number id="maxspeed" type="slider" arg="--maxspeed %"
              _label="Maximum speed" _low-label="Low" _high-label="High"
             low="0.001" high="0.09" default="0.02"/>
 
-    <number id="minmass" type="slider" arg="-minmass %"
+    <number id="minmass" type="slider" arg="--minmass %"
              _label="Minimum mass" _low-label="Small" _high-label="Large"
             low="0.001" high="0.09" default="0.001"/>
 
-    <number id="maxmass" type="slider" arg="-maxmass %"
+    <number id="maxmass" type="slider" arg="--maxmass %"
              _label="Maximum mass" _low-label="Small" _high-label="Large"
             low="0.001" high="0.09" default="0.02"/>
    </vgroup>
   </hgroup>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index ef947e2defde143b98d5227a03cfcab49a8418da..89765426b1a8163e48386834de95c3cd4dbdc26c 100644 (file)
@@ -2,32 +2,32 @@
 
 <screensaver name="halo" _label="Halo">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=K7LbfXh3LTc"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="200000" default="100000"
           convert="invert"/>
 
-  <number id="count" type="slider" arg="-count %"
+  <number id="count" type="slider" arg="--count %"
           _label="Number of circles" _low-label="Few" _high-label="Many"
            low="0" high="20" default="0"/>
 
-  <number id="ncolors" type="slider" arg="-colors %"
+  <number id="ncolors" type="slider" arg="--colors %"
             _label="Number of colors" _low-label="Two" _high-label="Many"
             low="1" high="255" default="100"/>
 
   <select id="mode">
     <option id="random"   _label="Random mode"/>
-    <option id="seuss"    _label="Seuss mode" arg-set="-mode seuss"/>
-    <option id="ramp"     _label="Ramp mode"  arg-set="-mode ramp"/>
+    <option id="seuss"    _label="Seuss mode" arg-set="--mode seuss"/>
+    <option id="ramp"     _label="Ramp mode"  arg-set="--mode ramp"/>
   </select>
 
   <hgroup>
-  <boolean id="animate" _label="Animate circles" arg-set="-animate"/>
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="animate" _label="Animate circles" arg-set="--animate"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
   </hgroup>
 
   <xscreensaver-updater />
index 59ca91781d21bbcb5ede7b687d26f879eb26c5b0..7003985d9ea5b894ca050b69eaca6231d9737d63 100644 (file)
@@ -2,49 +2,49 @@
 
 <screensaver name="handsy" _label="Handsy" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=awI8EawYTdE"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="30000"
             convert="invert"/>
 
-    <number id="speed" type="slider" arg="-speed %"
+    <number id="speed" type="slider" arg="--speed %"
             _label="Speed" _low-label="Slow" _high-label="Fast"
             low="0.05" high="2.0" default="1.0"
             convert="ratio"/>
 
-    <number id="count" type="slider" arg="-count %"
+    <number id="count" type="slider" arg="--count %"
             _label="Number of hands" _low-label="Two" _high-label="Many"
             low="2" high="32" default="2"/>
    </vgroup>
 
    <vgroup>
 
-   <boolean id="wander" _label="Wander" arg-unset="-no-wander"/>
+   <boolean id="wander" _label="Wander" arg-unset="--no-wander"/>
    <select id="rotation">
-     <option id="no"  _label="Don't rotate"               arg-set="-spin 0"/>
-     <option id="x"   _label="Rotate around X axis"       arg-set="-spin X"/>
-     <option id="y"   _label="Rotate around Y axis"       arg-set="-spin Y"/>
-     <option id="z"   _label="Rotate around Z axis"       arg-set="-spin Z"/>
+     <option id="no"  _label="Don't rotate"               arg-set="--spin 0"/>
+     <option id="x"   _label="Rotate around X axis"       arg-set="--spin X"/>
+     <option id="y"   _label="Rotate around Y axis"       arg-set="--spin Y"/>
+     <option id="z"   _label="Rotate around Z axis"       arg-set="--spin Z"/>
      <option id="xy"  _label="Rotate around X and Y axes"/>
-     <option id="xz"  _label="Rotate around X and Z axes" arg-set="-spin XZ"/>
-     <option id="yz"  _label="Rotate around Y and Z axes" arg-set="-spin YZ"/>
-     <option id="xyz" _label="Rotate around all three axes"  arg-set="-spin XYZ"/>
+     <option id="xz"  _label="Rotate around X and Z axes" arg-set="--spin XZ"/>
+     <option id="yz"  _label="Rotate around Y and Z axes" arg-set="--spin YZ"/>
+     <option id="xyz" _label="Rotate around all three axes"  arg-set="--spin XYZ"/>
     </select>
 
     <select id="facing">
      <option id="front"   _label="Always face front"/>
-     <option id="nofront" _label="Spin all the way around" arg-set="-no-front"/>
+     <option id="nofront" _label="Spin all the way around" arg-set="--no-front"/>
     </select>
 
     <hgroup>
-     <boolean id="wire"    _label="Wireframe" arg-set="-wireframe"/>
-     <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+     <boolean id="wire"    _label="Wireframe" arg-set="--wireframe"/>
+     <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
     </hgroup>
 
     <xscreensaver-updater />
index d05240a7a53d0e72bca5c3ef79314dccc4d0bb9b..163597bbc78d8335b6f044b70e70a894c3d83f2f 100644 (file)
@@ -2,36 +2,36 @@
 
 <screensaver name="headroom" _label="Headroom" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=kuS_HK4bIFI"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="20000"
           convert="invert"/>
 
-  <number id="speed" type="slider" arg="-speed %"
+  <number id="speed" type="slider" arg="--speed %"
           _label="Spike growth" _low-label="Slow" _high-label="Fast"
           low="0.1" high="10.0" default="1.0"
           convert="ratio"/>
 
     <select id="rotation">
-     <option id="no"  _label="Don't wobble"               arg-set="-spin 0"/>
-     <option id="x"   _label="Wobble around X axis"       arg-set="-spin X"/>
-     <option id="y"   _label="Wobble around Y axis"       arg-set="-spin Y"/>
-     <option id="z"   _label="Wobble around Z axis"       arg-set="-spin Z"/>
-     <option id="xy"  _label="Wobble around X and Y axes" arg-set="-spin XY"/>
-     <option id="xz"  _label="Wobble around X and Z axes" arg-set="-spin XZ"/>
-     <option id="yz"  _label="Wobble around Y and Z axes" arg-set="-spin YZ"/>
+     <option id="no"  _label="Don't wobble"               arg-set="--spin 0"/>
+     <option id="x"   _label="Wobble around X axis"       arg-set="--spin X"/>
+     <option id="y"   _label="Wobble around Y axis"       arg-set="--spin Y"/>
+     <option id="z"   _label="Wobble around Z axis"       arg-set="--spin Z"/>
+     <option id="xy"  _label="Wobble around X and Y axes" arg-set="--spin XY"/>
+     <option id="xz"  _label="Wobble around X and Z axes" arg-set="--spin XZ"/>
+     <option id="yz"  _label="Wobble around Y and Z axes" arg-set="--spin YZ"/>
      <option id="xyz" _label="Wobble around all three axes"/>
     </select>
 
   <hgroup>
-   <boolean id="wander" _label="Wander"    arg-set="-wander"/>
-   <boolean id="wire"   _label="Wireframe" arg-set="-wireframe"/>
-   <boolean id="mask"   _label="Mask Headroom" arg-set="-mask"/>
-   <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+   <boolean id="wander" _label="Wander"    arg-set="--wander"/>
+   <boolean id="wire"   _label="Wireframe" arg-set="--wireframe"/>
+   <boolean id="mask"   _label="Mask Headroom" arg-set="--mask"/>
+   <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
   </hgroup>
 
   <xscreensaver-updater />
index 00d452551b3477b0fc7b3b5cd7e59b867148f68a..96055b89d1050c06eec232fa3353c568172d9eca 100644 (file)
@@ -2,20 +2,20 @@
 
 <screensaver name="helix" _label="Helix">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=H-mMnadnPSs"/>
 
-  <number id="delay" type="slider" arg="-subdelay %"
+  <number id="delay" type="slider" arg="--subdelay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="20000"
           convert="invert"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Linger" _low-label="1 second" _high-label="1 minute"
           low="1" high="60" default="5"/>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 08a7ce53dffbbec747d7722a198924d553ab21c6..2810a2e3ecd6417d4bde239e6587db548a40fd12 100644 (file)
@@ -2,23 +2,23 @@
 
 <screensaver name="hexadrop" _label="Hexadrop">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=HMPVzQUGW-Q"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="50000" default="30000"
             convert="invert"/>
 
-    <number id="speed" type="slider" arg="-speed %"
+    <number id="speed" type="slider" arg="--speed %"
             _label="Speed" _low-label="Slow" _high-label="Fast"
              low="0.1" high="4.0" default="1.0"
             convert="ratio"/>
 
-    <number id="size" type="slider" arg="-size %"
+    <number id="size" type="slider" arg="--size %"
             _label="Tile size" _low-label="Small" _high-label="Large"
             low="5" high="50" default="15"
             convert="invert"/>
    <vgroup>
     <select id="sides">
      <option id="0" _label="Random shape"/>
-     <option id="3" _label="Triangles"    arg-set="-sides 3"/>
-     <option id="4" _label="Squares"      arg-set="-sides 4"/>
-     <option id="6" _label="Hexagons"     arg-set="-sides 6"/>
-     <option id="5" _label="Octagons"     arg-set="-sides 8"/>
+     <option id="3" _label="Triangles"    arg-set="--sides 3"/>
+     <option id="4" _label="Squares"      arg-set="--sides 4"/>
+     <option id="6" _label="Hexagons"     arg-set="--sides 6"/>
+     <option id="5" _label="Octagons"     arg-set="--sides 8"/>
     </select>
 
     <select id="uniform">
      <option id="r-uniform"  _label="Random speed"/>
-     <option id="uniform"    _label="Uniform speed"     arg-set="-uniform-speed"/>
-     <option id="no-uniform" _label="Non-uniform speed" arg-set="-nonuniform-speed"/>
+     <option id="uniform"    _label="Uniform speed"     arg-set="--uniform-speed"/>
+     <option id="no-uniform" _label="Non-uniform speed" arg-set="--nonuniform-speed"/>
     </select>
 
     <select id="lockstep">
      <option id="r-lockstep"  _label="Random sync"/>
-     <option id="lockstep"    _label="Synchronized"     arg-set="-lockstep"/>
-     <option id="no-lockstep" _label="Non-synchronized" arg-set="-no-lockstep"/>
+     <option id="lockstep"    _label="Synchronized"     arg-set="--lockstep"/>
+     <option id="no-lockstep" _label="Non-synchronized" arg-set="--no-lockstep"/>
     </select>
 
-    <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+    <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
    </vgroup>
   </hgroup>
 
index 026b19921d2f270da5d260d7a05fe85f4b686eb5..5120348150113907da43777e51fe4bd0bd89c95c 100644 (file)
@@ -2,40 +2,40 @@
 
 <screensaver name="hexstrut" _label="Hex Strut" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=iOCffj3ZmgE"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="30000"
             convert="invert"/>
 
-    <number id="speed" type="slider" arg="-speed %"
+    <number id="speed" type="slider" arg="--speed %"
             _label="Speed" _low-label="Slow" _high-label="Fast"
             low="0.1" high="5" default="1.0"
             convert="ratio"/>
    </vgroup>
 
    <vgroup>
-    <number id="count" type="slider" arg="-count %"
+    <number id="count" type="slider" arg="--count %"
             _label="Hexagon Size" _low-label="Small" _high-label="Large"
             low="2" high="80" default="20"
             convert="invert"/>
 
-    <number id="thickness" type="slider" arg="-thickness %"
+    <number id="thickness" type="slider" arg="--thickness %"
             _label="Line Thickness" _low-label="Thin" _high-label="Thick"
             low="0.01" high="1.7" default="0.2"/>
    </vgroup>
   </hgroup>
 
   <hgroup>
-   <boolean id="wander" _label="Wander"    arg-unset="-no-wander"/>
-   <boolean id="spin"   _label="Spin"      arg-unset="-no-spin"/>
-   <boolean id="wire"   _label="Wireframe" arg-set="-wireframe"/>
-   <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+   <boolean id="wander" _label="Wander"    arg-unset="--no-wander"/>
+   <boolean id="spin"   _label="Spin"      arg-unset="--no-spin"/>
+   <boolean id="wire"   _label="Wireframe" arg-set="--wireframe"/>
+   <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
   </hgroup>
 
   <xscreensaver-updater />
index 4864cc800d019e93fc9e69d74361330bdfd18b9a..c54d62f64567a5b1de3ddb0952f5e100bfd6d9fc 100644 (file)
@@ -2,7 +2,7 @@
 
 <screensaver name="hilbert" _label="Hilbert" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=NhKmipo_Ek4"/>
 
     <hgroup>
      <select id="twodee">
       <option id="random"  _label="2D or 3D"/>
-      <option id="2D"      _label="2D"               arg-set="-mode 2d"/>
-      <option id="3D"      _label="3D"               arg-set="-mode 3d"/>
+      <option id="2D"      _label="2D"               arg-set="--mode 2d"/>
+      <option id="3D"      _label="3D"               arg-set="--mode 3d"/>
      </select>
 
      <select id="closed">
       <option id="random"  _label="Open or closed paths"/>
-      <option id="closed"  _label="Closed"           arg-set="-ends closed"/>
-      <option id="open"    _label="Open"             arg-set="-ends open"/>
+      <option id="closed"  _label="Closed"           arg-set="--ends closed"/>
+      <option id="open"    _label="Open"             arg-set="--ends open"/>
      </select>
     </hgroup>
 
     <hgroup>
      <vgroup>
-      <number id="delay" type="slider" arg="-delay %"
+      <number id="delay" type="slider" arg="--delay %"
               _label="Frame rate" _low-label="Slow" _high-label="Fast"
               low="0" high="100000" default="30000"
               convert="invert"/>
 
-      <number id="speed" type="slider" arg="-speed %"
+      <number id="speed" type="slider" arg="--speed %"
               _label="Speed" _low-label="Slow" _high-label="Fast"
               low="0.02" high="10.0" default="1.0"
               convert="ratio"/>
      </vgroup>
 
      <vgroup>
-      <number id="depth" type="slider" arg="-max-depth %"
+      <number id="depth" type="slider" arg="--max-depth %"
               _label="Recursion levels" _low-label="2" _high-label="10"
               low="2" high="10" default="5"/>
 
-      <number id="thickness" type="slider" arg="-thickness %"
+      <number id="thickness" type="slider" arg="--thickness %"
               _label="Line thickness" _low-label="Thin" _high-label="Thick"
               low="0.01" high="1.0" default="0.25"/>
      </vgroup>
     </hgroup>
 
     <hgroup>
-     <boolean id="wander"  _label="Wander"          arg-set="-wander"/>
-     <boolean id="spin"    _label="Spin"            arg-unset="-no-spin"/>
-     <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
-     <boolean id="wire"    _label="Wireframe"       arg-set="-wireframe"/>
+     <boolean id="wander"  _label="Wander"          arg-set="--wander"/>
+     <boolean id="spin"    _label="Spin"            arg-unset="--no-spin"/>
+     <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
+     <boolean id="wire"    _label="Wireframe"       arg-set="--wireframe"/>
     </hgroup>
 
    </vgroup>
index e7dd5481ad693c19efd49f0c6b38b675f1475693..4790f4c3b86bff28248f214ffe09058d49bfb304 100644 (file)
@@ -2,28 +2,28 @@
 
 <screensaver name="hopalong" _label="Hopalong">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=Ck0pKMflau0"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="10000"
             convert="invert"/>
 
-    <number id="cycles" type="slider" arg="-cycles %"
+    <number id="cycles" type="slider" arg="--cycles %"
              _label="Duration" _low-label="Small" _high-label="Large"
             low="0" high="800000" default="2500"/>
    </vgroup>
 
    <vgroup>
-    <number id="count" type="slider" arg="-count %"
+    <number id="count" type="slider" arg="--count %"
             _label="Color contrast" _low-label="Low" _high-label="High"
             low="100" high="10000" default="1000"/>
 
-    <number id="ncolors" type="slider" arg="-ncolors %"
+    <number id="ncolors" type="slider" arg="--ncolors %"
               _label="Number of colors" _low-label="Two" _high-label="Many"
               low="1" high="255" default="200"/>
    </vgroup>
 
   <hgroup>
     <vgroup>
-      <boolean id="sine"    _label="Sine"    arg-set="-sine"/>
-      <boolean id="martin"  _label="Martin"  arg-set="-martin"/>
-      <boolean id="popcorn" _label="Popcorn" arg-set="-popcorn"/>
+      <boolean id="sine"    _label="Sine"    arg-set="--sine"/>
+      <boolean id="martin"  _label="Martin"  arg-set="--martin"/>
+      <boolean id="popcorn" _label="Popcorn" arg-set="--popcorn"/>
     </vgroup>
     <vgroup>
-      <boolean id="jong"    _label="Jong"    arg-set="-jong"/>
-      <boolean id="rr"      _label="RR"      arg-set="-rr"/>
-      <boolean id="ejk1"    _label="EJK1"    arg-set="-ejk1"/>
+      <boolean id="jong"    _label="Jong"    arg-set="--jong"/>
+      <boolean id="rr"      _label="RR"      arg-set="--rr"/>
+      <boolean id="ejk1"    _label="EJK1"    arg-set="--ejk1"/>
     </vgroup>
     <vgroup>
-      <boolean id="ejk2"    _label="EJK2"    arg-set="-ejk2"/>
-      <boolean id="ejk3"    _label="EJK3"    arg-set="-ejk3"/>
-      <boolean id="ejk4"    _label="EJK4"    arg-set="-ejk4"/>
+      <boolean id="ejk2"    _label="EJK2"    arg-set="--ejk2"/>
+      <boolean id="ejk3"    _label="EJK3"    arg-set="--ejk3"/>
+      <boolean id="ejk4"    _label="EJK4"    arg-set="--ejk4"/>
     </vgroup>
     <vgroup>
-      <boolean id="ejk5"    _label="EJK5"    arg-set="-ejk5"/>
-      <boolean id="ejk6"    _label="EJK6"    arg-set="-ejk6"/>
-      <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+      <boolean id="ejk5"    _label="EJK5"    arg-set="--ejk5"/>
+      <boolean id="ejk6"    _label="EJK6"    arg-set="--ejk6"/>
+      <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
     </vgroup>
   </hgroup>
 
index 97f13ff3a48d80f2c73d1c749fa52e71c7cd909c..47ec2d081181171c6c048d08d116e11d9902a6c2 100644 (file)
@@ -2,63 +2,63 @@
 
 <screensaver name="hydrostat" _label="Hydrostat" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=nn-nA18hFt0"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="20000"
             convert="invert"/>
 
-    <number id="speed" type="slider" arg="-speed %"
+    <number id="speed" type="slider" arg="--speed %"
             _label="Animation speed" _low-label="Slow" _high-label="Fast"
             low="0.01" high="4.0" default="1.0"
             convert="ratio"/>
 
-    <number id="count" type="slider" arg="-count %"
+    <number id="count" type="slider" arg="--count %"
             _label="Number of squid" _low-label="One" _high-label="Many"
             low="1" high="100" default="3" />
 
-    <number id="head_radius" type="slider" arg="-head-radius %"
+    <number id="head_radius" type="slider" arg="--head-radius %"
             _label="Head size" _low-label="Small" _high-label="Large"
             low="10" high="100" default="60" />
 
-    <number id="tentacles" type="slider" arg="-tentacles %"
+    <number id="tentacles" type="slider" arg="--tentacles %"
             _label="Number of tentacles" _low-label="Few" _high-label="Many"
             low="3" high="100" default="35" />
 
    </vgroup>
    <vgroup>
 
-    <number id="thickness" type="slider" arg="-thickness %"
+    <number id="thickness" type="slider" arg="--thickness %"
             _label="Thickness" _low-label="Thin" _high-label="Thick"
             low="3" high="40" default="18" />
 
-    <number id="length" type="slider" arg="-length %"
+    <number id="length" type="slider" arg="--length %"
             _label="Length of tentacles" _low-label="Short" _high-label="Long"
             low="10" high="150" default="55" />
 
-    <number id="gravity" type="slider" arg="-gravity %"
+    <number id="gravity" type="slider" arg="--gravity %"
             _label="Gravity" _low-label="Weak" _high-label="Strong"
             low="0" high="10.0" default="0.5" />
 
-    <number id="current" type="slider" arg="-current %"
+    <number id="current" type="slider" arg="--current %"
             _label="Current" _low-label="Weak" _high-label="Strong"
             low="0.0" high="10.0" default="0.25" />
 
-    <number id="friction" type="slider" arg="-friction %"
+    <number id="friction" type="slider" arg="--friction %"
             _label="Viscosity" _low-label="Low" _high-label="High"
             low="0.0" high="0.1" default="0.02" />
    </vgroup>
   </hgroup>
 
   <hgroup>
-   <boolean id="pulse" _label="Pulse"    arg-unset="-no-pulse" />
-   <boolean id="wire"   _label="Wireframe" arg-set="-wireframe"/>
-   <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+   <boolean id="pulse" _label="Pulse"    arg-unset="--no-pulse" />
+   <boolean id="wire"   _label="Wireframe" arg-set="--wireframe"/>
+   <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
    <xscreensaver-updater />
   </hgroup>
 
index 75c679c009d4ad9f84c50fe058c0b2347dd3faf3..361a1d5d5f52fe37fe4648ffa1e397de8e3f1ed8 100644 (file)
@@ -2,44 +2,44 @@
 
 <screensaver name="hyperball" _label="Hyperball">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=BqOHgn0BQOc"/>
 
   <hgroup>
     <vgroup>
-     <number id="delay" type="slider" arg="-delay %"
+     <number id="delay" type="slider" arg="--delay %"
              _label="Frame rate" _low-label="Low" _high-label="High"
              low="0" high="100000" default="20000"
              convert="invert"/>
 
 
-      <number id="z" type="slider" arg="-observer-z %"
+      <number id="z" type="slider" arg="--observer-z %"
               _label="Zoom" _low-label="Near" _high-label="Far"
               low="1.125" high="10.0" default="3.0"/>
 
-     <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+     <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
     </vgroup>
 
     <vgroup>
-      <number id="xw" type="slider" arg="-xw %"
+      <number id="xw" type="slider" arg="--xw %"
               _label="XW rotation" _low-label="Slow" _high-label="Fast"
               low="0" high="20" default="0"/>
-      <number id="xy" type="slider" arg="-xy %"
+      <number id="xy" type="slider" arg="--xy %"
               _label="XY rotation" _low-label="Slow" _high-label="Fast"
               low="0" high="20" default="3"/>
-      <number id="xz" type="slider" arg="-xz %"
+      <number id="xz" type="slider" arg="--xz %"
               _label="XZ rotation" _low-label="Slow" _high-label="Fast"
               low="0" high="20" default="5"/>
     </vgroup>
     <vgroup>
-      <number id="yw" type="slider" arg="-yw %"
+      <number id="yw" type="slider" arg="--yw %"
               _label="YW rotation" _low-label="Slow" _high-label="Fast"
               low="0" high="20" default="10"/>
-      <number id="yz" type="slider" arg="-yz %"
+      <number id="yz" type="slider" arg="--yz %"
               _label="YZ rotation" _low-label="Slow" _high-label="Fast"
               low="0" high="20" default="0"/>
-      <number id="zw" type="slider" arg="-zw %"
+      <number id="zw" type="slider" arg="--zw %"
               _label="ZW rotation" _low-label="Slow" _high-label="Fast"
               low="0" high="20" default="0"/>
     </vgroup>
index 857d3a62283633e8342b1296dc93f3fca35b3218..fc5c9ede320fa13c4385ddf9c63144384abbbd9f 100644 (file)
@@ -2,57 +2,48 @@
 
 <screensaver name="hypercube" _label="Hypercube">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=tOLzz_D4-0E"/>
 
   <hgroup>
     <vgroup>
-      <number id="delay" type="slider" arg="-delay %"
+      <number id="delay" type="slider" arg="--delay %"
               _label="Frame rate" _low-label="Low" _high-label="High"
               low="0" high="100000" default="10000"
               convert="invert"/>
 
-      <number id="z" type="slider" arg="-observer-z %"
+      <number id="z" type="slider" arg="--observer-z %"
               _label="Zoom" _low-label="Near" _high-label="Far"
               low="1.125" high="10.0" default="3.0"/>
 
-     <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+     <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
     </vgroup>
 
     <vgroup>
-      <number id="xw" type="slider" arg="-xw %"
+      <number id="xw" type="slider" arg="--xw %"
               _label="XW rotation" _low-label="Slow" _high-label="Fast"
               low="0" high="20" default="0"/>
-      <number id="xy" type="slider" arg="-xy %"
+      <number id="xy" type="slider" arg="--xy %"
               _label="XY rotation" _low-label="Slow" _high-label="Fast"
               low="0" high="20" default="3"/>
-      <number id="xz" type="slider" arg="-xz %"
+      <number id="xz" type="slider" arg="--xz %"
               _label="XZ rotation" _low-label="Slow" _high-label="Fast"
               low="0" high="20" default="5"/>
     </vgroup>
     <vgroup>
-      <number id="yw" type="slider" arg="-yw %"
+      <number id="yw" type="slider" arg="--yw %"
               _label="YW rotation" _low-label="Slow" _high-label="Fast"
               low="0" high="20" default="10"/>
-      <number id="yz" type="slider" arg="-yz %"
+      <number id="yz" type="slider" arg="--yz %"
               _label="YZ rotation" _low-label="Slow" _high-label="Fast"
               low="0" high="20" default="0"/>
-      <number id="zw" type="slider" arg="-zw %"
+      <number id="zw" type="slider" arg="--zw %"
               _label="ZW rotation" _low-label="Slow" _high-label="Fast"
               low="0" high="20" default="0"/>
     </vgroup>
   </hgroup>
 
-  <!-- #### -color0 [magenta] -->
-  <!-- #### -color1 [yellow] -->
-  <!-- #### -color2 [#FF9300] -->
-  <!-- #### -color3 [#FF0093] -->
-  <!-- #### -color4 [green] -->
-  <!-- #### -color5 [#8080FF] -->
-  <!-- #### -color6 [#00D0FF] -->
-  <!-- #### -color7 [#00FFD0] -->
-
   <xscreensaver-updater />
 
   <_description>
index 0b8f8c7d3b3c668669a41f2c82a06a292cdbcccd..ed36f272ccc82b1efde04ac4847f1246af18156b 100644 (file)
@@ -2,62 +2,62 @@
 
 <screensaver name="hypertorus" _label="Hypertorus" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=KJWe4G4Qa1Q"/>
 
   <hgroup>
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="25000"
           convert="invert"/>
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
   </hgroup>
 
   <hgroup>
     <select id="display-mode">
       <option id="wire"        _label="Wireframe"
-              arg-set="-mode wireframe"/>
+              arg-set="--mode wireframe"/>
       <option id="surface"     _label="Solid"/>
       <option id="transparent" _label="Transparent"
-              arg-set="-mode transparent"/>
+              arg-set="--mode transparent"/>
     </select>
 
     <select id="appearance">
       <option id="solid" _label="Solid object"
-              arg-set="-appearance solid"/>
+              arg-set="--appearance solid"/>
       <option id="bands" _label="Transparent bands"/>
       <option id="bands" _label="1 transparent spiral"
-              arg-set="-appearance spirals-1"/>
+              arg-set="--appearance spirals-1"/>
       <option id="bands" _label="2 transparent spirals"
-              arg-set="-appearance spirals-2"/>
+              arg-set="--appearance spirals-2"/>
       <option id="bands" _label="4 transparent spirals"
-              arg-set="-appearance spirals-4"/>
+              arg-set="--appearance spirals-4"/>
       <option id="bands" _label="8 transparent spirals"
-              arg-set="-appearance spirals-8"/>
+              arg-set="--appearance spirals-8"/>
       <option id="bands" _label="16 Transparent spirals"
-              arg-set="-appearance spirals-16"/>
+              arg-set="--appearance spirals-16"/>
     </select>
 
     <select id="colors">
-      <option id="onesided"   _label="One-sided" arg-set="-onesided"/>
-      <option id="twosided"   _label="Two-sided" arg-set="-twosided"/>
+      <option id="onesided"   _label="One-sided" arg-set="--onesided"/>
+      <option id="twosided"   _label="Two-sided" arg-set="--twosided"/>
       <option id="colorwheel" _label="Color wheel"/>
     </select>
 
     <boolean id="change-colors" _label="Change colors"
-              arg-set="-change-colors"/>
+              arg-set="--change-colors"/>
 
     <select id="projection3d">
       <option id="perspective-3d" _label="Perspective 3D"/>
       <option id="orthographic-3d" _label="Orthographic 3D"
-              arg-set="-orthographic-3d"/>
+              arg-set="--orthographic-3d"/>
     </select>
 
     <select id="projection4d">
       <option id="perspective-4d" _label="Perspective 4D"/>
       <option id="orthographic-4d" _label="Orthographic 4D"
-              arg-set="-orthographic-4d"/>
+              arg-set="--orthographic-4d"/>
     </select>
   </hgroup>
 
 
     <vgroup>
 
-      <number id="speed-wx" type="slider" arg="-speed-wx %"
+      <number id="speed-wx" type="slider" arg="--speed-wx %"
               _label="WX rotation speed"
               _low-label="-4.0" _high-label="4.0"
               low="-4.0" high="4.0" default="1.1"/>
 
-      <number id="speed-wy" type="slider" arg="-speed-wy %"
+      <number id="speed-wy" type="slider" arg="--speed-wy %"
               _label="WY rotation speed"
               _low-label="-4.0" _high-label="4.0"
               low="-4.0" high="4.0" default="1.3"/>
 
-      <number id="speed-wz" type="slider" arg="-speed-wz %"
+      <number id="speed-wz" type="slider" arg="--speed-wz %"
               _label="WZ rotation speed"
               _low-label="-4.0" _high-label="4.0"
               low="-4.0" high="4.0" default="1.5"/>
 
     <vgroup>
 
-      <number id="speed-xy" type="slider" arg="-speed-xy %"
+      <number id="speed-xy" type="slider" arg="--speed-xy %"
               _label="XY rotation speed"
               _low-label="-4.0" _high-label="4.0"
               low="-4.0" high="4.0" default="1.7"/>
     
-      <number id="speed-xz" type="slider" arg="-speed-xz %"
+      <number id="speed-xz" type="slider" arg="--speed-xz %"
               _label="XZ rotation speed"
               _low-label="-4.0" _high-label="4.0"
               low="-4.0" high="4.0" default="1.9"/>
     
-      <number id="speed-yz" type="slider" arg="-speed-yz %"
+      <number id="speed-yz" type="slider" arg="--speed-yz %"
               _label="YZ rotation speed"
               _low-label="-4.0" _high-label="4.0"
               low="-4.0" high="4.0" default="2.1"/>
index 66ff47bd9d7c1e915bee063300c0c4efa3876ed7..345048f022641d7e2501a78343da5c5a14e8bb34 100644 (file)
@@ -2,41 +2,41 @@
 
 <screensaver name="hypnowheel" _label="Hypnowheel" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=QcJnc9EKJrI"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Slow" _high-label="Fast"
             low="0" high="100000" default="20000"
             convert="invert"/>
 
-    <number id="speed" type="slider" arg="-speed %"
+    <number id="speed" type="slider" arg="--speed %"
             _label="Speed" _low-label="Slow" _high-label="Fast"
             low="0.1" high="20.0" default="1.0"
             convert="ratio"/>
 
     <hgroup>
-    <boolean id="wander"    _label="Wander"             arg-set="-wander"/>
-    <boolean id="symmetric" _label="Symmetric twisting" arg-set="-symmetric"/>
+    <boolean id="wander"    _label="Wander"             arg-set="--wander"/>
+    <boolean id="symmetric" _label="Symmetric twisting" arg-set="--symmetric"/>
     </hgroup>
 
-    <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+    <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
    </vgroup>
    <vgroup>
 
-    <number id="layers" type="slider" arg="-layers %"
+    <number id="layers" type="slider" arg="--layers %"
             _label="Layers" _low-label="1" _high-label="50"
             low="1" high="50" default="4"/>
 
-    <number id="count" type="slider" arg="-count %"
+    <number id="count" type="slider" arg="--count %"
             _label="Arms" _low-label="2" _high-label="50"
             low="2" high="50" default="13"/>
 
-    <number id="twistiness" type="slider" arg="-twistiness %"
+    <number id="twistiness" type="slider" arg="--twistiness %"
             _label="Twistiness" _low-label="Low" _high-label="High"
             low="0.2" high="10.0" default="4.0"/>
    </vgroup>
index 14999f42dd2a4610e531ece4697ebca992e3dc26..485ad720f1a43e9f9969e8a30dc8e64365eff704 100644 (file)
@@ -2,20 +2,20 @@
 
 <screensaver name="ifs" _label="IFS">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=0uOIrVFsECM"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
     _label="Frame rate" _low-label="Low" _high-label="High"
     low="0" high="100000" default="20000"
     convert="invert"/>
 
-  <number id="functions" type="slider" arg="-functions %"
+  <number id="functions" type="slider" arg="--functions %"
     _label="Number of functions" _low-label="2" _high-label="6"
            low="2" high="6" default="3"/>
 
-  <number id="detail" type="slider" arg="-detail %"
+  <number id="detail" type="slider" arg="--detail %"
     _label="Detail" _low-label="Low" _high-label="High"
     low="4" high="14" default="9"/>
 
   to drop below 30 fps detail 12 or higher.
 -->
 
-  <number id="colors" type="slider" arg="-colors %"
+  <number id="colors" type="slider" arg="--colors %"
     _label="Number of colors" _low-label="2" _high-label="Many"
     low="2" high="255" default="200" />
 
   <hgroup>
-   <boolean id="translate" _label="Translate" arg-unset="-no-translate"/>
-   <boolean id="scale"     _label="Scale"     arg-unset="-no-scale"/>
-   <boolean id="rotate"    _label="Rotate"    arg-unset="-no-rotate"/>
-   <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+   <boolean id="translate" _label="Translate" arg-unset="--no-translate"/>
+   <boolean id="scale"     _label="Scale"     arg-unset="--no-scale"/>
+   <boolean id="rotate"    _label="Rotate"    arg-unset="--no-rotate"/>
+   <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
   </hgroup>
 
   <xscreensaver-updater />
index 43b15fb81c6ecc5b4e2e3d2cc15bbe75aaa211f3..69e9cb2478f7cc8c556351dcdb218ace444dcf27 100644 (file)
@@ -2,35 +2,35 @@
 
 <screensaver name="imsmap" _label="IMS Map">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=FP8YJzFkdoQ"/>
 
-  <number id="delay2" type="slider" arg="-delay2 %"
+  <number id="delay2" type="slider" arg="--delay2 %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="20000"
           convert="invert"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Linger" _low-label="1 Second" _high-label="1 Minute"
           low="1" high="60" default="5"/>
 
-  <number id="iterations" type="slider" arg="-iterations %"
+  <number id="iterations" type="slider" arg="--iterations %"
           _label="Density" _low-label="Sparse" _high-label="Dense"
           low="1" high="7" default="7"/>
 
-  <number id="ncolors" type="slider" arg="-ncolors %"
+  <number id="ncolors" type="slider" arg="--ncolors %"
             _label="Number of colors" _low-label="Two" _high-label="Many"
             low="3" high="255" default="50"/>
 
   <select id="mode">
     <option id="random" _label="Random coloration"/>
-    <option id="h"      _label="Hue gradients" arg-set="-mode h"/>
-    <option id="s"      _label="Saturation gradients" arg-set="-mode s"/>
-    <option id="v"      _label="Brightness gradients" arg-set="-mode v"/>
+    <option id="h"      _label="Hue gradients" arg-set="--mode h"/>
+    <option id="s"      _label="Saturation gradients" arg-set="--mode s"/>
+    <option id="v"      _label="Brightness gradients" arg-set="--mode v"/>
   </select>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index c1ce7f328ae9b2e5e0970f59c97d8902981d92fc..7f9d35764da69942936ca5beb691d97961f1c47c 100644 (file)
@@ -2,19 +2,19 @@
 
 <screensaver name="interaggregate" _label="Interaggregate">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=wqPOZiuj4RI"/>
 
-  <number id="speed" type="slider" arg="-growth-delay %"
+  <number id="speed" type="slider" arg="--growth-delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="18000" convert="invert"/>
 
-  <number id="init" type="slider" arg="-num-circles %"
+  <number id="init" type="slider" arg="--num-circles %"
           _label="Number of discs" _low-label="Few" _high-label="Many"
            low="50" high="400" default="100"/>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index b53378484eefc30fce28c3c302ac4dc09f8eda43..034b5f0f48bcf1e51ecf7ec9158fe130f8a99340 100644 (file)
@@ -2,50 +2,50 @@
 
 <screensaver name="interference" _label="Interference">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=nEmvx4l1sHI"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="30000"
             convert="invert"/>
 
-    <number id="wspeed" type="slider" arg="-speed %"
+    <number id="wspeed" type="slider" arg="--speed %"
               _label="Wave speed" _low-label="Slow" _high-label="Fast"
               low="1" high="100" default="30"/>
 
-    <number id="radius" type="slider" arg="-radius %"
+    <number id="radius" type="slider" arg="--radius %"
               _label="Wave size" _low-label="Small" _high-label="Large"
               low="50" high="1500" default="800"/>
 
-    <number id="count" type="slider" arg="-count %"
+    <number id="count" type="slider" arg="--count %"
             _label="Number of waves" _low-label="Few" _high-label="Many"
            low="0" high="20" default="3"/>
 
    </vgroup>
    <vgroup>
-    <number id="gridsize" type="slider" arg="-gridsize %"
+    <number id="gridsize" type="slider" arg="--gridsize %"
             _label="Magnification" _low-label="Low" _high-label="High"
             low="1" high="20" default="2"/>
 
-    <number id="ncolors" type="slider" arg="-ncolors %"
+    <number id="ncolors" type="slider" arg="--ncolors %"
               _label="Number of colors" _low-label="Two" _high-label="Many"
               low="1" high="255" default="192"/>
 
-    <number id="color_contrast" type="slider" arg="-color-shift %"
+    <number id="color_contrast" type="slider" arg="--color-shift %"
             _label="Color contrast" _low-label="Low" _high-label="High"
              low="0" high="100" default="60"/>
 
-    <number id="hue" type="slider" arg="-hue %"
+    <number id="hue" type="slider" arg="--hue %"
             _label="Hue" _low-label="0" _high-label="360"
              low="0" high="360" default="0"/>
    </vgroup>
   </hgroup>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 6db1424a8bc8b25e51b2c0ccafd67d96403c0937..4cbd9ee2af2f93cb7eb9e3bc163537ccd1626065 100644 (file)
@@ -2,19 +2,19 @@
 
 <screensaver name="intermomentary" _label="Intermomentary">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=pH-ykepPopw"/>
 
-  <number id="speed" type="slider" arg="-draw-delay %"
+  <number id="speed" type="slider" arg="--draw-delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="30000" convert="invert"/>
 
-  <number id="init" type="slider" arg="-num-discs %"
+  <number id="init" type="slider" arg="--num-discs %"
           _label="Number of discs" _low-label="50" _high-label="400"
           low="50" high="400" default="85"/>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index f2d63c0201bba2e6ff905cda255e533191fd1236..fd0c20f6e42a4c5fe3813003b9de610cfa947497 100644 (file)
@@ -2,66 +2,66 @@
 
 <screensaver name="jigglypuff" _label="Jiggly Puff" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=60vfs2WcDtE"/>
 
   <hgroup>
-   <boolean id="random" _label="Randomize almost everything" arg-unset="-no-random"/>
+   <boolean id="random" _label="Randomize almost everything" arg-unset="--no-random"/>
 
    <select id="color">
     <option id="cycle"     _label="Cycle" />
-    <option id="flowerbox" _label="Flower box" arg-set="-color flowerbox"/>
-    <option id="clownbarf" _label="Clown barf" arg-set="-color clownbarf"/>
-    <option id="chrome" _label="Chrome" arg-set="-color chrome"/>
+    <option id="flowerbox" _label="Flower box" arg-set="--color flowerbox"/>
+    <option id="clownbarf" _label="Clown barf" arg-set="--color clownbarf"/>
+    <option id="chrome" _label="Chrome" arg-set="--color chrome"/>
    </select>
 
    <select id="start">
     <option id="sphere" _label="Sphere" />
-    <option id="tetrahedron" _label="Tetrahedron" arg-set="-tetra"/>
+    <option id="tetrahedron" _label="Tetrahedron" arg-set="--tetra"/>
    </select>
 
-   <boolean id="wireframe" _label="Wireframe" arg-set="-wireframe"/>
-   <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+   <boolean id="wireframe" _label="Wireframe" arg-set="--wireframe"/>
+   <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   </hgroup>
 
   <hgroup>
    <vgroup>
-      <number id="delay" type="slider" arg="-delay %"
+      <number id="delay" type="slider" arg="--delay %"
               _label="Frame rate" _low-label="Low" _high-label="High"
               low="0" high="100000" default="20000"
               convert="invert"/>
 
-      <number id="speed" type="slider" arg="-speed %"
+      <number id="speed" type="slider" arg="--speed %"
               _label="Rotation speed" _low-label="Slow" _high-label="Fast"
               low="50" high="1000" default="500"/>
 
-      <number id="damping" type="slider" arg="-damping %"
+      <number id="damping" type="slider" arg="--damping %"
                _label="Inertial damping" _low-label="Low" _high-label="High"
                low="10" high="1000" default="500" convert="invert"/>
    </vgroup>
 
    <vgroup>
-      <number id="hold" type="slider" arg="-hold %"
+      <number id="hold" type="slider" arg="--hold %"
                _label="Vertex-vertex force" _low-label="None" _high-label="Strong"
                low="0" high="1000" default="800"/>
 
-      <number id="complexity" type="slider" arg="-complexity %"
+      <number id="complexity" type="slider" arg="--complexity %"
               _label="Complexity" _low-label="Low" _high-label="High"
               low="1" high="3" default="2"/>
 
-      <number id="spherism" type="slider" arg="-spherism %"
+      <number id="spherism" type="slider" arg="--spherism %"
                _label="Sphere strength" _low-label="None" _high-label="Strong"
                low="0" high="1000" default="75"/>
     </vgroup>
 
     <vgroup>
-      <number id="distance" type="slider" arg="-distance %"
+      <number id="distance" type="slider" arg="--distance %"
                _label="Vertex-vertex behavior" _low-label="Expand"
                _high-label="Collapse" low="0" high="1000" default="100"/>
 
-      <number id="spooky" type="slider" arg="-spooky %"
+      <number id="spooky" type="slider" arg="--spooky %"
                _label="Spookiness" _low-label="None" _high-label="Spoooooky"
                low="0" high="12" default="0"/>
 
index a15d75c03916b218edfee3a1670ee3057206f0cc..ac06cc08b980a39a2da5ebd18f926dfc23ff37c4 100644 (file)
@@ -2,29 +2,28 @@
 
 <screensaver name="jigsaw" _label="Jigsaw" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=T5_hiY2eEeo"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="20000"
             convert="invert"/>
 
-    <number id="speed" type="slider" arg="-speed %"
+    <number id="speed" type="slider" arg="--speed %"
              _label="Speed" _low-label="Slow" _high-label="Fast"
              low="0.1" high="8.0" default="1.0"
              convert="ratio"/>
    </vgroup>
    <vgroup>
-    <number id="density" type="slider" arg="-complexity %"
+    <number id="density" type="slider" arg="--complexity %"
              _label="Puzzle pieces" _low-label="Few" _high-label="Many"
-             low="1.0" high="4.0" default="1.0"
-             convert="ratio"/>
+             low="1.0" high="4.0" default="1.0"/>
 
-    <number id="resolution" type="slider" arg="-resolution %"
+    <number id="resolution" type="slider" arg="--resolution %"
              _label="Resolution" _low-label="Chunky" _high-label="Smooth"
              low="50" high="300" default="100"/>
    </vgroup>
@@ -35,8 +34,8 @@
     <xscreensaver-image />
    </vgroup>
    <vgroup>
-    <boolean id="wobble"  _label="Tilt"  arg-unset="-no-wobble"/>
-    <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+    <boolean id="wobble"  _label="Tilt"  arg-unset="--no-wobble"/>
+    <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
    </vgroup>
   </hgroup>
 
index 8c8c05a75a1d91304ea01752e4038e74c823352f..cad5616b9497aee7d477d8f5afde21455b9eb070 100644 (file)
@@ -2,28 +2,28 @@
 
 <screensaver name="juggle" _label="Juggle">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=E3Ae7uQtWP0"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="10000"
             convert="invert"/>
 
-    <number id="count" type="slider" arg="-count %"
+    <number id="count" type="slider" arg="--count %"
             _label="Speed" _low-label="Slow" _high-label="Fast"
             low="50" high="1000" default="200"
             convert="invert"/>
    </vgroup>
    <vgroup>
-    <number id="cycles" type="slider" arg="-cycles %"
+    <number id="cycles" type="slider" arg="--cycles %"
             _label="Performance length" _low-label="Short" _high-label="Long"
             low="50" high="1000" default="1000"/>
 
-    <number id="tail" type="slider" arg="-tail %"
+    <number id="tail" type="slider" arg="--tail %"
             _label="Trail length" _low-label="None" _high-label="Long"
             low="0" high="100" default="1"/>
    </vgroup>
 
   <hgroup>
    <vgroup>
-    <boolean id="balls" _label="Balls" arg-unset="-no-balls"/>
-    <boolean id="clubs" _label="Clubs" arg-unset="-no-clubs"/>
+    <boolean id="balls" _label="Balls" arg-unset="--no-balls"/>
+    <boolean id="clubs" _label="Clubs" arg-unset="--no-clubs"/>
    </vgroup>
    <vgroup>
-    <boolean id="rings" _label="Rings" arg-unset="-no-rings"/>
-    <boolean id="knives" _label="Knives" arg-unset="-no-knives"/>
+    <boolean id="rings" _label="Rings" arg-unset="--no-rings"/>
+    <boolean id="knives" _label="Knives" arg-unset="--no-knives"/>
    </vgroup>
    <vgroup>
-    <boolean id="torches" _label="Flaming torches" arg-unset="-no-torches"/>
-    <boolean id="bballs" _label="Bowling balls" arg-unset="-no-bballs"/>
+    <boolean id="torches" _label="Flaming torches" arg-unset="--no-torches"/>
+    <boolean id="bballs" _label="Bowling balls" arg-unset="--no-bballs"/>
    </vgroup>
   </hgroup>
 
-  <boolean id="describe" _label="Print Cambridge juggling pattern descriptions" arg-unset="-no-describe"/>
-  <string id="pattern" _label="Juggle this pattern" arg="-pattern %" />
+  <boolean id="describe" _label="Print Cambridge juggling pattern descriptions" arg-unset="--no-describe"/>
+  <string id="pattern" _label="Juggle this pattern" arg="--pattern %" />
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 9111ffd0935e56f32f7e61f9986047f02f6dff49..e202b23260c0f32a8e63274802125824e60f7ded 100644 (file)
@@ -1,46 +1,45 @@
 <?xml version="1.0" encoding="ISO-8859-1"?>
 
 <screensaver name="juggler3d" _label="Juggler 3D" gl="yes">
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=TJkKaXBOvCA"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="10000"
             convert="invert"/>
 
-    <number id="count" type="slider" arg="-count %"
+    <number id="count" type="slider" arg="--count %"
             _label="Speed" _low-label="Slow" _high-label="Fast"
             low="50" high="1000" default="200"
             convert="invert"/>
    </vgroup>
    <vgroup>
-    <number id="cycles" type="slider" arg="-cycles %"
+    <number id="cycles" type="slider" arg="--cycles %"
             _label="Performance length" _low-label="Short" _high-label="Long"
             low="50" high="1000" default="1000"/>
 
-    <number id="tail" type="slider" arg="-tail %"
+    <number id="tail" type="slider" arg="--tail %"
             _label="Trail length" _low-label="None" _high-label="Long"
             low="0" high="100" default="1"/>
    </vgroup>
   </hgroup>
 
   <hgroup>
-    <boolean id="balls" _label="Balls" arg-unset="-no-balls"/>
-    <boolean id="clubs" _label="Clubs" arg-unset="-no-clubs"/>
-    <boolean id="rings" _label="Rings" arg-unset="-no-rings"/>
-    <boolean id="knives" _label="Knives" arg-unset="-no-knives"/>
-<!--<boolean id="torches" _label="Flaming torches" arg-unset="-no-torches"/>-->
-    <boolean id="bballs" _label="Bowling balls" arg-unset="-no-bballs"/>
+    <boolean id="balls" _label="Balls" arg-unset="--no-balls"/>
+    <boolean id="clubs" _label="Clubs" arg-unset="--no-clubs"/>
+    <boolean id="rings" _label="Rings" arg-unset="--no-rings"/>
+    <boolean id="knives" _label="Knives" arg-unset="--no-knives"/>
+    <boolean id="bballs" _label="Bowling balls" arg-unset="--no-bballs"/>
   </hgroup>
 
-  <boolean id="describe" _label="Print Cambridge juggling pattern descriptions" arg-unset="-no-describe"/>
-  <string id="pattern" _label="Juggle this pattern" arg="-pattern %" />
+  <boolean id="describe" _label="Print Cambridge juggling pattern descriptions" arg-unset="--no-describe"/>
+  <string id="pattern" _label="Juggle this pattern" arg="--pattern %" />
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 1830036b98caafe31d091d6bfcf14e35620ebb1a..a0da36a8715cbaf098fb63946904b38d6994aabf 100644 (file)
@@ -2,28 +2,28 @@
 
 <screensaver name="julia" _label="Julia">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=cA4Rgq-rmy8"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="10000"
           convert="invert"/>
 
-  <number id="count" type="slider" arg="-count %"
+  <number id="count" type="slider" arg="--count %"
            _label="Count" _low-label="Few" _high-label="Lots"
           low="10" high="20000" default="1000"/>
 
-  <number id="cycles" type="slider" arg="-cycles %"
+  <number id="cycles" type="slider" arg="--cycles %"
            _label="Iterations" _low-label="Small" _high-label="Large"
           low="1" high="100" default="20"/>
 
-  <number id="ncolors" type="slider" arg="-ncolors %"
+  <number id="ncolors" type="slider" arg="--ncolors %"
             _label="Number of colors" _low-label="Two" _high-label="Many"
             low="1" high="255" default="200"/>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index a6e1fe61d9f700cc772e28b4a869e6c14ed0edc5..430bc8310635cd4946205f8bd5d15d7742d51257 100644 (file)
@@ -2,32 +2,28 @@
 
 <screensaver name="kaleidescope" _label="Kaleidescope">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=mGplFlx1y3M"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="20000"
           convert="invert"/>
 
-  <number id="nsegments" type="slider" arg="-nsegments %"
+  <number id="nsegments" type="slider" arg="--nsegments %"
           _label="Segments" _low-label="Few" _high-label="Many"
           low="1" high="100" default="7"/>
 
-  <number id="symmetry" type="slider" arg="-symmetry %"
+  <number id="symmetry" type="slider" arg="--symmetry %"
           _label="Symmetry" _low-label="3" _high-label="32"
           low="3" high="32" default="11"/>
 
-  <number id="ntrails" type="slider" arg="-ntrails %"
+  <number id="ntrails" type="slider" arg="--ntrails %"
           _label="Trails" _low-label="Few" _high-label="Many"
           low="1" high="1000" default="100"/>
 
-  <!-- #### -local_rotation [-59] -->
-  <!-- #### -global_rotation [1] -->
-  <!-- #### -spring_constant [5] -->
-
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 913ccccfe8638d9db08bb773ddfcafa948509d6f..52fff57d558dd85fcff96bb2de10e296dafd3f53 100644 (file)
@@ -2,22 +2,22 @@
 
 <screensaver name="kaleidocycle" _label="Kaleidocycle" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=SJqRaCCy_vo"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="30000"
             convert="invert"/>
 
-    <number id="count" type="slider" arg="-count %"
+    <number id="count" type="slider" arg="--count %"
             _label="Count" _low-label="8" _high-label="64"
             low="8" high="64" default="16"/>
 
-    <number id="speed" type="slider" arg="-speed %"
+    <number id="speed" type="slider" arg="--speed %"
             _label="Speed" _low-label="Slow" _high-label="Fast"
             low="0.1" high="8.0" default="1.0"
             convert="ratio"/>
 
    <vgroup>
     <select id="rotation">
-      <option id="no"  _label="Don't rotate"               arg-set="-spin 0"/>
-      <option id="x"   _label="Rotate around X axis"       arg-set="-spin X"/>
-      <option id="y"   _label="Rotate around Y axis"       arg-set="-spin Y"/>
+      <option id="no"  _label="Don't rotate"               arg-set="--spin 0"/>
+      <option id="x"   _label="Rotate around X axis"       arg-set="--spin X"/>
+      <option id="y"   _label="Rotate around Y axis"       arg-set="--spin Y"/>
       <option id="z"   _label="Rotate around Z axis"/>
-      <option id="xy"  _label="Rotate around X and Y axes" arg-set="-spin XY"/>
-      <option id="xz"  _label="Rotate around X and Z axes" arg-set="-spin XZ"/>
-      <option id="yz"  _label="Rotate around Y and Z axes" arg-set="-spin YZ"/>
-      <option id="xyz" _label="Rotate around all three axes" arg-set="-spin XYZ"/>
+      <option id="xy"  _label="Rotate around X and Y axes" arg-set="--spin XY"/>
+      <option id="xz"  _label="Rotate around X and Z axes" arg-set="--spin XZ"/>
+      <option id="yz"  _label="Rotate around Y and Z axes" arg-set="--spin YZ"/>
+      <option id="xyz" _label="Rotate around all three axes" arg-set="--spin XYZ"/>
     </select>
 
-    <boolean id="wander" _label="Wander" arg-set="-wander"/>
+    <boolean id="wander" _label="Wander" arg-set="--wander"/>
 
-    <boolean id="wire"    _label="Wireframe"              arg-set="-wireframe"/>
-    <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+    <boolean id="wire"    _label="Wireframe"              arg-set="--wireframe"/>
+    <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
    </vgroup>
   </hgroup>
 
index e0e3b36b7207e0ed1d72f104af5665505678ef10..b69c64147dfff3263c596f081aba85c8bd38aeec 100644 (file)
 
 <screensaver name="klein" _label="Klein" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=c2gvyGVNG80"/>
 
   <hgroup>
     <select id="kleinbottle">
       <option id="random"        _label="Random shape"/>
-      <option id="figure-8"      _label="Figure 8"      arg-set="-klein-bottle figure-8"/>
-      <option id="pinched-torus" _label="Pinched torus" arg-set="-klein-bottle pinched-torus"/>
-      <option id="lawson"        _label="Lawson"        arg-set="-klein-bottle lawson"/>
+      <option id="figure-8"      _label="Figure 8"      arg-set="--klein-bottle figure-8"/>
+      <option id="pinched-torus" _label="Pinched torus" arg-set="--klein-bottle pinched-torus"/>
+      <option id="lawson"        _label="Lawson"        arg-set="--klein-bottle lawson"/>
     </select>
 
     <select id="view-mode">
       <option id="walk"      _label="Random motion"/>
-      <option id="walk"      _label="Walk"          arg-set="-view-mode walk"/>
-      <option id="turn"      _label="Turn"          arg-set="-view-mode turn"/>
-      <option id="walk-turn" _label="Walk and turn" arg-set="-view-mode walk-turn"/>
+      <option id="walk"      _label="Walk"          arg-set="--view-mode walk"/>
+      <option id="turn"      _label="Turn"          arg-set="--view-mode turn"/>
+      <option id="walk-turn" _label="Walk and turn" arg-set="--view-mode walk-turn"/>
     </select>
 
     <boolean id="orientation-marks" _label="Show orientation marks"
-              arg-set="-orientation-marks"/>
+              arg-set="--orientation-marks"/>
   </hgroup>
 
   <hgroup>
     <select id="display-mode">
       <option id="random"      _label="Random surface"/>
-      <option id="wire"        _label="Wireframe mesh"      arg-set="-mode wireframe"/>
-      <option id="surface"     _label="Solid surface"       arg-set="-mode surface"/>
-      <option id="transparent" _label="Transparent surface" arg-set="-mode transparent"/>
+      <option id="wire"        _label="Wireframe mesh"      arg-set="--mode wireframe"/>
+      <option id="surface"     _label="Solid surface"       arg-set="--mode surface"/>
+      <option id="transparent" _label="Transparent surface" arg-set="--mode transparent"/>
     </select>
 
     <select id="appearance">
       <option id="random" _label="Random pattern"/>
-      <option id="solid"  _label="Solid object"       arg-set="-appearance solid"/>
-      <option id="bands"  _label="See-through bands"  arg-set="-appearance bands"/>
+      <option id="solid"  _label="Solid object"       arg-set="--appearance solid"/>
+      <option id="bands"  _label="See-through bands"  arg-set="--appearance bands"/>
     </select>
 
     <select id="colors">
       <option id="random"   _label="Random coloration"/>
-      <option id="twosided" _label="One-sided"       arg-set="-colors one-sided"/>
-      <option id="twosided" _label="Two-sided"       arg-set="-colors two-sided"/>
-      <option id="rainbow"  _label="Rainbow colors"  arg-set="-colors rainbow"/>
-      <option id="depth"    _label="4d depth colors" arg-set="-colors depth"/>
+      <option id="twosided" _label="One-sided"       arg-set="--colors one-sided"/>
+      <option id="twosided" _label="Two-sided"       arg-set="--colors two-sided"/>
+      <option id="rainbow"  _label="Rainbow colors"  arg-set="--colors rainbow"/>
+      <option id="depth"    _label="4d depth colors" arg-set="--colors depth"/>
     </select>
 
     <boolean id="change-colors" _label="Change colors"
-              arg-set="-change-colors"/>
+              arg-set="--change-colors"/>
 
     <select id="projection3d">
       <option id="random"          _label="Random 3D"/>
-      <option id="perspective-3d"  _label="Perspective 3D"  arg-set="-projection-3d perspective"/>
-      <option id="orthographic-3d" _label="Orthographic 3D" arg-set="-projection-3d orthographic"/>
+      <option id="perspective-3d"  _label="Perspective 3D"  arg-set="--projection-3d perspective"/>
+      <option id="orthographic-3d" _label="Orthographic 3D" arg-set="--projection-3d orthographic"/>
     </select>
 
     <select id="projection4d">
       <option id="random"          _label="Random 4D"/>
-      <option id="perspective-4d"  _label="Perspective 4D"  arg-set="-projection-4d perspective"/>
-      <option id="orthographic-4d" _label="Orthographic 4D" arg-set="-projection-4d orthographic"/>
+      <option id="perspective-4d"  _label="Perspective 4D"  arg-set="--projection-4d perspective"/>
+      <option id="orthographic-4d" _label="Orthographic 4D" arg-set="--projection-4d orthographic"/>
     </select>
   </hgroup>
 
   <hgroup>
     <vgroup>
-      <number id="speed-wx" type="slider" arg="-speed-wx %"
+      <number id="speed-wx" type="slider" arg="--speed-wx %"
               _label="WX rotation speed"
               _low-label="-4.0" _high-label="4.0"
               low="-4.0" high="4.0" default="1.1"/>
 
-      <number id="speed-wy" type="slider" arg="-speed-wy %"
+      <number id="speed-wy" type="slider" arg="--speed-wy %"
               _label="WY rotation speed"
               _low-label="-4.0" _high-label="4.0"
               low="-4.0" high="4.0" default="1.3"/>
 
-      <number id="speed-wz" type="slider" arg="-speed-wz %"
+      <number id="speed-wz" type="slider" arg="--speed-wz %"
               _label="WZ rotation speed"
               _low-label="-4.0" _high-label="4.0"
               low="-4.0" high="4.0" default="1.5"/>
     </vgroup>
 
     <vgroup>
-      <number id="speed-xy" type="slider" arg="-speed-xy %"
+      <number id="speed-xy" type="slider" arg="--speed-xy %"
               _label="XY rotation speed"
               _low-label="-4.0" _high-label="4.0"
               low="-4.0" high="4.0" default="1.7"/>
 
-      <number id="speed-xz" type="slider" arg="-speed-xz %"
+      <number id="speed-xz" type="slider" arg="--speed-xz %"
               _label="XZ rotation speed"
               _low-label="-4.0" _high-label="4.0"
               low="-4.0" high="4.0" default="1.9"/>
 
-      <number id="speed-yz" type="slider" arg="-speed-yz %"
+      <number id="speed-yz" type="slider" arg="--speed-yz %"
               _label="YZ rotation speed"
               _low-label="-4.0" _high-label="4.0"
               low="-4.0" high="4.0" default="2.1"/>
     </vgroup>
 
     <vgroup>
-     <number id="walk-direction" type="slider" arg="-walk-direction %"
+     <number id="walk-direction" type="slider" arg="--walk-direction %"
              _label="Walking direction"
              _low-label="-180.0" _high-label="180.0"
              low="-180.0" high="180.0" default="7.0"/>
 
-     <number id="walk-speed" type="slider" arg="-walk-speed %"
+     <number id="walk-speed" type="slider" arg="--walk-speed %"
              _label="Walking speed"
              _low-label="1.0" _high-label="100.0"
              low="1.0" high="100.0" default="20.0"/>
 
-     <number id="delay" type="slider" arg="-delay %"
+     <number id="delay" type="slider" arg="--delay %"
              _label="Frame rate" _low-label="Low" _high-label="High"
              low="0" high="100000" default="25000"
              convert="invert"/>
 
-     <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+     <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
     </vgroup>
   </hgroup>
 
index 85f7ee2fff12d8f274126cf70659d10bfeb2ade4..58bdbcd28c999a2db8f5349701dd0fb45d4590e0 100644 (file)
@@ -2,24 +2,21 @@
 
 <screensaver name="kumppa" _label="Kumppa">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=64ULSfxhkDY"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="10000"
           convert="invert"/>
 
-  <number id="density" type="slider" arg="-speed %"
+  <number id="density" type="slider" arg="--speed %"
           _label="Density" _low-label="Low" _high-label="High"
           low="0.0001" high="0.2" default="0.1"/>
 
-  <boolean id="random" _label="Randomize" arg-unset="-no-random"/>
-<!--  <boolean id="db" _label="Double buffer" arg-set="-db"/> -->
-
-
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="random" _label="Randomize" arg-unset="--no-random"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 7f0de9d0eeeac5f343c0475a103a8273854930ac..d389a15dd6933da4291282b3e570e1abfd8980f1 100644 (file)
@@ -2,18 +2,18 @@
 
 <screensaver name="lament" _label="Lament" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=-TBqI4YKOKI"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="20000"
           convert="invert"/>
 
-  <boolean id="tex"     _label="Textured"  arg-unset="-no-texture"/>
-  <boolean id="wire"    _label="Wireframe"   arg-set="-wireframe"/>
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="tex"     _label="Textured"  arg-unset="--no-texture"/>
+  <boolean id="wire"    _label="Wireframe"   arg-set="--wireframe"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 4694cca1e2caa1a46550efd28669e46cd2ee4841..dd60c38712108658d031ebd3f16adf8a8d72ec94 100644 (file)
@@ -2,27 +2,27 @@
 
 <screensaver name="laser" _label="Laser">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=QjPEa3KDlsw"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="40000"
           convert="invert"/>
 
-  <number id="count" type="spinbutton" arg="-count %"
+  <number id="count" type="spinbutton" arg="--count %"
           _label="Count" low="0" high="20" default="10"/>
 
-  <number id="cycles" type="slider" arg="-cycles %"
+  <number id="cycles" type="slider" arg="--cycles %"
            _label="Duration" _low-label="Short" _high-label="Long"
           low="0" high="2000" default="200"/>
 
-  <number id="ncolors" type="slider" arg="-ncolors %"
+  <number id="ncolors" type="slider" arg="--ncolors %"
             _label="Number of colors" _low-label="Two" _high-label="Many"
             low="1" high="255" default="64"/>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 50570a2069ca51e834267d1eb92c4be5aac71ded..5e89ec66b134a6dffa371a46778a4d44aa7f5dee 100644 (file)
@@ -2,27 +2,27 @@
 
 <screensaver name="lavalite" _label="Lavalite" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=XKbtdHL35u0"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="30000"
             convert="invert"/>
 
-    <number id="speed" type="slider" arg="-speed %"
+    <number id="speed" type="slider" arg="--speed %"
             _label="Activity" _low-label="Sparse" _high-label="Dense"
             low="0.001" high="0.01" default="0.003"/>
    </vgroup>
    <vgroup>
-    <number id="count" type="slider" arg="-count %"
+    <number id="count" type="slider" arg="--count %"
             _label="Max blobs" _low-label="1" _high-label="10"
             low="1" high="10" default="3"/>
 
-    <number id="resolution" type="slider" arg="-resolution %"
+    <number id="resolution" type="slider" arg="--resolution %"
             _label="Resolution" _low-label="Low" _high-label="High"
             low="10" high="120" default="40"/>
    </vgroup>
    <vgroup>
 
  <hgroup>
-  <boolean id="impatient" _label="Impatient"   arg-set="-impatient"/>
-  <boolean id="smooth"    _label="Smooth"      arg-unset="-no-smooth"/>
-  <boolean id="wander"    _label="Wander" arg-set="-wander"/>
+  <boolean id="impatient" _label="Impatient"   arg-set="--impatient"/>
+  <boolean id="smooth"    _label="Smooth"      arg-unset="--no-smooth"/>
+  <boolean id="wander"    _label="Wander" arg-set="--wander"/>
  </hgroup>
 
  <hgroup>
-  <boolean id="wire"      _label="Wireframe"   arg-set="-wireframe"/>
-  <boolean id="showfps"   _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="wire"      _label="Wireframe"   arg-set="--wireframe"/>
+  <boolean id="showfps"   _label="Show frame rate" arg-set="--fps"/>
  </hgroup>
 
    </vgroup>
    <vgroup>
 
   <select id="style">
-    <option id="classic" _label="Classic Lavalite" arg-set="-style classic"/>
-    <option id="giant"   _label="Giant Lavalite"   arg-set="-style giant"/>
-    <option id="cone"    _label="Cone Lavalite"    arg-set="-style cone"/>
-    <option id="rocket"  _label="Rocket Lavalite"  arg-set="-style rocket"/>
+    <option id="classic" _label="Classic Lavalite" arg-set="--style classic"/>
+    <option id="giant"   _label="Giant Lavalite"   arg-set="--style giant"/>
+    <option id="cone"    _label="Cone Lavalite"    arg-set="--style cone"/>
+    <option id="rocket"  _label="Rocket Lavalite"  arg-set="--style rocket"/>
     <option id="random"  _label="Random Lamp Style"/>
   </select>
 
   <select id="rotation">
-    <option id="no"  _label="Don't Rotate"                 arg-set="-spin 0"/>
-    <option id="x"   _label="Rotate around X axis"         arg-set="-spin X"/>
-    <option id="y"   _label="Rotate around Y axis"         arg-set="-spin Y"/>
+    <option id="no"  _label="Don't Rotate"                 arg-set="--spin 0"/>
+    <option id="x"   _label="Rotate around X axis"         arg-set="--spin X"/>
+    <option id="y"   _label="Rotate around Y axis"         arg-set="--spin Y"/>
     <option id="z"   _label="Rotate around Z axis"/>
-    <option id="xy"  _label="Rotate around X and Y axes"   arg-set="-spin XY"/>
-    <option id="xz"  _label="Rotate around X and Z axes"   arg-set="-spin XZ"/>
-    <option id="yz"  _label="Rotate around Y and Z axes"   arg-set="-spin YZ"/>
-    <option id="xyz" _label="Rotate around all three axes" arg-set="-spin XYZ"/>
+    <option id="xy"  _label="Rotate around X and Y axes"   arg-set="--spin XY"/>
+    <option id="xz"  _label="Rotate around X and Z axes"   arg-set="--spin XZ"/>
+    <option id="yz"  _label="Rotate around Y and Z axes"   arg-set="--spin YZ"/>
+    <option id="xyz" _label="Rotate around all three axes" arg-set="--spin XYZ"/>
   </select>
 
    </vgroup>
index 545144d5a4a4c29234de48ecedf2ec0789160c6a..8289aabe8b87586a1330cd9d9adb713fb1ebe7ea 100644 (file)
@@ -2,37 +2,37 @@
 
 <screensaver name="lcdscrub" _label="LCD Scrub">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=aWtHHBOkO4w"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="5000000" default="100000"
           convert="invert"/>
 
   <hgroup>
    <vgroup>
-    <number id="spread" type="spinbutton" arg="-spread %"
+    <number id="spread" type="spinbutton" arg="--spread %"
             _label="Line spread" low="2" high="8192" default="8"/>
-    <number id="cycles" type="spinbutton" arg="-cycles %"
+    <number id="cycles" type="spinbutton" arg="--cycles %"
             _label="Cycles" low="1" high="600" default="60"/>
-    <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+    <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
    </vgroup>
    <vgroup>
-    <boolean id="hw"  _label="Horizontal white" arg-unset="-no-hw"/>
-    <boolean id="vw"  _label="Vertical white"   arg-unset="-no-vw"/>
-    <boolean id="dw"  _label="Diagonal white"   arg-unset="-no-dw"/>
+    <boolean id="hw"  _label="Horizontal white" arg-unset="--no-hw"/>
+    <boolean id="vw"  _label="Vertical white"   arg-unset="--no-vw"/>
+    <boolean id="dw"  _label="Diagonal white"   arg-unset="--no-dw"/>
    </vgroup>
    <vgroup>
-    <boolean id="w"   _label="Solid white"      arg-unset="-no-w"/>
-    <boolean id="rgb" _label="Primary colors"   arg-unset="-no-rgb"/>
-    <boolean id="hb"  _label="Horizontal black" arg-unset="-no-hb"/>
+    <boolean id="w"   _label="Solid white"      arg-unset="--no-w"/>
+    <boolean id="rgb" _label="Primary colors"   arg-unset="--no-rgb"/>
+    <boolean id="hb"  _label="Horizontal black" arg-unset="--no-hb"/>
    </vgroup>
    <vgroup>
-    <boolean id="vb"  _label="Vertical black"   arg-unset="-no-vb"/>
-    <boolean id="db"  _label="Diagonal black"   arg-unset="-no-db"/>
-    <boolean id="b"   _label="Solid black"      arg-unset="-no-b"/>
+    <boolean id="vb"  _label="Vertical black"   arg-unset="--no-vb"/>
+    <boolean id="db"  _label="Diagonal black"   arg-unset="--no-db"/>
+    <boolean id="b"   _label="Solid black"      arg-unset="--no-b"/>
    </vgroup>
   </hgroup>
 
index 8e602fe7213e511d5d9c20b3656ba9d86b99635e..a1392ff1574c68d2badffc72cebd1bff56dcc6f5 100644 (file)
@@ -2,20 +2,20 @@
 
 <screensaver name="lightning" _label="Lightning">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=lUUdHtPvp5Y"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="10000"
           convert="invert"/>
 
-  <number id="ncolors" type="slider" arg="-ncolors %"
+  <number id="ncolors" type="slider" arg="--ncolors %"
             _label="Number of colors" _low-label="Two" _high-label="Many"
             low="1" high="255" default="64"/>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index d142fad631e10322d6d256edac10efa166092189..9aea9f79e2a4244c45ac1eb4671e8bdaa419398b 100644 (file)
@@ -2,36 +2,36 @@
 
 <screensaver name="lisa" _label="Lisa">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=AUbAuARmlnE"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="50000" default="17000"
             convert="invert"/>
 
-    <number id="cycles" type="slider" arg="-cycles %"
+    <number id="cycles" type="slider" arg="--cycles %"
              _label="Steps" _low-label="Few" _high-label="Many"
             low="1" high="1000" default="768"/>
 
-    <number id="ncolors" type="slider" arg="-ncolors %"
+    <number id="ncolors" type="slider" arg="--ncolors %"
               _label="Number of colors" _low-label="Two" _high-label="Many"
               low="1" high="255" default="64"/>
    </vgroup>
 
    <vgroup>
-    <number id="size" type="slider" arg="-size %"
+    <number id="size" type="slider" arg="--size %"
               _label="Size" _low-label="Small" _high-label="Large"
               low="10" high="500" default="500"/>
 
-    <number id="count" type="slider" arg="-count %"
+    <number id="count" type="slider" arg="--count %"
             _label="Count" _low-label="1" _high-label="20"
              low="0" high="20" default="1"/>
 
-    <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+    <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
    </vgroup>
   </hgroup>
 
index ca165a4ac4c0e5cfb0e6358ec6efeb686bde0e55..6c76d2b6ea42c672addd3d6c7d60391bd0290c7c 100644 (file)
@@ -2,28 +2,28 @@
 
 <screensaver name="lissie" _label="Lissie">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=6EBNCXcD9f0"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="10000"
             convert="invert"/>
 
-    <number id="cycles" type="slider" arg="-cycles %"
+    <number id="cycles" type="slider" arg="--cycles %"
              _label="Timeout" _low-label="Small" _high-label="Large"
             low="0" high="80000" default="20000"/>
    </vgroup>
 
    <vgroup>
-    <number id="ncolors" type="slider" arg="-ncolors %"
+    <number id="ncolors" type="slider" arg="--ncolors %"
               _label="Number of colors" _low-label="Two" _high-label="Many"
               low="1" high="255" default="200"/>
 
-    <number id="count" type="slider" arg="-count %"
+    <number id="count" type="slider" arg="--count %"
             _label="Count" _low-label="1" _high-label="20"
              low="0" high="20" default="1"/>
    </vgroup>
 
   <hgroup>
    <vgroup>
-    <number id="size" type="spinbutton" arg="-size %"
+    <number id="size" type="spinbutton" arg="--size %"
              _label="Size" low="-500" high="500" default="-200"/>
    </vgroup>
-   <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+   <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
   </hgroup>
 
   <xscreensaver-updater />
index f0920b3237ea6ecf95e069311b1e4460f2c03044..a211938d2868b2475632a18035f773f6f6b85da4 100644 (file)
@@ -2,28 +2,28 @@
 
 <screensaver name="lmorph" _label="LMorph">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=yMbMB7xQMkA"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="70000"
           convert="invert"/>
 
-    <number id="points" type="slider" arg="-points %"
+    <number id="points" type="slider" arg="--points %"
             _label="Control points" _low-label="Few" _high-label="Many"
             low="10" high="1000" default="200"/>
    </vgroup>
 
    <vgroup>
-    <number id="steps" type="slider" arg="-steps %"
+    <number id="steps" type="slider" arg="--steps %"
             _label="Interpolation steps" _low-label="Less" _high-label="More"
             low="100" high="500" default="150"/>
 
-    <number id="thickness" type="slider" arg="-linewidth %"
+    <number id="thickness" type="slider" arg="--linewidth %"
             _label="Lines" _low-label="Thin" _high-label="Thick"
             low="1" high="50" default="5"/>
    </vgroup>
 
   <select id="type">
     <option id="random" _label="Open and closed figures"/>
-    <option id="open" _label="Open figures" arg-set="-figtype open"/>
-    <option id="closed" _label="Closed figures" arg-set="-figtype closed"/>
+    <option id="open" _label="Open figures" arg-set="--figtype open"/>
+    <option id="closed" _label="Closed figures" arg-set="--figtype closed"/>
   </select>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 1a44ddde610c13be1227cf5c3d26b9728dba677f..f1f0840c8427129b4fe83cd40fbae55f5678a70d 100644 (file)
@@ -2,11 +2,11 @@
 
 <screensaver name="lockward" _label="Lockward" gl="yes">
 
-  <command arg="-root" />
+  <command arg="--root" />
 
   <video href="https://www.youtube.com/watch?v=MGwySGVQZ2M"/>
 
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="20000"
           convert="invert"/>
     <number id="rotateidle-min" type="slider"
             _label="Miniumum rotator idle time"
             _low-label="Low" _high-label="High"
-            low="500" high="10000" default="1000" arg="-rotateidle-min %" />
+            low="500" high="10000" default="1000" arg="--rotateidle-min %" />
 
     <number id="blinkidle-min" type="slider"
             _label="Minimum blink idle time"
             _low-label="Low" _high-label="High"
-            low="500" high="20000" default="1000" arg="-blinkidle-min %" />
+            low="500" high="20000" default="1000" arg="--blinkidle-min %" />
 
     <number id="blinkdwell-min" type="slider"
             _label="Minimum blink dwell time"
             _low-label="Low" _high-label="High"
-            low="50" high="1500" default="100" arg="-blinkdwell-min %" />
+            low="50" high="1500" default="100" arg="--blinkdwell-min %" />
 
    <hgroup>
    <boolean id="blink"
             _label="Blinking effects"
-            arg-unset="-no-blink" />
-   <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+            arg-unset="--no-blink" />
+   <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
    </hgroup>
 
    </vgroup>
     <number id="rotateidle-max" type="slider"
             _label="Maximum rotator idle time"
             _low-label="Low" _high-label="High"
-            low="500" high="10000" default="6000" arg="-rotateidle-max %" />
+            low="500" high="10000" default="6000" arg="--rotateidle-max %" />
 
     <number id="blinkidle-max" type="slider"
             _label="Maximum blink idle time"
             _low-label="Low" _high-label="High"
-            low="500" high="20000" default="9000" arg="-blinkidle-max %" />
+            low="500" high="20000" default="9000" arg="--blinkidle-max %" />
 
     <number id="blinkdwell-max" type="slider"
             _label="Maximum blink dwell time"
             _low-label="Low" _high-label="High"
-            low="50" high="1500" default="600" arg="-blinkdwell-max %" />
+            low="50" high="1500" default="600" arg="--blinkdwell-max %" />
    </vgroup>
   </hgroup>
 
index 65571c0c8def7a546802a90ef33b14e47cd04d7d..08f00acb19a4b2ed677daf16c5fe8de25b59f456 100644 (file)
@@ -2,27 +2,27 @@
 
 <screensaver name="loop" _label="Loop">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=_kTMO7oEN8U"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="200000" default="100000"
           convert="invert"/>
 
-  <number id="cycles" type="slider" arg="-cycles %"
+  <number id="cycles" type="slider" arg="--cycles %"
            _label="Timeout" _low-label="Small" _high-label="Large"
           low="0" high="8000" default="1600"/>
 
-  <number id="ncolors" type="slider" arg="-ncolors %"
+  <number id="ncolors" type="slider" arg="--ncolors %"
             _label="Number of colors" _low-label="Two" _high-label="Many"
             low="1" high="255" default="15"/>
 
-  <number id="size" type="spinbutton" arg="-size %"
+  <number id="size" type="spinbutton" arg="--size %"
            _label="Size" low="-50" high="50" default="-12"/>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 5738921d104a63b5025248207d1a0049e3085f4a..2c7a3153c4483c5747503a0deab76739a99ce0c1 100644 (file)
@@ -2,36 +2,36 @@
 
 <screensaver name="m6502" _label="m6502">
 
-  <command arg="-root" />
+  <command arg="--root" />
 
   <video href="https://www.youtube.com/watch?v=KlDw0nYwUe4"/>
 
-  <file id="file" _label="Assembly file" arg="-file %"/>
+  <file id="file" _label="Assembly file" arg="--file %"/>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <hgroup>
    <vgroup>
-    <number id="displaytime" type="slider" arg="-displaytime %"
+    <number id="displaytime" type="slider" arg="--displaytime %"
             _label="Display time for each program"
             _low-label="5 seconds" _high-label="2 minutes"
             low="5.0" high="120.0" default="30.0" />
-    <number id="tvcolor" type="slider" arg="-tv-color %"
+    <number id="tvcolor" type="slider" arg="--tv-color %"
             _label="Color Knob" _low-label="Low" _high-label="High"
             low="0" high="400" default="70"/>
-    <number id="tvtint" type="slider" arg="-tv-tint %"
+    <number id="tvtint" type="slider" arg="--tv-tint %"
             _label="Tint Knob" _low-label="Low" _high-label="High"
             low="0" high="360" default="5"/>
    </vgroup>
    <vgroup>
-    <number id="ips" type="slider" arg="-ips %"
+    <number id="ips" type="slider" arg="--ips %"
             _label="Instructions per second"
             _low-label="500" _high-label="120000"
             low="500" high="120000" default="15000" />
-    <number id="tvbrightness" type="slider" arg="-tv-brightness %"
+    <number id="tvbrightness" type="slider" arg="--tv-brightness %"
             _label="Brightness Knob" _low-label="Low" _high-label="High"
             low="-75.0" high="100.0" default="3.0"/>
-    <number id="tvcontrast" type="slider" arg="-tv-contrast %"
+    <number id="tvcontrast" type="slider" arg="--tv-contrast %"
             _label="Contrast Knob" _low-label="Low" _high-label="High"
             low="0" high="500" default="150"/>
    </vgroup>
index 4370c43acfb1fb46afd24f834908a6345c0374c5..3548087b53aa24b0c67e3cd51bfa1ecd4c8e0d40 100644 (file)
@@ -2,28 +2,28 @@
 
 <screensaver name="mapscroller" _label="Map Scroller" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=99w8VfCU3Pg"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="30000"
             convert="invert"/>
 
-    <number id="speed" type="slider" arg="-speed %"
+    <number id="speed" type="slider" arg="--speed %"
             _label="Scroll speed" _low-label="Slow" _high-label="Fast"
             low="0.01" high="10.0" default="1.0"
             convert="ratio"/>
    </vgroup>
    <vgroup>
-    <number id="level" type="slider" arg="-level %"
+    <number id="level" type="slider" arg="--level %"
             _label="Zoom level" _low-label="Countries" _high-label="Streets"
             low="5" high="18" default="15"/>
 
-    <number id="duration" type="slider" arg="-duration %"
+    <number id="duration" type="slider" arg="--duration %"
             _label="Re-randomize every"
              _low-label="1 minute" _high-label="2 hours"
             low="60" high="7200" default="1800"/>
      -->
     <select id="map">
      <option id="osm"          _label="Open Street Map"/>
-     <option id="osmhot"       _label="OSM Humanitarian Map"     arg-set="-url-template https://{a-b}.tile.openstreetmap.fr/hot/{z}/{x}/{y}.png"/>
-     <option id="toner"                _label="Stamen Toner B&amp;W Map" arg-set="-url-template http://{a-c}.tile.stamen.com/toner/{z}/{x}/{y}.png"/>
-     <option id="sterrain"     _label="Stamen Terrain Map"       arg-set="-url-template http://{a-c}.tile.stamen.com/terrain/{z}/{x}/{y}.png"/>
-     <option id="swatercolor"  _label="Stamen Watercolor Map"    arg-set="-url-template http://{a-c}.tile.stamen.com/watercolor/{z}/{x}/{y}.jpg"/>
+     <option id="osmhot"       _label="OSM Humanitarian Map"     arg-set="--url-template https://{a-b}.tile.openstreetmap.fr/hot/{z}/{x}/{y}.png"/>
+     <option id="toner"                _label="Stamen Toner B&amp;W Map" arg-set="--url-template http://{a-c}.tile.stamen.com/toner/{z}/{x}/{y}.png"/>
+     <option id="sterrain"     _label="Stamen Terrain Map"       arg-set="--url-template http://{a-c}.tile.stamen.com/terrain/{z}/{x}/{y}.png"/>
+     <option id="swatercolor"  _label="Stamen Watercolor Map"    arg-set="--url-template http://{a-c}.tile.stamen.com/watercolor/{z}/{x}/{y}.jpg"/>
 <!--
-     <option id="wfmbw"                _label="WFM B&amp;W Map"          arg-set="-url-template https://{a-c}.tiles.wmflabs.org/bw-mapnik/{z}/{x}/{y}.png"/>
-     <option id="wfmnolabel"   _label="WFM No Labels Map"        arg-set="-url-template https://{a-c}.tiles.wmflabs.org/osm-no-labels/{z}/{x}/{y}.png"/>
+     <option id="wfmbw"                _label="WFM B&amp;W Map"          arg-set="- -url-template https://{a-c}.tiles.wmflabs.org/bw-mapnik/{z}/{x}/{y}.png"/>
+     <option id="wfmnolabel"   _label="WFM No Labels Map"        arg-set="- -url-template https://{a-c}.tiles.wmflabs.org/osm-no-labels/{z}/{x}/{y}.png"/>
 -->
     </select>
 
     <select id="origin">
-     <option id="random" _label="Fully random location" arg-set="-origin random"/>
+     <option id="random" _label="Fully random location" arg-set="--origin random"/>
      <option id="randomcity" _label="Random city"/>
 
      <!-- New York, London, Paris, Munich, everybody talk about pop muzik -->
-     <option id="amsterdam"    _label="Amsterdam"      arg-set="-origin 52.3667,4.8833"/>
-     <option id="athens"       _label="Athens"         arg-set="-origin 37.9842,23.7281"/>
-     <option id="austin"       _label="Austin"         arg-set="-origin 30.3004,-97.7522"/>
-     <option id="barcelona"    _label="Barcelona"      arg-set="-origin 41.3825,2.1769"/>
-     <option id="berlin"       _label="Berlin"         arg-set="-origin 52.5167,13.3833"/>
-     <option id="boston"       _label="Boston"         arg-set="-origin 42.3188,-71.0846"/>
-     <option id="budapest"     _label="Budapest"       arg-set="-origin 47.4983,19.0408"/>
-     <option id="buenosaires"  _label="Buenos Aires"   arg-set="-origin -34.5997,-58.3819"/>
-     <option id="cairo"                _label="Cairo"          arg-set="-origin 30.0561,31.2394"/>
-     <option id="casablanca"   _label="Casablanca"     arg-set="-origin 33.5992,-7.6200"/>
-     <option id="chicago"      _label="Chicago"        arg-set="-origin 41.8373,-87.6862"/>
-     <option id="havana"       _label="Havana"         arg-set="-origin 23.1367,-82.3589"/>
-     <option id="hongkong"     _label="Hong Kong"      arg-set="-origin 22.3050,114.1850"/>
-     <option id="honolulu"     _label="Honolulu"       arg-set="-origin 21.3294,-157.8460"/>
-     <option id="lasvegas"     _label="Las Vegas"      arg-set="-origin 36.2333,-115.2654"/>
-     <option id="london"       _label="London"         arg-set="-origin 51.5072,-0.1275"/>
-     <option id="losangeles"   _label="Los Angeles"    arg-set="-origin 34.1139,-118.4068"/>
-     <option id="luxembourg"   _label="Luxembourg"     arg-set="-origin 49.6106,6.1328"/>
-     <option id="madrid"       _label="Madrid"         arg-set="-origin 40.4167,-3.7167"/>
-     <option id="melbourne"    _label="Melbourne"      arg-set="-origin -37.8136,144.9631"/>
-     <option id="mexicocity"   _label="Mexico City"    arg-set="-origin 19.4333,-99.1333"/>
-     <option id="moscow"       _label="Moscow"         arg-set="-origin 55.7558,37.6178"/>
-     <option id="mumbai"       _label="Mumbai"         arg-set="-origin 18.9667,72.8333"/>
-     <option id="munich"       _label="Munich"         arg-set="-origin 48.1372,11.5755"/>
-     <option id="neworleans"   _label="New Orleans"    arg-set="-origin 30.0687,-89.9288"/>
-     <option id="newyork"      _label="New York"       arg-set="-origin 40.7834,-73.9662"/>
-     <option id="paris"                _label="Paris"          arg-set="-origin 48.8566,2.3522"/>
-     <option id="portland"     _label="Portland"       arg-set="-origin 45.5372,-122.6500"/>
-     <option id="prague"       _label="Prague"         arg-set="-origin 50.0833,14.4167"/>
-     <option id="rome"         _label="Rome"           arg-set="-origin 41.8931,12.4828"/>
-     <option id="sanfrancisco" _label="San Francisco"  arg-set="-origin 37.7710,-122.4126"/>
-     <option id="seattle"      _label="Seattle"        arg-set="-origin 47.6211,-122.3244"/>
-     <option id="seoul"                _label="Seoul"          arg-set="-origin 37.5600,126.9900"/>
-     <option id="shanghai"     _label="Shanghai"       arg-set="-origin 31.1667,121.4667"/>
-     <option id="stockholm"    _label="Stockholm"      arg-set="-origin 59.3294,18.0686"/>
-     <option id="sydney"       _label="Sydney"         arg-set="-origin -33.8650,151.2094"/>
-     <option id="saopaulo"     _label="São Paulo"     arg-set="-origin -23.5504,-46.6339"/>
-     <option id="tokyo"                _label="Tokyo"          arg-set="-origin 35.6897,139.6922"/>
-     <option id="toronto"      _label="Toronto"        arg-set="-origin 43.7417,-79.3733"/>
-     <option id="washington"   _label="Washington"     arg-set="-origin 38.9047,-77.0163"/>
+     <option id="amsterdam"    _label="Amsterdam"      arg-set="--origin 52.3667,4.8833"/>
+     <option id="athens"       _label="Athens"         arg-set="--origin 37.9842,23.7281"/>
+     <option id="austin"       _label="Austin"         arg-set="--origin 30.3004,-97.7522"/>
+     <option id="barcelona"    _label="Barcelona"      arg-set="--origin 41.3825,2.1769"/>
+     <option id="berlin"       _label="Berlin"         arg-set="--origin 52.5167,13.3833"/>
+     <option id="boston"       _label="Boston"         arg-set="--origin 42.3188,-71.0846"/>
+     <option id="budapest"     _label="Budapest"       arg-set="--origin 47.4983,19.0408"/>
+     <option id="buenosaires"  _label="Buenos Aires"   arg-set="--origin -34.5997,-58.3819"/>
+     <option id="cairo"                _label="Cairo"          arg-set="--origin 30.0561,31.2394"/>
+     <option id="casablanca"   _label="Casablanca"     arg-set="--origin 33.5992,-7.6200"/>
+     <option id="chicago"      _label="Chicago"        arg-set="--origin 41.8373,-87.6862"/>
+     <option id="havana"       _label="Havana"         arg-set="--origin 23.1367,-82.3589"/>
+     <option id="hongkong"     _label="Hong Kong"      arg-set="--origin 22.3050,114.1850"/>
+     <option id="honolulu"     _label="Honolulu"       arg-set="--origin 21.3294,-157.8460"/>
+     <option id="lasvegas"     _label="Las Vegas"      arg-set="--origin 36.2333,-115.2654"/>
+     <option id="london"       _label="London"         arg-set="--origin 51.5072,-0.1275"/>
+     <option id="losangeles"   _label="Los Angeles"    arg-set="--origin 34.1139,-118.4068"/>
+     <option id="luxembourg"   _label="Luxembourg"     arg-set="--origin 49.6106,6.1328"/>
+     <option id="madrid"       _label="Madrid"         arg-set="--origin 40.4167,-3.7167"/>
+     <option id="melbourne"    _label="Melbourne"      arg-set="--origin -37.8136,144.9631"/>
+     <option id="mexicocity"   _label="Mexico City"    arg-set="--origin 19.4333,-99.1333"/>
+     <option id="moscow"       _label="Moscow"         arg-set="--origin 55.7558,37.6178"/>
+     <option id="mumbai"       _label="Mumbai"         arg-set="--origin 18.9667,72.8333"/>
+     <option id="munich"       _label="Munich"         arg-set="--origin 48.1372,11.5755"/>
+     <option id="neworleans"   _label="New Orleans"    arg-set="--origin 30.0687,-89.9288"/>
+     <option id="newyork"      _label="New York"       arg-set="--origin 40.7834,-73.9662"/>
+     <option id="paris"                _label="Paris"          arg-set="--origin 48.8566,2.3522"/>
+     <option id="portland"     _label="Portland"       arg-set="--origin 45.5372,-122.6500"/>
+     <option id="prague"       _label="Prague"         arg-set="--origin 50.0833,14.4167"/>
+     <option id="rome"         _label="Rome"           arg-set="--origin 41.8931,12.4828"/>
+     <option id="sanfrancisco" _label="San Francisco"  arg-set="--origin 37.7710,-122.4126"/>
+     <option id="seattle"      _label="Seattle"        arg-set="--origin 47.6211,-122.3244"/>
+     <option id="seoul"                _label="Seoul"          arg-set="--origin 37.5600,126.9900"/>
+     <option id="shanghai"     _label="Shanghai"       arg-set="--origin 31.1667,121.4667"/>
+     <option id="stockholm"    _label="Stockholm"      arg-set="--origin 59.3294,18.0686"/>
+     <option id="sydney"       _label="Sydney"         arg-set="--origin -33.8650,151.2094"/>
+     <option id="saopaulo"     _label="São Paulo"     arg-set="--origin -23.5504,-46.6339"/>
+     <option id="tokyo"                _label="Tokyo"          arg-set="--origin 35.6897,139.6922"/>
+     <option id="toronto"      _label="Toronto"        arg-set="--origin 43.7417,-79.3733"/>
+     <option id="washington"   _label="Washington"     arg-set="--origin 38.9047,-77.0163"/>
     </select>
    </vgroup>
   </hgroup>
 
   <hgroup>
-   <boolean id="titles" _label="Show coordinates" arg-unset="-no-titles"/>
-   <boolean id="arrow"  _label="Show arrow"       arg-unset="-no-arrow"/>
-   <boolean id="showfps"  _label="Show frame rate" arg-set="-fps"/>
+   <boolean id="titles" _label="Show coordinates" arg-unset="--no-titles"/>
+   <boolean id="arrow"  _label="Show arrow"       arg-unset="--no-arrow"/>
+   <boolean id="showfps"  _label="Show frame rate" arg-set="--fps"/>
   </hgroup>
 
   <xscreensaver-updater />
index 4b1823fffa9fefb9b1903d4d58e05fa987d8f01c..885cb97007d3dc9e7ba5472cecac4924bccf86f8 100644 (file)
@@ -2,28 +2,28 @@
 
 <screensaver name="marbling" _label="Marbling">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=D20sPMLwS1c"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="10000"
           convert="invert"/>
 
-  <number id="gridsize" type="slider" arg="-gridsize %"
+  <number id="gridsize" type="slider" arg="--gridsize %"
           _label="Magnification" _low-label="Low" _high-label="High"
           low="1" high="20" default="2"/>
 
-  <number id="scale" type="slider" arg="-scale %"
+  <number id="scale" type="slider" arg="--scale %"
           _label="Scale" _low-label="Sparse" _high-label="Dense"
           low="0" high="20" default="10"/>
 
-  <number id="iterations" type="slider" arg="-iterations %"
+  <number id="iterations" type="slider" arg="--iterations %"
           _label="Complexity" _low-label="Low" _high-label="High"
           low="0" high="10" default="5"/>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 002e960b799b8b32fbbeac70bc458a3d9586d3ef..8ad558cbc670029a637e4ea67146ebb53730fbc6 100644 (file)
@@ -2,13 +2,13 @@
 
 <screensaver name="maze" _label="Maze">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=-u4neMXIRA8"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-solve-delay %"
+    <number id="delay" type="slider" arg="--solve-delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="10000"
             convert="invert"/>
     <select id="generator">
       <option id="mrandom" _label="Random maze generator"/>
       <option id="m0"      _label="Depth-first backtracking maze generator"
-                           arg-set="-generator 0"/>
+                           arg-set="--generator 0"/>
       <option id="m1"      _label="Wall-building maze generator (Prim)"
-                           arg-set="-generator 1"/>
+                           arg-set="--generator 1"/>
       <option id="m2"      _label="Set-joining maze generator (Kruskal)"
-                           arg-set="-generator 2"/>
+                           arg-set="--generator 2"/>
     </select>
 
     <hgroup>
      <select id="ignorance">
        <option id="smart" _label="Head toward exit"/>
        <option id="dumb"  _label="Ignorant of exit direction"
-               arg-set="-ignorant"/>
+               arg-set="--ignorant"/>
      </select>
 
     </hgroup>
 
     <hgroup>
-     <number id="grid-size" type="spinbutton" arg="-grid-size %"
+     <number id="grid-size" type="spinbutton" arg="--grid-size %"
              _label="Grid size" low="0" high="100" default="0"/>
-     <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+     <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
     </hgroup>
 
    </vgroup>
 
    <vgroup>
-    <number id="pre-delay" type="slider" arg="-pre-delay %"
+    <number id="pre-delay" type="slider" arg="--pre-delay %"
             _label="Linger before solving"
             _low-label="0 seconds" _high-label="10 seconds"
             low="0" high="10000000" default="2000000"/>
 
-    <number id="post-delay" type="slider" arg="-post-delay %"
+    <number id="post-delay" type="slider" arg="--post-delay %"
             _label="Linger after solving"
             _low-label="0 seconds" _high-label="10 seconds"
             low="0" high="10000000" default="4000000"/>
index 114f4e7d2aecab4dfc6a3936c26595c0bdeb6b46..02cf1ef7a260030bf395a790d38d07f99849f083 100755 (executable)
 
 <screensaver name="maze3d" _label="Maze 3D" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=VTAwxTVdyLc"/>
 
-  <number id="speed" type="slider" arg="-speed %"
+  <number id="speed" type="slider" arg="--speed %"
           _label="Speed" _low-label="Slow" _high-label="Fast"
           low="0.02" high="4.0" default="1.0"
           convert="ratio"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
     _label="Frame rate" _low-label="Low" _high-label="High"
     low="0" high="100000" default="20000"
     convert="invert"/>
 
   <hgroup>
-   <boolean id="showOverlay" _label="Show Overlay" arg-set="-overlay"/>
-   <boolean id="acid" _label="Acid" arg-set="-drop-acid"/>
-   <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+   <boolean id="showOverlay" _label="Show Overlay" arg-set="--overlay"/>
+   <boolean id="acid" _label="Acid" arg-set="--drop-acid"/>
+   <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
   </hgroup>
 
   <hgroup>
-    <number id="numRows" type="spinbutton" arg="-rows %"
+    <number id="numRows" type="spinbutton" arg="--rows %"
       _label="Rows" low="2" high="24" default="12"/>
-    <number id="numColumns" type="spinbutton" arg="-columns %"
+    <number id="numColumns" type="spinbutton" arg="--columns %"
       _label="Columns" low="2" high="24" default="12"/>
   </hgroup>
 
-<!--
-  <hgroup>
-    <file id="wallTextureFile" _label="Wall Texture" arg="-wall-texture %"/>
-    <select id="wallTextureSelect">
-      <option id="wallTextureBrickWall" _label="Brick Wall"/>
-      <option id="wallTextureWoodFloor" _label="Wood Floor"
-        arg-set="-wall-texture wood-floor"/>
-      <option id="wallTextureCeilingTiles" _label="Ceiling Tiles"
-        arg-set="-wall-texture ceiling-tiles"/>
-      <option id="wallTextureFractal1" _label="Fractal 1"
-        arg-set="-wall-texture fractal-1"/>
-      <option id="wallTextureFractal2" _label="Fractal 2"
-        arg-set="-wall-texture fractal-2"/>
-      <option id="wallTextureFractal3" _label="Fractal 3"
-        arg-set="-wall-texture fractal-3"/>
-      <option id="wallTextureFractal4" _label="Fractal 4"
-        arg-set="-wall-texture fractal-4"/>
-    </select>
-    <boolean id="dropAcidWalls" _label="Drop acid"
-      arg-set="-drop-acid-walls"/>
-  </hgroup>
-
-  <hgroup>
-    <file id="floorTextureFile" _label="Floor Texture"
-      arg="-floor-texture %"/>
-    <select id="floorTextureSelect">
-      <option id="floorTextureWoodFloor" _label="Wood Floor"/>
-      <option id="floorTextureBrickWall" _label="Brick Wall"
-        arg-set="-floor-texture brick-wall"/>
-      <option id="floorTextureCeilingTiles" _label="Ceiling Tiles"
-        arg-set="-floor-texture ceiling-tiles"/>
-      <option id="floorTextureFractal1" _label="Fractal 1"
-        arg-set="-floor-texture fractal-1"/>
-      <option id="floorTextureFractal2" _label="Fractal 2"
-        arg-set="-floor-texture fractal-2"/>
-      <option id="floorTextureFractal3" _label="Fractal 3"
-        arg-set="-floor-texture fractal-3"/>
-      <option id="floorTextureFractal4" _label="Fractal 4"
-        arg-set="-floor-texture fractal-4"/>
-    </select>
-    <boolean id="dropAcidFloor" _label="Drop acid"
-      arg-set="-drop-acid-floor"/>
-  </hgroup>
-
-  <hgroup>
-    <file id="ceilingTextureFile" _label="Ceiling Texture"
-      arg="-ceiling-texture %"/>
-    <select id="ceilingTextureSelect">
-      <option id="ceilingTextureCeilingTiles" _label="Ceiling Tiles"/>
-      <option id="ceilingTextureBrickWall" _label="Brick Wall"
-        arg-set="-ceiling-texture brick-wall"/>
-      <option id="ceilingTextureWoodFloor" _label="Wood Floor"
-        arg-set="-ceiling-texture wood-floor"/>
-      <option id="ceilingTextureFractal1" _label="Fractal 1"
-        arg-set="-ceiling-texture fractal-1"/>
-      <option id="ceilingTextureFractal2" _label="Fractal 2"
-        arg-set="-ceiling-texture fractal-2"/>
-      <option id="ceilingTextureFractal3" _label="Fractal 3"
-        arg-set="-ceiling-texture fractal-3"/>
-      <option id="ceilingTextureFractal4" _label="Fractal 4"
-        arg-set="-ceiling-texture fractal-4"/>
-    </select>
-    <boolean id="dropAcidCeiling" _label="Drop acid"
-      arg-set="-drop-acid-ceiling"/>
-  </hgroup>
--->
-
   <hgroup>
     <number id="numInverters" type="spinbutton"
-      arg="-inverters %" _label="Inverters" low="0"
+      arg="--inverters %" _label="Inverters" low="0"
       high="100" default="10"/>
     <number id="numRats" type="spinbutton"
-      arg="-rats %" _label="Rats" low="0" high="100"
+      arg="--rats %" _label="Rats" low="0" high="100"
       default="1"/>
-
-<!--
-    <vgroup>
-      <number id="numGl3dTexts" type="spinbutton"
-        arg="-gl-3d-texts %" _label="OpenGL"
-        low="0" high="100" default="3"/>
-      <number id="numGlRedbooks" type="spinbutton"
-        arg="-gl-redbooks %" _label="Redbooks"
-        low="0" high="100" default="3"/>
-    </vgroup>
--->
   </hgroup>
 
   <xscreensaver-updater />
index ef705527272ed70f60d23af76aa2cee7620019ae..4db5e908557c3b483f804279a6a1c29ea6de8b8d 100644 (file)
@@ -2,11 +2,11 @@
 
 <screensaver name="memscroller" _label="Mem Scroller">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=DQJRNlTKCdA"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="10000"
           convert="invert"/>
   <hgroup>
    <select id="seedMode">
      <option id="ram"    _label="Dump memory"/>
-     <option id="random" _label="Draw random numbers" arg-set="-random"/>
+     <option id="random" _label="Draw random numbers" arg-set="--random"/>
    </select>
 
    <select id="drawMode">
      <option id="color" _label="Draw in RGB"/>
-     <option id="mono"  _label="Draw green" arg-set="-mono"/>
+     <option id="mono"  _label="Draw green" arg-set="--mono"/>
    </select>
   </hgroup>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index b3bfba07235d78b5c51524983bd00fee0b53636e..5d05168460ef8d1ac059ff8bcc540f424fa8b2de 100644 (file)
@@ -2,40 +2,38 @@
 
 <screensaver name="menger" _label="Menger" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=qpnuNJH9cLw"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="30000"
           convert="invert"/>
 
-  <number id="descent" type="slider" arg="-speed %"
+  <number id="descent" type="slider" arg="--speed %"
           _label="Duration" _low-label="Short" _high-label="Long"
           low="2" high="500" default="150"
           convert="invert"/>
 
-  <number id="depth" type="spinbutton" arg="-depth %"
+  <number id="depth" type="spinbutton" arg="--depth %"
           _label="Max depth" low="1" high="6" default="3"/>
 
-  <!-- #### -no-optimize -->
-
-  <boolean id="wander" _label="Wander" arg-unset="-no-wander"/>
+  <boolean id="wander" _label="Wander" arg-unset="--no-wander"/>
 
   <select id="rotation">
-    <option id="no"  _label="Don't rotate"               arg-set="-spin 0"/>
-    <option id="x"   _label="Rotate around X axis"       arg-set="-spin X"/>
-    <option id="y"   _label="Rotate around Y axis"       arg-set="-spin Y"/>
-    <option id="z"   _label="Rotate around Z axis"       arg-set="-spin Z"/>
-    <option id="xy"  _label="Rotate around X and Y axes" arg-set="-spin XY"/>
-    <option id="xz"  _label="Rotate around X and Z axes" arg-set="-spin XZ"/>
-    <option id="yz"  _label="Rotate around Y and Z axes" arg-set="-spin YZ"/>
+    <option id="no"  _label="Don't rotate"               arg-set="--spin 0"/>
+    <option id="x"   _label="Rotate around X axis"       arg-set="--spin X"/>
+    <option id="y"   _label="Rotate around Y axis"       arg-set="--spin Y"/>
+    <option id="z"   _label="Rotate around Z axis"       arg-set="--spin Z"/>
+    <option id="xy"  _label="Rotate around X and Y axes" arg-set="--spin XY"/>
+    <option id="xz"  _label="Rotate around X and Z axes" arg-set="--spin XZ"/>
+    <option id="yz"  _label="Rotate around Y and Z axes" arg-set="--spin YZ"/>
     <option id="xyz" _label="Rotate around all three axes"/>
   </select>
 
-  <boolean id="wire"    _label="Wireframe"              arg-set="-wireframe"/>
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="wire"    _label="Wireframe"              arg-set="--wireframe"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 5b73beb744a577557e43c7ca22f359b39838878a..ff51e266ff058e32097c3a422b5df12349a734fc 100644 (file)
@@ -2,44 +2,42 @@
 
 <screensaver name="metaballs" _label="Meta Balls">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=wcdKHCp9foY"/>
 
- <!-- #### -color [random] -->
-
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="10000"
             convert="invert"/>
 
-    <number id="cycles" type="slider" arg="-cycles %"
+    <number id="cycles" type="slider" arg="--cycles %"
              _label="Duration" _low-label="Short" _high-label="Long"
             low="100" high="3000" default="1000"/>
 
-    <number id="ncolors" type="slider" arg="-ncolors %"
+    <number id="ncolors" type="slider" arg="--ncolors %"
               _label="Number of colors" _low-label="Two" _high-label="Many"
               low="2" high="256" default="256"/>
 
    </vgroup>
    <vgroup>
 
-    <number id="count" type="slider" arg="-count %"
+    <number id="count" type="slider" arg="--count %"
             _label="Ball count" _low-label="Two" _high-label="Many"
             low="2" high="255" default="10"/>
 
-    <number id="radius" type="slider" arg="-radius %"
+    <number id="radius" type="slider" arg="--radius %"
             _label="Ball Radius" _low-label="Small" _high-label="Big" low="2" high="100" default="100"/>
 
-    <number id="delta" type="slider" arg="-delta %"
+    <number id="delta" type="slider" arg="--delta %"
             _label="Ball Movement" _low-label="Small" _high-label="Big" low="1" high="20" default="3"/>
 
    </vgroup>
   </hgroup>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 9b1a54ad1814660d3f254024afcec6c9f912a0cc..2073d1a80497736737a2a952fb635632b642d238 100644 (file)
@@ -2,43 +2,43 @@
 
 <screensaver name="mirrorblob" _label="Mirror Blob" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=o4GTO18KHe8"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="10000"
             convert="invert"/>
 
-    <number id="zoom" type="slider" arg="-zoom %"
+    <number id="zoom" type="slider" arg="--zoom %"
             _label="Zoom"
             _low-label="0.1x" _high-label="3.0x"
             low="0.1" high="3.0" default="1.0"
             convert="ratio"/>
 
-    <number id="hold_time" type="slider" arg="-hold-time %"
+    <number id="hold_time" type="slider" arg="--hold-time %"
             _label="Time until loading a new image"
             _low-label="5 sec" _high-label="5 min"
             low="5.0" high="300.0" default="30.0"/>
 
-    <number id="fade_speed" type="slider" arg="-fade-time %"
+    <number id="fade_speed" type="slider" arg="--fade-time %"
             _label="Transition duration"
             _low-label="None" _high-label="30 sec"
             low="0.0" high="30.0" default="5.0"/>
    </vgroup>
    <vgroup>
-    <number id="resolution" type="slider" arg="-resolution %"
+    <number id="resolution" type="slider" arg="--resolution %"
              _low-label="Low" _high-label="High"
              _label="Resolution" low="4" high="50" default="30"/>
 
-    <number id="bumps" type="slider" arg="-bumps %"
+    <number id="bumps" type="slider" arg="--bumps %"
             _low-label="None" _high-label="50 bumps"
             _label="Bumps" low="0" high="50" default="10"/>
 
-    <number id="blend" type="slider" arg="-blend %"
+    <number id="blend" type="slider" arg="--blend %"
             _low-label="Clear" _high-label="Opaque"
             _label="Transparency" low="0.1" high="1.0" default="1.0"/>
    </vgroup>
 
    <hgroup>
    <vgroup>
-  <boolean id="walls" _label="Enable walls" arg-set="-walls"/>
-  <boolean id="colour" _label="Enable colouring" arg-set="-colour"/>
-  <boolean id="texture" _label="Enable reflected image" arg-unset="-no-texture"/>
+  <boolean id="walls" _label="Enable walls" arg-set="--walls"/>
+  <boolean id="colour" _label="Enable colouring" arg-set="--colour"/>
+  <boolean id="texture" _label="Enable reflected image" arg-unset="--no-texture"/>
    </vgroup>
    <vgroup>
-  <boolean id="backgound" _label="Show image on background" arg-unset="-no-paint-background"/>
-  <boolean id="offset_texture" _label="Offset texture coordinates" arg-set="-offset-texture"/>
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="backgound" _label="Show image on background" arg-unset="--no-paint-background"/>
+  <boolean id="offset_texture" _label="Offset texture coordinates" arg-set="--offset-texture"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
    </vgroup>
 
    <vgroup>
     <select id="render">
-        <option id="wire"  _label="Wireframe" arg-set="-wire"/>
+        <option id="wire"  _label="Wireframe" arg-set="--wire"/>
         <option id="solid" _label="Solid surface"/>
     </select>
    </vgroup>
index 02a258f4694a04fc9ad2608bd859b0afba03c31b..cc784a916a8c78c33b430af6781e6e4cd41f4a75 100644 (file)
@@ -2,29 +2,29 @@
 
 <screensaver name="mismunch" _label="Mismunch">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=aXNIYpdh8Ug"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="10000"
           convert="invert"/>
 
-  <number id="duration" type="slider" arg="-clear %"
+  <number id="duration" type="slider" arg="--clear %"
           _label="Duration" _low-label="Short" _high-label="Long"
           low="1" high="200" default="65"/>
 
-  <number id="simultaneous" type="slider" arg="-simul %"
+  <number id="simultaneous" type="slider" arg="--simul %"
           _label="Simultaneous squares" _low-label="One" _high-label="Many"
           low="1" high="20" default="5"/>
 
   <select id="mode">
     <option id="xor"   _label="XOR"/>
-    <option id="solid" _label="Solid" arg-set="-no-xor"/>
+    <option id="solid" _label="Solid" arg-set="--no-xor"/>
   </select>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 1df5a762733736dc0f884f476a6d6e2b0f6f877d..2aff88aeefb488a736a0879b55af6a66cb424c0f 100644 (file)
@@ -2,18 +2,18 @@
 
 <screensaver name="moebius" _label="Möbius" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=77Nib6jQrXc"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="20000"
           convert="invert"/>
 
-  <boolean id="solid" _label="Solid floor" arg-set="-solidmoebius"/>
-  <boolean id="ants" _label="Draw ants" arg-unset="-no-ants"/>
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="solid" _label="Solid floor" arg-set="--solidmoebius"/>
+  <boolean id="ants" _label="Draw ants" arg-unset="--no-ants"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index ce3875365af2ec6e749092d70139668896b46f8f..849d93636a009483640fea11f693640285e5380f 100644 (file)
@@ -2,36 +2,36 @@
 
 <screensaver name="moebiusgears" _label="Möbius Gears" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=kpT6j2-9b40"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="30000"
           convert="invert"/>
 
-  <number id="speed" type="slider" arg="-speed %"
+  <number id="speed" type="slider" arg="--speed %"
           _label="Speed" _low-label="Slow" _high-label="Fast"
           low="0.01" high="5.0" default="1.0"
           convert="ratio"/>
 
   <hgroup>
-  <number id="count" type="spinbutton" arg="-count %"
+  <number id="count" type="spinbutton" arg="--count %"
           _label="Number of gears" low="13" high="99" default="17"/>
 
-  <number id="teeth" type="spinbutton" arg="-teeth %"
+  <number id="teeth" type="spinbutton" arg="--teeth %"
           _label="Number of teeth" low="7" high="49" default="15"/>
   </hgroup>
 
   <hgroup>
-   <boolean id="wander" _label="Wander"    arg-unset="-no-wander"/>
-   <boolean id="spin"   _label="Spin"      arg-unset="-no-spin"/>
-   <boolean id="roll"   _label="Roll"      arg-unset="-no-roll"/>
-   <boolean id="wire"   _label="Wireframe" arg-set="-wireframe"/>
+   <boolean id="wander" _label="Wander"    arg-unset="--no-wander"/>
+   <boolean id="spin"   _label="Spin"      arg-unset="--no-spin"/>
+   <boolean id="roll"   _label="Roll"      arg-unset="--no-roll"/>
+   <boolean id="wire"   _label="Wireframe" arg-set="--wireframe"/>
   </hgroup>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 49708327aebac17de83ab6a75e4bf26b46036a47..4badb5cdcf79a239b0523d5456d7f21665a97970 100644 (file)
@@ -2,27 +2,23 @@
 
 <screensaver name="moire" _label="Moiré">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=S50zFVcUe4s"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Duration" _low-label="1 second" _high-label="1 minute"
           low="1" high="60" default="5"/>
 
-  <number id="ncolors" type="slider" arg="-ncolors %"
+  <number id="ncolors" type="slider" arg="--ncolors %"
             _label="Number of colors" _low-label="Two" _high-label="Many"
             low="1" high="255" default="64"/>
 
-  <number id="offset" type="slider" arg="-offset %"
+  <number id="offset" type="slider" arg="--offset %"
             _label="Offset" _low-label="Small" _high-label="Large"
             low="1" high="200" default="50"/>
 
-  <!-- #### -no-random -->
-
-<!--  <boolean id="shm" _label="Use shared memory" arg-unset="-no-shm"/> -->
-
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 8b244ebf8a518fb9efd108deee8d701ce07a2461..47c2c068a5f9a83b5193b907d7162dd77dd35239 100644 (file)
@@ -2,23 +2,23 @@
 
 <screensaver name="moire2" _label="Moiré 2">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=7iBNbYCo8so"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="50000"
           convert="invert"/>
 
-  <number id="ncolors" type="slider" arg="-ncolors %"
+  <number id="ncolors" type="slider" arg="--ncolors %"
             _label="Number of colors" _low-label="Two" _high-label="Many"
             low="1" high="255" default="150"/>
 
-  <number id="thickness" type="spinbutton" arg="-thickness %"
+  <number id="thickness" type="spinbutton" arg="--thickness %"
             _label="Thickness" low="0" high="100" default="0"/>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index fe1129bedd992f694e2379cdcb4f714c8243ce08..6c52962fa67f4786ef71c161b7319721d1827578 100644 (file)
@@ -2,50 +2,50 @@
 
 <screensaver name="molecule" _label="Molecule" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=D1A0tNcPL4M"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="10000"
           convert="invert"/>
 
-  <number id="timeout" type="slider" arg="-timeout %"
+  <number id="timeout" type="slider" arg="--timeout %"
           _label="Duration" _low-label="5 seconds" _high-label="2 minutes"
           low="5" high="120" default="20"/>
 
   <hgroup>
    <vgroup>
-    <boolean id="labels" _label="Label atoms" arg-unset="-no-labels"/>
-    <boolean id="titles" _label="Describe molecule" arg-unset="-no-titles"/>
-    <boolean id="bbox"   _label="Draw bounding box" arg-set="-bbox"/>
-    <boolean id="wire"    _label="Wireframe"              arg-set="-wireframe"/>
+    <boolean id="labels" _label="Label atoms" arg-unset="--no-labels"/>
+    <boolean id="titles" _label="Describe molecule" arg-unset="--no-titles"/>
+    <boolean id="bbox"   _label="Draw bounding box" arg-set="--bbox"/>
+    <boolean id="wire"    _label="Wireframe"              arg-set="--wireframe"/>
    </vgroup>
    <vgroup>
-    <boolean id="atoms"  _label="Draw atomic nuclei" arg-unset="-no-atoms"/>
-    <boolean id="bonds"  _label="Draw atomic bonds" arg-unset="-no-bonds"/>
-    <boolean id="shells" _label="Draw electron shells" arg-unset="-no-shells"/>
-    <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+    <boolean id="atoms"  _label="Draw atomic nuclei" arg-unset="--no-atoms"/>
+    <boolean id="bonds"  _label="Draw atomic bonds" arg-unset="--no-bonds"/>
+    <boolean id="shells" _label="Draw electron shells" arg-unset="--no-shells"/>
+    <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
    </vgroup>
   </hgroup>
 
   <hgroup>
-   <boolean id="wander" _label="Wander" arg-set="-wander"/>
+   <boolean id="wander" _label="Wander" arg-set="--wander"/>
 
    <select id="rotation">
-    <option id="no"  _label="Don't rotate"               arg-set="-spin 0"/>
-    <option id="x"   _label="Rotate around X axis"       arg-set="-spin X"/>
-    <option id="y"   _label="Rotate around Y axis"       arg-set="-spin Y"/>
-    <option id="z"   _label="Rotate around Z axis"       arg-set="-spin Z"/>
-    <option id="xy"  _label="Rotate around X and Y axes" arg-set="-spin XY"/>
-    <option id="xz"  _label="Rotate around X and Z axes" arg-set="-spin XZ"/>
-    <option id="yz"  _label="Rotate around Y and Z axes" arg-set="-spin YZ"/>
+    <option id="no"  _label="Don't rotate"               arg-set="--spin 0"/>
+    <option id="x"   _label="Rotate around X axis"       arg-set="--spin X"/>
+    <option id="y"   _label="Rotate around Y axis"       arg-set="--spin Y"/>
+    <option id="z"   _label="Rotate around Z axis"       arg-set="--spin Z"/>
+    <option id="xy"  _label="Rotate around X and Y axes" arg-set="--spin XY"/>
+    <option id="xz"  _label="Rotate around X and Z axes" arg-set="--spin XZ"/>
+    <option id="yz"  _label="Rotate around Y and Z axes" arg-set="--spin YZ"/>
     <option id="xyz" _label="Rotate around all three axes"/>
    </select>
   </hgroup>
 
-  <file id="molecule" _label="PDB file or directory" arg="-molecule %"/>
+  <file id="molecule" _label="PDB file or directory" arg="--molecule %"/>
 
   <xscreensaver-updater />
 
index 31e138d875a7f51d0853e68617016e845a9535ae..de6731e8b812569c3d8a07133da0339fa4d9e824 100644 (file)
@@ -2,25 +2,25 @@
 
 <screensaver name="morph3d" _label="Morph 3D" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=lNtDppjOli4"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="40000"
           convert="invert"/>
 
   <select id="object">
    <option id="random" _label="Random object"/>
-   <option id="tetra"  _label="Tetrahedron"  arg-set="-count 1"/>
-   <option id="cube"   _label="Cube"         arg-set="-count 2"/>
-   <option id="octa"   _label="Octahedron"   arg-set="-count 3"/>
-   <option id="dodeca" _label="Dodecahedron" arg-set="-count 4"/>
-   <option id="icosa"  _label="Icosahedron"  arg-set="-count 5"/>
+   <option id="tetra"  _label="Tetrahedron"  arg-set="--count 1"/>
+   <option id="cube"   _label="Cube"         arg-set="--count 2"/>
+   <option id="octa"   _label="Octahedron"   arg-set="--count 3"/>
+   <option id="dodeca" _label="Dodecahedron" arg-set="--count 4"/>
+   <option id="icosa"  _label="Icosahedron"  arg-set="--count 5"/>
   </select>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index a7c44661e149453d51c87f2549905b7028af0474..e72cc7e8aa9e4532587393c32262667d63e867ca 100644 (file)
@@ -2,24 +2,24 @@
 
 <screensaver name="mountain" _label="Mountain">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=knqnPcZGqkA"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="20000"
           convert="invert"/>
 
-  <number id="count" type="slider" arg="-count %"
+  <number id="count" type="slider" arg="--count %"
           _label="Peaks" _low-label="One" _high-label="Lots"
           low="1" high="100" default="30"/>
 
-  <number id="ncolors" type="slider" arg="-ncolors %"
+  <number id="ncolors" type="slider" arg="--ncolors %"
             _label="Number of colors" _low-label="Two" _high-label="Many"
             low="1" high="255" default="64"/>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index aed4014cab961f1487011502cefecabb917facd4..0a0ecd959697fb7d4c88ede09d21a05ce3cc5954 100644 (file)
@@ -2,38 +2,38 @@
 
 <screensaver name="munch" _label="Munch">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=aXNIYpdh8Ug"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="10000"
             convert="invert"/>
 
-    <number id="duration" type="slider" arg="-clear %"
+    <number id="duration" type="slider" arg="--clear %"
             _label="Duration" _low-label="Short" _high-label="Long"
             low="1" high="200" default="65"/>
 
-    <number id="simultaneous" type="slider" arg="-simul %"
+    <number id="simultaneous" type="slider" arg="--simul %"
             _label="Simultaneous squares" _low-label="One" _high-label="Many"
             low="1" high="20" default="5"/>
    </vgroup>
    <vgroup>
     <select id="mismunch">
       <option id="random"   _label="Munch or mismunch"/>
-      <option id="munch"    _label="Munch only"    arg-set="-classic"/>
-      <option id="mismunch" _label="Mismunch only" arg-set="-mismunch"/>
+      <option id="munch"    _label="Munch only"    arg-set="--classic"/>
+      <option id="mismunch" _label="Mismunch only" arg-set="--mismunch"/>
     </select>
 
     <select id="mode">
       <option id="xor"   _label="XOR"/>
-      <option id="solid" _label="Solid" arg-set="-no-xor"/>
+      <option id="solid" _label="Solid" arg-set="--no-xor"/>
     </select>
 
-    <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+    <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
     <xscreensaver-updater />
 
index 2d82b45eef4714cea59c90b9e9096edb2c6a760b..06eaa442378a52f7c8f4d097a16be2c402cb0149 100644 (file)
@@ -2,28 +2,28 @@
 
 <screensaver name="nakagin" _label="Nakagin" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=JRXglvnKb6A"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="30000"
             convert="invert"/>
 
-    <number id="speed" type="slider" arg="-speed %"
+    <number id="speed" type="slider" arg="--speed %"
             _label="Scrolling speed" _low-label="Slow" _high-label="Fast"
             low="0.01" high="8.0" default="1.0"
             convert="ratio"/>
 
     <hgroup>
-      <boolean id="spin"    _label="Spin"   arg-unset="-no-spin"/>
-      <boolean id="wander"  _label="Wander" arg-set="-wander"/>
-      <boolean id="tilt"    _label="Tilt"   arg-unset="-no-tilt"/>
-      <boolean id="wire"    _label="Wireframe" arg-set="-wireframe"/>
-      <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+      <boolean id="spin"    _label="Spin"   arg-unset="--no-spin"/>
+      <boolean id="wander"  _label="Wander" arg-set="--wander"/>
+      <boolean id="tilt"    _label="Tilt"   arg-unset="--no-tilt"/>
+      <boolean id="wire"    _label="Wireframe" arg-set="--wireframe"/>
+      <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
     </hgroup>
    </vgroup>
 
index 8a123bcb18fbd26592ecafe563de826c3946fc4b..5cffe908231d5e60a19a6a611cfcd595940aab81 100644 (file)
@@ -2,56 +2,50 @@
 
 <screensaver name="nerverot" _label="Nerve Rot">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=oUfgDnyGqHM"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="10000"
             convert="invert"/>
 
-    <number id="iters" type="slider" arg="-max-iters %"
+    <number id="iters" type="slider" arg="--max-iters %"
             _label="Duration" _low-label="Short" _high-label="Long"
             low="100" high="8000" default="1200"/>
 
-    <number id="count" type="slider" arg="-count %"
+    <number id="count" type="slider" arg="--count %"
             _label="Blot count" _low-label="Few" _high-label="Many"
             low="1" high="1000" default="250"/>
 
-    <number id="ncolors" type="slider" arg="-colors %"
+    <number id="ncolors" type="slider" arg="--colors %"
             _label="Colors" _low-label="Two" _high-label="Many"
             low="1" high="255" default="4"/>
    </vgroup>
    <vgroup>
-    <number id="event" type="slider" arg="-event-chance %"
+    <number id="event" type="slider" arg="--event-chance %"
             _label="Changes" _low-label="Seldom" _high-label="Frequent"
              low="0.0" high="1.0" default="0.2"/>
 
-    <number id="nervous" type="slider" arg="-nervousness %"
+    <number id="nervous" type="slider" arg="--nervousness %"
             _label="Nervousness" _low-label="Calm" _high-label="Spastic"
              low="0.0" high="1.0" default="0.3"/>
 
-    <number id="mnr" type="slider" arg="-max-nerve-radius %"
+    <number id="mnr" type="slider" arg="--max-nerve-radius %"
             _label="Crunchiness" _low-label="Low" _high-label="High"
              low="0.0" high="1.0" default="0.7"/>
 
-    <number id="linewidth" type="spinbutton" arg="-line-width %"
+    <number id="linewidth" type="spinbutton" arg="--line-width %"
             _label="Line thickness" low="0" high="100" default="0"/>
 
-    <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+    <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
    </vgroup>
   </hgroup>
 
-  <!-- #### -iter-amt [0.01] -->
-  <!-- #### -min-scale [0.6] -->
-  <!-- #### -max-scale [1.75] -->
-  <!-- #### -min-radius [3] -->
-  <!-- #### -max-radius [25] -->
-
   <xscreensaver-updater />
 
   <_description>
index 3e2b0fc768a43509e1584a3c68efc727968b4f60..e08816aa86ec34d16f29ecf24e67c6e5c6206298 100644 (file)
@@ -2,16 +2,16 @@
 
 <screensaver name="noof" _label="Noof" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=x5DQjgYqmn0"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="10000"
           convert="invert"/>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index c2e82e510d5d1db9e1662aa21df76cdc065d2537..77637ea02193ee89cf9e61bc053280fbf3c41d52 100644 (file)
@@ -2,12 +2,12 @@
 
 <screensaver name="noseguy" _label="Nose Guy">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=ONJlg9Y_TLI"/>
 
   <xscreensaver-text />
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 77e63e40f5d4244f421396d32064353369b5ecf4..859177d2a26f29134658ee6df59d1eb547b1a01e 100644 (file)
@@ -2,19 +2,19 @@
 
 <screensaver name="pacman" _label="Pac-Man">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=G-pdjis0ECw"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="10000"
           convert="invert"/>
 
-  <number id="size" type="spinbutton" arg="-size %"
+  <number id="size" type="spinbutton" arg="--size %"
            _label="Player size" low="0" high="200" default="0"/>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 5ddb6e13c91a5d064f9b11b732e786947d3ae758..8ee6e0b824440eea6cef23054fb880b3940851a8 100644 (file)
@@ -2,23 +2,19 @@
 
 <screensaver name="pedal" _label="Pedal">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=VFibXcP1JH0"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Duration" _low-label="1 second" _high-label="1 minute"
           low="1" high="60" default="5"/>
 
-  <number id="lines" type="slider" arg="-maxlines %"
+  <number id="lines" type="slider" arg="--maxlines %"
           _label="Lines" _low-label="Few" _high-label="Many"
           low="100" high="5000" default="1000"/>
 
-  <!-- #### -fadedelay [200000] -->
-  <!-- #### -foreground [white] -->
-  <!-- #### -background [black] -->
-
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index bd65268605ee9d631e92b33511b6d68a2be486b7..e628ceb69d04cfe2ceefce69bad3253f316521f3 100644 (file)
@@ -2,23 +2,23 @@
 
 <screensaver name="peepers" _label="Peepers" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=9xwPoLRKff8"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="30000"
             convert="invert"/>
 
-    <number id="speed" type="slider" arg="-speed %"
+    <number id="speed" type="slider" arg="--speed %"
             _label="Speed" _low-label="Slow" _high-label="Fast"
             low="0.05" high="2.0" default="1.0"
             convert="ratio"/>
 
-    <number id="count" type="slider" arg="-count %"
+    <number id="count" type="slider" arg="--count %"
             _label="Number of eyes" _low-label="Few" _high-label="Many"
             low="0" high="50" default="0"/>
    </vgroup>
    <vgroup>
 
     <select id="mode">
-     <option id="bounce"    _label="Bounce" arg-set="-mode bounce"/>
-     <option id="scroll"    _label="Scroll" arg-set="-mode scroll"/>
+     <option id="bounce"    _label="Bounce" arg-set="--mode bounce"/>
+     <option id="scroll"    _label="Scroll" arg-set="--mode scroll"/>
      <option id="random"    _label="Bounce or scroll"/>
-     <option id="xeyes"     _label="Grid" arg-set="-mode xeyes"/>
-     <option id="beholder"  _label="Beholder" arg-set="-mode beholder"/>
+     <option id="xeyes"     _label="Grid" arg-set="--mode xeyes"/>
+     <option id="beholder"  _label="Beholder" arg-set="--mode beholder"/>
     </select>
 
-    <boolean id="wire"    _label="Wireframe" arg-set="-wireframe"/>
-    <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+    <boolean id="wire"    _label="Wireframe" arg-set="--wireframe"/>
+    <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
     <xscreensaver-updater />
    </vgroup>
index a7f6de945f2591167c690aff9a6a337e6cb1eacb..e227f773bfd0ebea4a0859cb984383ba581a440f 100644 (file)
@@ -2,25 +2,25 @@
 
 <screensaver name="penetrate" _label="Penetrate">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=iuutzMOVYgI"/>
 
-  <number id="bgrowth" type="slider" arg="-bgrowth %"
+  <number id="bgrowth" type="slider" arg="--bgrowth %"
           _label="Explosions" _low-label="Slow" _high-label="Fast"
           low="1" high="20" default="5"/>
 
-  <number id="lrate" type="slider" arg="-lrate %"
+  <number id="lrate" type="slider" arg="--lrate %"
           _label="Lasers" _low-label="Slow" _high-label="Fast"
           low="10" high="200" default="80"
           convert="invert"/>
 
   <select id="mode">
     <option id="dumb"  _label="Start badly, but learn"/>
-    <option id="smart" _label="Always play well" arg-set="-smart"/>
+    <option id="smart" _label="Always play well" arg-set="--smart"/>
   </select>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index aa70323b9c22f61d30833b2680995a8622b57a11..ad186628e885accad0dc85ef77538782b868a8b4 100644 (file)
@@ -2,28 +2,28 @@
 
 <screensaver name="penrose" _label="Penrose">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=atlkrWkbYHk"/>
 
    <hgroup>
     <vgroup>
-     <number id="delay" type="slider" arg="-delay %"
+     <number id="delay" type="slider" arg="--delay %"
              _label="Frame rate" _low-label="Low" _high-label="High"
              low="0" high="100000" default="10000"
              convert="invert"/>
 
-     <number id="ncolors" type="slider" arg="-ncolors %"
+     <number id="ncolors" type="slider" arg="--ncolors %"
                _label="Number of colors" _low-label="Two" _high-label="Many"
                low="1" high="255" default="64"/>
     </vgroup>
     <vgroup>
-     <number id="size" type="slider" arg="-size %"
+     <number id="size" type="slider" arg="--size %"
               _label="Tile size" _low-label="Small" _high-label="Large"
               low="1" high="100" default="40"/>
 
-     <boolean id="ammann" _label="Draw ammann lines" arg-set="-ammann"/>
-     <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+     <boolean id="ammann" _label="Draw ammann lines" arg-set="--ammann"/>
+     <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
     </vgroup>
    </hgroup>
   
index eff93738f7bfeb7ad4ee778c70369ebe90ef7aba..483719584e0169117cae4ae0cd4f5244ec74b3ae 100644 (file)
@@ -2,76 +2,74 @@
 
 <screensaver name="petri" _label="Petri">
 
- <command arg="-root"/>
+ <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=QkJ9cN0QQd8"/>
 
  <hgroup>
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="10000"
           convert="invert"/>
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
  </hgroup>
 
  <hgroup>
   <vgroup>
-   <number id="diaglim" type="slider" arg="-diaglim %"
+   <number id="diaglim" type="slider" arg="--diaglim %"
            _label="Colony shape" _low-label="Square" _high-label="Diamond"
            low="1.0" high="2.0" default="1.414"
            convert="invert"/>
 
-   <number id="anychan" type="slider" arg="-anychan %"
+   <number id="anychan" type="slider" arg="--anychan %"
            _label="Fertility" _low-label="Low" _high-label="High"
            low="0.0" high="0.25" default="0.0015"/>
 
-   <number id="minorchan" type="slider" arg="-minorchan %"
+   <number id="minorchan" type="slider" arg="--minorchan %"
            _label="Offspring" _low-label="Few" _high-label="Many"
            low="0.0" high="1.0" default="0.5"/>
 
-   <number id="instantdeathchan" type="slider" arg="-instantdeathchan %"
+   <number id="instantdeathchan" type="slider" arg="--instantdeathchan %"
            _label="Death comes" _low-label="Slowly" _high-label="Quickly"
            low="0.0" high="1.0" default="0.2"/>
   </vgroup>
 
   <vgroup>
-   <number id="minlifespeed" type="slider" arg="-minlifespeed %"
+   <number id="minlifespeed" type="slider" arg="--minlifespeed %"
            _label="Minimum rate of growth" _low-label="Slow" _high-label="Fast"
            low="0.0" high="1.0" default="0.04"/>
 
-   <number id="maxlifespeed" type="slider" arg="-maxlifespeed %"
+   <number id="maxlifespeed" type="slider" arg="--maxlifespeed %"
            _label="Maximum rate of growth" _low-label="Slow" _high-label="Fast"
            low="0.0" high="1.0" default="0.13"/>
 
-   <number id="mindeathspeed" type="slider" arg="-mindeathspeed %"
+   <number id="mindeathspeed" type="slider" arg="--mindeathspeed %"
            _label="Minimum rate of death" _low-label="Slow" _high-label="Fast"
            low="0.0" high="1.0" default="0.42"/>
 
-   <number id="maxdeathspeed" type="slider" arg="-maxdeathspeed %"
+   <number id="maxdeathspeed" type="slider" arg="--maxdeathspeed %"
            _label="Maximum rate of death" _low-label="Slow" _high-label="Fast"
            low="0.0" high="1.0" default="0.46"/>
   </vgroup>
 
   <vgroup>
-   <number id="minlifespan" type="slider" arg="-minlifespan %"
+   <number id="minlifespan" type="slider" arg="--minlifespan %"
            _label="Minimum lifespan" _low-label="Short" _high-label="Long"
            low="0" high="3000" default="500"/>
 
-   <number id="maxlifespan" type="slider" arg="-maxlifespan %"
+   <number id="maxlifespan" type="slider" arg="--maxlifespan %"
            _label="Maximum lifespan" _low-label="Short" _high-label="Long"
            low="0" high="3000" default="1500"/>
 
-   <number id="size" type="spinbutton" arg="-size %"
+   <number id="size" type="spinbutton" arg="--size %"
              _label="Cell size" low="0" high="100" default="2"/>
 
-   <number id="count" type="spinbutton" arg="-count %"
+   <number id="count" type="spinbutton" arg="--count %"
            _label="Mold varieties" low="0" high="20" default="20"/>
 
   </vgroup>
  </hgroup>
 
-  <!-- #### -mem-throttle [22M] -->
-
   <xscreensaver-updater />
 
   <_description>
index 484cf886dfa90826bcabff98d8d44eb8573f59fa..90cf9364f00ee89a87638926bb886573903af7c1 100644 (file)
@@ -2,21 +2,21 @@
 
 <screensaver name="phosphor" _label="Phosphor">
 
- <command arg="-root"/>
+ <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=G6ZWTrl7pV0"/>
 
  <hgroup>
   <vgroup>
-   <number id="delay" type="slider" arg="-delay %"
+   <number id="delay" type="slider" arg="--delay %"
            _label="Frame rate" _low-label="Low" _high-label="High"
            low="0" high="100000" default="50000"
            convert="invert"/>
 
-   <number id="scale" type="spinbutton" arg="-scale %"
+   <number id="scale" type="spinbutton" arg="--scale %"
            _label="Font scale" low="1" high="20" default="6"/>
 
-   <number id="fade" type="slider" arg="-ticks %"
+   <number id="fade" type="slider" arg="--ticks %"
            _label="Fade" _low-label="Slow" _high-label="Fast"
            low="1" high="100" default="20"
            convert="invert"/>
    <select id="fg">
     <option id="green" _label="Green" />
     <!-- DarkOrange is probably the closest named color. -->
-    <option id="DarkOrange" _label="Amber" arg-set="-fg #ff7900" />
-    <option id="white" _label="White" arg-set="-fg white" />
+    <option id="DarkOrange" _label="Amber" arg-set="--fg #ff7900" />
+    <option id="white" _label="White" arg-set="--fg white" />
    </select>
 
-   <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+   <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
   </vgroup>
   <vgroup>
    <xscreensaver-text />
index f360d63e4257e71e43ce81c9acd27aa5e5f9c7bc..28f48bed29f8863d04813d11cd699619478f50db 100644 (file)
@@ -2,53 +2,53 @@
 
 <screensaver name="photopile" _label="Photo Pile" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=snm7o95AR8E"/>
 
   <hgroup>
    <vgroup>
 
-    <number id="scale" type="slider" arg="-scale %"
+    <number id="scale" type="slider" arg="--scale %"
             _label="Image size"
             _low-label="Small" _high-label="Large"
             low="0.1" high="0.9" default="0.4"/>
 
-    <number id="tilt" type="slider" arg="-maxTilt %"
+    <number id="tilt" type="slider" arg="--maxTilt %"
             _label="Maximum angle from vertical"
             _low-label="0 deg" _high-label="90 deg"
             low="0" high="90" default="50"/>
 
-    <number id="count" type="spinbutton" arg="-count %"
+    <number id="count" type="spinbutton" arg="--count %"
             _label="Number of images" low="1" high="20" default="7"/>
 
-    <boolean id="polaroid" _label="Simulate instant film" arg-unset="-no-polaroid"/>
+    <boolean id="polaroid" _label="Simulate instant film" arg-unset="--no-polaroid"/>
 
-    <boolean id="clip" _label="Instant film theme" arg-unset="-no-clip"/>
+    <boolean id="clip" _label="Instant film theme" arg-unset="--no-clip"/>
 
-    <boolean id="shadows" _label="Draw drop shadows" arg-unset="-no-shadows"/>
+    <boolean id="shadows" _label="Draw drop shadows" arg-unset="--no-shadows"/>
 
    </vgroup>
    <vgroup>
 
-    <number id="speed" type="slider" arg="-speed %"
+    <number id="speed" type="slider" arg="--speed %"
             _label="Animation speed" _low-label="Slow" _high-label="Fast"
             low="0.1" high="8.0" default="1.0"
             convert="ratio"/>
 
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="10000"
             convert="invert"/>
 
-    <number id="duration" type="slider" arg="-duration %"
+    <number id="duration" type="slider" arg="--duration %"
             _label="Time until loading a new image"
             _low-label="Short" _high-label="Long"
             low="1" high="60" default="5"/>
 
-    <boolean id="titles" _label="Show file names" arg-unset="-no-titles"/>
+    <boolean id="titles" _label="Show file names" arg-unset="--no-titles"/>
 
-    <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+    <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
    </vgroup>
   </hgroup>
index fb6990a99289a95b43916e33b9a81d81736a24c5..6ab50606e259ef62cd0a31b875b75cce9e0bd37a 100644 (file)
@@ -2,38 +2,38 @@
 
 <screensaver name="piecewise" _label="Piecewise">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=3gQr1FxFSe0"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="10000"
             convert="invert"/>
 
-    <number id="count" type="slider" arg="-count %"
+    <number id="count" type="slider" arg="--count %"
             _label="Count" _low-label="Few" _high-label="Many"
             low="4" high="100" default="32"/>
 
-    <number id="colorspeed" type="slider" arg="-colorspeed %"
+    <number id="colorspeed" type="slider" arg="--colorspeed %"
             _label="Color shift" _low-label="Slow" _high-label="Fast"
             low="0" high="100" default="10"/>
    </vgroup>
    <vgroup>
 
-    <number id="minradius" type="slider" arg="-minradius %"
+    <number id="minradius" type="slider" arg="--minradius %"
             _label="Minimum radius" _low-label="Small" _high-label="Large"
             low="0.01" high="0.5" default="0.05"/>
 
-    <number id="maxradius" type="slider" arg="-maxradius %"
+    <number id="maxradius" type="slider" arg="--maxradius %"
             _label="Maximum radius" _low-label="Small" _high-label="Large"
             low="0.01" high="0.5" default="0.2"/>
    </vgroup>
   </hgroup>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index de85f080407ddf056482f9357caf2934e1daf134..d290ff79cdaf37e1bbfb1976f5abb4544912e1c0 100644 (file)
@@ -2,40 +2,40 @@
 
 <screensaver name="pinion" _label="Pinion" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=rHY8dR1urQk"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="15000"
             convert="invert"/>
 
-    <number id="spin" type="slider" arg="-spin %"
+    <number id="spin" type="slider" arg="--spin %"
             _label="Rotation speed" _low-label="Slow" _high-label="Fast"
             low="0.1" high="7.0" default="1.0"
             convert="ratio"/>
 
-    <number id="scroll" type="slider" arg="-scroll %"
+    <number id="scroll" type="slider" arg="--scroll %"
             _label="Scrolling speed" _low-label="Slow" _high-label="Fast"
             low="0.1" high="8.0" default="1.0"
             convert="ratio"/>
 
    </vgroup>
    <vgroup>
-    <number id="size" type="slider" arg="-size %"
+    <number id="size" type="slider" arg="--size %"
             _label="Gear size" _low-label="Tiny" _high-label="Huge"
             low="0.1" high="3.0" default="1.0"
             convert="ratio"/>
 
-    <number id="max-rpm" type="slider" arg="-max-rpm %"
+    <number id="max-rpm" type="slider" arg="--max-rpm %"
             _label="Max RPM" _low-label="100" _high-label="2000"
             low="100" high="2000" default="900"/>
 
-    <boolean id="wire"    _label="Wireframe" arg-set="-wireframe"/>
-    <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+    <boolean id="wire"    _label="Wireframe" arg-set="--wireframe"/>
+    <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
    </vgroup>
   </hgroup>
 
index ba2deff690f853024baad075f67120dad9025371..5824966edfcc2dbfc705f083805d1a1007adaac7 100644 (file)
@@ -2,41 +2,41 @@
 
 <screensaver name="pipes" _label="Pipes" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=UsUGENa7jvE"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="10000"
           convert="invert"/>
 
-  <number id="cycles" type="slider" arg="-cycles %"
+  <number id="cycles" type="slider" arg="--cycles %"
           _label="Number of pipes" _low-label="One" _high-label="A hundred"
           low="1" high="100" default="5"/>
 
-  <number id="size" type="slider" arg="-size %"
+  <number id="size" type="slider" arg="--size %"
           _label="Pipe length" _low-label="Short" _high-label="Long"
           low="0" high="3000" default="500"/>
 
-  <number id="factory" type="slider" arg="-factory %"
+  <number id="factory" type="slider" arg="--factory %"
           _label="Gadgetry" _low-label="None" _high-label="Lots"
           low="0" high="10" default="2"/>
 
   <hgroup>
-   <boolean id="fisheye" _label="Fisheye lens" arg-unset="-no-fisheye"/>
-   <boolean id="tight"   _label="Allow tight turns" arg-set="-tightturns"/>
+   <boolean id="fisheye" _label="Fisheye lens" arg-unset="--no-fisheye"/>
+   <boolean id="tight"   _label="Allow tight turns" arg-set="--tightturns"/>
    <select id="style">
-    <option id="curves" _label="Curved pipes"   arg-set="-count 3"/>
-    <option id="balls"  _label="Ball joints"    arg-set="-count 1"/>
+    <option id="curves" _label="Curved pipes"   arg-set="--count 3"/>
+    <option id="balls"  _label="Ball joints"    arg-set="--count 1"/>
     <option id="fit"    _label="Bolted fittings"/>
-    <option id="random" _label="Random style"   arg-set="-count 0"/>
+    <option id="random" _label="Random style"   arg-set="--count 0"/>
    </select>
   </hgroup>
 
   <hgroup>
-   <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
-   <boolean id="wire"    _label="Wireframe" arg-set="-wireframe"/>
+   <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
+   <boolean id="wire"    _label="Wireframe" arg-set="--wireframe"/>
   </hgroup>
 
   <xscreensaver-updater />
index 532cd07c310ff38ed2638a8c0ead1dd1c251d7ad..95ada61bd214ce693b6629a702925e857c5a32b3 100644 (file)
 
 <screensaver name="polyhedra" _label="Polyhedra" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=gYb-3EErLJE"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="30000"
           convert="invert"/>
 
-  <number id="speed" type="slider" arg="-speed %"
+  <number id="speed" type="slider" arg="--speed %"
           _label="Speed" _low-label="Slow" _high-label="Fast"
           low="0.01" high="5.0" default="1.0"
           convert="ratio"/>
 
-  <number id="duration" type="slider" arg="-duration %"
+  <number id="duration" type="slider" arg="--duration %"
           _label="Duration" _low-label="1 second" _high-label="30 seconds"
           low="1" high="30" default="12"/>
 
   <select id="object">
 <option id="random" _label="Display random polyhedron"/>
-<option _label="Pentagonal prism" arg-set="-which pentagonal_prism"/>
-<option _label="Pentagonal dipyramid" arg-set="-which pentagonal_dipyramid"/>
-<option _label="Pentagonal antiprism" arg-set="-which pentagonal_antiprism"/>
-<option _label="Pentagonal deltohedron" arg-set="-which pentagonal_deltohedron"/>
-<option _label="Pentagrammic prism" arg-set="-which pentagrammic_prism"/>
-<option _label="Pentagrammic dipyramid" arg-set="-which pentagrammic_dipyramid"/>
-<option _label="Pentagrammic antiprism" arg-set="-which pentagrammic_antiprism"/>
-<option _label="Pentagrammic deltohedron" arg-set="-which pentagrammic_deltohedron"/>
-<option _label="Pentagrammic crossed antiprism" arg-set="-which pentagrammic_crossed_antiprism"/>
-<option _label="Pentagrammic concave deltohedron" arg-set="-which pentagrammic_concave_deltohedron"/>
-<option _label="Tetrahedron" arg-set="-which tetrahedron"/>
-<option _label="Truncated tetrahedron" arg-set="-which truncated_tetrahedron"/>
-<option _label="Triakistetrahedron" arg-set="-which triakistetrahedron"/>
-<option _label="Octahemioctahedron" arg-set="-which octahemioctahedron"/>
-<option _label="Octahemioctacron" arg-set="-which octahemioctacron"/>
-<option _label="Tetrahemihexahedron" arg-set="-which tetrahemihexahedron"/>
-<option _label="Tetrahemihexacron" arg-set="-which tetrahemihexacron"/>
-<option _label="Octahedron" arg-set="-which octahedron"/>
-<option _label="Cube" arg-set="-which cube"/>
-<option _label="Cuboctahedron" arg-set="-which cuboctahedron"/>
-<option _label="Rhombic dodecahedron" arg-set="-which rhombic_dodecahedron"/>
-<option _label="Truncated octahedron" arg-set="-which truncated_octahedron"/>
-<option _label="Tetrakishexahedron" arg-set="-which tetrakishexahedron"/>
-<option _label="Truncated cube" arg-set="-which truncated_cube"/>
-<option _label="Triakisoctahedron" arg-set="-which triakisoctahedron"/>
-<option _label="Rhombicuboctahedron" arg-set="-which rhombicuboctahedron"/>
-<option _label="Deltoidal icositetrahedron" arg-set="-which deltoidal_icositetrahedron"/>
-<option _label="Truncated cuboctahedron" arg-set="-which truncated_cuboctahedron"/>
-<option _label="Disdyakisdodecahedron" arg-set="-which disdyakisdodecahedron"/>
-<option _label="Snub cube" arg-set="-which snub_cube"/>
-<option _label="Pentagonal icositetrahedron" arg-set="-which pentagonal_icositetrahedron"/>
-<option _label="Small cubicuboctahedron" arg-set="-which small_cubicuboctahedron"/>
-<option _label="Small hexacronic icositetrahedron" arg-set="-which small_hexacronic_icositetrahedron"/>
-<option _label="Great cubicuboctahedron" arg-set="-which great_cubicuboctahedron"/>
-<option _label="Great hexacronic icositetrahedron" arg-set="-which great_hexacronic_icositetrahedron"/>
-<option _label="Cubohemioctahedron" arg-set="-which cubohemioctahedron"/>
-<option _label="Hexahemioctacron" arg-set="-which hexahemioctacron"/>
-<option _label="Cubitruncated cuboctahedron" arg-set="-which cubitruncated_cuboctahedron"/>
-<option _label="Tetradyakishexahedron" arg-set="-which tetradyakishexahedron"/>
-<option _label="Great rhombicuboctahedron" arg-set="-which great_rhombicuboctahedron"/>
-<option _label="Great deltoidal icositetrahedron" arg-set="-which great_deltoidal_icositetrahedron"/>
-<option _label="Small rhombihexahedron" arg-set="-which small_rhombihexahedron"/>
-<option _label="Small rhombihexacron" arg-set="-which small_rhombihexacron"/>
-<option _label="Stellated truncated hexahedron" arg-set="-which stellated_truncated_hexahedron"/>
-<option _label="Great triakisoctahedron" arg-set="-which great_triakisoctahedron"/>
-<option _label="Great truncated cuboctahedron" arg-set="-which great_truncated_cuboctahedron"/>
-<option _label="Great disdyakisdodecahedron" arg-set="-which great_disdyakisdodecahedron"/>
-<option _label="Great rhombihexahedron" arg-set="-which great_rhombihexahedron"/>
-<option _label="Great rhombihexacron" arg-set="-which great_rhombihexacron"/>
-<option _label="Icosahedron" arg-set="-which icosahedron"/>
-<option _label="Dodecahedron" arg-set="-which dodecahedron"/>
-<option _label="Icosidodecahedron" arg-set="-which icosidodecahedron"/>
-<option _label="Rhombic triacontahedron" arg-set="-which rhombic_triacontahedron"/>
-<option _label="Truncated icosahedron" arg-set="-which truncated_icosahedron"/>
-<option _label="Pentakisdodecahedron" arg-set="-which pentakisdodecahedron"/>
-<option _label="Truncated dodecahedron" arg-set="-which truncated_dodecahedron"/>
-<option _label="Triakisicosahedron" arg-set="-which triakisicosahedron"/>
-<option _label="Rhombicosidodecahedron" arg-set="-which rhombicosidodecahedron"/>
-<option _label="Deltoidal hexecontahedron" arg-set="-which deltoidal_hexecontahedron"/>
-<option _label="Truncated icosidodecahedron" arg-set="-which truncated_icosidodecahedron"/>
-<option _label="Disdyakistriacontahedron" arg-set="-which disdyakistriacontahedron"/>
-<option _label="Snub dodecahedron" arg-set="-which snub_dodecahedron"/>
-<option _label="Pentagonal hexecontahedron" arg-set="-which pentagonal_hexecontahedron"/>
-<option _label="Small ditrigonal icosidodecahedron" arg-set="-which small_ditrigonal_icosidodecahedron"/>
-<option _label="Small triambic icosahedron" arg-set="-which small_triambic_icosahedron"/>
-<option _label="Small icosicosidodecahedron" arg-set="-which small_icosicosidodecahedron"/>
-<option _label="Small icosacronic hexecontahedron" arg-set="-which small_icosacronic_hexecontahedron"/>
-<option _label="Small snub icosicosidodecahedron" arg-set="-which small_snub_icosicosidodecahedron"/>
-<option _label="Small hexagonal hexecontahedron" arg-set="-which small_hexagonal_hexecontahedron"/>
-<option _label="Small dodecicosidodecahedron" arg-set="-which small_dodecicosidodecahedron"/>
-<option _label="Small dodecacronic hexecontahedron" arg-set="-which small_dodecacronic_hexecontahedron"/>
-<option _label="Small stellated dodecahedron" arg-set="-which small_stellated_dodecahedron"/>
-<option _label="Great dodecahedron" arg-set="-which great_dodecahedron"/>
-<option _label="Great dodecadodecahedron" arg-set="-which great_dodecadodecahedron"/>
-<option _label="Medial rhombic triacontahedron" arg-set="-which medial_rhombic_triacontahedron"/>
-<option _label="Truncated great dodecahedron" arg-set="-which truncated_great_dodecahedron"/>
-<option _label="Small stellapentakisdodecahedron" arg-set="-which small_stellapentakisdodecahedron"/>
-<option _label="Rhombidodecadodecahedron" arg-set="-which rhombidodecadodecahedron"/>
-<option _label="Medial deltoidal hexecontahedron" arg-set="-which medial_deltoidal_hexecontahedron"/>
-<option _label="Small rhombidodecahedron" arg-set="-which small_rhombidodecahedron"/>
-<option _label="Small rhombidodecacron" arg-set="-which small_rhombidodecacron"/>
-<option _label="Snub dodecadodecahedron" arg-set="-which snub_dodecadodecahedron"/>
-<option _label="Medial pentagonal hexecontahedron" arg-set="-which medial_pentagonal_hexecontahedron"/>
-<option _label="Ditrigonal dodecadodecahedron" arg-set="-which ditrigonal_dodecadodecahedron"/>
-<option _label="Medial triambic icosahedron" arg-set="-which medial_triambic_icosahedron"/>
-<option _label="Great ditrigonal dodecicosidodecahedron" arg-set="-which great_ditrigonal_dodecicosidodecahedron"/>
-<option _label="Great ditrigonal dodecacronic hexecontahedron" arg-set="-which great_ditrigonal_dodecacronic_hexecontahedron"/>
-<option _label="Small ditrigonal dodecicosidodecahedron" arg-set="-which small_ditrigonal_dodecicosidodecahedron"/>
-<option _label="Small ditrigonal dodecacronic hexecontahedron" arg-set="-which small_ditrigonal_dodecacronic_hexecontahedron"/>
-<option _label="Icosidodecadodecahedron" arg-set="-which icosidodecadodecahedron"/>
-<option _label="Medial icosacronic hexecontahedron" arg-set="-which medial_icosacronic_hexecontahedron"/>
-<option _label="Icositruncated dodecadodecahedron" arg-set="-which icositruncated_dodecadodecahedron"/>
-<option _label="Tridyakisicosahedron" arg-set="-which tridyakisicosahedron"/>
-<option _label="Snub icosidodecadodecahedron" arg-set="-which snub_icosidodecadodecahedron"/>
-<option _label="Medial hexagonal hexecontahedron" arg-set="-which medial_hexagonal_hexecontahedron"/>
-<option _label="Great ditrigonal icosidodecahedron" arg-set="-which great_ditrigonal_icosidodecahedron"/>
-<option _label="Great triambic icosahedron" arg-set="-which great_triambic_icosahedron"/>
-<option _label="Great icosicosidodecahedron" arg-set="-which great_icosicosidodecahedron"/>
-<option _label="Great icosacronic hexecontahedron" arg-set="-which great_icosacronic_hexecontahedron"/>
-<option _label="Small icosihemidodecahedron" arg-set="-which small_icosihemidodecahedron"/>
-<option _label="Small icosihemidodecacron" arg-set="-which small_icosihemidodecacron"/>
-<option _label="Small dodecicosahedron" arg-set="-which small_dodecicosahedron"/>
-<option _label="Small dodecicosacron" arg-set="-which small_dodecicosacron"/>
-<option _label="Small dodecahemidodecahedron" arg-set="-which small_dodecahemidodecahedron"/>
-<option _label="Small dodecahemidodecacron" arg-set="-which small_dodecahemidodecacron"/>
-<option _label="Great stellated dodecahedron" arg-set="-which great_stellated_dodecahedron"/>
-<option _label="Great icosahedron" arg-set="-which great_icosahedron"/>
-<option _label="Great icosidodecahedron" arg-set="-which great_icosidodecahedron"/>
-<option _label="Great rhombic triacontahedron" arg-set="-which great_rhombic_triacontahedron"/>
-<option _label="Great truncated icosahedron" arg-set="-which great_truncated_icosahedron"/>
-<option _label="Great stellapentakisdodecahedron" arg-set="-which great_stellapentakisdodecahedron"/>
-<option _label="Rhombicosahedron" arg-set="-which rhombicosahedron"/>
-<option _label="Rhombicosacron" arg-set="-which rhombicosacron"/>
-<option _label="Great snub icosidodecahedron" arg-set="-which great_snub_icosidodecahedron"/>
-<option _label="Great pentagonal hexecontahedron" arg-set="-which great_pentagonal_hexecontahedron"/>
-<option _label="Small stellated truncated dodecahedron" arg-set="-which small_stellated_truncated_dodecahedron"/>
-<option _label="Great pentakisdodecahedron" arg-set="-which great_pentakisdodecahedron"/>
-<option _label="Truncated dodecadodecahedron" arg-set="-which truncated_dodecadodecahedron"/>
-<option _label="Medial disdyakistriacontahedron" arg-set="-which medial_disdyakistriacontahedron"/>
-<option _label="Inverted snub dodecadodecahedron" arg-set="-which inverted_snub_dodecadodecahedron"/>
-<option _label="Medial inverted pentagonal hexecontahedron" arg-set="-which medial_inverted_pentagonal_hexecontahedron"/>
-<option _label="Great dodecicosidodecahedron" arg-set="-which great_dodecicosidodecahedron"/>
-<option _label="Great dodecacronic hexecontahedron" arg-set="-which great_dodecacronic_hexecontahedron"/>
-<option _label="Small dodecahemicosahedron" arg-set="-which small_dodecahemicosahedron"/>
-<option _label="Small dodecahemicosacron" arg-set="-which small_dodecahemicosacron"/>
-<option _label="Great dodecicosahedron" arg-set="-which great_dodecicosahedron"/>
-<option _label="Great dodecicosacron" arg-set="-which great_dodecicosacron"/>
-<option _label="Great snub dodecicosidodecahedron" arg-set="-which great_snub_dodecicosidodecahedron"/>
-<option _label="Great hexagonal hexecontahedron" arg-set="-which great_hexagonal_hexecontahedron"/>
-<option _label="Great dodecahemicosahedron" arg-set="-which great_dodecahemicosahedron"/>
-<option _label="Great dodecahemicosacron" arg-set="-which great_dodecahemicosacron"/>
-<option _label="Great stellated truncated dodecahedron" arg-set="-which great_stellated_truncated_dodecahedron"/>
-<option _label="Great triakisicosahedron" arg-set="-which great_triakisicosahedron"/>
-<option _label="Great rhombicosidodecahedron" arg-set="-which great_rhombicosidodecahedron"/>
-<option _label="Great deltoidal hexecontahedron" arg-set="-which great_deltoidal_hexecontahedron"/>
-<option _label="Great truncated icosidodecahedron" arg-set="-which great_truncated_icosidodecahedron"/>
-<option _label="Great disdyakistriacontahedron" arg-set="-which great_disdyakistriacontahedron"/>
-<option _label="Great inverted snub icosidodecahedron" arg-set="-which great_inverted_snub_icosidodecahedron"/>
-<option _label="Great inverted pentagonal hexecontahedron" arg-set="-which great_inverted_pentagonal_hexecontahedron"/>
-<option _label="Great dodecahemidodecahedron" arg-set="-which great_dodecahemidodecahedron"/>
-<option _label="Great dodecahemidodecacron" arg-set="-which great_dodecahemidodecacron"/>
-<option _label="Great icosihemidodecahedron" arg-set="-which great_icosihemidodecahedron"/>
-<option _label="Great icosihemidodecacron" arg-set="-which great_icosihemidodecacron"/>
-<option _label="Small retrosnub icosicosidodecahedron" arg-set="-which small_retrosnub_icosicosidodecahedron"/>
-<option _label="Small hexagrammic hexecontahedron" arg-set="-which small_hexagrammic_hexecontahedron"/>
-<option _label="Great rhombidodecahedron" arg-set="-which great_rhombidodecahedron"/>
-<option _label="Great rhombidodecacron" arg-set="-which great_rhombidodecacron"/>
-<option _label="Great retrosnub icosidodecahedron" arg-set="-which great_retrosnub_icosidodecahedron"/>
-<option _label="Great pentagrammic hexecontahedron" arg-set="-which great_pentagrammic_hexecontahedron"/>
-<option _label="Great dirhombicosidodecahedron" arg-set="-which great_dirhombicosidodecahedron"/>
-<option _label="Great dirhombicosidodecacron" arg-set="-which great_dirhombicosidodecacron"/>
-<option _label="Utah teapotahedron" arg-set="-which utah_teapotahedron"/>
+<option _label="Pentagonal prism" arg-set="--which pentagonal_prism"/>
+<option _label="Pentagonal dipyramid" arg-set="--which pentagonal_dipyramid"/>
+<option _label="Pentagonal antiprism" arg-set="--which pentagonal_antiprism"/>
+<option _label="Pentagonal deltohedron" arg-set="--which pentagonal_deltohedron"/>
+<option _label="Pentagrammic prism" arg-set="--which pentagrammic_prism"/>
+<option _label="Pentagrammic dipyramid" arg-set="--which pentagrammic_dipyramid"/>
+<option _label="Pentagrammic antiprism" arg-set="--which pentagrammic_antiprism"/>
+<option _label="Pentagrammic deltohedron" arg-set="--which pentagrammic_deltohedron"/>
+<option _label="Pentagrammic crossed antiprism" arg-set="--which pentagrammic_crossed_antiprism"/>
+<option _label="Pentagrammic concave deltohedron" arg-set="--which pentagrammic_concave_deltohedron"/>
+<option _label="Tetrahedron" arg-set="--which tetrahedron"/>
+<option _label="Truncated tetrahedron" arg-set="--which truncated_tetrahedron"/>
+<option _label="Triakistetrahedron" arg-set="--which triakistetrahedron"/>
+<option _label="Octahemioctahedron" arg-set="--which octahemioctahedron"/>
+<option _label="Octahemioctacron" arg-set="--which octahemioctacron"/>
+<option _label="Tetrahemihexahedron" arg-set="--which tetrahemihexahedron"/>
+<option _label="Tetrahemihexacron" arg-set="--which tetrahemihexacron"/>
+<option _label="Octahedron" arg-set="--which octahedron"/>
+<option _label="Cube" arg-set="--which cube"/>
+<option _label="Cuboctahedron" arg-set="--which cuboctahedron"/>
+<option _label="Rhombic dodecahedron" arg-set="--which rhombic_dodecahedron"/>
+<option _label="Truncated octahedron" arg-set="--which truncated_octahedron"/>
+<option _label="Tetrakishexahedron" arg-set="--which tetrakishexahedron"/>
+<option _label="Truncated cube" arg-set="--which truncated_cube"/>
+<option _label="Triakisoctahedron" arg-set="--which triakisoctahedron"/>
+<option _label="Rhombicuboctahedron" arg-set="--which rhombicuboctahedron"/>
+<option _label="Deltoidal icositetrahedron" arg-set="--which deltoidal_icositetrahedron"/>
+<option _label="Truncated cuboctahedron" arg-set="--which truncated_cuboctahedron"/>
+<option _label="Disdyakisdodecahedron" arg-set="--which disdyakisdodecahedron"/>
+<option _label="Snub cube" arg-set="--which snub_cube"/>
+<option _label="Pentagonal icositetrahedron" arg-set="--which pentagonal_icositetrahedron"/>
+<option _label="Small cubicuboctahedron" arg-set="--which small_cubicuboctahedron"/>
+<option _label="Small hexacronic icositetrahedron" arg-set="--which small_hexacronic_icositetrahedron"/>
+<option _label="Great cubicuboctahedron" arg-set="--which great_cubicuboctahedron"/>
+<option _label="Great hexacronic icositetrahedron" arg-set="--which great_hexacronic_icositetrahedron"/>
+<option _label="Cubohemioctahedron" arg-set="--which cubohemioctahedron"/>
+<option _label="Hexahemioctacron" arg-set="--which hexahemioctacron"/>
+<option _label="Cubitruncated cuboctahedron" arg-set="--which cubitruncated_cuboctahedron"/>
+<option _label="Tetradyakishexahedron" arg-set="--which tetradyakishexahedron"/>
+<option _label="Great rhombicuboctahedron" arg-set="--which great_rhombicuboctahedron"/>
+<option _label="Great deltoidal icositetrahedron" arg-set="--which great_deltoidal_icositetrahedron"/>
+<option _label="Small rhombihexahedron" arg-set="--which small_rhombihexahedron"/>
+<option _label="Small rhombihexacron" arg-set="--which small_rhombihexacron"/>
+<option _label="Stellated truncated hexahedron" arg-set="--which stellated_truncated_hexahedron"/>
+<option _label="Great triakisoctahedron" arg-set="--which great_triakisoctahedron"/>
+<option _label="Great truncated cuboctahedron" arg-set="--which great_truncated_cuboctahedron"/>
+<option _label="Great disdyakisdodecahedron" arg-set="--which great_disdyakisdodecahedron"/>
+<option _label="Great rhombihexahedron" arg-set="--which great_rhombihexahedron"/>
+<option _label="Great rhombihexacron" arg-set="--which great_rhombihexacron"/>
+<option _label="Icosahedron" arg-set="--which icosahedron"/>
+<option _label="Dodecahedron" arg-set="--which dodecahedron"/>
+<option _label="Icosidodecahedron" arg-set="--which icosidodecahedron"/>
+<option _label="Rhombic triacontahedron" arg-set="--which rhombic_triacontahedron"/>
+<option _label="Truncated icosahedron" arg-set="--which truncated_icosahedron"/>
+<option _label="Pentakisdodecahedron" arg-set="--which pentakisdodecahedron"/>
+<option _label="Truncated dodecahedron" arg-set="--which truncated_dodecahedron"/>
+<option _label="Triakisicosahedron" arg-set="--which triakisicosahedron"/>
+<option _label="Rhombicosidodecahedron" arg-set="--which rhombicosidodecahedron"/>
+<option _label="Deltoidal hexecontahedron" arg-set="--which deltoidal_hexecontahedron"/>
+<option _label="Truncated icosidodecahedron" arg-set="--which truncated_icosidodecahedron"/>
+<option _label="Disdyakistriacontahedron" arg-set="--which disdyakistriacontahedron"/>
+<option _label="Snub dodecahedron" arg-set="--which snub_dodecahedron"/>
+<option _label="Pentagonal hexecontahedron" arg-set="--which pentagonal_hexecontahedron"/>
+<option _label="Small ditrigonal icosidodecahedron" arg-set="--which small_ditrigonal_icosidodecahedron"/>
+<option _label="Small triambic icosahedron" arg-set="--which small_triambic_icosahedron"/>
+<option _label="Small icosicosidodecahedron" arg-set="--which small_icosicosidodecahedron"/>
+<option _label="Small icosacronic hexecontahedron" arg-set="--which small_icosacronic_hexecontahedron"/>
+<option _label="Small snub icosicosidodecahedron" arg-set="--which small_snub_icosicosidodecahedron"/>
+<option _label="Small hexagonal hexecontahedron" arg-set="--which small_hexagonal_hexecontahedron"/>
+<option _label="Small dodecicosidodecahedron" arg-set="--which small_dodecicosidodecahedron"/>
+<option _label="Small dodecacronic hexecontahedron" arg-set="--which small_dodecacronic_hexecontahedron"/>
+<option _label="Small stellated dodecahedron" arg-set="--which small_stellated_dodecahedron"/>
+<option _label="Great dodecahedron" arg-set="--which great_dodecahedron"/>
+<option _label="Great dodecadodecahedron" arg-set="--which great_dodecadodecahedron"/>
+<option _label="Medial rhombic triacontahedron" arg-set="--which medial_rhombic_triacontahedron"/>
+<option _label="Truncated great dodecahedron" arg-set="--which truncated_great_dodecahedron"/>
+<option _label="Small stellapentakisdodecahedron" arg-set="--which small_stellapentakisdodecahedron"/>
+<option _label="Rhombidodecadodecahedron" arg-set="--which rhombidodecadodecahedron"/>
+<option _label="Medial deltoidal hexecontahedron" arg-set="--which medial_deltoidal_hexecontahedron"/>
+<option _label="Small rhombidodecahedron" arg-set="--which small_rhombidodecahedron"/>
+<option _label="Small rhombidodecacron" arg-set="--which small_rhombidodecacron"/>
+<option _label="Snub dodecadodecahedron" arg-set="--which snub_dodecadodecahedron"/>
+<option _label="Medial pentagonal hexecontahedron" arg-set="--which medial_pentagonal_hexecontahedron"/>
+<option _label="Ditrigonal dodecadodecahedron" arg-set="--which ditrigonal_dodecadodecahedron"/>
+<option _label="Medial triambic icosahedron" arg-set="--which medial_triambic_icosahedron"/>
+<option _label="Great ditrigonal dodecicosidodecahedron" arg-set="--which great_ditrigonal_dodecicosidodecahedron"/>
+<option _label="Great ditrigonal dodecacronic hexecontahedron" arg-set="--which great_ditrigonal_dodecacronic_hexecontahedron"/>
+<option _label="Small ditrigonal dodecicosidodecahedron" arg-set="--which small_ditrigonal_dodecicosidodecahedron"/>
+<option _label="Small ditrigonal dodecacronic hexecontahedron" arg-set="--which small_ditrigonal_dodecacronic_hexecontahedron"/>
+<option _label="Icosidodecadodecahedron" arg-set="--which icosidodecadodecahedron"/>
+<option _label="Medial icosacronic hexecontahedron" arg-set="--which medial_icosacronic_hexecontahedron"/>
+<option _label="Icositruncated dodecadodecahedron" arg-set="--which icositruncated_dodecadodecahedron"/>
+<option _label="Tridyakisicosahedron" arg-set="--which tridyakisicosahedron"/>
+<option _label="Snub icosidodecadodecahedron" arg-set="--which snub_icosidodecadodecahedron"/>
+<option _label="Medial hexagonal hexecontahedron" arg-set="--which medial_hexagonal_hexecontahedron"/>
+<option _label="Great ditrigonal icosidodecahedron" arg-set="--which great_ditrigonal_icosidodecahedron"/>
+<option _label="Great triambic icosahedron" arg-set="--which great_triambic_icosahedron"/>
+<option _label="Great icosicosidodecahedron" arg-set="--which great_icosicosidodecahedron"/>
+<option _label="Great icosacronic hexecontahedron" arg-set="--which great_icosacronic_hexecontahedron"/>
+<option _label="Small icosihemidodecahedron" arg-set="--which small_icosihemidodecahedron"/>
+<option _label="Small icosihemidodecacron" arg-set="--which small_icosihemidodecacron"/>
+<option _label="Small dodecicosahedron" arg-set="--which small_dodecicosahedron"/>
+<option _label="Small dodecicosacron" arg-set="--which small_dodecicosacron"/>
+<option _label="Small dodecahemidodecahedron" arg-set="--which small_dodecahemidodecahedron"/>
+<option _label="Small dodecahemidodecacron" arg-set="--which small_dodecahemidodecacron"/>
+<option _label="Great stellated dodecahedron" arg-set="--which great_stellated_dodecahedron"/>
+<option _label="Great icosahedron" arg-set="--which great_icosahedron"/>
+<option _label="Great icosidodecahedron" arg-set="--which great_icosidodecahedron"/>
+<option _label="Great rhombic triacontahedron" arg-set="--which great_rhombic_triacontahedron"/>
+<option _label="Great truncated icosahedron" arg-set="--which great_truncated_icosahedron"/>
+<option _label="Great stellapentakisdodecahedron" arg-set="--which great_stellapentakisdodecahedron"/>
+<option _label="Rhombicosahedron" arg-set="--which rhombicosahedron"/>
+<option _label="Rhombicosacron" arg-set="--which rhombicosacron"/>
+<option _label="Great snub icosidodecahedron" arg-set="--which great_snub_icosidodecahedron"/>
+<option _label="Great pentagonal hexecontahedron" arg-set="--which great_pentagonal_hexecontahedron"/>
+<option _label="Small stellated truncated dodecahedron" arg-set="--which small_stellated_truncated_dodecahedron"/>
+<option _label="Great pentakisdodecahedron" arg-set="--which great_pentakisdodecahedron"/>
+<option _label="Truncated dodecadodecahedron" arg-set="--which truncated_dodecadodecahedron"/>
+<option _label="Medial disdyakistriacontahedron" arg-set="--which medial_disdyakistriacontahedron"/>
+<option _label="Inverted snub dodecadodecahedron" arg-set="--which inverted_snub_dodecadodecahedron"/>
+<option _label="Medial inverted pentagonal hexecontahedron" arg-set="--which medial_inverted_pentagonal_hexecontahedron"/>
+<option _label="Great dodecicosidodecahedron" arg-set="--which great_dodecicosidodecahedron"/>
+<option _label="Great dodecacronic hexecontahedron" arg-set="--which great_dodecacronic_hexecontahedron"/>
+<option _label="Small dodecahemicosahedron" arg-set="--which small_dodecahemicosahedron"/>
+<option _label="Small dodecahemicosacron" arg-set="--which small_dodecahemicosacron"/>
+<option _label="Great dodecicosahedron" arg-set="--which great_dodecicosahedron"/>
+<option _label="Great dodecicosacron" arg-set="--which great_dodecicosacron"/>
+<option _label="Great snub dodecicosidodecahedron" arg-set="--which great_snub_dodecicosidodecahedron"/>
+<option _label="Great hexagonal hexecontahedron" arg-set="--which great_hexagonal_hexecontahedron"/>
+<option _label="Great dodecahemicosahedron" arg-set="--which great_dodecahemicosahedron"/>
+<option _label="Great dodecahemicosacron" arg-set="--which great_dodecahemicosacron"/>
+<option _label="Great stellated truncated dodecahedron" arg-set="--which great_stellated_truncated_dodecahedron"/>
+<option _label="Great triakisicosahedron" arg-set="--which great_triakisicosahedron"/>
+<option _label="Great rhombicosidodecahedron" arg-set="--which great_rhombicosidodecahedron"/>
+<option _label="Great deltoidal hexecontahedron" arg-set="--which great_deltoidal_hexecontahedron"/>
+<option _label="Great truncated icosidodecahedron" arg-set="--which great_truncated_icosidodecahedron"/>
+<option _label="Great disdyakistriacontahedron" arg-set="--which great_disdyakistriacontahedron"/>
+<option _label="Great inverted snub icosidodecahedron" arg-set="--which great_inverted_snub_icosidodecahedron"/>
+<option _label="Great inverted pentagonal hexecontahedron" arg-set="--which great_inverted_pentagonal_hexecontahedron"/>
+<option _label="Great dodecahemidodecahedron" arg-set="--which great_dodecahemidodecahedron"/>
+<option _label="Great dodecahemidodecacron" arg-set="--which great_dodecahemidodecacron"/>
+<option _label="Great icosihemidodecahedron" arg-set="--which great_icosihemidodecahedron"/>
+<option _label="Great icosihemidodecacron" arg-set="--which great_icosihemidodecacron"/>
+<option _label="Small retrosnub icosicosidodecahedron" arg-set="--which small_retrosnub_icosicosidodecahedron"/>
+<option _label="Small hexagrammic hexecontahedron" arg-set="--which small_hexagrammic_hexecontahedron"/>
+<option _label="Great rhombidodecahedron" arg-set="--which great_rhombidodecahedron"/>
+<option _label="Great rhombidodecacron" arg-set="--which great_rhombidodecacron"/>
+<option _label="Great retrosnub icosidodecahedron" arg-set="--which great_retrosnub_icosidodecahedron"/>
+<option _label="Great pentagrammic hexecontahedron" arg-set="--which great_pentagrammic_hexecontahedron"/>
+<option _label="Great dirhombicosidodecahedron" arg-set="--which great_dirhombicosidodecahedron"/>
+<option _label="Great dirhombicosidodecacron" arg-set="--which great_dirhombicosidodecacron"/>
+<option _label="Utah teapotahedron" arg-set="--which utah_teapotahedron"/>
   </select>
 
   <hgroup>
-   <boolean id="spin"    _label="Spin"      arg-unset="-no-spin"/>
-   <boolean id="wander"  _label="Wander"    arg-unset="-no-wander"/>
-   <boolean id="wire"    _label="Wireframe" arg-set="-wireframe"/>
+   <boolean id="spin"    _label="Spin"      arg-unset="--no-spin"/>
+   <boolean id="wander"  _label="Wander"    arg-unset="--no-wander"/>
+   <boolean id="wire"    _label="Wireframe" arg-set="--wireframe"/>
   </hgroup>
   <hgroup>
-   <boolean id="titles"  _label="Show description" arg-unset="-no-titles"/>
-   <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+   <boolean id="titles"  _label="Show description" arg-unset="--no-titles"/>
+   <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
   </hgroup>
 
   <xscreensaver-updater />
index 74b05f23e19818738a3a820a92749b628034ed93..08c133876fd323052d079137e320376cb1a8743b 100644 (file)
@@ -2,26 +2,26 @@
 
 <screensaver name="polyominoes" _label="Polyominoes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=6j2H2gL8cws"/>
 
-  <boolean id="identical" _label="Identical pieces" arg-set="-identical"/>
+  <boolean id="identical" _label="Identical pieces" arg-set="--identical"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="10000"
           convert="invert"/>
 
-  <number id="cycles" type="slider" arg="-cycles %"
+  <number id="cycles" type="slider" arg="--cycles %"
            _label="Duration" _low-label="Short" _high-label="Long"
           low="500" high="5000" default="2000"/>
 
-  <number id="ncolors" type="slider" arg="-ncolors %"
+  <number id="ncolors" type="slider" arg="--ncolors %"
             _label="Number of colors" _low-label="Two" _high-label="Many"
             low="2" high="255" default="64"/>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 1e6f1f36150db719127dd430adf1a1ac0bc2f23c..6ca5a1163f6875303ae3c77592f0c4d6ba0ce2df 100644 (file)
@@ -2,7 +2,7 @@
 
 <screensaver name="polytopes" _label="Polytopes" gl="yes">
 
- <command arg="-root"/>
+ <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=MKZQ5Q7QINM"/>
 
   <vgroup>
    <select id="display-mode">
     <option id="wire" _label="Wireframe mesh"
-            arg-set="-mode wireframe"/>
+            arg-set="--mode wireframe"/>
     <option id="surface" _label="Solid surface"
-            arg-set="-mode surface"/>
+            arg-set="--mode surface"/>
     <option id="transparent" _label="Transparent surface"/>
    </select>
 
    <select id="polytope">
     <option id="random" _label="Random object"/>
     <option id="cell-5" _label="5-cell (hyper-tetrahedron)"
-            arg-set="-polytope 5-cell"/>
+            arg-set="--polytope 5-cell"/>
     <option id="cell-8" _label="8-cell (hypercube / tesseract)"
-            arg-set="-polytope 8-cell"/>
+            arg-set="--polytope 8-cell"/>
     <option id="cell-16" _label="16-cell (hyper-octahedron)"
-            arg-set="-polytope 16-cell"/>
+            arg-set="--polytope 16-cell"/>
     <option id="cell-24" _label="24-cell"
-            arg-set="-polytope 24-cell"/>
+            arg-set="--polytope 24-cell"/>
     <option id="cell-120" _label="120-cell"
-            arg-set="-polytope 120-cell"/>
+            arg-set="--polytope 120-cell"/>
     <option id="cell-600" _label="600-cell"
-            arg-set="-polytope 600-cell"/>
+            arg-set="--polytope 600-cell"/>
    </select>
 
    <select id="colors">
-    <option id="single" _label="Single color" arg-set="-single-color"/>
+    <option id="single" _label="Single color" arg-set="--single-color"/>
     <option id="depth" _label="Colors By 4D Depth"/>
    </select>
 
    <select id="projection3d">
     <option id="perspective-3d" _label="Perspective 3D"/>
     <option id="orthographic-3d" _label="Orthographic 3D"
-            arg-set="-orthographic-3d"/>
+            arg-set="--orthographic-3d"/>
    </select>
 
    <select id="projection4d">
     <option id="perspective-4d" _label="Perspective 4D"/>
     <option id="orthographic-4d" _label="Orthographic 4D"
-            arg-set="-orthographic-4d"/>
+            arg-set="--orthographic-4d"/>
    </select>
 
-   <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+   <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   </vgroup>
 
   <vgroup>
-   <number id="speed-wx" type="slider" arg="-speed-wx %"
+   <number id="speed-wx" type="slider" arg="--speed-wx %"
            _label="WX rotation speed"
            _low-label="-4.0" _high-label="4.0"
            low="-4.0" high="4.0" default="1.1"/>
 
-   <number id="speed-wy" type="slider" arg="-speed-wy %"
+   <number id="speed-wy" type="slider" arg="--speed-wy %"
            _label="WY rotation speed"
            _low-label="-4.0" _high-label="4.0"
            low="-4.0" high="4.0" default="1.3"/>
 
-   <number id="speed-wz" type="slider" arg="-speed-wz %"
+   <number id="speed-wz" type="slider" arg="--speed-wz %"
            _label="WZ rotation speed"
            _low-label="-4.0" _high-label="4.0"
            low="-4.0" high="4.0" default="1.5"/>
 
-   <number id="delay" type="slider" arg="-delay %"
+   <number id="delay" type="slider" arg="--delay %"
            _label="Frame rate" _low-label="Low" _high-label="High"
            low="0" high="100000" default="25000"
            convert="invert"/>
   </vgroup>
 
   <vgroup>
-   <number id="speed-xy" type="slider" arg="-speed-xy %"
+   <number id="speed-xy" type="slider" arg="--speed-xy %"
            _label="XY rotation speed"
            _low-label="-4.0" _high-label="4.0"
            low="-4.0" high="4.0" default="1.7"/>
 
-   <number id="speed-xz" type="slider" arg="-speed-xz %"
+   <number id="speed-xz" type="slider" arg="--speed-xz %"
            _label="XZ rotation speed"
            _low-label="-4.0" _high-label="4.0"
            low="-4.0" high="4.0" default="1.9"/>
 
-   <number id="speed-yz" type="slider" arg="-speed-yz %"
+   <number id="speed-yz" type="slider" arg="--speed-yz %"
            _label="YZ rotation speed"
            _low-label="-4.0" _high-label="4.0"
            low="-4.0" high="4.0" default="2.1"/>
index 6ae353a256a562443a8c4655f8316972bb49c475..38d65a02cf8b66997533a0e51aa6c8c6ef55aa28 100644 (file)
@@ -2,31 +2,31 @@
 
 <screensaver name="pong" _label="Pong">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=2jPmisDwwi0"/>
 
   <hgroup>
    <vgroup>
-    <number id="speed" type="slider" arg="-speed %"
+    <number id="speed" type="slider" arg="--speed %"
             _label="Game speed" _low-label="Slow" _high-label="Fast"
             low="1" high="20" default="6"/>
 
-    <number id="noise" type="slider" arg="-noise %"
+    <number id="noise" type="slider" arg="--noise %"
              _label="Noise" _low-label="Crisp" _high-label="Noisy"
              low="0.00" high="5.00" default="0.04"/>
 
     <hgroup>
-     <boolean id="clock" _label="Clock mode" arg-set="-clock"/>
-     <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+     <boolean id="clock" _label="Clock mode" arg-set="--clock"/>
+     <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
     </hgroup>
    </vgroup>
 
    <vgroup>
-    <number id="tvbrightness" type="slider" arg="-tv-brightness %"
+    <number id="tvbrightness" type="slider" arg="--tv-brightness %"
             _label="Brightness Knob" _low-label="Low" _high-label="High"
             low="-75.0" high="100.0" default="3.0"/>
-    <number id="tvcontrast" type="slider" arg="-tv-contrast %"
+    <number id="tvcontrast" type="slider" arg="--tv-contrast %"
             _label="Contrast Knob" _low-label="Low" _high-label="High"
             low="0" high="500" default="150"/>
    </vgroup>
index 6528b695fbde7c02dc415da0f86f6663ee41a533..9f87e376ee5cb9256c8681d4e20e29ecfb4e60d8 100644 (file)
@@ -2,49 +2,49 @@
 
 <screensaver name="popsquares" _label="Pop Squares">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=99Aweq7Nypc"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="25000"
           convert="invert"/>
 
-  <number id="subdivision" type="spinbutton" arg="-subdivision %"
+  <number id="subdivision" type="spinbutton" arg="--subdivision %"
           _label="Subdivision"
           low="1" high="64" default="5"/>
 
-  <number id="border" type="spinbutton" arg="-border %"
+  <number id="border" type="spinbutton" arg="--border %"
           _label="Border"
           low="0" high="5" default="1"/>
 
-  <number id="ncolors" type="spinbutton" arg="-ncolors %"
+  <number id="ncolors" type="spinbutton" arg="--ncolors %"
             _label="Number of colors" low="1" high="512" default="128"/>
 
   <hgroup>
    <select id="bg">
-    <option id="lred"     _label="Light red"     arg-set="-bg #FF0000"/>
-    <option id="lyellow"  _label="Light yellow"  arg-set="-bg #FFFF00"/>
-    <option id="lgreen"   _label="Light green"   arg-set="-bg #00FF00"/>
-    <option id="lcyan"    _label="Light cyan"    arg-set="-bg #00FFFF"/>
+    <option id="lred"     _label="Light red"     arg-set="--bg #FF0000"/>
+    <option id="lyellow"  _label="Light yellow"  arg-set="--bg #FFFF00"/>
+    <option id="lgreen"   _label="Light green"   arg-set="--bg #00FF00"/>
+    <option id="lcyan"    _label="Light cyan"    arg-set="--bg #00FFFF"/>
     <option id="lblue"    _label="Light blue"/>
-    <option id="lmagenta" _label="Light magenta" arg-set="-bg #FF00FF"/>
+    <option id="lmagenta" _label="Light magenta" arg-set="--bg #FF00FF"/>
    </select>
 
    <select id="fg">
-    <option id="dred"     _label="Dark red"     arg-set="-fg #8C0000"/>
-    <option id="dyellow"  _label="Dark yellow"  arg-set="-fg #8C8C00"/>
-    <option id="dgreen"   _label="Dark green"   arg-set="-fg #008C00"/>
-    <option id="dcyan"    _label="Dark cyan"    arg-set="-fg #008C8C"/>
+    <option id="dred"     _label="Dark red"     arg-set="--fg #8C0000"/>
+    <option id="dyellow"  _label="Dark yellow"  arg-set="--fg #8C8C00"/>
+    <option id="dgreen"   _label="Dark green"   arg-set="--fg #008C00"/>
+    <option id="dcyan"    _label="Dark cyan"    arg-set="--fg #008C8C"/>
     <option id="dblue"    _label="Dark blue"/>
-    <option id="dmagenta" _label="Dark magenta" arg-set="-fg #8C008C"/>
+    <option id="dmagenta" _label="Dark magenta" arg-set="--fg #8C008C"/>
    </select>
   </hgroup>
 
-  <boolean id="twitch" _label="Twitch" arg-set="-twitch"/>
+  <boolean id="twitch" _label="Twitch" arg-set="--twitch"/>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index a1485f4c0c6233c8f34a08b408fab0cc994fbb47..8bed375154182a3b3a022da527bad2d29abc94d6 100644 (file)
@@ -2,68 +2,68 @@
 
 <screensaver name="projectiveplane" _label="Projective Plane" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=Zg6ONPUTwUQ"/>
 
   <hgroup>
     <select id="display-mode">
       <option id="random"      _label="Random surface"/>
-      <option id="wire"        _label="Wireframe mesh"      arg-set="-mode wireframe"/>
-      <option id="surface"     _label="Solid surface"       arg-set="-mode surface"/>
-      <option id="transparent" _label="Transparent surface" arg-set="-mode transparent"/>
+      <option id="wire"        _label="Wireframe mesh"      arg-set="--mode wireframe"/>
+      <option id="surface"     _label="Solid surface"       arg-set="--mode surface"/>
+      <option id="transparent" _label="Transparent surface" arg-set="--mode transparent"/>
     </select>
 
     <select id="appearance">
       <option id="random" _label="Random pattern"/>
-      <option id="solid"  _label="Solid object"    arg-set="-appearance solid"/>
-      <option id="bands"  _label="Distance bands"  arg-set="-appearance distance-bands"/>
-      <option id="bands"  _label="Direction bands" arg-set="-appearance direction-bands"/>
+      <option id="solid"  _label="Solid object"    arg-set="--appearance solid"/>
+      <option id="bands"  _label="Distance bands"  arg-set="--appearance distance-bands"/>
+      <option id="bands"  _label="Direction bands" arg-set="--appearance direction-bands"/>
     </select>
 
     <select id="colors">
       <option id="random"   _label="Random coloration"/>
-      <option id="twosided" _label="One-sided"        arg-set="-colors one-sided"/>
-      <option id="twosided" _label="Two-sided"        arg-set="-colors two-sided"/>
-      <option id="rainbow"  _label="Distance colors"  arg-set="-colors distance"/>
-      <option id="rainbow"  _label="Direction colors" arg-set="-colors direction"/>
-      <option id="depth"    _label="4d depth colors"  arg-set="-colors depth"/>
+      <option id="twosided" _label="One-sided"        arg-set="--colors one-sided"/>
+      <option id="twosided" _label="Two-sided"        arg-set="--colors two-sided"/>
+      <option id="rainbow"  _label="Distance colors"  arg-set="--colors distance"/>
+      <option id="rainbow"  _label="Direction colors" arg-set="--colors direction"/>
+      <option id="depth"    _label="4d depth colors"  arg-set="--colors depth"/>
     </select>
 
     <boolean id="change-colors" _label="Change colors"
-              arg-set="-change-colors"/>
+              arg-set="--change-colors"/>
 
     <select id="projection3d">
       <option id="random"          _label="Random 3D"/>
-      <option id="perspective-3d"  _label="Perspective 3D"  arg-set="-projection-3d perspective"/>
-      <option id="orthographic-3d" _label="Orthographic 3D" arg-set="-projection-3d orthographic"/>
+      <option id="perspective-3d"  _label="Perspective 3D"  arg-set="--projection-3d perspective"/>
+      <option id="orthographic-3d" _label="Orthographic 3D" arg-set="--projection-3d orthographic"/>
     </select>
 
     <select id="projection4d">
       <option id="random"          _label="Random 4D"/>
-      <option id="perspective-4d"  _label="Perspective 4D"  arg-set="-projection-4d perspective"/>
-      <option id="orthographic-4d" _label="Orthographic 4D" arg-set="-projection-4d orthographic"/>
+      <option id="perspective-4d"  _label="Perspective 4D"  arg-set="--projection-4d perspective"/>
+      <option id="orthographic-4d" _label="Orthographic 4D" arg-set="--projection-4d orthographic"/>
     </select>
   </hgroup>
 
   <hgroup>
     <vgroup>
      <hgroup>
-      <number id="speed-wx" type="slider" arg="-speed-wx %"
+      <number id="speed-wx" type="slider" arg="--speed-wx %"
               _label="WX speed"
               _low-label="-4" _high-label="4"
               low="-4.0" high="4.0" default="1.1"/>
      </hgroup>
 
      <hgroup>
-      <number id="speed-wy" type="slider" arg="-speed-wy %"
+      <number id="speed-wy" type="slider" arg="--speed-wy %"
               _label="WY speed"
               _low-label="-4" _high-label="4"
               low="-4.0" high="4.0" default="1.3"/>
      </hgroup>
 
      <hgroup>
-      <number id="speed-wz" type="slider" arg="-speed-wz %"
+      <number id="speed-wz" type="slider" arg="--speed-wz %"
               _label="WZ speed"
               _low-label="-4" _high-label="4"
               low="-4.0" high="4.0" default="1.5"/>
 
     <vgroup>
      <hgroup>
-      <number id="speed-xy" type="slider" arg="-speed-xy %"
+      <number id="speed-xy" type="slider" arg="--speed-xy %"
               _label="XY speed"
               _low-label="-4" _high-label="4"
               low="-4.0" high="4.0" default="1.7"/>
      </hgroup>
 
      <hgroup>
-      <number id="speed-xz" type="slider" arg="-speed-xz %"
+      <number id="speed-xz" type="slider" arg="--speed-xz %"
               _label="XZ speed"
               _low-label="-4" _high-label="4"
               low="-4.0" high="4.0" default="1.9"/>
      </hgroup>
 
      <hgroup>
-      <number id="speed-yz" type="slider" arg="-speed-yz %"
+      <number id="speed-yz" type="slider" arg="--speed-yz %"
               _label="YZ speed"
               _low-label="-4" _high-label="4"
               low="-4.0" high="4.0" default="2.1"/>
 
     <vgroup>
      <hgroup>
-     <number id="walk-direction" type="slider" arg="-walk-direction %"
+     <number id="walk-direction" type="slider" arg="--walk-direction %"
              _label="Walk dir     "
              _low-label="-180" _high-label="180"
              low="-180.0" high="180.0" default="83.0"/>
      </hgroup>
 
      <hgroup>
-     <number id="walk-speed" type="slider" arg="-walk-speed %"
+     <number id="walk-speed" type="slider" arg="--walk-speed %"
              _label="Walk speed"
              _low-label="1" _high-label="100"
              low="1.0" high="100.0" default="20.0"/>
      </hgroup>
 
      <hgroup>
-     <number id="delay" type="slider" arg="-delay %"
+     <number id="delay" type="slider" arg="--delay %"
              _label="Frame rate" _low-label="Low" _high-label="High"
              low="0" high="100000" default="25000"
              convert="invert"/>
   <hgroup>
     <select id="view-mode">
       <option id="walk"      _label="Random motion"/>
-      <option id="walk"      _label="Walk"          arg-set="-view-mode walk"/>
-      <option id="turn"      _label="Turn"          arg-set="-view-mode turn"/>
-      <option id="walk-turn" _label="Walk and turn" arg-set="-view-mode walk-turn"/>
+      <option id="walk"      _label="Walk"          arg-set="--view-mode walk"/>
+      <option id="turn"      _label="Turn"          arg-set="--view-mode turn"/>
+      <option id="walk-turn" _label="Walk and turn" arg-set="--view-mode walk-turn"/>
     </select>
 
     <boolean id="orientation-marks" _label="Show orientation marks"
-              arg-set="-orientation-marks"/>
+              arg-set="--orientation-marks"/>
 
-    <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+    <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
     <xscreensaver-updater />
   </hgroup>
index 0156dc06596ab534add18055af158e57d188f2eb..6c983e1c0d840c4d603a262dfb8c37291867876d 100644 (file)
@@ -2,19 +2,19 @@
 
 <screensaver name="providence" _label="Providence" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=bnwRPPMopWc"/>
 
-  <number id="speed" type="slider" arg="-delay %"
+  <number id="speed" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="20000"
           convert="invert"/>
 
-  <boolean id="eye" _label="Draw eye" arg-unset="-no-eye"/>
+  <boolean id="eye" _label="Draw eye" arg-unset="--no-eye"/>
 
-  <boolean id="wire"    _label="Wireframe"              arg-set="-wireframe"/>
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="wire"    _label="Wireframe"              arg-set="--wireframe"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 64be3bf73c3acc96e95a3197b161e4ef56351b3f..441ad95bfae9cb51b0e995025f47080764c30b07 100644 (file)
@@ -2,35 +2,35 @@
 
 <screensaver name="pulsar" _label="Pulsar" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=pR0lpvOAbUo"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="10000"
           convert="invert"/>
 
-   <number id="quads" type="spinbutton" arg="-quads %"
+   <number id="quads" type="spinbutton" arg="--quads %"
             _label="Quad count" low="1" high="50" default="5"/>
 
   <hgroup>
    <vgroup>
-     <boolean id="light"     _label="Enable lighting" arg-set="-light"/>
-     <boolean id="fog"       _label="Enable fog" arg-set="-fog"/>
-     <boolean id="texture"   _label="Enable texturing" arg-set="-texture"/>
-     <boolean id="mipmap" _label="Enable texture mipmaps" arg-set="-mipmap"/>
+     <boolean id="light"     _label="Enable lighting" arg-set="--light"/>
+     <boolean id="fog"       _label="Enable fog" arg-set="--fog"/>
+     <boolean id="texture"   _label="Enable texturing" arg-set="--texture"/>
+     <boolean id="mipmap" _label="Enable texture mipmaps" arg-set="--mipmap"/>
    </vgroup>
    <vgroup>
-     <boolean id="no-blend"  _label="Enable blending" arg-unset="-no-blend"/>
-     <boolean id="antialias" _label="Anti-alias lines" arg-set="-antialias"/>
+     <boolean id="no-blend"  _label="Enable blending" arg-unset="--no-blend"/>
+     <boolean id="antialias" _label="Anti-alias lines" arg-set="--antialias"/>
      <boolean id="texture_quality" _label="Enable texture filtering"
-                              arg-set="-texture_quality"/>
-     <boolean id="do_depth" _label="Enable depth buffer" arg-set="-do_depth"/>
+                              arg-set="--texture_quality"/>
+     <boolean id="do_depth" _label="Enable depth buffer" arg-set="--do_depth"/>
    </vgroup>
  </hgroup>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 25685d94adfadb4e3608a1047b1d200dc74041af..d7f73efee71bbbab5fc1837849f7ed543eeddaa2 100644 (file)
@@ -2,29 +2,29 @@
 
 <screensaver name="pyro" _label="Pyro">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=JJqVfnMstuw"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Slow" _high-label="Fast"
           low="0" high="100000" default="10000"
           convert="invert"/>
 
-  <number id="count" type="slider" arg="-count %"
+  <number id="count" type="slider" arg="--count %"
           _label="Particle density" _low-label="Sparse" _high-label="Dense"
           low="10" high="2000" default="600"/>
 
-  <number id="launch" type="slider" arg="-frequency %"
+  <number id="launch" type="slider" arg="--frequency %"
           _label="Launch frequency" _low-label="Seldom" _high-label="Often"
           low="1" high="100" default="30"
           convert="invert"/>
 
-  <number id="scatter" type="slider" arg="-scatter %"
+  <number id="scatter" type="slider" arg="--scatter %"
           _label="Explosive yield" _low-label="Low" _high-label="High"
           low="1" high="400" default="100"/>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index a6f8f005bd4498270bfacc8ecd995dfcea908d06..9f9f1075551b8559a640bcf6b1a3ac5e15630163 100644 (file)
@@ -2,61 +2,61 @@
 
 <screensaver name="qix" _label="Qix">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=GPqDtJ0vF8U"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="10000"
             convert="invert"/>
 
-    <number id="segments" type="slider" arg="-segments %"
+    <number id="segments" type="slider" arg="--segments %"
             _label="Segments" _low-label="Few" _high-label="Many"
             low="10" high="500" default="250"/>
 
-    <number id="spread" type="slider" arg="-spread %"
+    <number id="spread" type="slider" arg="--spread %"
             _label="Density" _low-label="Sparse" _high-label="Dense"
             low="1" high="50" default="8"
             convert="invert"/>
 
-    <number id="color_contrast" type="slider" arg="-color-shift %"
+    <number id="color_contrast" type="slider" arg="--color-shift %"
             _label="Color contrast" _low-label="Low" _high-label="High"
              low="0" high="25" default="3"/>
    </vgroup>
    <vgroup>
     <select id="fill">
-      <option id="lines" _label="Line segments" arg-set="-hollow"/>
+      <option id="lines" _label="Line segments" arg-set="--hollow"/>
       <option id="solid" _label="Solid objects"/>
     </select>
 
     <select id="motion">
       <option id="linear" _label="Linear motion"/>
-      <option id="random" _label="Random motion" arg-set="-random"/>
+      <option id="random" _label="Random motion" arg-set="--random"/>
     </select>
 
     <select id="color-mode">
       <option id="additive" _label="Additive colors"/>
       <option id="subtractive" _label="Subtractive colors"
-              arg-set="-subtractive"/>
+              arg-set="--subtractive"/>
     </select>
 
-    <number id="count" type="spinbutton" arg="-count %"
+    <number id="count" type="spinbutton" arg="--count %"
             _label="Count" low="0" high="20" default="4"/>
-    <number id="size" type="spinbutton" arg="-size %"
+    <number id="size" type="spinbutton" arg="--size %"
              _label="Max size" low="200" high="1000" default="200"/>
-    <number id="poly" type="spinbutton" arg="-poly %"
+    <number id="poly" type="spinbutton" arg="--poly %"
              _label="Poly corners" low="2" high="100" default="2"/>
    </vgroup>
   </hgroup>
 
   <hgroup>
-   <boolean id="transparent" _label="Transparent" arg-unset="-non-transparent"/>
-   <boolean id="xor" _label="XOR" arg-set="-xor"/>
-   <boolean id="gravity" _label="Gravity" arg-set="-gravity"/>
-   <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+   <boolean id="transparent" _label="Transparent" arg-unset="--non-transparent"/>
+   <boolean id="xor" _label="XOR" arg-set="--xor"/>
+   <boolean id="gravity" _label="Gravity" arg-set="--gravity"/>
+   <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
   </hgroup>
 
   <xscreensaver-updater />
index ccce6c5078d672418a6a3723929b981de2742073..fb94a3bb0883cc2260bf7907ff8833fef18bbb22 100644 (file)
@@ -2,39 +2,39 @@
 
 <screensaver name="quasicrystal" _label="Quasi-Crystal" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=JsGf65d5TfM"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="30000"
             convert="invert"/>
 
-    <number id="speed" type="slider" arg="-speed %"
+    <number id="speed" type="slider" arg="--speed %"
             _label="Speed" _low-label="Slow" _high-label="Fast"
             low="0.1" high="5.0" default="1.0"
             convert="ratio"/>
    </vgroup>
    <vgroup>
-    <number id="count" type="slider" arg="-count %"
+    <number id="count" type="slider" arg="--count %"
             _label="Density" _low-label="Low" _high-label="High"
             low="7" high="37" default="17"
             convert="invert"/>
 
-    <number id="contrast" type="slider" arg="-contrast %"
+    <number id="contrast" type="slider" arg="--contrast %"
             _label="Contrast" _low-label="Low" _high-label="High"
             low="0" high="100" default="30"/>
    </vgroup>
   </hgroup>
 
   <hgroup>
-   <boolean id="wander"    _label="Displacement" arg-unset="-no-wander"/>
-   <boolean id="spin"      _label="Rotation"     arg-unset="-no-spin"/>
-   <boolean id="symmetric" _label="Symmetry"     arg-unset="-no-symmetry"/>
-   <boolean id="showfps"   _label="Show frame rate" arg-set="-fps"/>
+   <boolean id="wander"    _label="Displacement" arg-unset="--no-wander"/>
+   <boolean id="spin"      _label="Rotation"     arg-unset="--no-spin"/>
+   <boolean id="symmetric" _label="Symmetry"     arg-unset="--no-symmetry"/>
+   <boolean id="showfps"   _label="Show frame rate" arg-set="--fps"/>
   </hgroup>
 
   <xscreensaver-updater />
index aa949fd4617d39ab8aff36d2bb067a79b88b917d..a3a34bc3cc2d7ca5644caebd040278e722a66892 100644 (file)
@@ -2,18 +2,18 @@
 
 <screensaver name="queens" _label="Queens" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=Ssy0ldFDeAs"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="20000"
           convert="invert"/>
 
   <hgroup>
-   <boolean id="wire"    _label="Wireframe" arg-set="-wireframe"/>
-   <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+   <boolean id="wire"    _label="Wireframe" arg-set="--wireframe"/>
+   <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
   </hgroup>
 
   <xscreensaver-updater />
index 0e05c8f3ce38b3efa4097c338d81a245fc836099..f62f7179a49ec4bb86898a3886929766f8a63283 100644 (file)
@@ -2,39 +2,39 @@
 
 <screensaver name="raverhoop" _label="Raver Hoop" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=0k2sP_Imb80" />
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="20000"
             convert="invert"/>
 
-    <number id="ncolors" type="slider" arg="-ncolors %"
+    <number id="ncolors" type="slider" arg="--ncolors %"
             _label="Colors" _low-label="1" _high-label="64"
             low="1" high="64" default="12"/>
 
-    <number id="lights" type="slider" arg="-lights %"
+    <number id="lights" type="slider" arg="--lights %"
             _label="Lights" _low-label="Sparse" _high-label="Dense"
             low="3" high="512" default="200"/>
 
    </vgroup>
    <vgroup>
 
-    <number id="speed" type="slider" arg="-speed %"
+    <number id="speed" type="slider" arg="--speed %"
             _label="Speed, motion" _low-label="Slow" _high-label="Fast"
             low="0.1" high="5.0" default="1.0"
             convert="ratio"/>
 
-    <number id="light-speed" type="slider" arg="-light-speed %"
+    <number id="light-speed" type="slider" arg="--light-speed %"
             _label="Speed, lights" _low-label="Slow" _high-label="Fast"
             low="0.1" high="5.0" default="1.0"
             convert="ratio"/>
 
-    <number id="sustain" type="slider" arg="-sustain %"
+    <number id="sustain" type="slider" arg="--sustain %"
             _label="Sustain" _low-label="Brief" _high-label="Long"
             low="0.1" high="5.0" default="1.0"
             convert="ratio"/>
@@ -42,9 +42,9 @@
   </hgroup>
 
   <hgroup>
-   <boolean id="wander" _label="Wander"    arg-set="-wander"/>
-   <boolean id="spin"   _label="Spin"      arg-set="-spin"/>
-   <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+   <boolean id="wander" _label="Wander"    arg-set="--wander"/>
+   <boolean id="spin"   _label="Spin"      arg-set="--spin"/>
+   <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
   </hgroup>
 
   <xscreensaver-updater />
index 290c8689d7fa8f2a61c7304d646b89f68d4adc4e..f59b5bcc27c914ba7936b17d64ec75d68b0e3321 100644 (file)
@@ -2,44 +2,44 @@
 
 <screensaver name="razzledazzle" _label="Razzle Dazzle" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=tV_70VxJFfs" />
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="30000"
             convert="invert"/>
 
-    <number id="speed" type="slider" arg="-speed %"
+    <number id="speed" type="slider" arg="--speed %"
             _label="Speed" _low-label="Slow" _high-label="Fast"
             low="0.1" high="10" default="1.0"
             convert="ratio"/>
 
-    <number id="ncolors" type="slider" arg="-ncolors %"
+    <number id="ncolors" type="slider" arg="--ncolors %"
             _label="Colors" _low-label="Mono" _high-label="Many"
             low="2" high="200" default="2"/>
 
    </vgroup>
    <vgroup>
 
-    <number id="density" type="slider" arg="-density %"
+    <number id="density" type="slider" arg="--density %"
             _label="Density" _low-label="Sparse" _high-label="Dense"
             low="1.0" high="10.0" default="5.0"/>
 
-    <number id="thickness" type="slider" arg="-thickness %"
+    <number id="thickness" type="slider" arg="--thickness %"
             _label="Lines" _low-label="Thin" _high-label="Thick"
             low="0.05" high="1.0" default="0.1"/>
 
     <select id="object">
-     <option _label="Ship Outlines" arg-set="-mode ships"/>
-     <option _label="Flat Pattern" arg-set="-mode flat"/>
+     <option _label="Ship Outlines" arg-set="--mode ships"/>
+     <option _label="Flat Pattern" arg-set="--mode flat"/>
      <option id="random" _label="Ships or flat pattern"/>
     </select>
 
-    <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+    <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
    </vgroup>
   </hgroup>
index e29dff712946f59740292f4c672d36eda1e9e5b2..f87dc643296094e1f79c275247c9eafc0ff7ade0 100644 (file)
@@ -2,35 +2,35 @@
 
 <screensaver name="rdbomb" _label="RD-Bomb">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=xiooDyrZSsY"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Slow" _high-label="Fast"
             low="0" high="250000" default="30000"
             convert="invert"/>
 
-    <number id="speed" type="slider" arg="-speed %"
+    <number id="speed" type="slider" arg="--speed %"
              _label="Wander speed" _low-label="Slow" _high-label="Fast"
              low="0.0" high="10.0" default="0.0"/>
 
-    <number id="size" type="slider" arg="-size %"
+    <number id="size" type="slider" arg="--size %"
              _label="Fill screen" _low-label="1%" _high-label="100%"
              low="0.01" high="1.0" default="1.0"/>
    </vgroup>
    <vgroup>
-    <number id="epoch" type="slider" arg="-epoch %"
+    <number id="epoch" type="slider" arg="--epoch %"
              _label="Epoch" _low-label="Small" _high-label="Large"
              low="1000" high="300000" default="40000"/>
 
-    <number id="ncolors" type="slider" arg="-ncolors %"
+    <number id="ncolors" type="slider" arg="--ncolors %"
               _label="Number of colors" _low-label="Two" _high-label="Many"
               low="1" high="255" default="255"/>
 
-    <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+    <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
     <xscreensaver-updater />
 
 
   <hgroup>
    <vgroup>
-    <number id="width" type="spinbutton" arg="-width %"
+    <number id="width" type="spinbutton" arg="--width %"
             _label="X tile size" low="0" high="500" default="0"/>
-    <number id="pixheight" type="spinbutton" arg="-height %"
+    <number id="pixheight" type="spinbutton" arg="--height %"
             _label="Y tile size" low="0" high="500" default="0"/>
    </vgroup>
    <vgroup>
-    <number id="reaction" type="spinbutton" arg="-reaction %"
+    <number id="reaction" type="spinbutton" arg="--reaction %"
             _label="Reaction" low="-1" high="2" default="-1"/>
-    <number id="diffusion" type="spinbutton" arg="-diffusion %"
+    <number id="diffusion" type="spinbutton" arg="--diffusion %"
             _label="Diffusion" low="-1" high="2" default="-1"/>
 
     <!-- #### default is wrong -->
-    <number id="radius" type="spinbutton" arg="-radius %"
+    <number id="radius" type="spinbutton" arg="--radius %"
            _label="Seed radius" low="-1" high="60" default="-1"/>
 
    </vgroup>
index 8a2e1be95d5b65de68056c0d147bf9b19cea78cc..72bb032350a53545ba823df0e57cd905469fbe5e 100644 (file)
@@ -2,43 +2,43 @@
 
 <screensaver name="ripples" _label="Ripples">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=w8YXAalnRzc"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="50000"
             convert="invert"/>
 
-    <number id="duration" type="slider" arg="-duration %"
+    <number id="duration" type="slider" arg="--duration %"
             _label="Duration" _low-label="10 seconds" _high-label="10 minutes"
             low="10" high="600" default="120"/>
 
-    <number id="rate" type="slider" arg="-rate %"
+    <number id="rate" type="slider" arg="--rate %"
             _label="Drippiness" _low-label="Drizzle" _high-label="Storm"
             low="1" high="100" default="5"
             convert="invert"/>
 
-    <number id="fluidity" type="slider" arg="-fluidity %"
+    <number id="fluidity" type="slider" arg="--fluidity %"
             _label="Fluidity" _low-label="Small drops" _high-label="Big drops"
             low="0" high="16" default="6"/>
    </vgroup>
    <vgroup>
 
     <hgroup>
-     <boolean id="stir" _label="Moving splashes" arg-set="-stir"/>
-     <boolean id="oily" _label="Psychedelic colors" arg-set="-oily"/>
-     <boolean id="gray" _label="Grayscale" arg-set="-grayscale"/>
+     <boolean id="stir" _label="Moving splashes" arg-set="--stir"/>
+     <boolean id="oily" _label="Psychedelic colors" arg-set="--oily"/>
+     <boolean id="gray" _label="Grayscale" arg-set="--grayscale"/>
     </hgroup>
 
     <xscreensaver-image />
 
-    <number id="light" type="spinbutton" arg="-light %"
+    <number id="light" type="spinbutton" arg="--light %"
             _label="Magic lighting effect" low="0" high="8" default="4"/>
-    <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+    <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
     <xscreensaver-updater />
 
index 964de8219f70aacb049739cef9b4ef3996a583b6..c596cfa80f1a6a7bb1570d13929186a42574dbab 100644 (file)
@@ -2,38 +2,34 @@
 
 <screensaver name="rocks" _label="Rocks">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=7x7PMI7LFK0"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="50000"
           convert="invert"/>
 
-  <number id="count" type="slider" arg="-count %"
+  <number id="count" type="slider" arg="--count %"
           _label="Count" _low-label="Few" _high-label="Many"
            low="0" high="200" default="100"/>
 
-  <number id="speed" type="slider" arg="-speed %"
+  <number id="speed" type="slider" arg="--speed %"
           _label="Velocity" _low-label="Slow" _high-label="Fast"
           low="1" high="100" default="100"/>
 
   <hgroup>
-    <boolean id="rotate" _label="Rotation" arg-unset="-no-rotate"/>
-    <boolean id="steer" _label="Steering" arg-unset="-no-move"/>
-    <boolean id="3d" _label="Do Red/Blue 3D separation" arg-set="-3d"/>
+    <boolean id="rotate" _label="Rotation" arg-unset="--no-rotate"/>
+    <boolean id="steer" _label="Steering" arg-unset="--no-move"/>
+    <boolean id="3d" _label="Do Red/Blue 3D separation" arg-set="--3d"/>
   </hgroup>
 
-  <number id="ncolors" type="slider" arg="-colors %"
+  <number id="ncolors" type="slider" arg="--colors %"
             _label="Number of colors" _low-label="Two" _high-label="Many"
             low="1" high="255" default="5"/>
 
-  <!-- #### -delta3d [1.5] -->
-  <!-- #### -left3d [Blue] -->
-  <!-- #### -right3d [Red] -->
-
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 5ef2526df4581fdaaf734bacd5e0b2621eb1e2e9..688369107b663ecd48e03b5c1e530712aeed8c00 100644 (file)
@@ -4,32 +4,32 @@
 
   <video href="https://www.youtube.com/watch?v=KEW5TuPbWyg"/>
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <hgroup>
     <select id="view-mode">
       <option id="walk"      _label="Random motion"/>
-      <option id="walk"      _label="Walk"      arg-set="-view-mode walk"/>
-      <option id="turn"      _label="Turn"      arg-set="-view-mode turn"/>
+      <option id="walk"      _label="Walk"      arg-set="--view-mode walk"/>
+      <option id="turn"      _label="Turn"      arg-set="--view-mode turn"/>
     </select>
 
-    <number id="surface-order" type="spinbutton" arg="-surface-order %"
+    <number id="surface-order" type="spinbutton" arg="--surface-order %"
             _label="Order of the surface" low="2" high="9" default="3"/>
 
     <boolean id="orientation-marks" _label="Show orientation marks"
-              arg-set="-orientation-marks"/>
+              arg-set="--orientation-marks"/>
   </hgroup>
 
   <hgroup>
     <boolean id="deform" _label="Deform the projective plane"
-              arg-unset="-no-deform"/>
+              arg-unset="--no-deform"/>
 
-    <number id="deform-speed" type="slider" arg="-deformation-speed %"
+    <number id="deform-speed" type="slider" arg="--deformation-speed %"
             _label="Deformation speed"
             _low-label="1.0" _high-label="100.0"
             low="1.0" high="100.0" default="10.0"/>
 
-    <number id="init-deform" type="slider" arg="-initial-deformation %"
+    <number id="init-deform" type="slider" arg="--initial-deformation %"
             _label="Initial deformation"
             _low-label="0.0" _high-label="1000.0"
             low="0.0" high="1000.0" default="1000.0"/>
     <vgroup>
       <select id="display-mode">
         <option id="random"      _label="Random surface"/>
-        <option id="wire"        _label="Wireframe mesh"      arg-set="-mode wireframe"/>
-        <option id="surface"     _label="Solid surface"       arg-set="-mode surface"/>
-        <option id="transparent" _label="Transparent surface" arg-set="-mode transparent"/>
+        <option id="wire"        _label="Wireframe mesh"      arg-set="--mode wireframe"/>
+        <option id="surface"     _label="Solid surface"       arg-set="--mode surface"/>
+        <option id="transparent" _label="Transparent surface" arg-set="--mode transparent"/>
       </select>
 
       <select id="appearance">
         <option id="random" _label="Random pattern"/>
-        <option id="solid"  _label="Solid object"    arg-set="-appearance solid"/>
-        <option id="bands"  _label="Distance bands"  arg-set="-appearance distance-bands"/>
-        <option id="bands"  _label="Direction bands" arg-set="-appearance direction-bands"/>
+        <option id="solid"  _label="Solid object"    arg-set="--appearance solid"/>
+        <option id="bands"  _label="Distance bands"  arg-set="--appearance distance-bands"/>
+        <option id="bands"  _label="Direction bands" arg-set="--appearance direction-bands"/>
       </select>
 
       <select id="colors">
         <option id="random"   _label="Random coloration"/>
-        <option id="twosided" _label="One-sided"        arg-set="-colors one-sided"/>
-        <option id="twosided" _label="Two-sided"        arg-set="-colors two-sided"/>
-        <option id="rainbow"  _label="Distance colors"  arg-set="-colors distance"/>
-        <option id="rainbow"  _label="Direction colors" arg-set="-colors direction"/>
+        <option id="twosided" _label="One-sided"        arg-set="--colors one-sided"/>
+        <option id="twosided" _label="Two-sided"        arg-set="--colors two-sided"/>
+        <option id="rainbow"  _label="Distance colors"  arg-set="--colors distance"/>
+        <option id="rainbow"  _label="Direction colors" arg-set="--colors direction"/>
       </select>
 
       <boolean id="change-colors" _label="Change colors"
-                arg-set="-change-colors"/>
+                arg-set="--change-colors"/>
 
       <select id="projection">
         <option id="random"          _label="Random Projection"/>
-        <option id="perspective"  _label="Perspective"  arg-set="-projection perspective"/>
-        <option id="orthographic" _label="Orthographic" arg-set="-projection orthographic"/>
+        <option id="perspective"  _label="Perspective"  arg-set="--projection perspective"/>
+        <option id="orthographic" _label="Orthographic" arg-set="--projection orthographic"/>
       </select>
     </vgroup>
 
     <vgroup>
-      <number id="speed-x" type="slider" arg="-speed-x %"
+      <number id="speed-x" type="slider" arg="--speed-x %"
               _label="X rotation speed"
               _low-label="-4.0" _high-label="4.0"
               low="-4.0" high="4.0" default="1.1"/>
 
-      <number id="speed-y" type="slider" arg="-speed-y %"
+      <number id="speed-y" type="slider" arg="--speed-y %"
               _label="Y rotation speed"
               _low-label="-4.0" _high-label="4.0"
               low="-4.0" high="4.0" default="1.3"/>
 
-      <number id="speed-z" type="slider" arg="-speed-z %"
+      <number id="speed-z" type="slider" arg="--speed-z %"
               _label="Z rotation speed"
               _low-label="-4.0" _high-label="4.0"
               low="-4.0" high="4.0" default="1.5"/>
     </vgroup>
 
     <vgroup>
-     <number id="walk-direction" type="slider" arg="-walk-direction %"
+     <number id="walk-direction" type="slider" arg="--walk-direction %"
              _label="Walking direction"
              _low-label="-180.0" _high-label="180.0"
              low="-180.0" high="180.0" default="83.0"/>
 
-     <number id="walk-speed" type="slider" arg="-walk-speed %"
+     <number id="walk-speed" type="slider" arg="--walk-speed %"
              _label="Walking speed"
              _low-label="1.0" _high-label="100.0"
              low="1.0" high="100.0" default="20.0"/>
 
-     <number id="delay" type="slider" arg="-delay %"
+     <number id="delay" type="slider" arg="--delay %"
              _label="Frame rate" _low-label="Low" _high-label="High"
              low="0" high="100000" default="25000"
              convert="invert"/>
 
     <vgroup>
      <xscreensaver-updater />
-     <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+     <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
     </vgroup>
 
   </hgroup>
index e4f0207f964480f04c52f28605ef0203d5a26b14..9232c58d030c982e834bfd13de07c322e4421805 100644 (file)
@@ -2,26 +2,26 @@
 
 <screensaver name="rorschach" _label="Rorschach">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=G1OLn4Mdk5Y"/>
 
-  <number id="iterations" type="slider" arg="-iterations %"
+  <number id="iterations" type="slider" arg="--iterations %"
           _label="Iterations" _low-label="Small" _high-label="Large"
           low="0" high="10000" default="4000"/>
 
-  <number id="offset" type="slider" arg="-offset %"
+  <number id="offset" type="slider" arg="--offset %"
           _label="Offset" _low-label="Small" _high-label="Large"
           low="0" high="50" default="7"/>
 
-  <boolean id="xsymmetry" _label="With X symmetry" arg-unset="-no-xsymmetry"/>
-  <boolean id="ysymmetry" _label="With Y symmetry" arg-set="-ysymmetry"/>
+  <boolean id="xsymmetry" _label="With X symmetry" arg-unset="--no-xsymmetry"/>
+  <boolean id="ysymmetry" _label="With Y symmetry" arg-set="--ysymmetry"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Linger" _low-label="1 second" _high-label="1 minute"
           low="1" high="60" default="5"/>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 2ffddf1ae0d295f7c01406e532edf5497ec7fbdb..d97c3bb23b87691911d40ca7a3acdf1d11d15c0a 100644 (file)
@@ -2,30 +2,30 @@
 
 <screensaver name="rotor" _label="Rotor">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=HWcEvT1keDA"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="10000"
           convert="invert"/>
 
-  <number id="cycles" type="slider" arg="-cycles %"
+  <number id="cycles" type="slider" arg="--cycles %"
            _label="Length" _low-label="Short" _high-label="Long"
           low="2" high="100" default="20"/>
 
-  <number id="ncolors" type="slider" arg="-ncolors %"
+  <number id="ncolors" type="slider" arg="--ncolors %"
             _label="Number of colors" _low-label="Two" _high-label="Many"
             low="1" high="255" default="200"/>
 
-  <number id="count" type="spinbutton" arg="-count %"
+  <number id="count" type="spinbutton" arg="--count %"
           _label="Count" low="0" high="20" default="4"/>
 
-  <number id="size" type="spinbutton" arg="-size %"
+  <number id="size" type="spinbutton" arg="--size %"
            _label="Size" low="-50" high="50" default="-6"/>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index c333d9579d783b3cc735dd3ff7d25ad57f294eb2..e4099a46d263168fc07007617072f377598968c4 100644 (file)
@@ -2,36 +2,34 @@
 
 <screensaver name="rotzoomer" _label="Rot Zoomer">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=ecl8ykLswX8"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="10000" convert="invert"/>
 
-  <number id="duration" type="slider" arg="-duration %"
+  <number id="duration" type="slider" arg="--duration %"
           _label="Duration" _low-label="10 seconds" _high-label="10 minutes"
           low="10" high="600" default="120"/>
 
-  <number id="n" type="spinbutton" arg="-n %"
+  <number id="n" type="spinbutton" arg="--n %"
           _label="Rectangle count" low="1" high="20" default="2"/>
 
   <select id="mode">
    <option id="random"     _label="Random"/>
-   <option id="stationary" _label="Stationary rectangles" arg-set="-mode stationary"/>
-   <option id="move"       _label="Wandering rectangles" arg-set="-mode move"/>
-   <option id="sweep"      _label="Sweeping arcs"        arg-set="-mode sweep"/>
-   <option id="circle"     _label="Rotating discs"       arg-set="-mode circle"/>
+   <option id="stationary" _label="Stationary rectangles" arg-set="--mode stationary"/>
+   <option id="move"       _label="Wandering rectangles" arg-set="--mode move"/>
+   <option id="sweep"      _label="Sweeping arcs"        arg-set="--mode sweep"/>
+   <option id="circle"     _label="Rotating discs"       arg-set="--mode circle"/>
   </select>
 
-  <boolean id="anim" _label="Animate" arg-unset="-no-anim"/>
-
-<!--  <boolean id="shm" _label="Use shared memory" arg-unset="-no-shm"/> -->
+  <boolean id="anim" _label="Animate" arg-unset="--no-anim"/>
 
   <xscreensaver-image />
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index ea3400a1ff8ec7c4005f407fbd7944208ce01604..d5696661d8f3d88d8a6f91e5670945f304cedaf2 100644 (file)
@@ -2,29 +2,29 @@
 
 <screensaver name="rubik" _label="Rubik" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=AQdJgvyVkXU"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="20000"
           convert="invert"/>
 
-  <number id="count" type="spinbutton" arg="-count %"
+  <number id="count" type="spinbutton" arg="--count %"
           _label="Count" low="-100" high="100" default="-30"/>
 
-  <number id="cycles" type="slider" arg="-cycles %"
+  <number id="cycles" type="slider" arg="--cycles %"
            _label="Rotation" _low-label="Slow" _high-label="Fast"
           low="3" high="200" default="20"
           convert="invert"/>
 
-  <number id="size" type="spinbutton" arg="-size %"
+  <number id="size" type="spinbutton" arg="--size %"
            _label="Size" low="-20" high="20" default="-6"/>
 
-  <boolean id="shuffle" _label="Hide shuffling" arg-set="-hideshuffling"/>
+  <boolean id="shuffle" _label="Hide shuffling" arg-set="--hideshuffling"/>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index e0f6e5a8b3a5182479361ff81e7c77dd9107dfa2..1f1431221856f9b8542e3fdef88a7fb350c30e62 100644 (file)
@@ -2,54 +2,54 @@
 
 <screensaver name="rubikblocks" _label="Rubik Blocks" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=B2sGaRLWz-A"/>
 
   <hgroup>
    <vgroup>
 
-    <number id="speed" type="slider" arg="-delay %"
+    <number id="speed" type="slider" arg="--delay %"
       _label="Frame rate" _low-label="Low" _high-label="High"
       low="0" high="100000" default="20000" convert="invert"/>
 
-    <number id="cubesize" type="slider" arg="-cubesize %"
+    <number id="cubesize" type="slider" arg="--cubesize %"
       _label="Cube size" _low-label="Small" _high-label="Large"
       low="0.4" high="2.0" default="1.0"
       convert="ratio"/>
 
-    <number id="rotspeed" type="slider" arg="-rotspeed %"
+    <number id="rotspeed" type="slider" arg="--rotspeed %"
       _label="Rotation" _low-label="Slow" _high-label="Fast"
       low="1.0" high="10.0" default="3.0"/>
 
     <select id="start">
      <option id="cube"    _label="Start as cube"/>
-     <option id="shuffle" _label="Start as random shape" arg-set="-randomize"/>
+     <option id="shuffle" _label="Start as random shape" arg-set="--randomize"/>
     </select>
 
    </vgroup>
    <vgroup>
 
-    <number id="spinspeed" type="slider" arg="-spinspeed %"
+    <number id="spinspeed" type="slider" arg="--spinspeed %"
       _label="Spin" _low-label="Slow" _high-label="Fast"
       low="0.01" high="4.0" default="0.1"/>
 
-    <number id="wanderspeed" type="slider" arg="-wanderspeed %"
+    <number id="wanderspeed" type="slider" arg="--wanderspeed %"
       _label="Wander" _low-label="Slow" _high-label="Fast"
       low="0.001" high="0.1" default="0.005"/>
 
-    <number id="wait" type="slider" arg="-wait %"
+    <number id="wait" type="slider" arg="--wait %"
       _label="Linger" _low-label="Short" _high-label="Long"
       low="10.0" high="100.0" default="40.0"/>
 
     <hgroup>
-     <boolean id="spin"    _label="Spin"     arg-unset="-no-spin"/>
-     <boolean id="wander"  _label="Wander"   arg-unset="-no-wander"/>
-     <boolean id="tex"     _label="Outlines" arg-unset="-no-texture"/>
+     <boolean id="spin"    _label="Spin"     arg-unset="--no-spin"/>
+     <boolean id="wander"  _label="Wander"   arg-unset="--no-wander"/>
+     <boolean id="tex"     _label="Outlines" arg-unset="--no-texture"/>
     </hgroup>
     <hgroup>
-     <boolean id="wire"    _label="Wireframe"      arg-set="-wireframe"/>
-     <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+     <boolean id="wire"    _label="Wireframe"      arg-set="--wireframe"/>
+     <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
     </hgroup>
 
    </vgroup>
index 6a72def0e798f5bdb429fde8bf2c3810cd0eefbf..e874e7416bba32480fdf6d7fbced27e7b9dfe76d 100644 (file)
@@ -2,30 +2,30 @@
 
 <screensaver name="sballs" _label="SBalls" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=pcfqdvvPG8k"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="30000"
           convert="invert"/>
 
   <select id="object">
     <option id="random" _label="Random"/>
-    <option id="tetra" _label="Tetrahedron" arg-set="-object 1"/>
-    <option id="cube" _label="Cube" arg-set="-object 2"/>
-    <option id="octa" _label="Octahedron" arg-set="-object 3"/>
-    <option id="dodeca" _label="Dodecahedron" arg-set="-object 4"/>
-    <option id="icosa" _label="Icosahedron" arg-set="-object 5"/>
-    <option id="plane" _label="Plane" arg-set="-object 6"/>
-    <option id="pyramid" _label="Pyramid" arg-set="-object 7"/>
-    <option id="star" _label="Star" arg-set="-object 8"/>
+    <option id="tetra" _label="Tetrahedron" arg-set="--object 1"/>
+    <option id="cube" _label="Cube" arg-set="--object 2"/>
+    <option id="octa" _label="Octahedron" arg-set="--object 3"/>
+    <option id="dodeca" _label="Dodecahedron" arg-set="--object 4"/>
+    <option id="icosa" _label="Icosahedron" arg-set="--object 5"/>
+    <option id="plane" _label="Plane" arg-set="--object 6"/>
+    <option id="pyramid" _label="Pyramid" arg-set="--object 7"/>
+    <option id="star" _label="Star" arg-set="--object 8"/>
   </select>
 
-  <boolean id="tex"     _label="Textured"  arg-unset="-no-texture"/>
-  <boolean id="wire"    _label="Wireframe"   arg-set="-wireframe"/>
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="tex"     _label="Textured"  arg-unset="--no-texture"/>
+  <boolean id="wire"    _label="Wireframe"   arg-set="--wireframe"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 72fe9b3bf1db6ee12b1d52fd998aea730b4611cc..b3fee4c05b14472865b548e00029c06d2fb8d6f2 100644 (file)
@@ -2,32 +2,32 @@
 
 <screensaver name="scooter" _label="Scooter" gl="no">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=Qqzk1BldlXg"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="20000"
             convert="invert"/>
-    <number id="cycles" type="slider" arg="-cycles %"
+    <number id="cycles" type="slider" arg="--cycles %"
             _label="Boat Speed" _low-label="Very slow" _high-label="Very fast"
             low="0" high="1000" default="5"/>
-    <number id="count" type="slider" arg="-count %"
+    <number id="count" type="slider" arg="--count %"
             _label="Number of doors" _low-label="4" _high-label="40"
             low="4" high="40" default="24"/>
    </vgroup>
    <vgroup>
-    <number id="size" type="slider" arg="-size %"
+    <number id="size" type="slider" arg="--size %"
             _label="Number of stars" _low-label="1" _high-label="200"
             low="0" high="200" default="100"/>
-    <number id="ncolors" type="slider" arg="-ncolors %"
+    <number id="ncolors" type="slider" arg="--ncolors %"
             _label="Number of colors" _low-label="Mono" _high-label="Colorful"
             low="0" high="200" default="200"/>
 
-    <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+    <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
     <xscreensaver-updater />
    </vgroup>
index 7ea34a049396d4e35a1a816857da74709d290f9c..db1895b9179bc3552446d4b368a03934c581655a 100644 (file)
@@ -2,31 +2,28 @@
 
 <screensaver name="shadebobs" _label="Shade Bobs">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=gJtxnQ5_8Zk"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="20000" default="10000"
           convert="invert"/>
 
-  <!-- #### -degrees [0] -->
-  <!-- #### -color [random] -->
-
-  <number id="ncolors" type="slider" arg="-ncolors %"
+  <number id="ncolors" type="slider" arg="--ncolors %"
             _label="Number of colors" _low-label="Two" _high-label="Many"
             low="1" high="255" default="64"/>
 
-  <number id="count" type="slider" arg="-count %"
+  <number id="count" type="slider" arg="--count %"
           _label="Count" _low-label="One" _high-label="Many"
           low="1" high="20" default="4"/>
 
-  <number id="cycles" type="slider" arg="-cycles %"
+  <number id="cycles" type="slider" arg="--cycles %"
            _label="Duration" _low-label="Short" _high-label="Long"
           low="0" high="100" default="10"/>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index dce4c5cdcaa0403f82695707ff0406072ce782f4..6c06c420329545c15164d4ed2b06c5a9c6946fc3 100644 (file)
@@ -2,28 +2,28 @@
 
 <screensaver name="sierpinski" _label="Sierpinski">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=m0zdPWuFhjA"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="1000000" default="400000"
           convert="invert"/>
 
-  <number id="count" type="slider" arg="-count %"
+  <number id="count" type="slider" arg="--count %"
           _label="Points" _low-label="Few" _high-label="Many"
            low="10" high="10000" default="2000"/>
 
-  <number id="cycles" type="slider" arg="-cycles %"
+  <number id="cycles" type="slider" arg="--cycles %"
            _label="Timeout" _low-label="Small" _high-label="Large"
           low="0" high="1000" default="100"/>
 
-  <number id="ncolors" type="slider" arg="-ncolors %"
+  <number id="ncolors" type="slider" arg="--ncolors %"
             _label="Number of colors" _low-label="Two" _high-label="Many"
             low="1" high="255" default="64"/>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index c7dcd3b284364e53031e6778fdec1f464b269411..10524d32d94727ce6fcedebd81ecad7ab5836f32 100644 (file)
@@ -2,25 +2,25 @@
 
 <screensaver name="sierpinski3d" _label="Sierpinski 3D" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=TGQRLAhDLv0"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="20000"
           convert="invert"/>
 
-  <number id="descent" type="slider" arg="-speed %"
+  <number id="descent" type="slider" arg="--speed %"
           _label="Duration" _low-label="Short" _high-label="Long"
           low="2" high="500" default="150"
           convert="invert"/>
 
-  <number id="depth" type="spinbutton" arg="-depth %"
+  <number id="depth" type="spinbutton" arg="--depth %"
           _label="Max depth" low="1" high="6" default="5"/>
 
-  <boolean id="wire"    _label="Wireframe"              arg-set="-wireframe"/>
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="wire"    _label="Wireframe"              arg-set="--wireframe"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index e9ba642fea0824d369272833613224d174ad9899..3f89aaecdf046b93d4113e85375bec9eaf44f228 100644 (file)
@@ -2,61 +2,61 @@
 
 <screensaver name="skytentacles" _label="Sky Tentacles" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=iCjtXUSQv1A"/>
 
  <hgroup>
   <vgroup>
-  <number id="count" type="slider" arg="-count %"
+  <number id="count" type="slider" arg="--count %"
           _label="Tentacles" _low-label="1" _high-label="20"
           low="1" high="20" default="9"/>
 
-   <number id="length" type="slider" arg="-length %"
+   <number id="length" type="slider" arg="--length %"
            _label="Length" _low-label="Short" _high-label="Long"
            low="1.0" high="20.0" default="9.0"/>
 
-   <number id="thickness" type="slider" arg="-thickness %"
+   <number id="thickness" type="slider" arg="--thickness %"
            _label="Thickness" _low-label="Thin" _high-label="Thick"
            low="0.1" high="5.0" default="1.0"
            convert="ratio"/>
 
-   <number id="flexibility" type="slider" arg="-flexibility %"
+   <number id="flexibility" type="slider" arg="--flexibility %"
            _label="Flexibility" _low-label="Low" _high-label="High"
            low="0.1" high="1.0" default="0.35"/>
 
-   <number id="wiggliness" type="slider" arg="-wiggliness %"
+   <number id="wiggliness" type="slider" arg="--wiggliness %"
            _label="Wiggliness" _low-label="Low" _high-label="High"
            low="0.1" high="1.0" default="0.35"/>
 
   </vgroup>
 
   <vgroup>
-   <number id="delay" type="slider" arg="-delay %"
+   <number id="delay" type="slider" arg="--delay %"
            _label="Frame rate" _low-label="Slow" _high-label="Fast"
            low="0" high="100000" default="30000"
            convert="invert"/>
 
-   <number id="speed" type="slider" arg="-speed %"
+   <number id="speed" type="slider" arg="--speed %"
            _label="Speed" _low-label="Slow" _high-label="Fast"
            low="0.1" high="8.0" default="1.0"
            convert="ratio"/>
 
-   <number id="slices" type="slider" arg="-slices %"
+   <number id="slices" type="slider" arg="--slices %"
            _label="X resolution" _low-label="Low" _high-label="High"
            low="3" high="50" default="16"/>
-   <number id="segments" type="slider" arg="-segments %"
+   <number id="segments" type="slider" arg="--segments %"
            _label="Y resolution" _low-label="Low" _high-label="High"
            low="2" high="50" default="24"/>
 
    <hgroup>
-    <boolean id="skin" _label="Draw skin"           arg-unset="-no-texture"/>
-    <boolean id="cel"  _label="Cartoony"            arg-set="-cel"/>
-    <boolean id="intersect" _label="Tentacles can intersect" arg-set="-intersect"/>
+    <boolean id="skin" _label="Draw skin"           arg-unset="--no-texture"/>
+    <boolean id="cel"  _label="Cartoony"            arg-set="--cel"/>
+    <boolean id="intersect" _label="Tentacles can intersect" arg-set="--intersect"/>
    </hgroup>
    <hgroup>
-    <boolean id="smooth" _label="Smooth"           arg-unset="-no-smooth"/>
-    <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+    <boolean id="smooth" _label="Smooth"           arg-unset="--no-smooth"/>
+    <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
    </hgroup>
 
   </vgroup>
index a303df2f60061e4c310f949f9337ff0f78f3b09f..ab00e2f3eac3a5aa0ba53fcb33980fb37e89308c 100644 (file)
@@ -2,22 +2,22 @@
 
 <screensaver name="slidescreen" _label="Slide Screen">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=uKNE4xCdlno"/>
 
   <hgroup>
    <vgroup>
-   <number id="delay" type="slider" arg="-delay %"
+   <number id="delay" type="slider" arg="--delay %"
            _label="Frame rate" _low-label="Low" _high-label="High"
            low="0" high="100000" default="50000"
            convert="invert"/>
 
-   <number id="delay2" type="slider" arg="-delay2 %"
+   <number id="delay2" type="slider" arg="--delay2 %"
           _label="Pause" _low-label="Short" _high-label="Long"
           low="0" high="2000000" default="1000000"/>
 
-   <number id="duration" type="slider" arg="-duration %"
+   <number id="duration" type="slider" arg="--duration %"
            _label="Duration" _low-label="10 seconds" _high-label="10 minutes"
            low="10" high="600" default="120"/>
 
 
    </vgroup>
    <vgroup>
-   <number id="increment" type="slider" arg="-increment %"
+   <number id="increment" type="slider" arg="--increment %"
            _label="Slide speed" _low-label="Slow" _high-label="Fast"
            low="1" high="30" default="10"/>
 
-   <number id="grid-size" type="slider" arg="-grid-size %"
+   <number id="grid-size" type="slider" arg="--grid-size %"
           _label="Cell size" _low-label="Small" _high-label="Large" 
           low="12" high="500" default="70"/>
 
-   <number id="ibw" type="spinbutton" arg="-ibw %"
+   <number id="ibw" type="spinbutton" arg="--ibw %"
           _label="Gutter size" low="0" high="50" default="4"/>
 
-   <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+   <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
    <xscreensaver-updater />
 
index f49a6b8b6265099cbbe237e2f6b43a16a1ce5d2c..c7b5ab36cda746c9a3ac456e972e9b3cfb9c7267 100644 (file)
@@ -2,28 +2,28 @@
 
 <screensaver name="slip" _label="Slip">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=BgzNvBm4MuE"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="50000"
             convert="invert"/>
 
-    <number id="count" type="slider" arg="-count %"
+    <number id="count" type="slider" arg="--count %"
             _label="Count" _low-label="Few" _high-label="Many"
              low="0" high="100" default="35"/>
    </vgroup>
 
    <vgroup>
-    <number id="cycles" type="slider" arg="-cycles %"
+    <number id="cycles" type="slider" arg="--cycles %"
              _label="Timeout" _low-label="Small" _high-label="Large"
             low="0" high="100" default="50"/>
 
-    <number id="ncolors" type="slider" arg="-ncolors %"
+    <number id="ncolors" type="slider" arg="--ncolors %"
               _label="Number of colors" _low-label="Two" _high-label="Many"
               low="1" high="255" default="200"/>
    </vgroup>
@@ -31,7 +31,7 @@
 
   <xscreensaver-image />
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 42bfebf08b5446644012aea48c95d6eaafd86cfb..5a352a37d1cc30a46f931a23a51c5da2f8f5412f 100644 (file)
@@ -2,48 +2,41 @@
 
 <screensaver name="sonar" _label="Sonar" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=XEL8g3qbthE"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="30000"
             convert="invert"/>
 
-    <number id="speed" type="slider" arg="-speed %"
+    <number id="speed" type="slider" arg="--speed %"
              _label="Speed" _low-label="Slow" _high-label="Fast"
              low="0.1" high="8.0" default="1.0"
              convert="ratio"/>
 
     <select id="ping">
      <option id="sn" _label="Ping local subnet"/>
-<!--
-     <option id="24" _label="Ping subnet/24 (254 hosts)" arg-set="-ping subnet/24"/>
-     <option id="25" _label="Ping subnet/25 (126 hosts)" arg-set="-ping subnet/25"/>
-     <option id="26" _label="Ping subnet/26 (62 hosts)"  arg-set="-ping subnet/26"/>
-     <option id="27" _label="Ping subnet/27 (31 hosts)"  arg-set="-ping subnet/27"/>
-     <option id="28" _label="Ping subnet/28 (14 hosts)"/>
-     <option id="29" _label="Ping subnet/29 (6 hosts)"   arg-set="-ping subnet/29"/>
-     <option id="30" _label="Ping subnet/30 (2 hosts)"   arg-set="-ping subnet/30"/>
--->
+     <option id="ssh" _label="Ping known SSH hosts"
+  arg-set="--ping /etc/hosts,$HOME/.ssh/known_hosts,$HOME/.ssh/known_hosts2"/>
 
-     <option id="ssh" _label="Ping known SSH hosts"      arg-set="-ping /etc/hosts,$HOME/.ssh/known_hosts,$HOME/.ssh/known_hosts2"/>
+     <option id="popular" _label="Ping Google, Facebook, etc."
+       arg-set="--ping google.com,facebook.com,twitter.com,yahoo.com,flickr.com,www.apple.com,wikipedia.org,linux.org,youtube.com,disqus.com,blogger.com,wordpress.com,tumblr.com,whitehouse.gov"/>
 
-     <option id="popular" _label="Ping Google, Facebook, etc." arg-set="-ping google.com,facebook.com,twitter.com,yahoo.com,flickr.com,www.apple.com,wikipedia.org,linux.org,youtube.com,disqus.com,blogger.com,wordpress.com,tumblr.com,whitehouse.gov"/>
-
-     <option id="sim" _label="Simulation (don't ping)"   arg-set="-ping simulation"/>
+     <option id="sim" _label="Simulation (don't ping)"
+        arg-set="--ping simulation"/>
     </select>
    </vgroup>
 
    <vgroup>
-    <number id="font" type="slider" arg="-font-size %"
+    <number id="font" type="slider" arg="--font-size %"
             _label="Font size" _low-label="Tiny" _high-label="Huge"
             low="6.0" high="24.0" default="12"/>
 
-    <number id="sweep" type="slider" arg="-sweep-size %"
+    <number id="sweep" type="slider" arg="--sweep-size %"
             _label="Trail length" _low-label="Short" _high-label="Long"
             low="0.02" high="0.7" default="0.3"/>
    </vgroup>
 
 
   <hgroup>
-   <string id="aname" _label="Simulation team A name" arg="-team-a-name %"/>
-    <number id="acount" type="spinbutton" arg="-team-a-count %"
+   <string id="aname" _label="Simulation team A name" arg="--team-a-name %"/>
+    <number id="acount" type="spinbutton" arg="--team-a-count %"
             _label="A count" low="1" high="100" default="4"/>
   </hgroup>
 
   <hgroup>
-   <string id="bname" _label="Simulation team B name" arg="-team-b-name %"/>
-   <number id="bcount" type="spinbutton" arg="-team-b-count %"
+   <string id="bname" _label="Simulation team B name" arg="--team-b-name %"/>
+   <number id="bcount" type="spinbutton" arg="--team-b-count %"
            _label="B count" low="1" high="100" default="4"/>
   </hgroup>
 
   <hgroup>
-   <boolean id="dns"     _label="Resolve host names" arg-unset="-no-dns"/>
-   <boolean id="times"   _label="Show ping times"    arg-unset="-no-times"/>
-   <boolean id="wobble"  _label="Tilt"               arg-unset="-no-wobble"/>
-   <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+   <boolean id="dns"     _label="Resolve host names" arg-unset="--no-dns"/>
+   <boolean id="times"   _label="Show ping times"    arg-unset="--no-times"/>
+   <boolean id="wobble"  _label="Tilt"               arg-unset="--no-wobble"/>
+   <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
   </hgroup>
 
   <xscreensaver-updater />
index 8f9558e8c884e12114d096d99714732f4ce9d733..0f4433e10cf8a7f77874591428e92d21454da383 100644 (file)
@@ -2,27 +2,26 @@
 
 <screensaver name="speedmine" _label="Speed Mine">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=awOnhCxRD_c"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="30000"
             convert="invert"/>
 
-    <number id="velocity" type="slider" arg="-maxspeed %"
+    <number id="velocity" type="slider" arg="--maxspeed %"
             _label="Max velocity" _low-label="Slow" _high-label="Fast"
             low="1" high="1000" default="700"/>
 
-    <number id="thrust" type="slider" arg="-thrust %"
+    <number id="thrust" type="slider" arg="--thrust %"
             _label="Thrust" _low-label="Slow" _high-label="Fast"
-            low="0.0" high="4.0" default="1.0"
-            convert="ratio"/>
+            low="0.0" high="4.0" default="1.0"/>
 
-    <number id="gravity" type="slider" arg="-gravity %"
+    <number id="gravity" type="slider" arg="--gravity %"
             _label="Gravity" _low-label="Low" _high-label="High"
             low="0.0" high="25.0" default="9.8"/>
    </vgroup>
 
     <select id="mode">
       <option id="speedmine" _label="Tunnel"/>
-      <option id="speedworm" _label="Worm" arg-set="-worm"/>
+      <option id="speedworm" _label="Worm" arg-set="--worm"/>
     </select>
 
-    <boolean id="terrain" _label="Rocky walls" arg-unset="-no-terrain"/>
-    <boolean id="bump"    _label="Allow wall collisions" arg-unset="-no-bumps"/>
-    <boolean id="bonus"   _label="Present bonuses" arg-unset="-no-bonuses"/>
-    <boolean id="xhair"   _label="Display crosshair" arg-unset="-no-crosshair"/>
-    <boolean id="wire"    _label="Wireframe"              arg-set="-wireframe"/>
+    <boolean id="terrain" _label="Rocky walls" arg-unset="--no-terrain"/>
+    <boolean id="bump"    _label="Allow wall collisions" arg-unset="--no-bumps"/>
+    <boolean id="bonus"   _label="Present bonuses" arg-unset="--no-bonuses"/>
+    <boolean id="xhair"   _label="Display crosshair" arg-unset="--no-crosshair"/>
+    <boolean id="wire"    _label="Wireframe"              arg-set="--wireframe"/>
 
-    <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+    <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
    </vgroup>
   </hgroup>
 
-  <!-- #### -vertigo [1.0] -->
-  <!-- #### -darkground [#101010] -->
-  <!-- #### -lightground [#a0a0a0] -->
-  <!-- #### -tunnelend [#000000] -->
-  <!-- #### -smoothness [6] -->
-  <!-- #### -curviness [1.0] -->
-  <!-- #### -twistiness [1.0] -->
-  <!-- #### -no-widening -->
-  <!-- #### -psychedelic -->
-
   <xscreensaver-updater />
 
   <_description>
index 55a5d791e2cb1e5de5a06fd951445171fa0fcfe8..5416926e4c2cab4b17f375e70f4403a9d592cb9c 100644 (file)
@@ -2,20 +2,20 @@
 
 <screensaver name="sphere" _label="Sphere">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=FswhxIVXdt8"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="20000"
           convert="invert"/>
 
-  <number id="ncolors" type="slider" arg="-ncolors %"
+  <number id="ncolors" type="slider" arg="--ncolors %"
             _label="Number of colors" _low-label="Two" _high-label="Many"
             low="1" high="255" default="64"/>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index b1ba0b9cd1324551f4800f70b786b037553d288a..3133c56e5ed8947e16e9d42b914072bf21975bc1 100644 (file)
@@ -4,18 +4,18 @@
 
   <video href="https://www.youtube.com/watch?v=CbmIggJ5GdA"/>
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <hgroup>
 
     <vgroup>
       <select id="deformation-style">
         <option id="random"    _label="Random deformation"/>
-        <option id="analytic"  _label="Analytic"   arg-set="-eversion-method analytic"/>
-        <option id="corrugations" _label="Corrugations" arg-set="-eversion-method corrugations"/>
+        <option id="analytic"  _label="Analytic"   arg-set="--eversion-method analytic"/>
+        <option id="corrugations" _label="Corrugations" arg-set="--eversion-method corrugations"/>
       </select>
 
-      <number id="deform-speed" type="slider" arg="-deformation-speed %"
+      <number id="deform-speed" type="slider" arg="--deformation-speed %"
               _label="Deformation speed"
               _low-label="1.0" _high-label="100.0"
               low="1.0" high="100.0" default="10.0"/>
     <vgroup>
       <select id="display-mode">
         <option id="random"      _label="Random surface"/>
-        <option id="surface"     _label="Solid surface"       arg-set="-mode surface"/>
-        <option id="transparent" _label="Transparent surface" arg-set="-mode transparent"/>
+        <option id="surface"     _label="Solid surface"       arg-set="--mode surface"/>
+        <option id="transparent" _label="Transparent surface" arg-set="--mode transparent"/>
       </select>
 
       <select id="appearance">
         <option id="random" _label="Random pattern"/>
-        <option id="solid"  _label="Solid object"   arg-set="-appearance solid"/>
-        <option id="pbands" _label="Parallel bands" arg-set="-appearance parallel-bands"/>
-        <option id="mbands" _label="Meridian bands" arg-set="-appearance meridian-bands"/>
+        <option id="solid"  _label="Solid object"   arg-set="--appearance solid"/>
+        <option id="pbands" _label="Parallel bands" arg-set="--appearance parallel-bands"/>
+        <option id="mbands" _label="Meridian bands" arg-set="--appearance meridian-bands"/>
       </select>
 
       <!-- sphereeversion only, not outsidein -->
       <select id="graticule">
         <option id="random" _label="Random graticule"/>
-        <option id="wgrat"  _label="With graticule"    arg-set="-graticule on"/>
-        <option id="wograt" _label="Without graticule" arg-set="-graticule off"/>
+        <option id="wgrat"  _label="With graticule"    arg-set="--graticule on"/>
+        <option id="wograt" _label="Without graticule" arg-set="--graticule off"/>
       </select>
 
       <select id="colors">
         <option id="random"   _label="Random coloration"/>
-        <option id="twosided" _label="Two-sided"       arg-set="-colors two-sided"/>
-        <option id="parallel" _label="Parallel colors" arg-set="-colors parallel"/>
-        <option id="meridian" _label="Meridian colors" arg-set="-colors meridian"/>
-        <option id="earth"    _label="Earth colors"    arg-set="-colors earth"/>
+        <option id="twosided" _label="Two-sided"       arg-set="--colors two-sided"/>
+        <option id="parallel" _label="Parallel colors" arg-set="--colors parallel"/>
+        <option id="meridian" _label="Meridian colors" arg-set="--colors meridian"/>
+        <option id="earth"    _label="Earth colors"    arg-set="--colors earth"/>
       </select>
 
       <select id="projection">
         <option id="random"       _label="Random Projection"/>
-        <option id="perspective"  _label="Perspective"  arg-set="-projection perspective"/>
-        <option id="orthographic" _label="Orthographic" arg-set="-projection orthographic"/>
+        <option id="perspective"  _label="Perspective"  arg-set="--projection perspective"/>
+        <option id="orthographic" _label="Orthographic" arg-set="--projection orthographic"/>
       </select>
     </vgroup>
 
       <!-- sphereeversion only, not outsidein -->
       <select id="surface-order">
         <option id="random" _label="Random surface order"/>
-        <option id="2"      _label="2" arg-set="-surface-order 2"/>
-        <option id="3"      _label="3" arg-set="-surface-order 3"/>
-        <option id="4"      _label="4" arg-set="-surface-order 4"/>
-        <option id="5"      _label="5" arg-set="-surface-order 5"/>
+        <option id="2"      _label="2" arg-set="--surface-order 2"/>
+        <option id="3"      _label="3" arg-set="--surface-order 3"/>
+        <option id="4"      _label="4" arg-set="--surface-order 4"/>
+        <option id="5"      _label="5" arg-set="--surface-order 5"/>
       </select>
 
       <!-- outsidein only, not sphereeversion -->
       <select id="lunes">
         <option id="lunes8" _label="8"/>
-        <option id="lunes4" _label="4" arg-set="-lunes-4"/>
-        <option id="lunes2" _label="2" arg-set="-lunes-2"/>
-        <option id="lunes1" _label="1" arg-set="-lunes-1"/>
+        <option id="lunes4" _label="4" arg-set="--lunes-4"/>
+        <option id="lunes2" _label="2" arg-set="--lunes-2"/>
+        <option id="lunes1" _label="1" arg-set="--lunes-1"/>
       </select>
 
       <!-- outsidein only, not sphereeversion -->
       <select id="hemispheres">
         <option id="hemispheres2" _label="2"/>
-        <option id="hemispheres1" _label="1" arg-set="-hemispheres-1"/>
+        <option id="hemispheres1" _label="1" arg-set="--hemispheres-1"/>
       </select>
     </vgroup>
 
     <vgroup>
-      <number id="speed-x" type="slider" arg="-speed-x %"
+      <number id="speed-x" type="slider" arg="--speed-x %"
               _label="X rotation speed"
               _low-label="-4.0" _high-label="4.0"
               low="-4.0" high="4.0" default="0.0"/>
 
-      <number id="speed-y" type="slider" arg="-speed-y %"
+      <number id="speed-y" type="slider" arg="--speed-y %"
               _label="Y rotation speed"
               _low-label="-4.0" _high-label="4.0"
               low="-4.0" high="4.0" default="0.0"/>
 
-      <number id="speed-z" type="slider" arg="-speed-z %"
+      <number id="speed-z" type="slider" arg="--speed-z %"
               _label="Z rotation speed"
               _low-label="-4.0" _high-label="4.0"
               low="-4.0" high="4.0" default="0.0"/>
 
     <vgroup>
      <xscreensaver-updater />
-     <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+     <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
     </vgroup>
 
   </hgroup>
index e88a5f93780a5cd8874aff1fc843e4d650afc9e6..5bf429b847d5b0bd29377053d58c617ed3f22cdb 100644 (file)
@@ -2,46 +2,46 @@
 
 <screensaver name="spheremonics" _label="Spheremonics" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=KrNVwyWi0io"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="30000"
             convert="invert"/>
 
-    <number id="duration" type="slider" arg="-duration %"
+    <number id="duration" type="slider" arg="--duration %"
             _label="Duration" _low-label="Short" _high-label="Long"
             low="5" high="1000" default="200"/>
 
-    <number id="resolution" type="slider" arg="-resolution %"
+    <number id="resolution" type="slider" arg="--resolution %"
             _label="Resolution" _low-label="Low" _high-label="High"
             low="5" high="100" default="64"/>
 
    </vgroup>
    <vgroup>
-    <boolean id="wander" _label="Wander" arg-set="-wander"/>
+    <boolean id="wander" _label="Wander" arg-set="--wander"/>
 
     <select id="rotation">
-      <option id="no"  _label="Don't rotate"               arg-set="-spin 0"/>
-      <option id="x"   _label="Rotate around X axis"       arg-set="-spin X"/>
-      <option id="y"   _label="Rotate around Y axis"       arg-set="-spin Y"/>
-      <option id="z"   _label="Rotate around Z axis"       arg-set="-spin Z"/>
-      <option id="xy"  _label="Rotate around X and Y axes" arg-set="-spin XY"/>
-      <option id="xz"  _label="Rotate around X and Z axes" arg-set="-spin XZ"/>
-      <option id="yz"  _label="Rotate around Y and Z axes" arg-set="-spin YZ"/>
+      <option id="no"  _label="Don't rotate"               arg-set="--spin 0"/>
+      <option id="x"   _label="Rotate around X axis"       arg-set="--spin X"/>
+      <option id="y"   _label="Rotate around Y axis"       arg-set="--spin Y"/>
+      <option id="z"   _label="Rotate around Z axis"       arg-set="--spin Z"/>
+      <option id="xy"  _label="Rotate around X and Y axes" arg-set="--spin XY"/>
+      <option id="xz"  _label="Rotate around X and Z axes" arg-set="--spin XZ"/>
+      <option id="yz"  _label="Rotate around Y and Z axes" arg-set="--spin YZ"/>
       <option id="xyz" _label="Rotate around all three axes"/>
     </select>
 
-    <boolean id="smooth" _label="Smoothed lines"  arg-unset="-no-smooth"/>
-    <boolean id="grid" _label="Draw grid"         arg-unset="-no-grid"/>
-    <boolean id="bbox" _label="Draw bounding box" arg-set="-bbox"/>
+    <boolean id="smooth" _label="Smoothed lines"  arg-unset="--no-smooth"/>
+    <boolean id="grid" _label="Draw grid"         arg-unset="--no-grid"/>
+    <boolean id="bbox" _label="Draw bounding box" arg-set="--bbox"/>
 
-    <boolean id="wire"    _label="Wireframe"              arg-set="-wireframe"/>
-    <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+    <boolean id="wire"    _label="Wireframe"              arg-set="--wireframe"/>
+    <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
   </vgroup>
   </hgroup>
 
index 14d3e75ca7a0622b67452236c9fbc8444a7e349c..b8c133a72744c1c322a6048d2f05c3e540368fec 100644 (file)
@@ -2,28 +2,28 @@
 
 <screensaver name="spiral" _label="Spiral">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=8Ov2SxnO_Kg"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="50000"
           convert="invert"/>
 
-  <number id="count" type="slider" arg="-count %"
+  <number id="count" type="slider" arg="--count %"
           _label="Count" _low-label="Few" _high-label="Many"
            low="0" high="100" default="40"/>
 
-  <number id="cycles" type="slider" arg="-cycles %"
+  <number id="cycles" type="slider" arg="--cycles %"
            _label="Cycles" _low-label="Low" _high-label="High"
           low="10" high="800" default="350"/>
 
-  <number id="ncolors" type="slider" arg="-ncolors %"
+  <number id="ncolors" type="slider" arg="--ncolors %"
             _label="Number of colors" _low-label="Two" _high-label="Many"
             low="1" high="255" default="64"/>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index ac0dc7f9f4b02294a797d62b7827f95fb1fd2936..cbb497cafb0bc588beb34adf9a04b9fde7637a10 100644 (file)
@@ -2,46 +2,46 @@
 
 <screensaver name="splitflap" _label="Split-Flap" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=rZOL2jyDey0"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="20000"
             convert="invert"/>
 
-    <number id="speed" type="slider" arg="-speed %"
+    <number id="speed" type="slider" arg="--speed %"
             _label="Speed" _low-label="Slow" _high-label="Fast"
             low="0.01" high="8.0" default="1.0"
             convert="ratio"/>
 
-    <number id="width" type="spinbutton" arg="-width %"
+    <number id="width" type="spinbutton" arg="--width %"
             _label="Columns" low="1" high="120" default="22"/>
-    <number id="height" type="spinbutton" arg="-height %"
+    <number id="height" type="spinbutton" arg="--height %"
             _label="Rows" low="1" high="40" default="8"/>
 
     <select id="text">
      <option id="text" _label="Display text" />
-     <option id="c12" _label="Display 12-hour clock" arg-set="-mode clock12" />
-     <option id="c24" _label="Display 24-hour clock" arg-set="-mode clock24" />
+     <option id="c12" _label="Display 12-hour clock" arg-set="--mode clock12" />
+     <option id="c24" _label="Display 24-hour clock" arg-set="--mode clock24" />
     </select>
 
     <select id="facing">
      <option id="front"   _label="Always face front"/>
-     <option id="nofront" _label="Spin all the way around" arg-set="-no-front"/>
+     <option id="nofront" _label="Spin all the way around" arg-set="--no-front"/>
     </select>
 
     <select id="rotation">
-     <option id="no"  _label="Don't rotate"               arg-set="-spin 0"/>
-     <option id="x"   _label="Rotate around X axis"       arg-set="-spin X"/>
-     <option id="y"   _label="Rotate around Y axis"       arg-set="-spin Y"/>
-     <option id="z"   _label="Rotate around Z axis"       arg-set="-spin Z"/>
-     <option id="xy"  _label="Rotate around X and Y axes" arg-set="-spin XY"/>
-     <option id="xz"  _label="Rotate around X and Z axes" arg-set="-spin XZ"/>
-     <option id="yz"  _label="Rotate around Y and Z axes" arg-set="-spin YZ"/>
+     <option id="no"  _label="Don't rotate"               arg-set="--spin 0"/>
+     <option id="x"   _label="Rotate around X axis"       arg-set="--spin X"/>
+     <option id="y"   _label="Rotate around Y axis"       arg-set="--spin Y"/>
+     <option id="z"   _label="Rotate around Z axis"       arg-set="--spin Z"/>
+     <option id="xy"  _label="Rotate around X and Y axes" arg-set="--spin XY"/>
+     <option id="xz"  _label="Rotate around X and Z axes" arg-set="--spin XZ"/>
+     <option id="yz"  _label="Rotate around Y and Z axes" arg-set="--spin YZ"/>
      <option id="xyz" _label="Rotate around all three axes"/>
     </select>
 
@@ -51,9 +51,9 @@
     <xscreensaver-text />
 
     <hgroup>
-    <boolean id="wander" _label="Wander" arg-unset="-no-wander"/>
-    <boolean id="wire"    _label="Wireframe"              arg-set="-wireframe"/>
-    <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+    <boolean id="wander" _label="Wander" arg-unset="--no-wander"/>
+    <boolean id="wire"    _label="Wireframe"              arg-set="--wireframe"/>
+    <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
     </hgroup>
     <xscreensaver-updater />
 
index ef98d7d3fe2e844da8bf5d35921b90096275494a..9deb3a0e2f47138644fa9caddec5b81a778e05ca 100644 (file)
@@ -2,25 +2,25 @@
 
 <screensaver name="splodesic" _label="Splodesic" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=pwpTs1pEQmM"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="30000"
           convert="invert"/>
-  <number id="speed" type="slider" arg="-speed %"
+  <number id="speed" type="slider" arg="--speed %"
           _label="Eruption frequency" _low-label="Seldom" _high-label="Often"
           low="0.01" high="5.0" default="1.0"
           convert="ratio"/>
 
   <hgroup>
-   <number id="freq" type="spinbutton" arg="-depth %"
+   <number id="freq" type="spinbutton" arg="--depth %"
            _label="Depth" low="0" high="5" default="4"/>
-   <boolean id="wander" _label="Wander"    arg-unset="-no-wander"/>
-   <boolean id="spin"   _label="Spin"      arg-unset="-no-spin"/>
-   <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+   <boolean id="wander" _label="Wander"    arg-unset="--no-wander"/>
+   <boolean id="spin"   _label="Spin"      arg-unset="--no-spin"/>
+   <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
   </hgroup>
 
   <xscreensaver-updater />
index 24bfb9a050ffa752ef1de62febffd022de85a330..7d27dbc65f995605e51bb49555e1d25d4abdfdcd 100644 (file)
@@ -2,26 +2,26 @@
 
 <screensaver name="spotlight" _label="Spotlight">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=av29CVh2UeM"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="10000"
           convert="invert"/>
 
-  <number id="duration" type="slider" arg="-duration %"
+  <number id="duration" type="slider" arg="--duration %"
           _label="Duration" _low-label="10 seconds" _high-label="10 minutes"
           low="10" high="600" default="120"/>
 
-  <number id="radius" type="slider" arg="-radius %"
+  <number id="radius" type="slider" arg="--radius %"
           _label="Spotlight size" _low-label="Small" _high-label="Large"
           low="5" high="350" default="125"/>
 
   <xscreensaver-image />
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 1d16ff07428e6a44dbebf366861ca80c0e8d72bd..b58276c66c5bd359a78921e4c7341427c4f01d4e 100644 (file)
@@ -2,23 +2,23 @@
 
 <screensaver name="sproingies" _label="Sproingies" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=fmHl17ppgc0"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="30000"
           convert="invert"/>
 
-  <number id="count" type="slider" arg="-count %"
+  <number id="count" type="slider" arg="--count %"
            _label="Sproingies" _low-label="One" _high-label="Lots"
           low="1" high="30" default="8"/>
 
   <hgroup>
-   <boolean id="nofall" _label="Fall off edge" arg-set="-fall"/>
-   <boolean id="wire" _label="Wireframe" arg-set="-wireframe"/>
-   <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+   <boolean id="nofall" _label="Fall off edge" arg-set="--fall"/>
+   <boolean id="wire" _label="Wireframe" arg-set="--wireframe"/>
+   <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
   </hgroup>
 
   <xscreensaver-updater />
index 1cc7e44ee3cc4bcafa1762a7b5251e57e9144915..2c44c8b1fc49a7647e691c7811bf8b0bc8090478 100644 (file)
@@ -2,43 +2,41 @@
 
 <screensaver name="squiral" _label="Squiral">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=WPhqyM9Bb4o"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="10000"
             convert="invert"/>
 
-    <number id="disorder" type="slider" arg="-disorder %"
+    <number id="disorder" type="slider" arg="--disorder %"
             _label="Randomness" _low-label="Low" _high-label="High"
             low="0.0" high="0.5" default="0.005"/>
 
-    <number id="count" type="spinbutton" arg="-count %"
+    <number id="count" type="spinbutton" arg="--count %"
             _label="Seeds" low="0" high="200" default="0"/>
 
    </vgroup>
    <vgroup>
-    <number id="handedness" type="slider" arg="-handedness %"
+    <number id="handedness" type="slider" arg="--handedness %"
             _label="Handedness" _low-label="Left" _high-label="Right"
             low="0.0" high="1.0" default="0.5"/>
 
-    <number id="fill" type="slider" arg="-fill %"
+    <number id="fill" type="slider" arg="--fill %"
              _label="Density" _low-label="Sparse" _high-label="Dense"
             low="0" high="100" default="75"/>
 
-    <number id="ncolors" type="slider" arg="-ncolors %"
+    <number id="ncolors" type="slider" arg="--ncolors %"
               _label="Number of colors" _low-label="Two" _high-label="Many"
               low="1" high="255" default="100"/>
    </vgroup>
   </hgroup>
 
-  <!-- #### -cycle -->
-
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index f01941d0e71b6d608e3bf80114daf802cf69a688..ed296a87006ecf37c645f065e263421b35f3303d 100644 (file)
@@ -2,30 +2,30 @@
 
 <screensaver name="squirtorus" _label="Squirtorus" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=_JJvTDFPaN4"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="30000"
             convert="invert"/>
 
-    <number id="speed" type="slider" arg="-speed %"
+    <number id="speed" type="slider" arg="--speed %"
             _label="Scrolling speed" _low-label="Slow" _high-label="Fast"
             low="0.01" high="8.0" default="1.0"
             convert="ratio"/>
 
-    <number id="count" type="slider" arg="-count %"
+    <number id="count" type="slider" arg="--count %"
             _label="Count" _low-label="One" _high-label="Lots"
             low="1" high="50" default="16"/>
    </vgroup>
 
    <vgroup>
-    <boolean id="wire"    _label="Wireframe" arg-set="-wireframe"/>
-    <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+    <boolean id="wire"    _label="Wireframe" arg-set="--wireframe"/>
+    <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
    </vgroup>
 
   </hgroup>
index 099f963723afe763f2ec888b47b13593bbceea34..e76ec0120898f82154a60626091f1d9674521e51 100644 (file)
@@ -2,16 +2,16 @@
 
 <screensaver name="stairs" _label="Stairs" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=Y1ceRT30qr0"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="20000"
           convert="invert"/>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 9a203c1269849f5167049fc52f59a67ae2f93918..67bfce1abc1ffd0492be32bfc120d5d632d89caa 100644 (file)
@@ -2,34 +2,34 @@
 
 <screensaver name="starfish" _label="Starfish">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=atwc7IJHuLo"/>
 
   <select id="mode">
     <option id="random" _label="Random"/>
-    <option id="zoom"   _label="Color gradients" arg-set="-mode zoom"/>
-    <option id="blob"   _label="Pulsating blob"  arg-set="-mode blob"/>
+    <option id="zoom"   _label="Color gradients" arg-set="--mode zoom"/>
+    <option id="blob"   _label="Pulsating blob"  arg-set="--mode blob"/>
   </select>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="10000"
           convert="invert"/>
 
-  <number id="duration" type="slider" arg="-duration %"
+  <number id="duration" type="slider" arg="--duration %"
           _label="Duration" _low-label="1 second" _high-label="30 seconds"
           low="1" high="60" default="30"/>
 
-  <number id="thickness" type="slider" arg="-thickness %"
+  <number id="thickness" type="slider" arg="--thickness %"
           _label="Lines" _low-label="Thin" _high-label="Thick"
           low="0" high="150" default="0"/>
 
-  <number id="ncolors" type="slider" arg="-colors %"
+  <number id="ncolors" type="slider" arg="--colors %"
             _label="Number of colors" _low-label="Two" _high-label="Many"
             low="1" high="255" default="200"/>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 2f4e90ec6c943b3bf1574addfea6022c71f8ca62..1d40bad0964a901b234b9d6d1bccfebe9b5cb2e0 100644 (file)
@@ -2,21 +2,21 @@
 
 <screensaver name="starwars" _label="Star Wars" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=UUjC-6e7y_U"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _low-label="  Frame rate      Low" _high-label="High"
             low="0" high="100000" default="40000"
             convert="invert"/>
-    <number id="steps" type="slider" arg="-steps %"
+    <number id="steps" type="slider" arg="--steps %"
             _low-label="Scroll speed     Slow" _high-label="Fast"
             low="1" high="100" default="35"
             convert="invert"/>
-    <number id="spin" type="slider" arg="-spin %"
+    <number id="spin" type="slider" arg="--spin %"
             _low-label=" Stars speed     Slow" _high-label="Fast"
             low="0.0" high="0.2" default="0.03"/>
 
 
    <vgroup>
     <select id="align">
-      <option id="left"   _label="Flush left text"  arg-set="-alignment left"/>
+      <option id="left"   _label="Flush left text"  arg-set="--alignment left"/>
       <option id="center" _label="Centered text"/>
-      <option id="right"  _label="Flush right text" arg-set="-alignment right"/>
+      <option id="right"  _label="Flush right text" arg-set="--alignment right"/>
     </select>
 
-    <boolean id="wrap"   _label="Wrap long lines" arg-unset="-no-wrap"/>
-   <boolean id="texture" _label="Texture-mapped font" arg-unset="-no-textures"/>
-    <boolean id="smooth" _label="Anti-aliased lines" arg-unset="-no-smooth"/>
+    <boolean id="wrap"   _label="Wrap long lines" arg-unset="--no-wrap"/>
+   <boolean id="texture" _label="Texture-mapped font" arg-unset="--no-textures"/>
+    <boolean id="smooth" _label="Anti-aliased lines" arg-unset="--no-smooth"/>
     <hgroup>
-     <boolean id="thick"  _label="Thick lines"        arg-unset="-no-thick"/>
-     <boolean id="fade"   _label="Fade out"           arg-unset="-no-fade"/>
+     <boolean id="thick"  _label="Thick lines"        arg-unset="--no-thick"/>
+     <boolean id="fade"   _label="Fade out"           arg-unset="--no-fade"/>
     </hgroup>
-    <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+    <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
-    <number id="lines" type="spinbutton" arg="-lines %"
+    <number id="lines" type="spinbutton" arg="--lines %"
               _label="Text lines" low="4" high="1000" default="125"/>
-    <number id="size" type="spinbutton" arg="-size %"
+    <number id="size" type="spinbutton" arg="--size %"
              _label="Font point size" low="-1" high="10" default="-1"/>
-    <number id="columns" type="spinbutton" arg="-columns %"
+    <number id="columns" type="spinbutton" arg="--columns %"
              _label="or, Text columns" low="-1" high="200" default="-1"/>
 
    </vgroup>
index 7080cbb53acc8de40cb7b95623d7987459f18ea1..6e38bffa1c75fe1a79fb6f0934a81d169821788e 100644 (file)
@@ -2,18 +2,18 @@
 
 <screensaver name="stonerview" _label="Stoner View" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=xvDK_wwnXWs"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="20000"
           convert="invert"/>
 
-  <boolean id="wire"    _label="Wireframe"         arg-set="-wireframe"/>
-  <boolean id="trans"   _label="Translucent"     arg-unset="-no-transparent"/>
-  <boolean id="showfps" _label="Show frame rate"   arg-set="-fps"/>
+  <boolean id="wire"    _label="Wireframe"         arg-set="--wireframe"/>
+  <boolean id="trans"   _label="Translucent"     arg-unset="--no-transparent"/>
+  <boolean id="showfps" _label="Show frame rate"   arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 1f8903536d6b30ed6a5aab60940c0afd533fa88b..6ee73ee4b6e837ed5991c099412bade7918e0f97 100644 (file)
@@ -2,48 +2,48 @@
 
 <screensaver name="strange" _label="Strange">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=F1qna7UAxC0"/>
 
   <hgroup>
     <vgroup>
-      <number id="delay" type="slider" arg="-delay %"
+      <number id="delay" type="slider" arg="--delay %"
               _label="Frame rate" _low-label="Low" _high-label="High"
               low="0" high="100000" default="10000"
               convert="invert"/>
 
-      <number id="curve" type="slider" arg="-curve %"
+      <number id="curve" type="slider" arg="--curve %"
                 _label="Curviness" _low-label="Low" _high-label="High"
                 low="1" high="50" default="10"/>
 
-      <number id="points" type="slider" arg="-points %"
+      <number id="points" type="slider" arg="--points %"
                 _label="Number of points" _low-label="1k" _high-label="500k"
                 low="1000" high="500000" default="5500"/>
 
-      <number id="pointSize" type="slider" arg="-point-size %"
+      <number id="pointSize" type="slider" arg="--point-size %"
                 _label="Point size" _low-label="1" _high-label="8"
                 low="1" high="8" default="1"/>
     </vgroup>
     <vgroup>
-      <number id="zoom" type="slider" arg="-zoom %"
+      <number id="zoom" type="slider" arg="--zoom %"
                 _label="Zoom" _low-label="10%" _high-label="400%"
                 low="0.1" high="4.0" default="0.9"/>
 
-      <number id="brightness" type="slider" arg="-brightness %"
+      <number id="brightness" type="slider" arg="--brightness %"
                 _label="Brightness" _low-label="10%" _high-label="400%"
                 low="0.1" high="4.0" default="1.0"
                 convert="ratio"/>
 
-      <number id="motionBlur" type="slider" arg="-motion-blur %"
+      <number id="motionBlur" type="slider" arg="--motion-blur %"
                 _label="Motion blur" _low-label="1" _high-label="10"
                 low="1.0" high="10.0" default="3.0"/>
 
-      <number id="ncolors" type="slider" arg="-ncolors %"
+      <number id="ncolors" type="slider" arg="--ncolors %"
                 _label="Number of colors" _low-label="Two" _high-label="Many"
                 low="1" high="255" default="100"/>
 
-      <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+      <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
     </vgroup>
   </hgroup>
 
index 11e8ccc93ebda2a5ebda43f6d0c0ffda092c3b34..7acf0e26b9122112b15cd5ff2d07deeafc03e0b1 100644 (file)
@@ -2,37 +2,37 @@
 
 <screensaver name="substrate" _label="Substrate">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=dCCVgBOVD0E"/>
 
   <hgroup>
    <vgroup>
-    <number id="speed" type="slider" arg="-growth-delay %"
+    <number id="speed" type="slider" arg="--growth-delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="18000" convert="invert"/>
 
-    <number id="maxcyc" type="slider" arg="-max-cycles %"
+    <number id="maxcyc" type="slider" arg="--max-cycles %"
             _label="Duration"  _low-label="Short" _high-label="Long"
             low="2000" high="25000" default="10000" />
 
-    <number id="sandg" type="slider" arg="-sand-grains %"
+    <number id="sandg" type="slider" arg="--sand-grains %"
             _label="Sand grains" _low-label="Few" _high-label="Lots"
             low="16" high="128" default="64" />
 
-    <number id="curve" type="slider" arg="-circle-percent %"
+    <number id="curve" type="slider" arg="--circle-percent %"
             _label="Circle percentage" _low-label="0%" _high-label="100%"
             low="0" high="100" default="33" />
    </vgroup>
    <vgroup>
-    <number id="init" type="spinbutton" arg="-initial-cracks %"
+    <number id="init" type="spinbutton" arg="--initial-cracks %"
             _label="Initial cracks" low="3" high="15" default="3"/>
 
-    <boolean id="wire" _label="Wireframe only" arg-set="-wireframe" />
+    <boolean id="wire" _label="Wireframe only" arg-set="--wireframe" />
 
-    <boolean id="seamless" _label="Seamless mode" arg-set="-seamless" />
+    <boolean id="seamless" _label="Seamless mode" arg-set="--seamless" />
 
-    <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+    <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
    </vgroup>
   </hgroup>
 
index 642125cf0b1af9c53f165bdb473b9665716d1618..24e2d477a7e577b45303d8b2269c9591e5e6da0a 100644 (file)
@@ -2,29 +2,29 @@
 
 <screensaver name="superquadrics" _label="Superquadrics" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=Mjlc7iPA1N4"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="40000"
           convert="invert"/>
 
-  <number id="spinspeed" type="slider" arg="-spinspeed %"
+  <number id="spinspeed" type="slider" arg="--spinspeed %"
           _label="Spin speed" _low-label="Slow" _high-label="Fast"
           low="0.1" high="15.0" default="5.0"/>
 
-  <number id="count" type="slider" arg="-count %"
+  <number id="count" type="slider" arg="--count %"
            _label="Density" _low-label="Low" _high-label="High"
           low="0" high="100" default="25"/>
 
-  <number id="cycles" type="slider" arg="-cycles %"
+  <number id="cycles" type="slider" arg="--cycles %"
            _label="Duration" _low-label="Short" _high-label="Long"
           low="0" high="100" default="40"/>
 
-  <boolean id="wire"    _label="Wireframe"              arg-set="-wireframe"/>
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="wire"    _label="Wireframe"              arg-set="--wireframe"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 7a188a6cfb25ce6f7b7e55e93e3b93310905d997..f7980ed3f532da133ce579b453845718fe01f53a 100644 (file)
@@ -2,18 +2,18 @@
 
 <screensaver name="surfaces" _label="Surfaces" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=Q412lxz3fTg"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="20000"
             convert="invert"/>
 
-    <number id="descent" type="slider" arg="-speed %"
+    <number id="descent" type="slider" arg="--speed %"
             _label="Duration" _low-label="Short" _high-label="Long"
             low="2" high="2000" default="300"
             convert="invert"/>
    <vgroup>
     <select id="surface">
      <option id="random"    _label="Random Surface"/>
-     <option id="dini"      _label="Dini's Surface"      arg-set="-surface dini"/>
-     <option id="enneper"   _label="Enneper's Surface"   arg-set="-surface enneper"/>
-     <option id="kuen"      _label="Kuen Surface"        arg-set="-surface kuen"/>
-     <option id="moebius"   _label="Möbius Strip"        arg-set="-surface moebius"/>
-     <option id="seashell"  _label="Seashell"            arg-set="-surface seashell"/>
-     <option id="swallow"   _label="Swallowtail"         arg-set="-surface swallowtail"/>
-     <option id="bohemian"  _label="Bohemian Dome"       arg-set="-surface bohemian"/>
-     <option id="whitney"   _label="Whitney Umbrella"    arg-set="-surface whitney"/>
-     <option id="pluecker"  _label="Pluecker's Conoid"   arg-set="-surface pluecker"/>
-     <option id="henneberg" _label="Henneberg's Surface" arg-set="-surface henneberg"/>
-     <option id="catalan"   _label="Catalan's Surface"   arg-set="-surface catalan"/>
-     <option id="corkscrew" _label="Corkscrew Surface"   arg-set="-surface corkscrew"/>
+     <option id="dini"      _label="Dini's Surface"      arg-set="--surface dini"/>
+     <option id="enneper"   _label="Enneper's Surface"   arg-set="--surface enneper"/>
+     <option id="kuen"      _label="Kuen Surface"        arg-set="--surface kuen"/>
+     <option id="moebius"   _label="Möbius Strip"        arg-set="--surface moebius"/>
+     <option id="seashell"  _label="Seashell"            arg-set="--surface seashell"/>
+     <option id="swallow"   _label="Swallowtail"         arg-set="--surface swallowtail"/>
+     <option id="bohemian"  _label="Bohemian Dome"       arg-set="--surface bohemian"/>
+     <option id="whitney"   _label="Whitney Umbrella"    arg-set="--surface whitney"/>
+     <option id="pluecker"  _label="Pluecker's Conoid"   arg-set="--surface pluecker"/>
+     <option id="henneberg" _label="Henneberg's Surface" arg-set="--surface henneberg"/>
+     <option id="catalan"   _label="Catalan's Surface"   arg-set="--surface catalan"/>
+     <option id="corkscrew" _label="Corkscrew Surface"   arg-set="--surface corkscrew"/>
     </select>
 
     <select id="mode">
       <option id="random"    _label="Random Display Mode"/>
-      <option id="points"    _label="Points"     arg-set="-mode points"/>
-      <option id="lines"     _label="Lines"      arg-set="-mode lines"/>
-      <option id="line_loop" _label="Line Loops" arg-set="-mode line-loops"/>
+      <option id="points"    _label="Points"     arg-set="--mode points"/>
+      <option id="lines"     _label="Lines"      arg-set="--mode lines"/>
+      <option id="line_loop" _label="Line Loops" arg-set="--mode line-loops"/>
     </select>
 
     <hgroup>
-     <boolean id="wander"  _label="Wander" arg-set="-wander"/>
-     <boolean id="spin"    _label="Spin" arg-unset="-no-spin"/>
-     <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+     <boolean id="wander"  _label="Wander" arg-set="--wander"/>
+     <boolean id="spin"    _label="Spin" arg-unset="--no-spin"/>
+     <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
     </hgroup>
    </vgroup>
   </hgroup>
index 199bdb75877c0fcabb1d9d8d31e0bb185234fd84..7722e5999ac6e8d1e982f36a48ffbfb4c9189bdb 100644 (file)
@@ -2,26 +2,24 @@
 
 <screensaver name="swirl" _label="Swirl">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=o_VRQxPCB7w"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="10000"
           convert="invert"/>
 
-  <number id="count" type="slider" arg="-count %"
+  <number id="count" type="slider" arg="--count %"
           _label="Count" _low-label="Few" _high-label="Many"
            low="0" high="20" default="5"/>
 
-  <number id="ncolors" type="slider" arg="-ncolors %"
+  <number id="ncolors" type="slider" arg="--ncolors %"
             _label="Number of colors" _low-label="Two" _high-label="Many"
             low="1" high="255" default="200"/>
 
-<!--  <boolean id="shm" _label="Use shared memory" arg-unset="-no-shm"/> -->
-
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 6d2e2020dcd0af52007f30381acb912494eba5e3..04b47683a745608174a7443685cfba2532124154 100644 (file)
@@ -2,52 +2,46 @@
 
 <screensaver name="t3d" _label="T3D">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=5UohH7U2CAI"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="40000"
             convert="invert"/>
 
-    <number id="move" type="slider" arg="-move %"
+    <number id="move" type="slider" arg="--move %"
             _label="Turn side-to-side" _low-label="0 deg" _high-label="90 deg"
             low="0.0" high="3.0" default="0.5"/>
 
-    <number id="wobble" type="slider" arg="-wobble %"
+    <number id="wobble" type="slider" arg="--wobble %"
             _label="Wobbliness" _low-label="Low" _high-label="High"
             low="0.0" high="3.0" default="2.0"/>
    </vgroup>
 
    <vgroup>
-    <number id="cycle" type="slider" arg="-cycle %"
+    <number id="cycle" type="slider" arg="--cycle %"
             _label="Cycle seconds" _low-label="Low" _high-label="High"
             low="0.0" high="60.0" default="10.0"/>
 
-    <number id="mag" type="slider" arg="-mag %"
+    <number id="mag" type="slider" arg="--mag %"
             _label="Magnification" _low-label="Smaller" _high-label="Bigger"
             low="0.1" high="4.0" default="1.0"
             convert="ratio"/>
 
     <select id="mins">
-      <option id="min2" _label="Minute tick marks" arg-set="-minutes"/>
+      <option id="min2" _label="Minute tick marks" arg-set="--minutes"/>
       <option id="min5" _label="5 minute tick marks"/>
     </select>
 
-    <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+    <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
    </vgroup>
   </hgroup>
 
-  <!-- #### -fast [50] -->
-  <!-- #### -colcycle [?] -->
-  <!-- #### -hsvcycle [0.0] -->
-  <!-- #### -rgb [?] -->
-  <!-- #### -hsv [?] -->
-
   <xscreensaver-updater />
 
   <_description>
index 11b8f714b4fcc67940cbaede3a193ea806ecab01..f83c71c2c75ab9f3b241424abed4c390baef0d33 100644 (file)
@@ -2,35 +2,35 @@
 
 <screensaver name="tangram" _label="Tangram" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=JgJ-OsgCCJ4"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="10000"/>
 
-  <number id="viewing_time" type="slider" arg="-viewing_time %"
+  <number id="viewing_time" type="slider" arg="--viewing_time %"
           _label="Linger" _low-label="Brief" _high-label="Long"
           low="0" high="30" default="5" />
 
-  <number id="x_camera_rotate" type="slider" arg="-x_camera_rotate %"
+  <number id="x_camera_rotate" type="slider" arg="--x_camera_rotate %"
           _label="X rotation" _low-label="Slow" _high-label="Fast"
           low="0.0" high="1.0" default="0.2" />
 
-  <number id="y_camera_rotate" type="slider" arg="-y_camera_rotate %"
+  <number id="y_camera_rotate" type="slider" arg="--y_camera_rotate %"
           _label="Y rotation" _low-label="Slow" _high-label="Fast"
           low="0.0" high="1.0" default="0.5" />
 
-  <number id="z_camera_rotate" type="slider" arg="-z_camera_rotate %"
+  <number id="z_camera_rotate" type="slider" arg="--z_camera_rotate %"
           _label="Z rotation" _low-label="Slow" _high-label="Fast"
           low="0.0" high="1.0" default="0" />
 
   <hgroup>
-   <boolean id="labels"    _label="Draw labels" arg-unset="-no-labels"/>
-   <boolean id="wire"      _label="Wireframe"   arg-set="-wireframe"/>
-   <boolean id="rotate"    _label="Rotate"      arg-unset="-no-rotate"/>
-   <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+   <boolean id="labels"    _label="Draw labels" arg-unset="--no-labels"/>
+   <boolean id="wire"      _label="Wireframe"   arg-set="--wireframe"/>
+   <boolean id="rotate"    _label="Rotate"      arg-unset="--no-rotate"/>
+   <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
   </hgroup>
 
   <xscreensaver-updater />
index f6e1a3caf4cddf5e860deff65993d33c51def44e..103de2571e35df1a450a271fb9180f6e87023787 100644 (file)
@@ -2,26 +2,26 @@
 
 <screensaver name="tessellimage" _label="Tessellimage">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=JNgybysnYU8"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="30000"
             convert="invert"/>
 
-    <number id="duration2" type="slider" arg="-duration2 %"
+    <number id="duration2" type="slider" arg="--duration2 %"
             _label="Speed" _low-label="0.1 second" _high-label="4 seconds"
             low="0.1" high="4.0" default="0.4"/>
 
-    <number id="duration" type="slider" arg="-duration %"
+    <number id="duration" type="slider" arg="--duration %"
             _label="Duration" _low-label="10 seconds" _high-label="10 minutes"
             low="10" high="600" default="120"/>
 
-    <number id="depth" type="slider" arg="-max-depth %"
+    <number id="depth" type="slider" arg="--max-depth %"
             _label="Complexity" _low-label="Shallow" _high-label="Deep"
             low="1000" high="100000" default="30000"/>
    </vgroup>
 
     <select id="mode">
      <option id="random" _label="Delaunay or voronoi"/>
-     <option _label="Delaunay" arg-set="-mode delaunay"/>
-     <option _label="Voronoi"  arg-set="-mode voronoi"/>
+     <option _label="Delaunay" arg-set="--mode delaunay"/>
+     <option _label="Voronoi"  arg-set="--mode voronoi"/>
     </select>
 
     <xscreensaver-image />
 
-    <boolean id="fill"    _label="Fill screen" arg-unset="-no-fill-screen"/>
-    <boolean id="outline" _label="Outline triangles" arg-unset="-no-outline"/>
-    <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+    <boolean id="fill"    _label="Fill screen" arg-unset="--no-fill-screen"/>
+    <boolean id="outline" _label="Outline triangles" arg-unset="--no-outline"/>
+    <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
     <xscreensaver-updater />
    </vgroup>
index bbc678b245644fcbcc786c1553cdb501782c06b7..d73e5c6a9268d5c9b6e2ee54e9394b0e4c89eca1 100644 (file)
@@ -2,9 +2,9 @@
 
 <screensaver name="testx11" _label="Test X11">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 8bbd1ab52e1ca019239b0fe8e828aba2d77725d8..8422c400ac8f9406beaf35a444cea36ed50f22ed 100644 (file)
@@ -2,30 +2,24 @@
 
 <screensaver name="thornbird" _label="Thornbird">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=rfGfPezVnac"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="10000"
           convert="invert"/>
 
-  <number id="count" type="slider" arg="-count %"
+  <number id="count" type="slider" arg="--count %"
            _label="Points" _low-label="Few" _high-label="Many"
           low="10" high="1000" default="100"/>
 
-  <number id="cycles" type="slider" arg="-cycles %"
+  <number id="cycles" type="slider" arg="--cycles %"
            _label="Thickness" _low-label="Thin" _high-label="Thick"
           low="2" high="1000" default="400"/>
 
-<!--
-  <number id="ncolors" type="slider" arg="-ncolors %"
-            _label="Number of colors" _low-label="Two" _high-label="Many"
-            low="2" high="255" default="64"/>
--->
-
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index f54315009cd9e565d9b5dd154c9e16394716a38e..672c512cd144000e7da7cb70e5f257017edee5ae 100644 (file)
@@ -2,33 +2,23 @@
 
 <screensaver name="timetunnel" _label="Time Tunnel" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=GZe5rk_7TnA"/>
 
-  <number id="start" type="slider" arg="-start %"
+  <number id="start" type="slider" arg="--start %"
           _label="Start sequence time" _low-label="0 sec" _high-label="30 sec"
           low="0.00" high="27.79" default="0.00"/>
 
-  <number id="end" type="slider" arg="-end %"
+  <number id="end" type="slider" arg="--end %"
           _label="End sequence time" _low-label="0 sec" _high-label="30 sec"
           low="0.00" high="27.79" default="27.79"/>
 
   <hgroup>
    <vgroup>
-    <boolean id="logo"    _label="Draw logo"       arg-unset="-no-logo"/>
-    <boolean id="reverse" _label="Run backward"    arg-set="-reverse"/>
-    <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
-   </vgroup>
-   <vgroup>
-<!--
-    <string id="tardis"  _label="Tardis image            " arg="-tardis %"/>
-    <string id="head"    _label="Head image             "  arg="-head %"/>
-    <string id="marquee" _label="Marquee image        "    arg="-marquee %"/>
-    <string id="tun1"    _label="Tardis tunnel image "     arg="-tun1 %"/>
-    <string id="tun2"    _label="Middle tunnel image"      arg="-tun2 %"/>
-    <string id="tun3"    _label="Final tunnel image   "    arg="-tun3 %"/>
--->
+    <boolean id="logo"    _label="Draw logo"       arg-unset="--no-logo"/>
+    <boolean id="reverse" _label="Run backward"    arg-set="--reverse"/>
+    <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
    </vgroup>
   </hgroup>
 
index 0e9047c1d6dad5aac2f55fe183e12478ab192438..0d8bcf872b0666f71b48e3f2fb9fbf5335a44261 100644 (file)
@@ -2,57 +2,57 @@
 
 <screensaver name="topblock" _label="Top Block" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=zj0FHFJgQJ8"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="10000"
             convert="invert"/>
 
-    <number id="dropspeed" type="slider" arg="-dropSpeed %"
+    <number id="dropspeed" type="slider" arg="--dropSpeed %"
             _label="Drop speed" _low-label="Slow" _high-label="Fast"
             low="1" high="9" default="4"/>
 
-    <number id="size" type="slider" arg="-size %"
+    <number id="size" type="slider" arg="--size %"
             _label="Carpet size" _low-label="Small" _high-label="Large"
             low="1" high="10" default="2"/>
 
-    <number id="spawn" type="slider" arg="-spawn %"
+    <number id="spawn" type="slider" arg="--spawn %"
             _label="Spawn likelyhood" _low-label="Low" _high-label="High"
             low="4" high="1000" default="50"
             convert="invert"/>
 
    </vgroup>
    <vgroup>
-    <number id="resolution" type="slider" arg="-resolution %"
+    <number id="resolution" type="slider" arg="--resolution %"
             _label="Polygon count" _low-label="Low" _high-label="High"
             low="4" high="20" default="4"/>
 
-  <number id="maxColors" type="slider" arg="-maxColors %"
+  <number id="maxColors" type="slider" arg="--maxColors %"
           _label="Colors" _low-label="Few" _high-label="Many"
           low="1" high="32" default="7"/>
 
-  <number id="rotatespeed" type="slider" arg="-rotateSpeed %"
+  <number id="rotatespeed" type="slider" arg="--rotateSpeed %"
           _label="Rotation" _low-label="Slow" _high-label="Fast"
           low="1" high="1000" default="10"/>
    </vgroup>
   </hgroup>
  
   <hgroup>
-   <boolean id="rotate" _label="Rotate"    arg-unset="-no-rotate"/>
-   <boolean id="follow" _label="Follow"    arg-set="-follow"/>
-   <boolean id="blob"   _label="Blob mode" arg-set="-blob"/>
-   <boolean id="override" _label="Tunnel mode" arg-set="-override"/>
-   <boolean id="carpet" _label="Carpet"    arg-unset="-no-carpet"/>
+   <boolean id="rotate" _label="Rotate"    arg-unset="--no-rotate"/>
+   <boolean id="follow" _label="Follow"    arg-set="--follow"/>
+   <boolean id="blob"   _label="Blob mode" arg-set="--blob"/>
+   <boolean id="override" _label="Tunnel mode" arg-set="--override"/>
+   <boolean id="carpet" _label="Carpet"    arg-unset="--no-carpet"/>
   </hgroup>
   <hgroup>
-   <boolean id="nipples" _label="Nipples"  arg-unset="-no-nipples"/>
-   <boolean id="wire"   _label="Wireframe" arg-set="-wireframe"/>
-   <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+   <boolean id="nipples" _label="Nipples"  arg-unset="--no-nipples"/>
+   <boolean id="wire"   _label="Wireframe" arg-set="--wireframe"/>
+   <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
   </hgroup>
 
   <xscreensaver-updater />
index 70d9949b03ceb98c158db985c451e609fea21292..eaebf29d093561ea2fc480da9bed52591750c3e2 100644 (file)
@@ -2,20 +2,20 @@
 
 <screensaver name="triangle" _label="Triangle">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=GXrzjY-Flro"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="10000"
           convert="invert"/>
 
-  <number id="ncolors" type="slider" arg="-ncolors %"
+  <number id="ncolors" type="slider" arg="--ncolors %"
             _label="Number of colors" _low-label="Two" _high-label="Many"
             low="1" high="255" default="128"/>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 75c8dbc7b325526b8842165f097f568ef1eec5a2..fa78b4e48b1d78d686aadf81481537bbefcf07cb 100644 (file)
@@ -2,25 +2,25 @@
 
 <screensaver name="tronbit" _label="Tron Bit" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=dIF4fodt-L8"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="30000"
           convert="invert"/>
 
-  <number id="speed" type="slider" arg="-speed %"
+  <number id="speed" type="slider" arg="--speed %"
           _label="Animation speed" _low-label="Slow" _high-label="Fast"
           low="0.05" high="10.0" default="1.0"
           convert="ratio"/>
 
   <hgroup>
-   <boolean id="spin"    _label="Spin"            arg-unset="-no-spin"/>
-   <boolean id="wander"  _label="Wander"          arg-unset="-no-wander"/>
-   <boolean id="wire"    _label="Wireframe"       arg-set="-wireframe"/>
-   <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+   <boolean id="spin"    _label="Spin"            arg-unset="--no-spin"/>
+   <boolean id="wander"  _label="Wander"          arg-unset="--no-wander"/>
+   <boolean id="wire"    _label="Wireframe"       arg-set="--wireframe"/>
+   <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
   </hgroup>
 
   <xscreensaver-updater />
index c20a3f8825ed987bf675f44c02d68a894b82bdcc..81c850ea55ab0f96fc6bc6e53df7a3bd7eba466a 100644 (file)
@@ -2,32 +2,16 @@
 
 <screensaver name="truchet" _label="Truchet">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=hoJ23JSsUD8"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="1000000" default="400000"
           convert="invert"/>
 
-  <!-- #### -min-width [40] -->
-  <!-- #### -max-height [150] -->
-  <!-- #### -max-width [150] -->
-  <!-- #### -min-height [40] -->
-  <!-- #### -max-linewidth [25] -->
-  <!-- #### -min-linewidth [2] -->
-  <!-- #### -no-erase -->
-  <!-- #### -erase-count [25] -->
-  <!-- #### -not-square -->
-  <!-- #### -no-angles -->
-  <!-- #### -no-curves -->
-  <!-- #### -scroll -->
-  <!-- #### -scroll-overlap [400] -->
-  <!-- #### -anim-delay [100] -->
-  <!-- #### -anim-step-size [3] -->
-
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 3eefdeda4106f9988660ac0b3f012a4e135d9d86..b3d71e5c5539db3e400fdcff6074f2619189100a 100644 (file)
@@ -2,49 +2,49 @@
 
 <screensaver name="twang" _label="Twang">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=7pxDMSduQoU"/>
 
   <hgroup>
    <vgroup>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="10000"
           convert="invert"/>
 
-  <number id="duration" type="slider" arg="-duration %"
+  <number id="duration" type="slider" arg="--duration %"
           _label="Duration" _low-label="10 seconds" _high-label="10 minutes"
           low="10" high="600" default="120"/>
 
-  <number id="event-chance" type="slider" arg="-event-chance %"
+  <number id="event-chance" type="slider" arg="--event-chance %"
           _label="Randomness" _low-label="Slow" _high-label="Jumpy"
           low="0.0" high="0.1" default="0.01"/>
 
-  <number id="friction" type="slider" arg="-friction %"
+  <number id="friction" type="slider" arg="--friction %"
           _label="Friction" _low-label="Low" _high-label="High"
           low="0.0" high="0.2" default="0.05"/>
 
   </vgroup>
   <vgroup>
 
-  <number id="springiness" type="slider" arg="-springiness %"
+  <number id="springiness" type="slider" arg="--springiness %"
           _label="Springiness" _low-label="Low" _high-label="High"
           low="0.0" high="1.0" default="0.1"/>
 
-  <number id="transference" type="slider" arg="-transference %"
+  <number id="transference" type="slider" arg="--transference %"
           _label="Transference" _low-label="Low" _high-label="High"
           low="0.0" high="0.1" default="0.025"/>
 
-  <number id="tile-size" type="slider" arg="-tile-size %"
+  <number id="tile-size" type="slider" arg="--tile-size %"
          _label="Tile size" _low-label="Small" _high-label="Large"
          low="10" high="512" default="120"/>
 
-  <number id="border-width" type="spinbutton" arg="-border-width %"
+  <number id="border-width" type="spinbutton" arg="--border-width %"
          _label="Border width" low="0" high="20" default="3"/>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   </vgroup>
   </hgroup>
index 9136a35296da5b2f9582f8a16aac3784fd53ab5e..8b9847dcd5979c673c99b2f8fc760487f4cfd2a5 100644 (file)
@@ -2,34 +2,34 @@
 
 <screensaver name="unicrud" _label="Unicrud" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=prEzdYMZ7xA"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="20000"
           convert="invert"/>
 
-  <number id="speed" type="slider" arg="-speed %"
+  <number id="speed" type="slider" arg="--speed %"
           _label="Animation speed" _low-label="Slow" _high-label="Fast"
           low="0.05" high="10.0" default="1.0"
           convert="ratio"/>
 
   <hgroup>
-   <boolean id="wander" _label="Wander"    arg-unset="-no-wander"/>
-   <boolean id="spin"   _label="Spin"      arg-unset="-no-spin"/>
-   <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
-   <boolean id="titles"  _label="Show titles" arg-unset="-no-titles"/>
+   <boolean id="wander" _label="Wander"    arg-unset="--no-wander"/>
+   <boolean id="spin"   _label="Spin"      arg-unset="--no-spin"/>
+   <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
+   <boolean id="titles"  _label="Show titles" arg-unset="--no-titles"/>
   </hgroup>
 
   <select id="block">
     <option _label="Display everything"/>
-    <option _label="Display Latin1" arg-set="-block Latin1,Latin_Extended-A,Latin_Extended-B,Spacing_Modifier_Letters"/>
-    <option _label="Display simple characters" arg-set="-block Latin1,Latin_Extended-A,Latin_Extended-B,Spacing_Modifier_Letters,Phonetic_Extensions,Latin_Extended_Additional,Greek_Extended,General_Punctuation,Superscripts_and_Subscripts,Currency_Symbols,Letterlike_Symbols,Number_Forms"/>
-    <option _label="Display mathematical symbols" arg-set="-block Greek_and_Coptic,Mathematical_Operators,Miscellaneous_Mathematical_Symbols-A,Supplemental_Arrows-A,Supplemental_Arrows-B,Miscellaneous_Mathematical_Symbols-B,Supplemental_Mathematical_Operators,Miscellaneous_Symbols_and_Arrows"/>
-    <option _label="Display emoticons" arg-set="-block Currency_Symbols,Miscellaneous_Technical,Box_Drawing,Geometric_Shapes,Miscellaneous_Symbols,Dingbats,Mahjong_Tiles,Domino_Tiles,Playing_Cards,Miscellaneous_Symbols_and_Pictographs,Emoticons,Ornamental_Dingbats,Transport_and_Map_Symbols,Alchemical_Symbols,Geometric_Shapes_Extended,Supplemental_Symbols_and_Pictographs,Egyptian_Hieroglyphs"/>
-    <option _label="Display hieroglyphs" arg-set="-block Egyptian_Hieroglyphs"/>
+    <option _label="Display Latin1" arg-set="--block Latin1,Latin_Extended-A,Latin_Extended-B,Spacing_Modifier_Letters"/>
+    <option _label="Display simple characters" arg-set="--block Latin1,Latin_Extended-A,Latin_Extended-B,Spacing_Modifier_Letters,Phonetic_Extensions,Latin_Extended_Additional,Greek_Extended,General_Punctuation,Superscripts_and_Subscripts,Currency_Symbols,Letterlike_Symbols,Number_Forms"/>
+    <option _label="Display mathematical symbols" arg-set="--block Greek_and_Coptic,Mathematical_Operators,Miscellaneous_Mathematical_Symbols-A,Supplemental_Arrows-A,Supplemental_Arrows-B,Miscellaneous_Mathematical_Symbols-B,Supplemental_Mathematical_Operators,Miscellaneous_Symbols_and_Arrows"/>
+    <option _label="Display emoticons" arg-set="--block Currency_Symbols,Miscellaneous_Technical,Box_Drawing,Geometric_Shapes,Miscellaneous_Symbols,Dingbats,Mahjong_Tiles,Domino_Tiles,Playing_Cards,Miscellaneous_Symbols_and_Pictographs,Emoticons,Ornamental_Dingbats,Transport_and_Map_Symbols,Alchemical_Symbols,Geometric_Shapes_Extended,Supplemental_Symbols_and_Pictographs,Egyptian_Hieroglyphs"/>
+    <option _label="Display hieroglyphs" arg-set="--block Egyptian_Hieroglyphs"/>
   </select>
 
   <xscreensaver-updater />
index cda5ca0af8619b6e6cf5870f2e99d6189e744954..f50bde44129d3cae4d5090ccdff7cf42ea4552c3 100644 (file)
@@ -2,51 +2,50 @@
 
 <screensaver name="unknownpleasures" _label="Unknown Pleasures" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=DEWPiUbwnt0"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="30000"
             convert="invert"/>
 
-    <number id="count" type="slider" arg="-count %"
+    <number id="count" type="slider" arg="--count %"
             _label="Scanlines" _low-label="Few" _high-label="Many"
             low="3" high="200" default="80"/>
 
-    <number id="speed" type="slider" arg="-speed %"
+    <number id="speed" type="slider" arg="--speed %"
             _label="Speed" _low-label="Slow" _high-label="Fast"
             low="0.1" high="20.0" default="1.0"
             convert="ratio"/>
    </vgroup>
 
    <vgroup>
-    <number id="resolution" type="slider" arg="-resolution %"
+    <number id="resolution" type="slider" arg="--resolution %"
             _label="Resolution" _low-label="Low" _high-label="High"
             low="5" high="300" default="100"/>
 
-    <number id="amplitude" type="slider" arg="-amplitude %"
+    <number id="amplitude" type="slider" arg="--amplitude %"
             _label="Amplitude" _low-label="Low" _high-label="High"
             low="0.01" high="0.25" default="0.13"/>
 
-    <number id="noise" type="slider" arg="-noise %"
+    <number id="noise" type="slider" arg="--noise %"
             _label="Noise" _low-label="Low" _high-label="High"
-            low="0.0" high="3.0" default="1.0"
-            convert="ratio"/>
+            low="0.0" high="3.0" default="1.0"/>
    </vgroup>
   </hgroup>
 
   <hgroup>
-   <boolean id="ortho" _label="Orthographic Projection" arg-unset="-no-ortho"/>
-   <boolean id="buzz"    _label="Buzz"                  arg-set="-buzz"/>
-   <boolean id="wire"    _label="Wireframe"             arg-set="-wireframe"/>
-   <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+   <boolean id="ortho" _label="Orthographic Projection" arg-unset="--no-ortho"/>
+   <boolean id="buzz"    _label="Buzz"                  arg-set="--buzz"/>
+   <boolean id="wire"    _label="Wireframe"             arg-set="--wireframe"/>
+   <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
   </hgroup>
 
-  <file id="mask" _label="Mask image" arg="-mask %"/>
+  <file id="mask" _label="Mask image" arg="--mask %"/>
 
   <xscreensaver-updater />
 
index 7d82ab019a988d10f6918c474149b5d511c61ebb..294b63f8fb574cb8c3a55261ccdb03b4bcddacdc 100644 (file)
@@ -2,15 +2,15 @@
 
 <screensaver name="vermiculate" _label="Vermiculate">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=YSg9KY-qw5o"/>
 
-  <number id="speed" type="slider" arg="-speed %"
+  <number id="speed" type="slider" arg="--speed %"
           _label="Duration" _low-label="Short" _high-label="Long"
           low="1" high="1000" default="1" />
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 2accd190fc50845643255a84fb88f6b699decaec..8b10136491930e5b860ea4a90ab6791f7b45e3c4 100644 (file)
@@ -2,30 +2,30 @@
 
 <screensaver name="vfeedback" _label="VFeedback">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=I_MkW0CW4QM"/>
 
   <hgroup>
    <vgroup>
-    <number id="tvcolor" type="slider" arg="-tv-color %"
+    <number id="tvcolor" type="slider" arg="--tv-color %"
             _label="Color Knob" _low-label="Low" _high-label="High"
             low="0" high="400" default="70"/>
-    <number id="tvtint" type="slider" arg="-tv-tint %"
+    <number id="tvtint" type="slider" arg="--tv-tint %"
             _label="Tint Knob" _low-label="Low" _high-label="High"
             low="0" high="360" default="5"/>
-    <number id="noise" type="slider" arg="-noise %"
+    <number id="noise" type="slider" arg="--noise %"
             _label="Noise" _low-label="Low" _high-label="High"
             low="0.0" high="0.2" default="0.02"/>
    </vgroup>
    <vgroup>
-    <number id="tvbrightness" type="slider" arg="-tv-brightness %"
+    <number id="tvbrightness" type="slider" arg="--tv-brightness %"
             _label="Brightness Knob" _low-label="Low" _high-label="High"
             low="-75.0" high="100.0" default="1.5"/>
-    <number id="tvcontrast" type="slider" arg="-tv-contrast %"
+    <number id="tvcontrast" type="slider" arg="--tv-contrast %"
             _label="Contrast Knob" _low-label="Low" _high-label="High"
             low="0" high="500" default="150"/>
-    <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+    <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
    </vgroup>
   </hgroup>
 
index 95b2b816f73636a895d2f9ca0fa29e7ead584860..85bbe7a4e31736bed59577b4670c694ee800f7b9 100644 (file)
@@ -2,17 +2,17 @@
 
 <screensaver name="vidwhacker" _label="Vid Whacker">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=u8esWjcR4eI"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Duration" _low-label="2 seconds" _high-label="2 minutes"
           low="2" high="120" default="5"/>
 
-  <file id="directory" _label="Image directory" arg="-directory %"/>
+  <file id="directory" _label="Image directory" arg="--directory %"/>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 1cecdfb52032ccb9bf4d6e07e03384fe24149cc1..5cd2bcc51dcf4c5d29a94c3624cb6828616976fe 100644 (file)
@@ -2,21 +2,21 @@
 
 <screensaver name="vigilance" _label="Vigilance" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=b7y35gr3WZ0"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="20000"
           convert="invert"/>
 
-  <number id="speed" type="slider" arg="-speed %"
+  <number id="speed" type="slider" arg="--speed %"
           _label="Speed" _low-label="Slow" _high-label="Fast"
           low="0.01" high="8.0" default="1.0"
           convert="ratio"/>
 
-  <number id="count" type="slider" arg="-count %"
+  <number id="count" type="slider" arg="--count %"
           _label="Number of cameras" _low-label="One" _high-label="Lots"
           low="1" high="30" default="5"/>
 
index 0299d77da2a2191fa821a3a53580d8d14f8e3588..084d7d77389b25dfee1aee8fa567f2d77b3d0e37 100644 (file)
@@ -2,20 +2,20 @@
 
 <screensaver name="vines" _label="Vines">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=IaVfFCIAUn8"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="250000" default="200000"
           convert="invert"/>
 
-  <number id="ncolors" type="slider" arg="-ncolors %"
+  <number id="ncolors" type="slider" arg="--ncolors %"
             _label="Number of colors" _low-label="Two" _high-label="Many"
             low="1" high="255" default="64"/>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 771e99dcdf7709c6d93c4c94a76d96969bb322d1..74be9805477a99195b71fb3eb57c77091c773526 100644 (file)
@@ -2,45 +2,44 @@
 
 <screensaver name="voronoi" _label="Voronoi" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=hD_8cBvknUM"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Slow" _high-label="Fast"
             low="0" high="100000" default="20000"
             convert="invert"/>
 
-    <number id="points" type="slider" arg="-points %"
+    <number id="points" type="slider" arg="--points %"
             _label="Points" _low-label="Few" _high-label="Many"
             low="1" high="100" default="25"/>
 
-    <number id="pointSize" type="slider" arg="-point-size %"
+    <number id="pointSize" type="slider" arg="--point-size %"
             _label="Point size" _low-label="0" _high-label="50 pixels"
             low="0" high="50" default="9"/>
 
-    <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+    <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
    </vgroup>
 
    <vgroup>
-    <number id="pointSpeed" type="slider" arg="-point-speed %"
+    <number id="pointSpeed" type="slider" arg="--point-speed %"
             _label="Wander speed" _low-label="Slow" _high-label="Fast"
-            low="0.0" high="10.0" default="1.0"
-            convert="ratio"/>
+            low="0.0" high="10.0" default="1.0"/>
 
-    <number id="pointDelay" type="slider" arg="-point-delay %"
+    <number id="pointDelay" type="slider" arg="--point-delay %"
             _label="Insertion speed" _low-label="Slow" _high-label="Fast"
             low="0.0" high="3.0" default="0.05"
             convert="invert"/>
 
-    <number id="zoomSpeed" type="slider" arg="-zoom-speed %"
+    <number id="zoomSpeed" type="slider" arg="--zoom-speed %"
             _label="Zoom speed" _low-label="Slow" _high-label="Fast"
             low="0.1" high="10.0" default="1.0"
             convert="ratio"/>
 
-    <number id="zoomDelay" type="slider" arg="-zoom-delay %"
+    <number id="zoomDelay" type="slider" arg="--zoom-delay %"
             _label="Zoom frequency" _low-label="0" _high-label="60 seconds"
             low="0" high="60" default="15"/>
    </vgroup>
index ad72fe883cd9cadb42ec33d10fb6fdc2e8f38de5..52b7b6ad4dbf010b1dc61bba30e48d839ed42667 100644 (file)
@@ -2,44 +2,44 @@
 
 <screensaver name="wander" _label="Wander">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=2ZZC46Z9wJE"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="20000"
             convert="invert"/>
 
-    <number id="density" type="slider" arg="-density %"
+    <number id="density" type="slider" arg="--density %"
             _label="Density" _low-label="Low" _high-label="High"
             low="1" high="30" default="2"
             convert="invert"/>
 
-    <number id="reset" type="slider" arg="-reset %"
+    <number id="reset" type="slider" arg="--reset %"
             _label="Duration" _low-label="Short" _high-label="Long"
             low="10000" high="3000000" default="2500000"/>
    </vgroup>
 
    <vgroup>
-    <number id="length" type="slider" arg="-length %"
+    <number id="length" type="slider" arg="--length %"
             _label="Length" _low-label="Short" _high-label="Long"
             low="100" high="100000" default="25000"/>
 
-    <number id="advance" type="slider" arg="-advance %"
+    <number id="advance" type="slider" arg="--advance %"
             _label="Color contrast" _low-label="Low" _high-label="High"
             low="1" high="100" default="1"/>
 
     <hgroup>
-      <boolean id="circles" _label="Draw spots" arg-set="-circles"/>
+      <boolean id="circles" _label="Draw spots" arg-set="--circles"/>
 
-      <number id="size" type="spinbutton" arg="-size %"
+      <number id="size" type="spinbutton" arg="--size %"
                _label="Size" low="0" high="100" default="1"/>
     </hgroup>
 
-    <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+    <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
    </vgroup>
   </hgroup>
 
index 9c7691075794d55f99e4205880835e2c573e574c..a2acab733c87ecd07ce1e71e3da33603a51b19b7 100644 (file)
@@ -2,37 +2,30 @@
 
 <screensaver name="webcollage" _label="Web Collage">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=u8esWjcR4eI"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Delay between images" _low-label="None" _high-label="30 secs"
             low="0" high="30" default="2"/>
 
-    <number id="timeout" type="slider" arg="-timeout %"
+    <number id="timeout" type="slider" arg="--timeout %"
             _label="Network timeout" _low-label="2 secs" _high-label="2 min"
             low="2" high="120" default="30"/>
    </vgroup>
    <vgroup>
-    <number id="opacity" type="slider" arg="-opacity %"
+    <number id="opacity" type="slider" arg="--opacity %"
             _label="Image opacity" _low-label="Transparent" _high-label="Opaque"
             low="0.1" high="1.0" default="0.85"/>
 
-   <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+   <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
    </vgroup>
   </hgroup>
 
-<!--
-  <string id="filter"  _label="Per-image filter program" arg="-filter %"/>
-  <string id="filter2" _label="Overall filter program" arg="-filter2 %"/>
-  <file id="dictionary" _label="Dictionary file" arg="-dictionary %"/>
-  <file id="dir" _label="Image directory" arg="-directory %"/>
- -->
-
   <xscreensaver-updater />
 
   <_description>
index c92b6feead6ef3f4385542cb1b809f7a4aeb99f4..1c9615bd532407bfd247aea2c92c84b010168aed 100644 (file)
@@ -2,19 +2,19 @@
 
 <screensaver name="whirlwindwarp" _label="Whirlwind Warp">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=eWrRhSYzimY"/>
 
-  <number id="points" type="slider" arg="-points %"
+  <number id="points" type="slider" arg="--points %"
           _label="Particles" _low-label="Few" _high-label="Many"
           low="10" high="1000" default="400"/>
 
-  <number id="tails" type="slider" arg="-tails %"
+  <number id="tails" type="slider" arg="--tails %"
           _label="Trail size" _low-label="Short" _high-label="Long"
           low="1" high="50" default="8"/>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index d91701209f434229c62a3a3b0127c3ea7c78b13a..ff10d73e82dd87ce1bffbd0e67f6afc0c149b04a 100644 (file)
@@ -2,83 +2,69 @@
 
 <screensaver name="whirlygig" _label="Whirlygig">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=Y2JTY7bssPM"/>
 
   <hgroup>
-   <number id="whirlies" type="spinbutton" arg="-whirlies %"
+   <number id="whirlies" type="spinbutton" arg="--whirlies %"
            _label="Whirlies" low="-1" high="50" default="-1"/>
 
-   <number id="lines" type="spinbutton" arg="-nlines %"
+   <number id="lines" type="spinbutton" arg="--nlines %"
            _label="Lines" low="-1" high="50" default="-1"/>
   </hgroup>
 
   <hgroup>
    <vgroup>
-    <number id="xspeed" type="slider" arg="-xspeed %"
+    <number id="xspeed" type="slider" arg="--xspeed %"
             _label="X speed" _low-label="Low" _high-label="High"
-            low="0.0" high="10.0" default="1.0"
-            convert="ratio"/>
-    <number id="yspeed" type="slider" arg="-yspeed %"
+            low="0.0" high="10.0" default="1.0"/>
+    <number id="yspeed" type="slider" arg="--yspeed %"
             _label="Y speed" _low-label="Low" _high-label="High"
-             low="0.0" high="10.0" default="1.0"
-            convert="ratio"/>
+             low="0.0" high="10.0" default="1.0"/>
    </vgroup>
 
    <vgroup>
-    <number id="xamplitude" type="slider" arg="-xamplitude %"
+    <number id="xamplitude" type="slider" arg="--xamplitude %"
             _label="X amplitude" _low-label="Low" _high-label="High"
-             low="0.0" high="10.0" default="1.0"
-            convert="ratio"/>
-    <number id="yamplitude" type="slider" arg="-yamplitude %"
+             low="0.0" high="10.0" default="1.0"/>
+    <number id="yamplitude" type="slider" arg="--yamplitude %"
             _label="Y amplitude" _low-label="Low" _high-label="High"
-             low="0.0" high="10.0" default="1.0"
-            convert="ratio"/>
+             low="0.0" high="10.0" default="1.0"/>
    </vgroup>
   </hgroup>
 
-
-  <!-- #### -xmode [change] -->
-
   <hgroup>
    <select id="xmode">
     <option id="randomx"    _label="X random" />
-    <option id="spinx"      _label="X spin" arg-set="-xmode spin"/>
-    <option id="funkyx"     _label="X funky" arg-set="-xmode funky"/>
-    <option id="circlex"    _label="X circle" arg-set="-xmode circle"/>
-    <option id="linearx"    _label="X linear" arg-set="-xmode linear"/>
-    <option id="testx"      _label="X test" arg-set="-xmode test"/>
-    <option id="funx"       _label="X fun" arg-set="-xmode fun"/>
-    <option id="inniex"     _label="X innie" arg-set="-xmode innie"/>
-    <option id="lissajousx" _label="X lissajous" arg-set="-xmode lissajous"/>
+    <option id="spinx"      _label="X spin" arg-set="--xmode spin"/>
+    <option id="funkyx"     _label="X funky" arg-set="--xmode funky"/>
+    <option id="circlex"    _label="X circle" arg-set="--xmode circle"/>
+    <option id="linearx"    _label="X linear" arg-set="--xmode linear"/>
+    <option id="testx"      _label="X test" arg-set="--xmode test"/>
+    <option id="funx"       _label="X fun" arg-set="--xmode fun"/>
+    <option id="inniex"     _label="X innie" arg-set="--xmode innie"/>
+    <option id="lissajousx" _label="X lissajous" arg-set="--xmode lissajous"/>
    </select>
 
    <select id="ymode">
     <option id="randomy"    _label="Y random" />
-    <option id="spiny"      _label="Y spin" arg-set="-ymode spin"/>
-    <option id="funkyy"     _label="Y funky" arg-set="-ymode funky"/>
-    <option id="circley"    _label="Y circle" arg-set="-ymode circle"/>
-    <option id="lineary"    _label="Y linear" arg-set="-ymode linear"/>
-    <option id="testy"      _label="Y test" arg-set="-ymode test"/>
-    <option id="funy"       _label="Y fun" arg-set="-ymode fun"/>
-    <option id="inniey"     _label="Y innie" arg-set="-ymode innie"/>
-    <option id="lissajousy" _label="Y lissajous" arg-set="-ymode lissajous"/>
+    <option id="spiny"      _label="Y spin" arg-set="--ymode spin"/>
+    <option id="funkyy"     _label="Y funky" arg-set="--ymode funky"/>
+    <option id="circley"    _label="Y circle" arg-set="--ymode circle"/>
+    <option id="lineary"    _label="Y linear" arg-set="--ymode linear"/>
+    <option id="testy"      _label="Y test" arg-set="--ymode test"/>
+    <option id="funy"       _label="Y fun" arg-set="--ymode fun"/>
+    <option id="inniey"     _label="Y innie" arg-set="--ymode innie"/>
+    <option id="lissajousy" _label="Y lissajous" arg-set="--ymode lissajous"/>
    </select>
  </hgroup>
 
-  <!-- #### -speed [1] -->
-  <!-- #### -color_modifier [-1] -->
-  <!-- #### -start_time [-1] -->
-  <!-- #### -xoffset [1.0] -->
-  <!-- #### -yoffset [1.0] -->
-  <!-- #### -offset_period [1] -->
-
   <hgroup>
-   <boolean id="trail" _label="Leave a trail" arg-set="-trail"/>
-   <boolean id="explain" _label="Explain modes" arg-set="-explain"/>
-   <boolean id="wrap" _label="Wrap the screen" arg-set="-wrap"/>
-   <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+   <boolean id="trail" _label="Leave a trail" arg-set="--trail"/>
+   <boolean id="explain" _label="Explain modes" arg-set="--explain"/>
+   <boolean id="wrap" _label="Wrap the screen" arg-set="--wrap"/>
+   <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
   </hgroup>
 
   <xscreensaver-updater />
index ccdf750122631a1332c460d7906ffa5146509249..35b6f7ea9e9c10515acbc35cd60ff2bc6d624a2a 100644 (file)
@@ -2,48 +2,48 @@
 
 <screensaver name="winduprobot" _label="Windup Robot" gl="yes">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=RmpsDx9MuUM"/>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="20000"
             convert="invert"/>
 
-    <number id="speed" type="slider" arg="-speed %"
+    <number id="speed" type="slider" arg="--speed %"
             _label="Robot speed" _low-label="Slow" _high-label="Fast"
             low="0.01" high="8.0" default="1.0"
             convert="ratio"/>
 
-    <number id="count" type="slider" arg="-count %"
+    <number id="count" type="slider" arg="--count %"
             _label="Number of robots" _low-label="One" _high-label="Lots"
             low="1" high="100" default="25"/>
 
-    <number id="size" type="slider" arg="-size %"
+    <number id="size" type="slider" arg="--size %"
             _label="Robot size" _low-label="Tiny" _high-label="Huge"
             low="0.1" high="10.0" default="1.0"
             convert="ratio"/>
 
-    <number id="opacity" type="slider" arg="-opacity %"
+    <number id="opacity" type="slider" arg="--opacity %"
             _label="Robot skin transparency" _low-label="Invisible" _high-label="Solid"
             low="0.0" high="1.0" default="1.0"/>
 
    </vgroup>
 
    <vgroup>
-    <number id="talk" type="slider" arg="-talk %"
+    <number id="talk" type="slider" arg="--talk %"
             _label="Word bubbles" _low-label="Never" _high-label="Often"
             low="0.0" high="1.0" default="0.2"/>
 
     <xscreensaver-text />
 
     <hgroup>
-      <boolean id="texture"  _label="Chrome"          arg-unset="-no-texture"/>
-      <boolean id="fade"     _label="Fade opacity"    arg-unset="-no-fade"/>
-      <boolean id="showfps"  _label="Show frame rate" arg-set="-fps"/>
+      <boolean id="texture"  _label="Chrome"          arg-unset="--no-texture"/>
+      <boolean id="fade"     _label="Fade opacity"    arg-unset="--no-fade"/>
+      <boolean id="showfps"  _label="Show frame rate" arg-set="--fps"/>
     </hgroup>
 
    </vgroup>
index 9678f2900d798c3ac2134ddd379c8c581c26b8f4..9ec90a5725f97300b0e95cd844b911569e6141b7 100644 (file)
@@ -2,29 +2,26 @@
 
 <screensaver name="worm" _label="Worm">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=-S26J2Ja11g"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="17000"
           convert="invert"/>
 
-  <number id="ncolors" type="slider" arg="-ncolors %"
+  <number id="ncolors" type="slider" arg="--ncolors %"
             _label="Number of colors" _low-label="Two" _high-label="Many"
             low="1" high="255" default="150"/>
 
-  <number id="count" type="spinbutton" arg="-count %"
+  <number id="count" type="spinbutton" arg="--count %"
           _label="Count" low="-100" high="100" default="-20"/>
 
-  <number id="size" type="spinbutton" arg="-size %"
+  <number id="size" type="spinbutton" arg="--size %"
            _label="Size" low="-20" high="20" default="-3"/>
 
-  <!-- #### -cycles [10] -->
-  <!-- #### -3d -->
-
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 387afa156f9b675f0d24ecb80ab806b9c11cd461..20dc1bc9616428a27b743528ec1355effc918e2a 100644 (file)
@@ -2,24 +2,24 @@
 
 <screensaver name="wormhole" _label="Wormhole">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=jGuJU8JKxlI"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="10000"
           convert="invert"/>
 
-  <number id="zspeed" type="slider" arg="-zspeed %"
+  <number id="zspeed" type="slider" arg="--zspeed %"
           _label="Star speed" _low-label="Slow" _high-label="Fast"
           low="1" high="30" default="10"/>
 
-  <number id="stars" type="slider" arg="-stars %"
+  <number id="stars" type="slider" arg="--stars %"
           _label="Stars created" _low-label="Few" _high-label="Lots"
           low="1" high="100" default="20"/>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 5064ca10da06475f52c4f5637d9e01fb4b7d92b7..345648f397c42f1635d98db1ed24fc293d3fd0d5 100644 (file)
@@ -2,7 +2,7 @@
 
 <screensaver name="xanalogtv" _label="XAnalogTV">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=VmM1KkFsry0"/>
 
     <xscreensaver-image />
    </vgroup>
    <vgroup>
-    <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
-    <boolean id="colorbars" _label="Colorbars only" arg-set="-colorbars-only"/>
+    <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
+    <boolean id="colorbars" _label="Colorbars only" arg-set="--colorbars-only"/>
    </vgroup>
   </hgroup>
 
   <hgroup>
    <vgroup>
-    <number id="tvcolor" type="slider" arg="-tv-color %"
+    <number id="tvcolor" type="slider" arg="--tv-color %"
             _label="Color Knob" _low-label="Low" _high-label="High"
             low="0" high="400" default="70"/>
-    <number id="tvtint" type="slider" arg="-tv-tint %"
+    <number id="tvtint" type="slider" arg="--tv-tint %"
             _label="Tint Knob" _low-label="Low" _high-label="High"
             low="0" high="360" default="5"/>
    </vgroup>
    <vgroup>
-    <number id="tvbrightness" type="slider" arg="-tv-brightness %"
+    <number id="tvbrightness" type="slider" arg="--tv-brightness %"
             _label="Brightness Knob" _low-label="Low" _high-label="High"
             low="-75.0" high="100.0" default="3.0"/>
-    <number id="tvcontrast" type="slider" arg="-tv-contrast %"
+    <number id="tvcontrast" type="slider" arg="--tv-contrast %"
             _label="Contrast Knob" _low-label="Low" _high-label="High"
             low="0" high="1500" default="1000"/>
    </vgroup>
index 783dcab52428117ff99cca2f9db56fee160369c3..99aaf3ea7251e3fce9611be1e6f548a6d6814f0f 100644 (file)
@@ -2,27 +2,17 @@
 
 <screensaver name="xflame" _label="XFlame">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=jUJiULU4i0k"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="10000"
           convert="invert"/>
 
-<!--  <file id="bitmap" _label="Bitmap file" arg="-bitmap %"/> -->
-
-  <!-- #### -baseline [20] -->
-  <!-- #### -hspread [30] -->
-  <!-- #### -vspread [97] -->
-  <!-- #### -residual [99] -->
-  <!-- #### -variance [50] -->
-  <!-- #### -vartrend [20] -->
-
-  <boolean id="bloom" _label="Enable blooming" arg-unset="-no-bloom"/>
-
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="bloom" _label="Enable blooming" arg-unset="--no-bloom"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 5fff7d8c91d360b43ac9feaa2c3277574606016f..49c68ba832196473de84f73c5fcb40580fb608d3 100644 (file)
@@ -2,18 +2,16 @@
 
 <screensaver name="xjack" _label="XJack">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=wSOiSrEbxu4"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Speed" _low-label="Slow" _high-label="Fast"
           low="0" high="200000" default="50000"
           convert="invert"/>
 
-  <!-- #### -font [] -->
-
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 1d2e17642196e9bf523d4dbeb0660972f86b2ac4..24c8b16038c2f19824af94fe34f48c19cb775325 100644 (file)
@@ -2,43 +2,20 @@
 
 <screensaver name="xlyap" _label="XLyap">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=5MrEaXnhEPg"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="10000"
           convert="invert"/>
 
-  <number id="linger" type="slider" arg="-linger %"
+  <number id="linger" type="slider" arg="--linger %"
           _label="Linger" _low-label="Brief" _high-label="Long"
           low="0" high="10" default="5" />
 
-  <!-- #### -builtin [-1] -->
-  <!-- #### -C [1] -->
-  <!-- #### -D [50] -->
-  <!-- #### -L -->
-  <!-- #### -M [1.0] -->
-  <!-- #### -O [0] -->
-  <!-- #### -R [] -->
-  <!-- #### -S [50] -->
-  <!-- #### -a [2.0] -->
-  <!-- #### -b [2.0] -->
-  <!-- #### -c [7] -->
-  <!-- #### -F [10101010] -->
-  <!-- #### -f [abbabaab] -->
-  <!-- #### -h [] -->
-  <!-- #### -i [0.65] -->
-  <!-- #### -m [] -->
-  <!-- #### -o [] -->
-  <!-- #### -p -->
-  <!-- #### -r [65000] -->
-  <!-- #### -s [256] -->
-  <!-- #### -v -->
-  <!-- #### -w [] -->
-
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index b1afe9c6e4062e05ef3efc2b9472e60a3749d357..e713adb570d98004c6354de453a1e4b53e27d9a9 100644 (file)
@@ -2,49 +2,49 @@
 
 <screensaver name="xmatrix" _label="XMatrix">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=dSJQHm-YoWc"/>
 
   <hgroup>
    <select id="size">
-     <option id="font1" _label="Small font"  arg-set="-small"/>
+     <option id="font1" _label="Small font"  arg-set="--small"/>
      <option id="font2" _label="Large font"/>
    </select>
 
    <select id="mode">
      <option id="matrix" _label="Matrix encoding"/>
-     <option id="binary" _label="Binary encoding"      arg-set="-mode binary"/>
-     <option id="hex"    _label="Hexadecimal encoding" arg-set="-mode hex"/>
-     <option id="dna"    _label="Genetic encoding"     arg-set="-mode dna"/>
-     <option id="pipe"   _label="Piped ASCII text"     arg-set="-mode pipe"/>
+     <option id="binary" _label="Binary encoding"      arg-set="--mode binary"/>
+     <option id="hex"    _label="Hexadecimal encoding" arg-set="--mode hex"/>
+     <option id="dna"    _label="Genetic encoding"     arg-set="--mode dna"/>
+     <option id="pipe"   _label="Piped ASCII text"     arg-set="--mode pipe"/>
    </select>
 
    <select id="fill">
      <option id="both"   _label="Synergistic algorithm"/>
-     <option id="top"    _label="Slider algorithm"    arg-set="-insert top"/>
-     <option id="bottom" _label="Expansion algorithm" arg-set="-insert bottom"/>
+     <option id="top"    _label="Slider algorithm"    arg-set="--insert top"/>
+     <option id="bottom" _label="Expansion algorithm" arg-set="--insert bottom"/>
    </select>
   </hgroup>
 
   <hgroup>
-   <boolean id="trace" _label="Run trace program" arg-unset="-no-trace"/>
-   <boolean id="knock" _label="Knock knock"       arg-unset="-no-knock-knock"/>
-   <string id="phone" _label="Phone number" arg="-phone %"/>
+   <boolean id="trace" _label="Run trace program" arg-unset="--no-trace"/>
+   <boolean id="knock" _label="Knock knock"       arg-unset="--no-knock-knock"/>
+   <string id="phone" _label="Phone number" arg="--phone %"/>
   </hgroup>
 
   <hgroup>
    <vgroup>
-    <number id="delay" type="slider" arg="-delay %"
+    <number id="delay" type="slider" arg="--delay %"
             _label="Frame rate" _low-label="Low" _high-label="High"
             low="0" high="100000" default="10000"
             convert="invert"/>
 
-    <number id="density" type="slider" arg="-density %"
+    <number id="density" type="slider" arg="--density %"
             _label="Density" _low-label="Sparse" _high-label="Full"
             low="1" high="100" default="75"/>
 
-    <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+    <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
     <xscreensaver-updater />
 
index 5aaf815aa2234d550af4c0064644c41c4b455aa3..28864180dbfce6c32cb56a02641d2f5acbc8c37e 100644 (file)
@@ -2,16 +2,16 @@
 
 <screensaver name="xrayswarm" _label="XRaySwarm">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=e_E-k37b4Vc"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="20000"
           convert="invert"/>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 6be28f044ac4f6b4479cd9b1572afc43c8daf6ae..c5e5645efea7ed6582cb4c0ce030927e50f0ea30 100644 (file)
@@ -2,23 +2,23 @@
 
 <screensaver name="xspirograph" _label="XSpirograph">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=XWCeQqzNavY"/>
 
-  <number id="delay" type="slider" arg="-subdelay %"
+  <number id="delay" type="slider" arg="--subdelay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="20000"
           convert="invert"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Linger" _low-label="1 second" _high-label="1 minute"
           low="1" high="60" default="5"/>
 
-  <number id="layers" type="spinbutton" arg="-layers %"
+  <number id="layers" type="spinbutton" arg="--layers %"
           _label="Layers" low="1" high="10" default="2"/>
 
-  <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+  <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
 
   <xscreensaver-updater />
 
index 168c555786974ab2338020988c40a424bb5e8fe1..ca1402a4e2f2fe8216695cbab740b3b77329d559 100644 (file)
@@ -2,40 +2,40 @@
 
 <screensaver name="zoom" _label="Zoom">
 
-  <command arg="-root"/>
+  <command arg="--root"/>
 
   <video href="https://www.youtube.com/watch?v=LeQa9inGEKc"/>
 
-  <number id="delay" type="slider" arg="-delay %"
+  <number id="delay" type="slider" arg="--delay %"
           _label="Frame rate" _low-label="Low" _high-label="High"
           low="0" high="100000" default="10000"
           convert="invert"/>
 
-  <number id="duration" type="slider" arg="-duration %"
+  <number id="duration" type="slider" arg="--duration %"
           _label="Duration" _low-label="10 seconds" _high-label="10 minutes"
           low="10" high="600" default="120"/>
 
   <hgroup>
    <vgroup>
-    <number id="pixwidth" type="spinbutton" arg="-pixwidth %"
+    <number id="pixwidth" type="spinbutton" arg="--pixwidth %"
             _label="X mag" low="2" high="100" default="40" />
-    <number id="pixspacex" type="spinbutton" arg="-pixspacex %"
+    <number id="pixspacex" type="spinbutton" arg="--pixspacex %"
             _label=" X border" low="0" high="10" default="2" />
-    <number id="lensoffsetx" type="spinbutton" arg="-lensoffsetx %"
+    <number id="lensoffsetx" type="spinbutton" arg="--lensoffsetx %"
             _label="   X lens" low="1" high="100" default="5" />
    </vgroup>
    <vgroup>
-    <number id="pixheight" type="spinbutton" arg="-pixheight %"
+    <number id="pixheight" type="spinbutton" arg="--pixheight %"
             _label="Y mag" low="2" high="100" default="40" />
-    <number id="pixspacey" type="spinbutton" arg="-pixspacey %"
+    <number id="pixspacey" type="spinbutton" arg="--pixspacey %"
             _label=" Y border" low="0" high="10" default="2" />
-    <number id="lensoffsety" type="spinbutton" arg="-lensoffsety %"
+    <number id="lensoffsety" type="spinbutton" arg="--lensoffsety %"
             _label="    Y lens" low="1" high="100" default="5" />
    </vgroup>
 
    <vgroup>
-    <boolean id="lenses" _label="Lenses" arg-unset="-no-lenses"/>
-    <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
+    <boolean id="lenses" _label="Lenses" arg-unset="--no-lenses"/>
+    <boolean id="showfps" _label="Show frame rate" arg-set="--fps"/>
    </vgroup>
 
   </hgroup>
index 9ad124e88d79094424c9f905dcf7051392b4d589..09e742f38836c509c20ae80c84a07cee37e2a621 100644 (file)
@@ -3,42 +3,46 @@
 coral \- simulates coral growth, albeit somewhat slowly.
 .SH SYNOPSIS
 .B coral
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay2 \fInumber\fP]
-[\-delay \fInumber\fP]
-[\-density \fInumber\fP]
-[\-seeds \fInumber\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay2 \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-density \fInumber\fP]
+[\-\-seeds \fInumber\fP]
+[\-\-fps]
 .SH DESCRIPTION
 Simulates coral growth, albeit somewhat slowly.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay2 \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay2 \fInumber\fP
 Per-frame delay, in microseconds.  Default: 1000 (0.001 seconds.).
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-delay \fInumber\fP
 Duration.  1 - 60.  Default: 5.
 .TP 8
-.B \-density \fInumber\fP
+.B \-\-density \fInumber\fP
 Density.  1 - 90.  Default: 25.
 .TP 8
-.B \-seeds \fInumber\fP
+.B \-\-seeds \fInumber\fP
 Seeds. 1 - 100.  Default: 20.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -49,6 +53,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 5993feda11663c221e8e7dcaef3ed1abd5fea9b7..ab85f0a03e4cd6e4c99762ad19ad33dce4f03cbd 100644 (file)
@@ -3,8 +3,10 @@
 critical \- Draw a system showing self-organizing criticality
 .SH SYNOPSIS
 .B critical
-[\-display \fIhost:display.screen\fP] [\-foreground \fIcolor\fP] [\-background \fIcolor\fP] [\-window] [\-root] [\-mono] [\-install] [\-visual \fIvisual\fP] [\-delay \fIseconds\fP] [\-random \fIboolean\fP] [\-ncolors \fIint\fP] [\-offset \fIint\fP] 
-[\-fps]
+[\-\-display \fIhost:display.screen\fP] [\-\-foreground \fIcolor\fP]
+[\-\-background \fIcolor\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-mono] [\-\-install] [\-\-visual \fIvisual\fP] [\-\-delay \fIseconds\fP] [\-\-random \fIboolean\fP] [\-\-ncolors \fIint\fP] [\-\-offset \fIint\fP] 
+[\-\-fps]
 .SH DESCRIPTION
 The \fIcritical\fP program displays a self-organizing critical system
 that gradually emerges from chaos.
@@ -30,40 +32,43 @@ article in \fIScientific American\fP describing it sometime in 1997.
 .I critical
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-mono 
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-mono 
 If on a color display, pretend we're on a monochrome display.
 .TP 8
-.B \-install
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-delay \fIusecs\fP
+.B \-\-delay \fIusecs\fP
 Number of microseconds to wait after drawing each line.
 .TP 8
-.B \-random \fIboolean\fP
+.B \-\-random \fIboolean\fP
 Whether to use randomly selected colours rather than a cycle around
 the colour wheel.
 .TP 8
-.B \-offset \fIinteger\fP
+.B \-\-offset \fIinteger\fP
 The maximum random radius increment to use.
 .TP 8
-.B \-ncolors \fIinteger\fP
+.B \-\-ncolors \fIinteger\fP
 How many colors should be allocated in the color ramp (note that this
 value interacts with \fIoffset\fP.)
 .TP 8
-.B \-trail \fIinteger\fP
+.B \-\-trail \fIinteger\fP
 Length of the trail: between 5 and 100 is nice.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -74,6 +79,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index b56e1cc2d9d1de70f7974c72ea846d66e1f5bd94..6a788a31e1a9c0087ebbd37eddc47acacd8f2dcb 100644 (file)
@@ -3,59 +3,63 @@
 crystal \- kaleidescope.
 .SH SYNOPSIS
 .B crystal
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-grid]
-[\-no-cell]
-[\-centre]
-[\-nx \fInumber\fP]
-[\-ny \fInumber\fP]
-[\-count \fInumber\fP]
-[\-delay \fInumber\fP]
-[\-ncolors \fInumber\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-grid]
+[\-\-no-cell]
+[\-\-centre]
+[\-\-nx \fInumber\fP]
+[\-\-ny \fInumber\fP]
+[\-\-count \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-ncolors \fInumber\fP]
+[\-\-fps]
 .SH DESCRIPTION
 Moving polygons, similar to a kaleidescope (more like a kaleidescope than
 the hack called `kaleid,' actually.)
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-grid | \-no-grid
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-grid | \-\-no-grid
 Whether to draw grid.
 .TP 8
-.B \-cell | \-no-cell
+.B \-\-cell | \-\-no-cell
 Whether to draw the cell.
 .TP 8
-.B \-centre | \-no-centre
+.B \-\-centre | \-\-no-centre
 Whether to center on screen 
 .TP 8
-.B \-nx \fInumber\fP
+.B \-\-nx \fInumber\fP
 Horizontal Symmetries. -10 - 10.  Default: -3.
 .TP 8
-.B \-ny \fInumber\fP
+.B \-\-ny \fInumber\fP
 Vertical Symmetries.  -10 - 10.  Default: -3.
 .TP 8
-.B \-count \fInumber\fP
+.B \-\-count \fInumber\fP
 Count. -5000 - 5000.  Default: -500.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 60000 (0.06 seconds.).
 .TP 8
-.B \-ncolors \fInumber\fP
+.B \-\-ncolors \fInumber\fP
 Number of Colors.  Default: 100.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -66,6 +70,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 9247eb8016cd0bb2622f0e2fa201ff28b63877be..6a5d0c8a7006356ca2fd7f9fdd80d2c25fa66278 100644 (file)
@@ -3,18 +3,19 @@
 cwaves \- languid sinusoidal colors
 .SH SYNOPSIS
 .B cwaves
-[\-display \fIhost:display.screen\fP]
-[\-foreground \fIcolor\fP]
-[\-background \fIcolor\fP]
-[\-window]
-[\-root]
-[\-mono]
-[\-install]
-[\-visual \fIvisual\fP]
-[\-delay \fIusecs\fP]
-[\-waves \fIint\fP]
-[\-colors \fIint\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-foreground \fIcolor\fP]
+[\-\-background \fIcolor\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-mono]
+[\-\-install]
+[\-\-visual \fIvisual\fP]
+[\-\-delay \fIusecs\fP]
+[\-\-waves \fIint\fP]
+[\-\-colors \fIint\fP]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIcwaves\fP program draws a languidly-scrolling vertical field
 of sinusoidal colors.
@@ -22,35 +23,38 @@ of sinusoidal colors.
 .I cwaves
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-mono 
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-mono 
 If on a color display, pretend we're on a monochrome display.
 .TP 8
-.B \-install
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-delay \fImicroseconds\fP
+.B \-\-delay \fImicroseconds\fP
 How much of a delay should be introduced between steps of the animation.
 Default 20000, or about 1/50th second.
 .TP 8
-.B \-waves \fIint\fP
+.B \-\-waves \fIint\fP
 How many cosines to add together.  The more waves, the more complex
 the apparent motion.
 .TP 8
-.B \-colors \fIint\fP
+.B \-\-colors \fIint\fP
 How many colors to use.  Default 800.  The more colors, the smoother the
 blending will be.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -61,6 +65,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index fd97fa62e42c086cb982edca35e3c0785a4b44fe..9feae4fa3455fa0b30048eb86bb25d07f32f06ad 100644 (file)
@@ -3,14 +3,15 @@
 cynosure \- gentle overlapping squares screen saver.
 .SH SYNOPSIS
 .B cynosure
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-ncolors \fInumber\fP]
-[\-iterations \fInumber\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-ncolors \fInumber\fP]
+[\-\-iterations \fInumber\fP]
+[\-\-fps]
 .SH DESCRIPTION
 A hack similar to `greynetic', but less frenetic. The first implementation
 was by Stephen Linhart; then Ozymandias G. Desiderata wrote a Java applet
@@ -18,26 +19,29 @@ clone. That clone was discovered by Jamie Zawinski, and ported to C for
 inclusion here. 
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 500000 (0.50 seconds.).
 .TP 8
-.B \-ncolors \fInumber\fP
+.B \-\-ncolors \fInumber\fP
 Number of Colors.  Default: 128.
 .TP 8
-.B \-iterations \fInumber\fP
+.B \-\-iterations \fInumber\fP
 Duration.  2 - 200.  Default: 100.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -48,6 +52,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 2272981cacb277aa98b8dab0b4930f50f45967bf..be98119c7a45ff638e2148bd4fbd22bcb6e4b7fc 100644 (file)
@@ -3,16 +3,17 @@
 decayscreen \- make a screen meltdown.
 .SH SYNOPSIS
 .B decayscreen
-[\-display \fIhost:display.screen\fP]
-[\-window]
-[\-root]
-[\-mono]
-[\-install]
-[\-visual \fIvisual\fP]
-[\-delay \fIusecs\fP]
-[\-duration \fIsecs\fP]
-[\-mode \fImode\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-mono]
+[\-\-install]
+[\-\-visual \fIvisual\fP]
+[\-\-delay \fIusecs\fP]
+[\-\-duration \fIsecs\fP]
+[\-\-mode \fImode\fP]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIdecayscreen\fP program creates a melting effect by randomly
 shifting rectangles around the screen.
@@ -29,29 +30,32 @@ for more details.
 .I decayscreen
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-mono 
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-mono 
 If on a color display, pretend we're on a monochrome display.
 .TP 8
-.B \-install
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-delay \fImicroseconds\fP
+.B \-\-delay \fImicroseconds\fP
 Slow it down.
 .TP 8
-.B \-duration \fIseconds\fP
+.B \-\-duration \fIseconds\fP
 How long to run before loading a new image.  Default 120 seconds.
 .TP 8
-.B \-mode \fImode\fP
+.B \-\-mode \fImode\fP
 The direction in which the image should tend to slide.  Legal values are
 \fIrandom\fP (meaning pick one), \fIup\fP, \fIleft\fP, \fIright\fP, 
 \fIdown\fP, \fIupleft\fP, \fIdownleft\fP, \fIupright\fP, \fIdownright\fP, 
@@ -61,7 +65,7 @@ from the center), \fImelt\fP (meaning melt straight
 downward),  \fIstretch\fP (meaning stretch the screen downward),
 and \fIfuzz\fP (meaning go blurry instead of melty).
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -72,6 +76,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH "SEE ALSO"
 .BR X (1),
 .BR xscreensaver (1),
index 446b27f09c2e1101a61355c4977181b899fd7430..391870fdc689a5336da36a3ef11dc28f20df6dae 100644 (file)
@@ -3,23 +3,24 @@
 deco \- draw tacky 70s basement wall panelling
 .SH SYNOPSIS
 .B deco
-[\-display \fIhost:display.screen\fP]
-[\-foreground \fIcolor\fP]
-[\-background \fIcolor\fP]
-[\-window]
-[\-root]
-[\-mono]
-[\-install]
-[\-visual \fIvisual\fP]
-[\-delay \fIseconds\fP]
-[\-max\-depth \fIint\fP]
-[\-min\-width \fIint\fP]
-[\-min\-height \fIint\fP]
-[\-line-width \yIint\fP]
-[\-smooth\-colors]
-[\-golden\-ratio]
-[\-mondrian]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-foreground \fIcolor\fP]
+[\-\-background \fIcolor\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-mono]
+[\-\-install]
+[\-\-visual \fIvisual\fP]
+[\-\-delay \fIseconds\fP]
+[\-\-max\-depth \fIint\fP]
+[\-\-min\-width \fIint\fP]
+[\-\-min\-height \fIint\fP]
+[\-\-line-width \yIint\fP]
+[\-\-smooth\-colors]
+[\-\-golden\-ratio]
+[\-\-mondrian]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIdeco\fP program subdivides and colors rectangles randomly.
 It looks kind of like Brady-Bunch-era rec-room wall paneling.
@@ -29,55 +30,58 @@ Can also produce more aesthetically pleasing displays via options.
 .I deco
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-mono 
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-mono 
 If on a color display, pretend we're on a monochrome display.
 .TP 8
-.B \-install
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-delay \fIseconds\fP
+.B \-\-delay \fIseconds\fP
 How long to wait before starting over.  Default 5 seconds.
 .TP 8
-.B \-max\-depth \fIinteger\fP
+.B \-\-max\-depth \fIinteger\fP
 How deep to subdivide.  Default 12.
 .TP 8
-.B \-min\-width \fIinteger\fP
+.B \-\-min\-width \fIinteger\fP
 .TP 8
-.B \-min\-height \fIinteger\fP
+.B \-\-min\-height \fIinteger\fP
 The size of the smallest rectangle to draw.  Default 20x20.
 .TP 8
-.B \-line\-width \fIinteger\fP
+.B \-\-line\-width \fIinteger\fP
 Width of lines drawn between rectangles. Default zero (minimal width).
 .TP 8
-.B \-smooth\-colors
+.B \-\-smooth\-colors
 .TP 8
-.B \-no\-smooth\-colors
+.B \-\-no\-smooth\-colors
 Whether to use a smooth color palette instead of a random one.
 Less jarring. Default False.
 .TP 8
-.B \-golden\-ratio
+.B \-\-golden\-ratio
 .TP 8
-.B \-no\-golden\-ratio
+.B \-\-no\-golden\-ratio
 Whether to subdivide rectangles using the golden ratio instead of 1/2.
 This ratio is supposed to be more aesthetically pleasing. Default false.
 .TP 8
-.B \-mondrian
+.B \-\-mondrian
 .TP 8
-.B \-no\-mondrian
+.B \-\-no\-mondrian
 Whether to imitiate style of some famous paintings by Piet Mondrian.
 Overrides line-width and colormap options. Default false.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -88,6 +92,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 4bf5d3b336ed2c9978fee4cf41f321140446415c..16ad83e6a55cf8e4aa83e43f2064a800ff47a505 100644 (file)
@@ -3,50 +3,54 @@
 deluxe \- pulsing sequence of stars, circles, and lines.
 .SH SYNOPSIS
 .B deluxe
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-thickness \fInumber\fP]
-[\-count \fInumber\fP]
-[\-ncolors \fInumber\fP]
-[\-transparent]
-[\-no-db]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-thickness \fInumber\fP]
+[\-\-count \fInumber\fP]
+[\-\-ncolors \fInumber\fP]
+[\-\-transparent]
+[\-\-no-db]
+[\-\-fps]
 .SH DESCRIPTION
 This draws a pulsing sequence of stars, circles, and lines.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 5000 (0.01 seconds.).
 .TP 8
-.B \-thickness \fInumber\fP
+.B \-\-thickness \fInumber\fP
 Thickness of lines.  Default: 50.
 .TP 8
-.B \-count \fInumber\fP
+.B \-\-count \fInumber\fP
 Number of objects.  Default: 5.
 .TP 8
-.B \-ncolors \fInumber\fP
+.B \-\-ncolors \fInumber\fP
 Number of colors.  Default: 20.
 .TP 8
-.B \-transparent | \-no-transparent
+.B \-\-transparent | \-\-no-transparent
 Whether to use transparency.
 .TP 8
-.B \-db | \-no-db
+.B \-\-db | \-\-no-db
 Whether to double buffer.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -57,6 +61,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 1fe5fb8795e259c1d4075b6d5461a09c0e5efaa2..a50cc8d1d73b72aa4b0771a7096f0572e40f91d1 100644 (file)
@@ -3,47 +3,51 @@
 demon \- cellular automaton.
 .SH SYNOPSIS
 .B demon
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-count \fInumber\fP]
-[\-cycles \fInumber\fP]
-[\-delay \fInumber\fP]
-[\-ncolors \fInumber\fP]
-[\-size \fInumber\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-count \fInumber\fP]
+[\-\-cycles \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-ncolors \fInumber\fP]
+[\-\-size \fInumber\fP]
+[\-\-fps]
 .SH DESCRIPTION
 A cellular automaton that starts with a random field, and organizes it into
 stripes and spirals.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-count \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-count \fInumber\fP
 States.  0 - 20.  Default: 0.
 .TP 8
-.B \-cycles \fInumber\fP
+.B \-\-cycles \fInumber\fP
 Timeout.  0 - 800000.  Default: 1000.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 50000 (0.05 seconds.).
 .TP 8
-.B \-ncolors \fInumber\fP
+.B \-\-ncolors \fInumber\fP
 Number of Colors.  Default: 64.
 .TP 8
-.B \-size \fInumber\fP
+.B \-\-size \fInumber\fP
 Cell Size.  -20 - 20.  Default: -7.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -54,6 +58,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index d3c6c5b6d143ec28d660c0ead42be4ac83119081..6f7b1190d34fb93c8145221bed8d3ca372556643 100644 (file)
@@ -3,39 +3,43 @@
 discrete \- discrete map iterative function fractal systems.
 .SH SYNOPSIS
 .B discrete
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-cycles \fInumber\fP]
-[\-delay \fInumber\fP]
-[\-ncolors \fInumber\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-cycles \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-ncolors \fInumber\fP]
+[\-\-fps]
 .SH DESCRIPTION
 More ``discrete map'' systems, including new variants of Hopalong and
 Julia, and a few others.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-cycles \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-cycles \fInumber\fP
 Timeout.  100 - 10000. Default: 2500.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 1000 (0.001 seconds.).
 .TP 8
-.B \-ncolors \fInumber\fP
+.B \-\-ncolors \fInumber\fP
 Number of Colors.  Default: 100.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -46,6 +50,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index f26cab69d598f0895004bf16b5241ada571b8291..37f270f8aecf0567487365b02008ceebd945962b 100644 (file)
@@ -3,22 +3,23 @@
 distort \- distort the content of the screen in interesting ways
 .SH SYNOPSIS
 .B distort
-[\-root] [\-window] [\-mono] [\-install] [\-noinstall] [\-visual \fIvisual\fP]
-[\-window\-id \fIwindow\-id\fP]
-[\-delay \fIusecs\fP]
-[\-duration \fIsecs\fP]
-[\-radius \fIpixels\fP]
-[\-speed \fIint\fP]
-[\-number \fIint\fP]
-[\-swamp]
-[\-bounce]
-[\-reflect]
-[\-vortex]
-[\-magnify]
-[\-blackhole]
-[\-slow]
-[\-shm] [\-no\-shm]
-[\-fps]
+[\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-window] [\-\-mono] [\-\-install] [\-\-noinstall] [\-\-visual \fIvisual\fP]
+[\-\-window\-id \fIwindow\-id\fP]
+[\-\-delay \fIusecs\fP]
+[\-\-duration \fIsecs\fP]
+[\-\-radius \fIpixels\fP]
+[\-\-speed \fIint\fP]
+[\-\-number \fIint\fP]
+[\-\-swamp]
+[\-\-bounce]
+[\-\-reflect]
+[\-\-vortex]
+[\-\-magnify]
+[\-\-blackhole]
+[\-\-slow]
+[\-\-shm] [\-\-no\-shm]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIdistort\fP program takes an image and lets circular zones of
 distortion wander randomly around it, distorting what is under them.
@@ -37,77 +38,80 @@ for more details.
 .I distort
 accepts the following options:
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-window
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-window
 Draw on a newly-created window. This is the default.
 .TP 8
-.B \-mono
+.B \-\-mono
 If on a color display, pretend we're on a monochrome display.
 .TP 8
-.B \-install
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-noinstall
+.B \-\-noinstall
 Don't install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use. Legal values are the name of a visual
 class or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window\-id \fIwindow\-id\fP
+.B \-\-window\-id \fIwindow\-id\fP
 Specify which window id to use.
 .TP 8
-.B \-delay \fIusecs\fP
+.B \-\-delay \fIusecs\fP
 Specify the delay between subsequent animation frames in microseconds.
 .TP 8
-.B \-duration \fIseconds\fP
+.B \-\-duration \fIseconds\fP
 How long to run before loading a new image.  Default 120 seconds.
 .TP 8
-.B \-radius \fIpixels\fP
+.B \-\-radius \fIpixels\fP
 Specify the radius of the distortion zone in pixels.
 .TP 8
-.B \-speed \fIint\fP
+.B \-\-speed \fIint\fP
 Specify the speed at which the distortion zone moves, where 0 is slow,
 higher numbers are faster (10 is pretty fast.)
 .TP 8
-.B \-number \fIint\fP
+.B \-\-number \fIint\fP
 Specify the number of distortion zones.
 .TP 8
-.B \-swamp
+.B \-\-swamp
 Instead of letting zones wander around, let small zones pop up like
 bubbles in a swamp and leave permanent distortion.  \fBWARNING:\fP
-this option uses a \fIcolossal\fP amount of memory: keep the \fI\-radius\fP
-small when using \fI\-swamp\fP.
+this option uses a \fIcolossal\fP amount of memory: keep the \fI\-\-radius\fP
+small when using \fI\-\-swamp\fP.
 .TP 8
-.B \-bounce
+.B \-\-bounce
 Let zones wander around and bounce off the window border. This is the
 default.
 .TP 8
-.B \-reflect
+.B \-\-reflect
 Mode of distortion that resembles reflection by a cylindrical mirror.
 .TP 8
-.B \-vortex
+.B \-\-vortex
 Whirlpool-shaped distortion. Way cool.
 .TP 8
-.B \-magnify
+.B \-\-magnify
 This mode of distortion looks like a magnifying glass.
 .TP 8
-.B \-blackhole
+.B \-\-blackhole
 Suck your pixels beyond the event horizon. Favourite mode of Dr
 Stephen Hawking.
 .TP 8
-.B \-slow
+.B \-\-slow
 Make the zone wander slower.
 .TP 8
-.B \-shm
+.B \-\-shm
 Use shared memory extension.
 .TP 8
-.B \-no\-shm
+.B \-\-no\-shm
 Don't use shared memory extension.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -118,6 +122,9 @@ to get the default host and display number
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1),
index 125b2e6185f18861ee19c21affc16e52a4123886..ec018f13bea273df812eb436f0e40ec81ca1561c 100644 (file)
@@ -3,52 +3,57 @@
 drift \- draws drifting recursive fractal cosmic flames
 .SH SYNOPSIS
 .B drift
-[\-display \fIhost:display.screen\fP] [\-foreground \fIcolor\fP] [\-background \fIcolor\fP] [\-window] [\-root] [\-mono] [\-install] [\-visual \fIvisual\fP] [\-ncolors \fIinteger\fP] [\-delay \fImicroseconds\fP] [\-count \fIinteger\fP] [\-grow] [\-no\-grow] [\-liss] [\-no\-liss]
+[\-\-display \fIhost:display.screen\fP] [\-\-foreground \fIcolor\fP]
+[\-\-background \fIcolor\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-mono] [\-\-install] [\-\-visual \fIvisual\fP] [\-\-ncolors \fIinteger\fP] [\-\-delay \fImicroseconds\fP] [\-\-count \fIinteger\fP] [\-\-grow] [\-\-no\-grow] [\-\-liss] [\-\-no\-liss]
 
-[\-fps]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIdrift\fP program draws drifting recursive fractal cosmic flames
 .SH OPTIONS
 .I drift
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-mono 
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-mono 
 If on a color display, pretend we're on a monochrome display.
 .TP 8
-.B \-install
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-ncolors \fIinteger\fP
+.B \-\-ncolors \fIinteger\fP
 How many colors should be used (if possible).  Default 200.
 The colors used cycle through the hue, making N stops around
 the color wheel.
 .TP 8
-.B \-count \fIinteger\fP
+.B \-\-count \fIinteger\fP
 
 .TP 8
-.B \-grow
+.B \-\-grow
 .TP 8
-.B \-no\-grow
+.B \-\-no\-grow
 Whether fractals should grow; otherwise, they are animated.
 
 .TP 8
-.B \-liss
+.B \-\-liss
 .TP 8
-.B \-no\-liss
+.B \-\-no\-liss
 Whether we should use lissajous figures to get points.
 
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -59,6 +64,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR flame (MANSUFFIX),
 .BR X (1),
index a7c0ed2496f414c0c0aff5eb1bee136d4a2b6faa..84e41f35e3f25914d8cc1238f1c0dbd02ed8ebe1 100644 (file)
@@ -3,8 +3,9 @@
 epicycle \- draws a point moving around a circle which moves around a cicle which...
 .SH SYNOPSIS
 .B epicycle 
-[\-display \fIhost:display.screen\fP] [\-root] [\-window] [\-mono] [\-install] [\-noinstall] [\-visual \fIviz\fP] [\-colors \fIN\fP] [\-foreground \fIname\fP] [\-color\-shift \fIN\fP] [\-delay \fImicroseconds\fP] [\-holdtime \fIseconds\fP] [\-linewidth \fIN\fP] [\-min_circles \fIN\fP] [\-max_circles \fIN\fP] [\-min_speed \fInumber\fP] [\-max_speed \fInumber\fP] [\-harmonics \fIN\fP] [\-timestep \fInumber\fP] [\-divisor_poisson \fIprobability\fP] [\-size_factor_min \fInumber\fP] [\-size_factor_max \fInumber\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-window] [\-\-mono] [\-\-install] [\-\-noinstall] [\-\-visual \fIviz\fP] [\-\-colors \fIN\fP] [\-\-foreground \fIname\fP] [\-\-color\-shift \fIN\fP] [\-\-delay \fImicroseconds\fP] [\-\-holdtime \fIseconds\fP] [\-\-linewidth \fIN\fP] [\-\-min_circles \fIN\fP] [\-\-max_circles \fIN\fP] [\-\-min_speed \fInumber\fP] [\-\-max_speed \fInumber\fP] [\-\-harmonics \fIN\fP] [\-\-timestep \fInumber\fP] [\-\-divisor_poisson \fIprobability\fP] [\-\-size_factor_min \fInumber\fP] [\-\-size_factor_max \fInumber\fP]
+[\-\-fps]
 .SH DESCRIPTION
 The epicycle program draws the path traced out by a point on the edge
 of a circle.  That circle rotates around a point on the rim of another
@@ -17,28 +18,31 @@ which the random sequence of circles is generated, either with
 command-line options or X resources.
 .SH OPTIONS
 .TP 8
-.B \-display \fIhost:display.screen\fP
+.B \-\-display \fIhost:display.screen\fP
 Specifies which X display we should use (see the section DISPLAY NAMES in
 .BR X (1)
 for more information about this option).
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-window
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-mono
+.B \-\-mono
 If on a color display, pretend we're on a monochrome display.
 If we're on a mono display, we have no choice.
 .TP 8
-.B \-install
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-noinstall
+.B \-\-noinstall
 Don't install a private colormap for the window.
 .TP 8
-.B \-visual \fIviz\fP
+.B \-\-visual \fIviz\fP
 Specify which visual to use.  Legal values are the name of a visual
 class, or the id number (decimal or hex) of a specific visual.
 Possible choices include
@@ -52,82 +56,82 @@ If a decimal or hexadecimal number is used,
 is consulted to obtain the required visual.
 .RE
 .TP 8
-.B \-colors \fIN\fP
+.B \-\-colors \fIN\fP
 How many colors should be used (if possible).  The colors are chosen
 randomly.
 .TP 8
-.B \-foreground \fIname\fP
+.B \-\-foreground \fIname\fP
 With 
-.BR \-mono ,
+.BR \-\-mono ,
 this option selects the foreground colour.   
 .TP 8
-.B \-delay \fImicroseconds\fP
+.B \-\-delay \fImicroseconds\fP
 Specifies the delay between drawing successive line segments of the
 path.   If you do not specify 
 .BR -sync ,
 some X servers may batch up several drawing operations together,
 producing a less smooth effect.   This is more likely to happen 
 in monochrome mode (on monochrome servers or when 
-.B \-mono 
+.B \-\-mono 
 is specified).
 .TP 8
-.B \-holdtime \fIseconds\fP
+.B \-\-holdtime \fIseconds\fP
 When the figure is complete, 
 .I epicycle
 pauses this number of seconds.
 .TP 8
-.B \-linewidth \fIN\fP
+.B \-\-linewidth \fIN\fP
 Width in pixels of the body's track.   Specifying values greater than
 one may cause slower drawing.   The fastest value is usually zero,
 meaning one pixel.   
 .TP 8
-.B \-min_circles \fIN\fP
+.B \-\-min_circles \fIN\fP
 Smallest number of epicycles in the figure.
 .TP 8
-.B \-max_circles \fIN\fP
+.B \-\-max_circles \fIN\fP
 Largest number of epicycles in the figure.
 .TP 8
-.B \-min_speed \fInumber\fP
+.B \-\-min_speed \fInumber\fP
 Smallest possible value for the base speed of revolution of the
 epicycles.  The actual speeds of the epicycles vary from this down
 to
 .IB "min_speed / harmonics" .
 .TP 8
-.B \-max_speed \fInumber\fP
+.B \-\-max_speed \fInumber\fP
 Smallest possible value for the base speed of revolution of the 
 epicycles.
 .TP 8
-.B \-harmonics \fIN\fP
+.B \-\-harmonics \fIN\fP
 Number of possible harmonics; the larger this value is, the greater
 the possible variety of possible speeds of epicycle.
 .TP 8
-.B \-timestep \fInumber\fP
+.B \-\-timestep \fInumber\fP
 Decreasing this value will reduce the distance the body moves for
 each line segment, possibly producing a smoother figure.  Increasing
 it may produce faster results.  
 .TP 8
-.B \-divisor_poisson \fIprobability\fP
+.B \-\-divisor_poisson \fIprobability\fP
 Each epicycle rotates at a rate which is a factor of the base speed.
 The speed of each epicycle is the base speed divided by some integer
 between 1 and the value of the 
-.B \-harmonics 
+.B \-\-harmonics 
 option.  This integer is decided by starting at 1 and tossing 
 a biased coin.  For each consecutive head, the value is incremented by
 one.  The integer will not be incremented above the value of the 
-.B \-harmonics
+.B \-\-harmonics
 option.  The argument of this option decides the bias of the coin; it
 is the probability that that coin will produce a head at any given toss.
 .TP 8
-.B \-size_factor_min \fInumber\fP
+.B \-\-size_factor_min \fInumber\fP
 Epicycles are always at least this factor smaller than their
 parents.  
 .TP 8
-.B \-size_factor_max \fInumber\fP
+.B \-\-size_factor_max \fInumber\fP
 Epicycles are never more than this factor smaller than their parents.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
-.B \-timestep 
+.B \-\-timestep 
 option multiplied by the timestepCoarseFactor resource.  The default
 value of 1 will almost always work fast enough and so this resource
 is not available as a command-line option.
@@ -155,6 +159,21 @@ Newtonian gravitation.
 The colour selection is re-done for every figure.  This may 
 generate too much network traffic for this program to work well 
 over slow or long links.   
+.SH ENVIRONMENT
+.PP
+.TP 8
+.B DISPLAY
+to get the default host and display number.
+.TP 8
+.B XENVIRONMENT
+to get the name of a resource file that overrides the global resources
+stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
+.SH SEE ALSO
+.BR X (1),
+.BR xscreensaver (1)
 .SH COPYRIGHT
 Copyright \(co 1998, James Youngman.  Permission to use, copy, modify,
 distribute, and sell this software and its documentation for any purpose is
index 610062405a8e866fba5ec1e2132013af5841ace4..598269baa92296b52447a95a6c1e1086b255372e 100644 (file)
@@ -3,54 +3,58 @@
 Eruption \- eruption of pieces of hot volcanic rock
 .SH SYNOPSIS
 .B Eruption
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-ncolors \fInumber\fP]
-[\-nParticles \fInumber\fP]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-ncolors \fInumber\fP]
+[\-\-nParticles \fInumber\fP]
 [\-Heat \fInumber\fP]
 [\-Cooling \fInumber\fP]
 [\-Gravity \fInumber\fP]
-[\-delay \fInumber\fP]
-[\-cycles \fInumber\fP]
-[\-fps]
+[\-\-delay \fInumber\fP]
+[\-\-cycles \fInumber\fP]
+[\-\-fps]
 .SH DESCRIPTION
 This hack creates an eruption of pieces of hot volcanic rock.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-ncolors \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-ncolors \fInumber\fP
 Number of Colors.  Default: 256.
 .TP 8
-.B \-particles \fInumber\fP
+.B \-\-particles \fInumber\fP
 Number of Particles. Default: 300.
 .TP 8
-.B \-cooloff \fInumber\fP
+.B \-\-cooloff \fInumber\fP
 Eruption Cooloff. Default: 2.
 .TP 8
-.B \-heat \fInumber\fP
+.B \-\-heat \fInumber\fP
 Heat of Eruption. Default: 256.
 .TP 8
-.B \-gravity \fInumber\fP
+.B \-\-gravity \fInumber\fP
 Gravity. Default: 1.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 5000 (0.01 seconds.).
 .TP 8
-.B \-cycles \fInumber\fP
+.B \-\-cycles \fInumber\fP
 Duration.  10 - 3000.  Default: 80.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -61,6 +65,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1),
index e99d0237b29a67a46c58bcb892649a3097fbd9c0..27e999a21b6d250ff979ec9aa7ef3061a66c1651 100644 (file)
@@ -3,46 +3,50 @@
 euler2d \- two dimensional incompressible inviscid fluid flow.
 .SH SYNOPSIS
 .B euler2d
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-count \fInumber\fP]
-[\-eulertail \fInumber\fP]
-[\-cycles \fInumber\fP]
-[\-ncolors \fInumber\fP]
-[\-delay \fInumber\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-count \fInumber\fP]
+[\-\-eulertail \fInumber\fP]
+[\-\-cycles \fInumber\fP]
+[\-\-ncolors \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-fps]
 .SH DESCRIPTION
 Simulates two dimensional incompressible inviscid fluid flow.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-count \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-count \fInumber\fP
 Particles.  2 - 5000.  Default: 1024.
 .TP 8
-.B \-eulertail \fInumber\fP
+.B \-\-eulertail \fInumber\fP
 Trail Length.  2 - 500.  Default: 10.
 .TP 8
-.B \-cycles \fInumber\fP
+.B \-\-cycles \fInumber\fP
 Duration.  100 - 5000. Default: 3000.
 .TP 8
-.B \-ncolors \fInumber\fP
+.B \-\-ncolors \fInumber\fP
 Number of Colors.  Default: 64.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 10000 (0.01 seconds.).
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -53,6 +57,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 7638d636cf3b2427d2009778342123c8f27db29f..d989bbe7cc3545cc509df6b1567583234d47c041 100644 (file)
@@ -3,42 +3,46 @@
 fadeplot \- draws a waving ribbon following a sinusoidal path.
 .SH SYNOPSIS
 .B fadeplot
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-count \fInumber\fP]
-[\-cycles \fInumber\fP]
-[\-delay \fInumber\fP]
-[\-ncolors \fInumber\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-count \fInumber\fP]
+[\-\-cycles \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-ncolors \fInumber\fP]
+[\-\-fps]
 .SH DESCRIPTION
 Draws what looks like a waving ribbon following a sinusoidal path.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-count \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-count \fInumber\fP
 Count. 0 - 20.  Default: 10.
 .TP 8
-.B \-cycles \fInumber\fP
+.B \-\-cycles \fInumber\fP
 How many frames until the shape changes.  Default: 1500.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 30000 (0.03 seconds.).
 .TP 8
-.B \-ncolors \fInumber\fP
+.B \-\-ncolors \fInumber\fP
 Number of colors.  Default: 64.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -49,6 +53,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index cc6e84d0f5555a5f5fe356c7abb063626d2f1cb1..e1519a1a86af5072a4e234cf1cd228dd7a3826c9 100644 (file)
@@ -3,43 +3,47 @@
 fiberlamp \- Fiber Optic Lamp
 .SH SYNOPSIS
 .B fiberlamp
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-count \fInumber\fP]
-[\-cycles \fInumber\fP]
-[\-delay \fInumber\fP]
-[\-ncolors \fInumber\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-count \fInumber\fP]
+[\-\-cycles \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-ncolors \fInumber\fP]
+[\-\-fps]
 .SH DESCRIPTION
 Displays a Fiber Optic Lamp.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-count \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-count \fInumber\fP
 Number of Fibers.  10 - 500.  Default: 500.
 .TP 8
-.B \-cycles \fInumber\fP
+.B \-\-cycles \fInumber\fP
 Number of cycles before the lamp is knocked sideways.  100 - 10000.
 Default: 10000.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 10000 (0.01 seconds.).
 .TP 8
-.B \-ncolors \fInumber\fP
+.B \-\-ncolors \fInumber\fP
 Number of Colors.  Default: 64.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -50,6 +54,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 9724bb3146d0bbb681de355e51789f3f4bb924f9..c51fbcba97e1a8b1e8bc6e392810387fb6f5a0d0 100644 (file)
@@ -3,47 +3,51 @@
 filmleader \- screen saver.
 .SH SYNOPSIS
 .B filmleader
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-tv-color \fInumber\fP]
-[\-tv-tint \fInumber\fP]
-[\-noise \fInumber\fP]
-[\-tv-brightness \fInumber\fP]
-[\-tv-contrast \fInumber\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-tv-color \fInumber\fP]
+[\-\-tv-tint \fInumber\fP]
+[\-\-noise \fInumber\fP]
+[\-\-tv-brightness \fInumber\fP]
+[\-\-tv-contrast \fInumber\fP]
+[\-\-fps]
 .SH DESCRIPTION
 Displays a looping countdown based on the SMPTE Universal Film leader on a
 simulation of an old analog television.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-tv-color \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-tv-color \fInumber\fP
 Color Knob.  0 - 1000. Default: 70.
 .TP 8
-.B \-tv-tint \fInumber\fP
+.B \-\-tv-tint \fInumber\fP
 Tint Knob.  0 - 100.  Default: 5.
 .TP 8
-.B \-noise \fInumber\fP
+.B \-\-noise \fInumber\fP
 Noise. 0.0 - 0.2.  Default: 0.04.
 .TP 8
-.B \-tv-brightness \fInumber\fP
+.B \-\-tv-brightness \fInumber\fP
 Brightness Knob.  0 - 200.  Default: 150.
 .TP 8
-.B \-tv-contrast \fInumber\fP
+.B \-\-tv-contrast \fInumber\fP
 Contrast Knob. 0 - 1500.  Default: 1000.
 .TP 8
-.B \-fps | \-no-fps
+.B \-\-fps | \-\-no-fps
 Whether to show a frames-per-second display at the bottom of the screen.
 .SH ENVIRONMENT
 .PP
@@ -54,6 +58,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 7e9390d480e8b94a49c601371bd210aaed53da08..31aba6f06e38746a9c7204c4789ce126b4ea7670 100644 (file)
@@ -3,46 +3,50 @@
 fireworkx \- pyrotechnic explosions eye-candy.
 .SH SYNOPSIS
 .B fireworkx
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-verbose]
-[\-noflash]
-[\-shoot]
-[\-delay \fInumber\fP]
-[\-maxlife \fInumber\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-verbose]
+[\-\-noflash]
+[\-\-shoot]
+[\-\-delay \fInumber\fP]
+[\-\-maxlife \fInumber\fP]
+[\-\-fps]
 .SH DESCRIPTION
 Animates explosions.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-noflash 
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-noflash 
 Turn off light flash effect. (Runs faster)
 .TP 8
-.B \-shoot
+.B \-\-shoot
 Fire shells up using mortar.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-delay \fInumber\fP
 Delay between frames. In microseconds. (Default: 10000)
 .TP 8
-.B \-maxlife \fInumber\fP
+.B \-\-maxlife \fInumber\fP
 Maximum decay period for an explosion. (Range: 0-100)
 .TP 8
-.B \-verbose
+.B \-\-verbose
 For scientific research purposes only..!
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -53,6 +57,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index ac53dfb23840f923203c01e1eb8f72ec846b686c..508e6d4a1547a9640685cd3aa9c0eb034ce662c6 100644 (file)
@@ -3,65 +3,70 @@
 flag \- draws a waving flag, containing text or an image
 .SH SYNOPSIS
 .B flag
-[\-display \fIhost:display.screen\fP] [\-foreground \fIcolor\fP] [\-background \fIcolor\fP] [\-window] [\-root] [\-mono] [\-install] [\-visual \fIvisual\fP] [\-ncolors \fIinteger\fP] [\-delay \fImicroseconds\fP] [\-cycles \fIinteger\fP] [\-size \fIinteger\fP] [\-text \fIstring\fP] [\-font \fIfont\fP] [\-bitmap \fIxbm-file\fP]
+[\-\-display \fIhost:display.screen\fP] [\-\-foreground \fIcolor\fP]
+[\-\-background \fIcolor\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-mono] [\-\-install] [\-\-visual \fIvisual\fP] [\-\-ncolors \fIinteger\fP] [\-\-delay \fImicroseconds\fP] [\-\-cycles \fIinteger\fP] [\-\-size \fIinteger\fP] [\-\-text \fIstring\fP] [\-\-font \fIfont\fP] [\-\-bitmap \fIxbm-file\fP]
 
-[\-fps]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIflag\fP program draws a waving flag that contains text or a bitmap.
 .SH OPTIONS
 .I flag
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-mono 
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-mono 
 If on a color display, pretend we're on a monochrome display.
 .TP 8
-.B \-install
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-ncolors \fIinteger\fP
+.B \-\-ncolors \fIinteger\fP
 How many colors should be used (if possible).  Default 200.
 .TP 8
-.B \-cycles \fIinteger\fP
+.B \-\-cycles \fIinteger\fP
 
 .TP 8
-.B \-count \fIinteger\fP
+.B \-\-count \fIinteger\fP
 
 .TP 8
-.B \-size \fIinteger\fP
+.B \-\-size \fIinteger\fP
 How large the pixels in the flag should be, from 1 to 8.
 If this is a negative number, the pixel size is chosen randomly
 from the range 1 to -size.  Default -7.
 .TP 8
-.B \-text \fItext\fP
+.B \-\-text \fItext\fP
 The text to display in the flag.  Multiple lines of text are allowed;
 the lines will be displayed centered atop one another.  Default: none.
 If the text is the magic string \fI"(default)"\fP, then the text used 
 will be the local machine name; a newline; and the local OS version.
 .TP 8
-.B \-bitmap \fIxbm-file\fP
+.B \-\-bitmap \fIxbm-file\fP
 The bitmap to display in the flag; this must be an XBM file (color XPMs
 are not allowed.)  Default: none.  If the bitmap is the magic 
 string \fI"(default)"\fP, then the bitmap used will be a charming 
 little picture of J. R. "Bob" Dobbs.
 
-If neither \fI\-text\fP nor \fI\-bitmap\fP are specified, then either
+If neither \fI\-\-text\fP nor \fI\-\-bitmap\fP are specified, then either
 the builtin text or the builtin bitmap will be chosen randomly.
 .TP 8
-.B \-font \fIfont\fP
+.B \-\-font \fIfont\fP
 The font in which to draw the text; the default is
 "-*-helvetica-bold-r-*-240-*".
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -72,6 +77,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1),
@@ -88,5 +96,5 @@ supporting documentation.
 .SH AUTHOR
 Charles Vidal <vidalc@univ-mlv.fr>, 1996.
 
-Ability to run standalone or with \fIxscreensaver\fP, and the \-text
-and \-bitmap options, added by Jamie Zawinski <jwz@jwz.org>, 24-May-97.
+Ability to run standalone or with \fIxscreensaver\fP, and the \-\-text
+and \-\-bitmap options, added by Jamie Zawinski <jwz@jwz.org>, 24-May-97.
index f0136e2e05dc8ab7c136ebd818bb52d985418a20..d39efe4a668d987409dd4de08d40a3f2112ebae4 100644 (file)
@@ -3,48 +3,53 @@
 flame \- draw weird cosmic fractals
 .SH SYNOPSIS
 .B flame
-[\-display \fIhost:display.screen\fP] [\-foreground \fIcolor\fP] [\-background \fIcolor\fP] [\-window] [\-root] [\-mono] [\-install] [\-visual \fIvisual\fP] [\-colors \fIinteger\fP] [\-iterations \fIinteger\fP] [\-points \fIinteger\fP] [\-delay \fImicroseconds\fP] [\-delay2 \fImicroseconds\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP] [\-\-foreground \fIcolor\fP]
+[\-\-background \fIcolor\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-mono] [\-\-install] [\-\-visual \fIvisual\fP] [\-\-colors \fIinteger\fP] [\-\-iterations \fIinteger\fP] [\-\-points \fIinteger\fP] [\-\-delay \fImicroseconds\fP] [\-\-delay2 \fImicroseconds\fP]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIflame\fP program generates colorful fractal displays.
 .SH OPTIONS
 .I flame
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-mono 
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-mono 
 If on a color display, pretend we're on a monochrome display.
 .TP 8
-.B \-install
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-colors \fIinteger\fP
+.B \-\-colors \fIinteger\fP
 How many colors should be used (if possible).  Default 64.
 .TP 8
-.B \-iterations \fIinteger\fP
+.B \-\-iterations \fIinteger\fP
 How many fractals to generate.  Default 25.
 .TP 8
-.B \-points \fIinteger\fP
+.B \-\-points \fIinteger\fP
 How many pixels to draw for each fractal.  Default 10000.
 .TP 8
-.B \-delay \fImicroseconds\fP
+.B \-\-delay \fImicroseconds\fP
 How long we should wait between drawing each fractal.  Default 50000,
 or about 1/20th second.
 .TP 8
-.B \-delay2 \fImicroseconds\fP
+.B \-\-delay2 \fImicroseconds\fP
 How long we should wait before clearing the screen when each run ends.
 Default 2000000, or two seconds.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -55,6 +60,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1),
index afe0771d5de3f946955aebe34cc2a50fa26b6473..61f75637e119670dab57691082d1077e585e6cf4 100644 (file)
@@ -3,21 +3,22 @@
 flow \- strange attractors.
 .SH SYNOPSIS
 .B flow
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-count \fInumber\fP]
-[\-cycles \fInumber\fP]
-[\-periodic|\-no\-periodic]
-[\-search|\-no\-search]
-[\-rotate|\-no\-rotate]
-[\-ride|\-no\-ride]
-[\-box|\-no\-box]
-[\-dbuf|\-no\-dbuf]
-[\-ncolors \fInumber\fP]
-[\-delay \fInumber\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-count \fInumber\fP]
+[\-\-cycles \fInumber\fP]
+[\-\-periodic|\-\-no\-periodic]
+[\-\-search|\-\-no\-search]
+[\-\-rotate|\-\-no\-rotate]
+[\-\-ride|\-\-no\-ride]
+[\-\-box|\-\-no\-box]
+[\-\-dbuf|\-\-no\-dbuf]
+[\-\-ncolors \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-fps]
 .SH DESCRIPTION
 Strange attractors formed of flows in a 3D differential equation phase
 space.  Features the popular attractors described by \fBLorentz\fP,
@@ -25,39 +26,42 @@ space.  Features the popular attractors described by \fBLorentz\fP,
 entirely new attractors by itself.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-count \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-count \fInumber\fP
 Number of particles in the flow.  Default: 3000
 .TP 8
-.B \-size \fInumber\fP
+.B \-\-size \fInumber\fP
 Length of particle trails.  Negative values indicate
 randomness.  The computational load of a given flow depends on
 (particle count) * (trail length).  Default: -10
 .TP 8
-.B \-cycles \fInumber\fP
+.B \-\-cycles \fInumber\fP
 Timeout before changing objects.  0 - 800000.  Default: 10000.
 .TP 8
-.B \-periodic
+.B \-\-periodic
 .TP 8
-.B \-no\-periodic
+.B \-\-no\-periodic
 turn on/off periodic attractors.  These are flows in 2 dependent
 variables, with a periodic dependence on a third independent variable
 (eg time).  Flow will sometimes choose to start all the particles in
 the same phase to illustrate the flow's cross-section.  Default:
 on
 .TP 8
-.B \-search
+.B \-\-search
 .TP 8
-.B \-no\-search
+.B \-\-no\-search
 turn on/off search for new attractors.  If this is enabled, a fraction
 of the computing cycles is directed to searching a 60-dimensional
 parameter space for new strange attractors.  If periodic flows are
@@ -66,38 +70,38 @@ likely to see mathematical objects that have never been seen before,
 and since the parameters are not recorded, you'll probably never see
 them again!  Default: on
 .TP 8
-.B \-rotate
+.B \-\-rotate
 .TP 8
-.B \-no\-rotate
+.B \-\-no\-rotate
 turn on/off rotating around attractor.  Default: on
 .TP 8
-.B \-ride
+.B \-\-ride
 .TP 8
-.B \-no\-ride
+.B \-\-no\-ride
 turn on/off ride in the flow.  Default: on
 
 If both -rotate and -ride are enabled the viewpoint will occasionally
 fly between the two views.
 .TP 8
-.B \-box
+.B \-\-box
 .TP 8
-.B \-no\-box
+.B \-\-no\-box
 turn on/off bounding box.  Default: on
 .TP 8
-.B \-dbuf
+.B \-\-dbuf
 .TP 8
-.B \-no\-dbuf
+.B \-\-no\-dbuf
 turn on/off double buffering.  If Flow runs slowly in full screen, but
 fast in a smaller window (eg on old graphics cards with too little
 memory), try turning this option off.  Default: on
 .TP 8
-.B \-ncolors \fInumber\fP
+.B \-\-ncolors \fInumber\fP
 Number of Colors.  Default: 200.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 10000 (0.01 seconds.).
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -108,6 +112,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index c42632adc3ea4f10d5cb31561d692c3a0cdc9a4a..12de9ff80730106967ace63f4c4e98c2ee996696 100644 (file)
@@ -815,8 +815,10 @@ fluidballs_free (Display *dpy, Window window, void *closure)
   XFreeGC (dpy, state->draw_gc);
   XFreeGC (dpy, state->draw_gc2);
   XFreeGC (dpy, state->erase_gc);
-  XftFontClose (state->dpy, state->font);
-  XftDrawDestroy (state->xftdraw);
+  if (state->font)
+    XftFontClose (state->dpy, state->font);
+  if (state->xftdraw)
+    XftDrawDestroy (state->xftdraw);
   free (state->m);
   free (state->r);
   free (state->vx);
index 0fa3ded98a46212839a8bc04d4162ab9c626b812..f4df25189d1d1dd257d5cbf82dc8ac94391fab6a 100644 (file)
@@ -3,19 +3,20 @@
 fluidballs \- the physics of bouncing balls.
 .SH SYNOPSIS
 .B fluidballs
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-count \fInumber\fP]
-[\-size \fInumber\fP]
-[\-gravity \fInumber\fP]
-[\-wind \fInumber\fP]
-[\-elasticity \fInumber\fP]
-[\-delay \fInumber\fP]
-[\-nonrandom]
-[\-no-shake]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-count \fInumber\fP]
+[\-\-size \fInumber\fP]
+[\-\-gravity \fInumber\fP]
+[\-\-wind \fInumber\fP]
+[\-\-elasticity \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-nonrandom]
+[\-\-no-shake]
+[\-\-fps]
 .SH DESCRIPTION
 Models the physics of bouncing balls, or of particles in a gas or fluid,
 depending on the settings. If "Shake Box" is selected, then every now and
@@ -23,46 +24,49 @@ then, the box will be rotated, changing which direction is down (in order
 to keep the settled balls in motion.) 
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-count \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-count \fInumber\fP
 How many balls to display.  Default: 300.
 .TP 8
-.B \-size \fInumber\fP
+.B \-\-size \fInumber\fP
 Maximum size of each ball.  Default: 25.
 .TP 8
-.B \-gravity \fInumber\fP
+.B \-\-gravity \fInumber\fP
 Coefficient of gravity.  Useful values are < 0.1.  Default: 0.01.
 .TP 8
-.B \-wind \fInumber\fP
+.B \-\-wind \fInumber\fP
 Wind.  Useful values are < 0.1.  Default: 0.00.
 .TP 8
-.B \-elasticity \fInumber\fP
+.B \-\-elasticity \fInumber\fP
 Coefficient of elasticity.  Useful values are 0.2 to 1.0.  Default: 0.97.
 Lower numbers make less bouncy balls.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 10000 (0.01 seconds.).
 .TP 8
-.B \-nonrandom
+.B \-\-nonrandom
 Make all balls be the same size.
 .TP 8
-.B \-no-nonrandom
+.B \-\-no-nonrandom
 Make the balls be random sizes.  Default.
 .TP 8
-.B \-shake | \-no-shake
+.B \-\-shake | \-\-no-shake
 Whether to shake the box if the system seems to have settled down.
 "Shake" means "change the direction of Down."
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -73,6 +77,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 0edcb3bdef7828db3897a23eeedecbd43bbb240c..21807250789a62c6868499cbfd0327a288648800 100644 (file)
@@ -3,21 +3,22 @@
 fontglide \- characters float onto the screen to form words
 .SH SYNOPSIS
 .B fontglide
-[\-display \fIhost:display.screen\fP] [\-window] [\-root] [\-install]
-[\-visual \fIvisual\fP] 
-[\-delay \fIusecs\fP] 
-[\-scroll\fP] 
-[\-page\fP] 
-[\-random\fP] 
-[\-speed \fIfloat\fP] 
-[\-linger \fIfloat\fP] 
-[\-program \fIsh-command\fP]
-[\-font \fIfont-name\fP]
-[\-bw \fIint\fP]
-[\-trails]
-[\-db]
-[\-debug]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-install]
+[\-\-visual \fIvisual\fP] 
+[\-\-delay \fIusecs\fP] 
+[\-\-scroll\fP] 
+[\-\-page\fP] 
+[\-\-random\fP] 
+[\-\-speed \fIfloat\fP] 
+[\-\-linger \fIfloat\fP] 
+[\-\-program \fIsh-command\fP]
+[\-\-font \fIfont-name\fP]
+[\-\-bw \fIint\fP]
+[\-\-trails]
+[\-\-db]
+[\-\-debug]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIfontglide\fP program reads text from a subprocess and puts it on
 the screen using large characters that glide in from the edges,
@@ -27,41 +28,44 @@ sentences from right to left.
 .I fontglide
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-install
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP\fP
+.B \-\-visual \fIvisual\fP\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-delay \fIusecs\fP
+.B \-\-delay \fIusecs\fP
 The delay between steps of the animation, in microseconds: default 10000.
 .TP 8
-.B \-page
+.B \-\-page
 With this option, a page full of text will glide in, and disperse.
 .TP 8
-.B \-scroll
+.B \-\-scroll
 With this option, sentences will scroll by from right to left.
 .TP 8
-.B \-random
-The default is to pick randomly between \fI\-page\fP and  \fI\-scroll\fP.
+.B \-\-random
+The default is to pick randomly between \fI\-\-page\fP and  \fI\-\-scroll\fP.
 .TP 8
-.B \-speed \fIfloat\fP
+.B \-\-speed \fIfloat\fP
 How fast to animate; 2 means twice as fast, 0.5 means half as fast.
 Default 1.0.
 .TP 8
-.B \-linger \fIfloat\fP
-How long to leave the assembled text on the screen in \fI\-page\fP mode;
+.B \-\-linger \fIfloat\fP
+How long to leave the assembled text on the screen in \fI\-\-page\fP mode;
 2 means twice as long, 0.5 means half as long.  Default 1.0.  (The more
 words there are on the screen, the longer it lingers.)
 .TP 8
-.B \-program \fIsh-command\fP
+.B \-\-program \fIsh-command\fP
 The command to run to generate the text to display.  This option may be
 any string acceptable to /bin/sh.  The program will be run at the end of
 a pipe, and any words that it prints to \fIstdout\fP will end up on
@@ -70,25 +74,25 @@ exits, it will be launched again after we have processed all the text
 it produced.  Default:
 .BR xscreensaver\-text (MANSUFFIX).
 .TP 8
-.B \-font\fP \fIstring\fP
+.B \-\-font\fP \fIstring\fP
 The base font pattern to use when loading fonts.  The default is to search
 for any Latin1 scalable proportional fonts on the system.  Once a base font
 is selected, it will be loaded in a random size.
 .TP 8
-.B \-bw \fIint\fP
+.B \-\-bw \fIint\fP
 How thick an outline to draw around the characters.  Default 2 pixels.
 .TP 8
-.B \-trails\fP
+.B \-\-trails\fP
 Leave "vapor trails" behind the moving text.  Default off.
 .TP 8
-.B \-no-db\fP
+.B \-\-no-db\fP
 Turn off double-buffering.  It may be faster, but will flicker.
 .TP 8
-.B \-debug\fP
+.B \-\-debug\fP
 Draw some boxes showing character metrics, and print the name of the
 current font to stderr.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -99,6 +103,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR xscreensaver (1),
 .BR xscreensaver\-text (MANSUFFIX),
index cc46df6576511926e549da5e4581ac487e18afc8..4eec7a8da68171d26d53b2639d25a0a1a59b5668 100644 (file)
@@ -3,36 +3,41 @@
 forest \- draws a fractal forest
 .SH SYNOPSIS
 .B forest
-[\-display \fIhost:display.screen\fP] [\-foreground \fIcolor\fP] [\-background \fIcolor\fP] [\-window] [\-root] [\-mono] [\-install] [\-visual \fIvisual\fP] [\-ncolors \fIinteger\fP] [\-delay \fImicroseconds\fP]
+[\-\-display \fIhost:display.screen\fP] [\-\-foreground \fIcolor\fP]
+[\-\-background \fIcolor\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-mono] [\-\-install] [\-\-visual \fIvisual\fP] [\-\-ncolors \fIinteger\fP] [\-\-delay \fImicroseconds\fP]
 
-[\-fps]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIforest\fP program draws a fractal forest.
 .SH OPTIONS
 .I forest
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-mono 
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-mono 
 If on a color display, pretend we're on a monochrome display.
 .TP 8
-.B \-install
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-ncolors \fIinteger\fP
+.B \-\-ncolors \fIinteger\fP
 How many colors should be used (if possible).  Default 20.
 
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -43,6 +48,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1),
index f4e91229f79e38b8db08a3df5a283d548d913574..b3e26416bd937c62a62cc9a45cdce11f9cb2d1c5 100644 (file)
@@ -3,21 +3,22 @@
 fuzzyflakes \- falling snowflakes/flower shapes
 .SH SYNOPSIS
 .B fuzzyflakes
-[\-display \fIhost:display.screen\fP] [\-foreground \fIcolor\fP]
-[\-background \fIcolor\fP] [\-window] [\-root] [\-mono] [\-install]
-[\-visual \fIvisual\fP] 
-[\-delay \fIusecs\fP]
-[\-speed \fIint\fP]
-[\-arms \fIint\fP]
-[\-thickness \fIint\fP]
-[\-bthickness \fIint\fP]
-[\-radius \fIint\fP]
-[\-layers \fIint\fP]
-[\-density \fIint\fP]
-[\-no-db]
+[\-\-display \fIhost:display.screen\fP] [\-\-foreground \fIcolor\fP]
+[\-\-background \fIcolor\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-mono] [\-\-install]
+[\-\-visual \fIvisual\fP] 
+[\-\-delay \fIusecs\fP]
+[\-\-speed \fIint\fP]
+[\-\-arms \fIint\fP]
+[\-\-thickness \fIint\fP]
+[\-\-bthickness \fIint\fP]
+[\-\-radius \fIint\fP]
+[\-\-layers \fIint\fP]
+[\-\-density \fIint\fP]
+[\-\-no-db]
 (\-color \fIstring\fP)
 (\-random-colors)
-[\-fps]
+[\-\-fps]
 .SH DESCRIPTION
 The
 .I fuzzyflakes
@@ -27,61 +28,64 @@ Inspired by the credits of the anime "Azumanga Daioh".
 .I fuzzyflakes
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-mono 
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-mono 
 If on a color display, pretend we're on a monochrome display.
 .TP 8
-.B \-install
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-delay \fIusecs\fP
+.B \-\-delay \fIusecs\fP
 The delay between steps of the animation, in microseconds.  Default: 250000.
 .TP 8
-.B \-speed \fIint\fP
+.B \-\-speed \fIint\fP
 How fast, 1-50.  Default 10.
 .TP 8
-.B \-arms \fIint\fP
+.B \-\-arms \fIint\fP
 How many arms on the flakes; default 5.
 .TP 8
-.B \-thickness \fIint\fP
+.B \-\-thickness \fIint\fP
 How thick to make the lines; default 10 pixels.
 .TP 8
-.B \-bthickness \fIint\fP
+.B \-\-bthickness \fIint\fP
 How thick to make the borders; default 3 pixels.
 .TP 8
-.B \-radius \fIint\fP
+.B \-\-radius \fIint\fP
 Radius of the objects; default 20 pixels.
 .TP 8
-.B \-layers \fIint\fP
+.B \-\-layers \fIint\fP
 How many layers of objects; default 3.
 .TP 8
-.B \-density \fIint\fP
+.B \-\-density \fIint\fP
 Default 5.
 .TP 8
-.B \-no-db
+.B \-\-no-db
 Disable double-buffering.
 .TP 8
-.B \-color \fIstring\fP
+.B \-\-color \fIstring\fP
 The base color for the color scheme.  Typed as a hexadecimal triplet
 with or with out the leading #. ie. fa4563 & #43cd12 are both acceptable.
 If the saturation of you color is too low (<0.03) the random color
 generator will kick in.
 The default color is #efbea5
 .TP 8
-.B \-random-colors
+.B \-\-random-colors
 This enables the random color generation.  It is disabled by default.
 It overrides anything from -color
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -92,6 +96,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index bac06eb8c617d12f46801962216b532db9509226..04cadddf5bb94fdb3a11bd83f4a14a933ff2714f 100644 (file)
@@ -3,51 +3,56 @@
 galaxy \- draws spinning galaxies
 .SH SYNOPSIS
 .B galaxy
-[\-display \fIhost:display.screen\fP] [\-foreground \fIcolor\fP] [\-background \fIcolor\fP] [\-window] [\-root] [\-mono] [\-install] [\-visual \fIvisual\fP] [\-ncolors \fIinteger\fP] [\-delay \fImicroseconds\fP] [\-cycles \fIinteger\fP] [\-count \fIinteger\fP] [\-size \fIinteger\fP] [\-tracks] [\-no\-tracks] [\-spin] [\-no\-spin]
+[\-\-display \fIhost:display.screen\fP] [\-\-foreground \fIcolor\fP]
+[\-\-background \fIcolor\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-mono] [\-\-install] [\-\-visual \fIvisual\fP] [\-\-ncolors \fIinteger\fP] [\-\-delay \fImicroseconds\fP] [\-\-cycles \fIinteger\fP] [\-\-count \fIinteger\fP] [\-\-size \fIinteger\fP] [\-\-tracks] [\-\-no\-tracks] [\-\-spin] [\-\-no\-spin]
 
-[\-fps]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIgalaxy\fP program draws spinning galaxies.
 .SH OPTIONS
 .I galaxy
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-mono 
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-mono 
 If on a color display, pretend we're on a monochrome display.
 .TP 8
-.B \-install
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-ncolors \fIinteger\fP
+.B \-\-ncolors \fIinteger\fP
 How many colors should be used (if possible).  Default 64.
 The colors used cycle through the hue, making N stops around
 the color wheel.
 .TP 8
-.B \-cycles \fIinteger\fP
+.B \-\-cycles \fIinteger\fP
 .TP 8
-.B \-count \fIinteger\fP
+.B \-\-count \fIinteger\fP
 .TP 8
-.B \-size \fIinteger\fP
+.B \-\-size \fIinteger\fP
 .TP 8
-.B \-tracks
+.B \-\-tracks
 .TP 8
-.B \-no\-tracks
+.B \-\-no\-tracks
 .TP 8
-.B \-spin
+.B \-\-spin
 .TP 8
-.B \-no\-spin
+.B \-\-no\-spin
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -58,6 +63,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1),
index 9593d2ca3e48ce1bc16453ac5a624169a63e8a74..baca0e2d48cfe19a5d6abf6f73b834e4b5f7e7ff 100644 (file)
@@ -3,13 +3,14 @@
 glitchpeg \- glitched image screen saver.
 .SH SYNOPSIS
 .B glitchpeg
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-duration \fInumber\fP]
-[\-count \fInumber\fP]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-duration \fInumber\fP]
+[\-\-count \fInumber\fP]
 .SH DESCRIPTION
 Loads an image, corrupts it, and then displays the corrupted version,
 several times a second. After a while, finds a new image to corrupt.
@@ -20,23 +21,26 @@ on JPEG files, but doesn't work well on PNG files, since PNG contains
 checksums that detect simple corruption.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 30000 (0.03 seconds).
 .TP 8
-.B \-duration \fInumber\fP
+.B \-\-duration \fInumber\fP
 How many seconds before loading a new image.  Default: 120.
 .TP 8
-.B \-count \fInumber\fP
+.B \-\-count \fInumber\fP
 Number of glitches to introduce per iteration. Default: 100.
 .SH ENVIRONMENT
 .PP
@@ -47,6 +51,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SECURITY
 Because this program is feeding intentionally-invalid data into your
 operating system's image-decoding libraries, it is possible that it
index ba5d06bb9981b3097ae1d8af3eaccf8baffba2b5..b2a0a854a4743caa3f170098535e4e7d381d30e2 100644 (file)
@@ -3,8 +3,9 @@
 antinspect \- ant model inspection screenhack
 .SH SYNOPSIS
 .B antinspect
-[\-display \fIhost:display.screen\fP] [\-window] [\-root] [\-install]
-[\-visual \fIvisual\fP] [\-delay \fImicroseconds\fP] [\-fps]
+[\-\-display \fIhost:display.screen\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-install]
+[\-\-visual \fIvisual\fP] [\-\-delay \fImicroseconds\fP] [\-\-fps]
 .SH DESCRIPTION
 The \fIantinspect\fP code displays three ant-powered balls churning in a 
 circle.
@@ -12,22 +13,25 @@ circle.
 .I antinspect
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-install
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-shadows
+.B \-\-shadows
 Draw shadows on ground
 .TP 8
-.B \-visual \fIvisual\fP\fP
+.B \-\-visual \fIvisual\fP\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .SH ENVIRONMENT
 .PP
@@ -38,6 +42,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index cca7addec564474f43818533b2d1d05c7d55c834..422a041f31a9e8f377a2c8d41aa6b5c4b20d356b 100644 (file)
@@ -3,27 +3,31 @@
 antmaze \- ant maze walker
 .SH SYNOPSIS
 .B antmaze
-[\-display \fIhost:display.screen\fP] [\-window] [\-root] [\-install]
-[\-visual \fIvisual\fP] [\-delay \fImicroseconds\fP] [\-fps]
+[\-\-display \fIhost:display.screen\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-install]
+[\-\-visual \fIvisual\fP] [\-\-delay \fImicroseconds\fP] [\-\-fps]
 .SH DESCRIPTION
 The \fIantmaze\fP code displays ants finding their way through a maze.
 .SH OPTIONS
 .I antmaze
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-install
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP\fP
+.B \-\-visual \fIvisual\fP\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .SH ENVIRONMENT
 .PP
@@ -34,6 +38,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index f1c74b4da03dfdb85f4cd18ac5487b474ab79c00..1191cdce30e1cbc683c8d00b058a1a9e493c17ac 100644 (file)
@@ -3,31 +3,35 @@
 antspotlight \- ant spotlight screenhack
 .SH SYNOPSIS
 .B antspotlight
-[\-display \fIhost:display.screen\fP] [\-window] [\-root] [\-install]
-[\-visual \fIvisual\fP] [\-delay \fImicroseconds\fP] [\-fps]
+[\-\-display \fIhost:display.screen\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-install]
+[\-\-visual \fIvisual\fP] [\-\-delay \fImicroseconds\fP] [\-\-fps]
 .SH DESCRIPTION
 The \fIantspotlight\fP code displays a single ant spotting out a screenshot.
 .SH OPTIONS
 .I antspotlight
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-install
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP\fP
+.B \-\-visual \fIvisual\fP\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .TP 8
-.B \-delay \fImicroseconds\fP
+.B \-\-delay \fImicroseconds\fP
 Per-frame delay.
 .SH ENVIRONMENT
 .PP
@@ -38,6 +42,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 1a77391eb93ea5bfd7a76220810e2f60e036dad7..4fc3479082ba2e54cbbe6852de774b4192b0000f 100644 (file)
@@ -3,55 +3,59 @@
 atlantis \- draw swimming sharks, whales, and dolphins.
 .SH SYNOPSIS
 .B atlantis
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-whalespeed \fInumber\fP]
-[\-delay \fInumber\fP]
-[\-size \fInumber\fP]
-[\-count \fInumber\fP]
-[\-no-texture]
-[\-gradient]
-[\-wireframe]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-whalespeed \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-size \fInumber\fP]
+[\-\-count \fInumber\fP]
+[\-\-no-texture]
+[\-\-gradient]
+[\-\-wireframe]
+[\-\-fps]
 .SH DESCRIPTION
 This is xfishtank writ large: a GL animation of a number of sharks,
 dolphins, and whales. The swimming motions are great.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-whalespeed \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-whalespeed \fInumber\fP
 Whale Speed.  0 - 1000.  Default: 250.
 .TP 8
-.B \-cycles \fInumber\fP
+.B \-\-cycles \fInumber\fP
 Shark Speed.  Default: 100.
 .TP 8
-.B \-size \fInumber\fP
+.B \-\-size \fInumber\fP
 Shark Proximity.  100 - 10000. Default: 6000.
 .TP 8
-.B \-count \fInumber\fP
+.B \-\-count \fInumber\fP
 Number of Sharks.  0 - 20.  Default: 4.
 .TP 8
-.B \-texture | \-no-texture
+.B \-\-texture | \-\-no-texture
 Whether to show shimmering water.
 .TP 8
-.B \-gradient
+.B \-\-gradient
 Whether to draw a gradient on the background, making it darker at the bottom.
 .TP 8
-.B \-wireframe
+.B \-\-wireframe
 Render in wireframe instead of solid.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .SH ENVIRONMENT
 .PP
@@ -62,6 +66,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index ad8c3bfe8cb55bb0908b3cee69fc9a0036ddf21e..43b8da4b1b83d5d98ea461052fad8e26054f9c19 100644 (file)
@@ -3,41 +3,45 @@
 atunnel \- hypnotic GL tunnel journey
 .SH SYNOPSIS
 .B sballs
-[\-display \fIhost:display.screen\fP] [\-window] [\-root]
-[\-visual \fIvisual\fP] [\-delay \fImicroseconds\fP]
-[\-light] [\-no-light]
-[\-wire] [\-no-wire]
-[\-texture] [\-no-texture]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-visual \fIvisual\fP] [\-\-delay \fImicroseconds\fP]
+[\-\-light] [\-\-no-light]
+[\-\-wire] [\-\-no-wire]
+[\-\-texture] [\-\-no-texture]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIatunnel\fP program draws an animation of a journey in a GL tunnel.
 .SH OPTIONS
 .I sballs
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-install
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .TP 8
-.B \-texture
+.B \-\-texture
 Show a textured tunnel. This is the default.
 .TP 8
-.B \-no\-texture
+.B \-\-no\-texture
 Disables texturing the animation.
 .TP 8
-.B \-wire
+.B \-\-wire
 Draw a wireframe rendition of the tunnel.
 .SH ENVIRONMENT
 .PP
@@ -48,6 +52,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1),
index 4fdab0be8655169934edaed2e15d98f0345ca9da..5543403b5c272040d8217602819cd2b702a80845 100644 (file)
@@ -3,36 +3,40 @@
 beats - create offset beating figures
 .SH SYNOPSIS
 .B beats
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-count \fInumber\fP]
-[\-cycle \fInumber\fP]
-[\-wireframe]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-count \fInumber\fP]
+[\-\-cycle \fInumber\fP]
+[\-\-wireframe]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIbeats\fP program draws balls that move around at a slightly different rate from each other, creating interesting chaotic and ordered beating patterns. Each cycle / pattern is created such that it finishes as a single line of balls at the top of the screen, so that the patterns can smoothly transition between each other.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 30000 (0.03 seconds.).
 .TP 8
-.B \-count \fInumber\fP
+.B \-\-count \fInumber\fP
 Number of balls.  Default: 30.
 .TP 8
-.B \-cycle \fInumber\fP
+.B \-\-cycle \fInumber\fP
 Cycle type to use (Default: -1):
   -1 - pseudo-random based on current time
    0 - clockwise
@@ -40,16 +44,16 @@ Cycle type to use (Default: -1):
    2 - metronome
    3 - galaxy
 .TP 8
-.B \-tick | \-no-tick
+.B \-\-tick | \-\-no-tick
 Add a tick for 'clockwise' and 'galaxy' patterns.
 .TP 8
-.B \-blur | \-no-blur
+.B \-\-blur | \-\-no-blur
 Add motion blur to the ball movement.
 .TP 8
-.B \-wireframe | \-no-wireframe
+.B \-\-wireframe | \-\-no-wireframe
 Render in wireframe instead of solid.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .SH ENVIRONMENT
 .PP
@@ -60,6 +64,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 0dc2a3f8080cc162451e1097602793969d242759..34740f7a48b4593420d771d95c7947456b1d19be 100644 (file)
@@ -3,51 +3,55 @@
 blinkbox \- shows a ball inside a box.
 .SH SYNOPSIS
 .B blinkbox
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-wireframe]
-[\-boxsize \fInumber\fP]
-[\-dissolve]
-[\-fade]
-[\-no\-blur]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-wireframe]
+[\-\-boxsize \fInumber\fP]
+[\-\-dissolve]
+[\-\-fade]
+[\-\-no\-blur]
+[\-\-fps]
 .SH DESCRIPTION
 Shows a ball contained inside of a bounding box. Colored blocks blink in
 when the ball hits the edges.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 30000 (0.03 seconds.).
 .TP 8
-.B \-wireframe | \-no-wireframe
+.B \-\-wireframe | \-\-no-wireframe
 Render in wireframe instead of solid.
 .TP 8
-.B \-boxsize 
+.B \-\-boxsize 
 Sets the size of the colored boxes. Should be between 1 and 8. Default: 2 
 .TP 8
-.B \-dissolve | \-no-dissolve
+.B \-\-dissolve | \-\-no-dissolve
 Boxes shrink instead of just vanishing.
 .TP 8
-.B \-fade | \-no-fade
+.B \-\-fade | \-\-no-fade
 Boxes fade to transparency instead of just vanishing.
 .TP 8
-.B \-blur | \-no-blur
+.B \-\-blur | \-\-no-blur
 Enable or disable motion blur on the ball.  Default: blurry.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .SH ENVIRONMENT
 .PP
@@ -58,6 +62,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 1fbb241d51578d69604f4587afbfb3a471a9bbb9..73ddeea3d5bbac0a8eaaa75276e0f8ac9701cc5a 100644 (file)
@@ -3,51 +3,55 @@
 blocktube \- draws a swirling, falling tunnel of reflective slabs
 .SH SYNOPSIS
 .B blocktube
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-holdtime \fInumber\fP]
-[\-changetime \fInumber\fP]
-[\-no-texture]
-[\-no-fog]
-[\-wireframe]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-holdtime \fInumber\fP]
+[\-\-changetime \fInumber\fP]
+[\-\-no-texture]
+[\-\-no-fog]
+[\-\-wireframe]
+[\-\-fps]
 .SH DESCRIPTION
 Blocktube draws a swirling, falling tunnel of reflective slabs. They fade 
 from hue to hue.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 40000 (0.04 seconds.).
 .TP 8
-.B \-holdtime \fInumber\fP
+.B \-\-holdtime \fInumber\fP
 How long to stay on the same color.  Default: 1000 frames.
 .TP 8
-.B \-changetime \fInumber\fP
+.B \-\-changetime \fInumber\fP
 How long it takes to fade to a new color.  Default: 200 frames.
 .TP 8
-.B \-no-texture
+.B \-\-no-texture
 Draw solid blocks intstead of reflective blocks.
 .TP 8
-.B \-no-fog
+.B \-\-no-fog
 Do not make blocks in the distance be darker.
 .TP 8
-.B \-wireframe
+.B \-\-wireframe
 Only draw outlines.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .SH ENVIRONMENT
 .PP
@@ -58,6 +62,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 510d3072a16b5ea1c653902a2945a127f95eb080..0211feee2437f9e882ee9b479661114d99148920 100644 (file)
@@ -3,20 +3,21 @@
 boing \- draws a bouncing ball like the ancient Amiga demo
 .SH SYNOPSIS
 .B boing
-[\-display \fIhost:display.screen\fP] [\-window] [\-root] [\-install]
-[\-visual \fIvisual\fP] 
-[\-delay \fIusecs\fP] 
-[\-smooth]
-[\-lighting]
-[\-scanlines]
-[\-speed]
-[\-no\-spin]
-[\-angle \fIdegrees\fP]
-[\-size \fIratio\fP]
-[\-parallels \fIn\fP]
-[\-meridians \fIn\fP]
-[\-wireframe]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-install]
+[\-\-visual \fIvisual\fP] 
+[\-\-delay \fIusecs\fP] 
+[\-\-smooth]
+[\-\-lighting]
+[\-\-scanlines]
+[\-\-speed]
+[\-\-no\-spin]
+[\-\-angle \fIdegrees\fP]
+[\-\-size \fIratio\fP]
+[\-\-parallels \fIn\fP]
+[\-\-meridians \fIn\fP]
+[\-\-wireframe]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIboing\fP program draws a bouncing checkered ball on a grid.
 
@@ -32,52 +33,55 @@ demo. With "-smooth -lighting", it looks... less old.
 .I boing
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-install
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP\fP
+.B \-\-visual \fIvisual\fP\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-delay \fIusecs\fP
+.B \-\-delay \fIusecs\fP
 The delay between frames of the animation, in microseconds: default 15000.
 .TP 8
-.B \-smooth
+.B \-\-smooth
 Draw a smooth sphere instead of a faceted polyhedron.
 .TP 8
-.B \-lighting
+.B \-\-lighting
 Do shaded lighting instead of flat colors.
 .TP 8
-.B \-scanlines
+.B \-\-scanlines
 If the window is large enough, draw horizontal lines to simulate the
 scanlines on a low resolution monitor.
 .TP 8
-.B \-speed \fIratio\fP
+.B \-\-speed \fIratio\fP
 Change the animation speed; 0.5 to go half as fast, 2.0 to go twice as fast.
 .TP 8
-.B \-no\-spin
+.B \-\-no\-spin
 Don't rotate the ball.
 .TP 8
-.B \-angle \fIdegrees\fP
+.B \-\-angle \fIdegrees\fP
 The jaunty angle at which the ball sits.  Default 15 degrees.
 .TP 8
-.B \-size \fIratio\fP
+.B \-\-size \fIratio\fP
 How big the ball is; default 0.5 meaning about half the size of the window.
 .TP 8
-.B \-parallels \fIn\fP
-.B \-meridians \fIn\fP
+.B \-\-parallels \fIn\fP
+.B \-\-meridians \fIn\fP
 The pattern of rectangles on the ball.  Default 8x16.
 .TP 8
-.B \-wireframe
+.B \-\-wireframe
 Look crummy.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .SH ENVIRONMENT
 .PP
@@ -88,6 +92,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR bsod (MANSUFFIX),
 .BR pong (MANSUFFIX),
index 328e7d111c2548e95ced3ee6eadd1f5160909fe7..8714f230d8c96089ee0250b23a16b3574004b396 100644 (file)
@@ -3,54 +3,58 @@
 bouncingcow \- a happy cow on a trampoline in 3D.  Moo.
 .SH SYNOPSIS
 .B bouncingcow
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-speed \fInumber\fP]
-[\-count \fInumber\fP]
-[\-mathematical]
-[\-texture \fIfilename\fP]
-[\-wireframe]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-speed \fInumber\fP]
+[\-\-count \fInumber\fP]
+[\-\-mathematical]
+[\-\-texture \fIfilename\fP]
+[\-\-wireframe]
+[\-\-fps]
 .SH DESCRIPTION
 It's very silly.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 30000 (0.03 seconds.).
 .TP 8
-.B \-speed \fInumber\fP
+.B \-\-speed \fInumber\fP
 How fast the cow bounces.  Larger for faster.  Default: 1.0.
 .TP 8
-.B \-count \fInumber\fP
+.B \-\-count \fInumber\fP
 How many cows!  Default 1.
 .TP 8
-.B \-texture \fIfilename\fP
+.B \-\-texture \fIfilename\fP
 An image file to paint on the cow's hide.
 
 Note that on most systems, GL textures must have dimensions that are a
 power of two.
 .TP 8
-.B \-mathematical
+.B \-\-mathematical
 Periodically transition to display mathematically ideal cows (spherical, 
 frictionless).
 .TP 8
-.B \-wireframe
+.B \-\-wireframe
 Render in wireframe instead of solid.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .SH ENVIRONMENT
 .PP
@@ -61,6 +65,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 455b8064617d5503bb21cd4593866f223b24b99b..0db3df3190ca97b910b92293b473e3301bb4b580 100644 (file)
@@ -3,34 +3,38 @@
 boxed \- draws a box full of 3D bouncing balls that explode.
 .SH SYNOPSIS
 .B boxed
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-wireframe]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-wireframe]
+[\-\-fps]
 .SH DESCRIPTION
 Draws a box full of 3D bouncing balls that explode.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 20000 (0.02 seconds.).
 .TP 8
-.B \-wireframe
+.B \-\-wireframe
 Render in wireframe instead of solid.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .SH ENVIRONMENT
 .PP
@@ -41,6 +45,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 6db573a8da76115e67acf9d89af962da33aaeebc..e95e3f5f41ca82b441b4d83ea1de7206ad6f8edc 100644 (file)
@@ -3,40 +3,44 @@
 bubble3d \- 3d rising bubbles.
 .SH SYNOPSIS
 .B bubble3d
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-transparent]
-[\-color \fIcolor\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-transparent]
+[\-\-color \fIcolor\fP]
+[\-\-fps]
 .SH DESCRIPTION
 Draws a stream of rising, undulating 3D bubbles, rising toward the top of
 the screen, with nice specular reflections.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-transparent
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-transparent
 Draw transparent bubbles instead of solid ones.
 .TP 8
-.B \-color \fIcolor\fP
+.B \-\-color \fIcolor\fP
 Draw bubbles of the specified color.  "Random" means a different color
 for each bubble.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 15000 (0.015 seconds.).
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .SH ENVIRONMENT
 .PP
@@ -47,6 +51,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index b08458fadc8b85e8d9d88c6dd411471a42dc367c..3be3d840811d93d63e34f63be9075b874e551908 100644 (file)
@@ -3,39 +3,43 @@
 cage \- Escher's impossible cage, for xscreensaver.
 .SH SYNOPSIS
 .B cage
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-mono]
-[\-wireframe]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-mono]
+[\-\-wireframe]
+[\-\-fps]
 .SH DESCRIPTION
 This draws Escher's "Impossible Cage", a 3d analog of a moebius strip,
 and rotates it in three dimensions.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 25000 (0.03 seconds.).
 .TP 8
-.B \-mono
+.B \-\-mono
 Render solid instead of textured.
 .TP 8
-.B \-wireframe
+.B \-\-wireframe
 Render in wireframe instead of textured.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .SH ENVIRONMENT
 .PP
@@ -46,6 +50,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index cde2eb8d2c2b2679f9bafad3f7ef98e93b31a183..5c638e694d18a90aa9ad3f7196bad93d8f5170a5 100644 (file)
@@ -3,20 +3,21 @@
 carousel \- displays multiple images rotating in a circular formation
 .SH SYNOPSIS
 .B carousel
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-count \fIint\fP]
-[\-zoom | \-no\-zoom]
-[\-tilt \fIXY\fP]
-[\-titles | \-no\-titles]
-[\-font \fIfont\fP]
-[\-speed \fIratio\fP]
-[\-duration \fIseconds\fP]
-[\-fps]
-[\-debug]
-[\-wireframe]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-count \fIint\fP]
+[\-\-zoom | \-\-no\-zoom]
+[\-\-tilt \fIXY\fP]
+[\-\-titles | \-\-no\-titles]
+[\-\-font \fIfont\fP]
+[\-\-speed \fIratio\fP]
+[\-\-duration \fIseconds\fP]
+[\-\-fps]
+[\-\-debug]
+[\-\-wireframe]
 .SH DESCRIPTION
 Loads several random images, and displays them flying in a circular
 formation.  The circle changes speed and direction randomly, tilts on
@@ -30,54 +31,57 @@ To specify the directory that images are loaded from, run
 and click on the "Advanced" tab.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-count \fIint\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-count \fIint\fP
 How many images to display.  Default 7.
 .TP 8
-.B \-zoom \fB| \-no\-zoom\fP
+.B \-\-zoom \fB| \-\-no\-zoom\fP
 Whether the images should move in and out (toward and away from the
 axis of rotation).  Default true.
 .TP 8
-.B \-tilt \fIXY\fP \fB| \-no\-tilt\fP
+.B \-\-tilt \fIXY\fP \fB| \-\-no\-tilt\fP
 Whether the axis of rotation should tilt, and how.  \fB-tilt X\fP
 means that it will tilt toward and away from the viewer.  
 \fB-tilt Y\fP means that it will tilt to the left and right of the
 screen.  \fB-tilt XY\fP (the default) means it will do both.
 .TP 8
-.B \-titles \fB| \-no\-titles\fP
+.B \-\-titles \fB| \-\-no\-titles\fP
 Whether to display the file names of the images beneath them.  Default: yes.
 .TP 8
-.B \-font \fIfont-name\fP
+.B \-\-font \fIfont-name\fP
 The font to use for titles.  Note that the size of the font affects
 the clarity of the characters, not their size (it is auto-scaled.)
 .TP 8
-.B \-duration \fIseconds\fP
+.B \-\-duration \fIseconds\fP
 Every \fIduration\fP seconds, one of the images will be replaced
 with a new one.  Default 20 seconds.
 .TP 8
-.B \-speed \fIratio\fP
+.B \-\-speed \fIratio\fP
 Speed up or slow down the animation.  0.5 means half as fast as the
 default; 2.0 means twice as fast.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 20000 (0.02 seconds.).
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .TP 8
-.B \-debug
+.B \-\-debug
 Prints debugging info to stderr.
 .TP 8
-.B \-wireframe
+.B \-\-wireframe
 Another debug mode.
 .SH ENVIRONMENT
 .PP
@@ -88,6 +92,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver\-settings (1)
index eb45b031bab2f0b282a45fc38eaf574b1cde4f68..b42601bc69241571d17c14349760213a664218c8 100644 (file)
@@ -3,59 +3,63 @@
 chompytower \- a tree with teeth.
 .SH SYNOPSIS
 .B chompytower
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-speed \fInumber\fP]
-[\-resolution \fInumber\fP]
-[\-no-spin]
-[\-wander]
-[\-no-tilt]
-[\-no-smooth]
-[\-wireframe]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-speed \fInumber\fP]
+[\-\-resolution \fInumber\fP]
+[\-\-no-spin]
+[\-\-wander]
+[\-\-no-tilt]
+[\-\-no-smooth]
+[\-\-wireframe]
+[\-\-fps]
 .SH DESCRIPTION
 This tree's got teeth!
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 30000 (0.03 seconds).
 .TP 8
-.B \-speed \fInumber\fP
+.B \-\-speed \fInumber\fP
 Animation speed.  2.0 means twice as fast, 0.5 means half as fast.
 .TP 8
-.B \-resolution \fInumber\fP
+.B \-\-resolution \fInumber\fP
 How many polygons to use on the trunk.  2.0 means twice as many, 0.5 means
 half as many.
 .TP 8
-.B \-spin | \-no-spin
+.B \-\-spin | \-\-no-spin
 Whether the tree should slowly rotate.
 .TP 8
-.B \-wander | \-no-wander
+.B \-\-wander | \-\-no-wander
 Whether the object should wander around the screen.
 .TP 8
-.B \-tilt | \-no-tilt
+.B \-\-tilt | \-\-no-tilt
 Whether the observer should look up and down.
 .TP 8
-.B \-smooth | \-no-smooth
+.B \-\-smooth | \-\-no-smooth
 Smooth.  Boolean.
 .TP 8
-.B \-wireframe | \-no-wireframe
+.B \-\-wireframe | \-\-no-wireframe
 Render in wireframe instead of solid.
 .TP 8
-.B \-fps | \-no-fps
+.B \-\-fps | \-\-no-fps
 Whether to show a frames-per-second display at the bottom of the screen.
 .SH ENVIRONMENT
 .PP
@@ -66,6 +70,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index d76db94dbb40c359064f21b10b8600d44cf5a79b..f55daf816efb8a35f82270f3df3f6bdcf6a1aea7 100644 (file)
@@ -3,50 +3,54 @@
 circuit \- animates a number of 3D electronic components.
 .SH SYNOPSIS
 .B circuit
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-parts \fInumber\fP]
-[\-no-spin]
-[\-rotate]
-[\-speed \fInumber\fP]
-[\-no-light]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-parts \fInumber\fP]
+[\-\-no-spin]
+[\-\-rotate]
+[\-\-speed \fInumber\fP]
+[\-\-no-light]
+[\-\-fps]
 .SH DESCRIPTION
 Animates a number of 3D electronic components.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 20000 (0.02 seconds.).
 .TP 8
-.B \-parts \fInumber\fP
+.B \-\-parts \fInumber\fP
 Number of parts.  Default: 10.
 .TP 8
-.B \-spin | \-no-spin
+.B \-\-spin | \-\-no-spin
 Whether the objects should spin.
 .TP 8
-.B \-rotate | \-no-rotate
+.B \-\-rotate | \-\-no-rotate
 Whether the scene should spin.
 .TP 8
-.B \-speed \fInumber\fP
+.B \-\-speed \fInumber\fP
 Rotation speed, 0 - 100.  Default: 1.
 .TP 8
-.B \-light | \-no-light
+.B \-\-light | \-\-no-light
 Whether to use lighting, or flat coloring.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .SH ENVIRONMENT
 .PP
@@ -57,6 +61,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index ff795e279835c2267b4abe8d79080f8f850514e5..b61a527060e136d03e1f7d64cbb88e2feb34ffc4 100644 (file)
@@ -3,55 +3,59 @@
 cityflow \- waves of boxes.
 .SH SYNOPSIS
 .B cityflow
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-count \fInumber\fP]
-[\-wave-speed \fInumber\fP]
-[\-wave-radius \fInumber\fP]
-[\-waves \fInumber\fP]
-[\-skew \fInumber\fP]
-[\-wireframe]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-count \fInumber\fP]
+[\-\-wave-speed \fInumber\fP]
+[\-\-wave-radius \fInumber\fP]
+[\-\-waves \fInumber\fP]
+[\-\-skew \fInumber\fP]
+[\-\-wireframe]
+[\-\-fps]
 .SH DESCRIPTION
 Waves move across a sea of boxes. The city swells. The walls are closing
 in.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 20000 (0.02 seconds).
 .TP 8
-.B \-count \fInumber\fP
+.B \-\-count \fInumber\fP
 Boxes. 50 - 4000.  Default: 800.
 .TP 8
-.B \-wave-speed \fInumber\fP
+.B \-\-wave-speed \fInumber\fP
 Wave speed.  5 - 150.  Default: 25.
 .TP 8
-.B \-wave-radius \fInumber\fP
+.B \-\-wave-radius \fInumber\fP
 Wave overlap.  5 - 512.  Default: 256.
 .TP 8
-.B \-waves \fInumber\fP
+.B \-\-waves \fInumber\fP
 Wave complexity.  1 - 20.  Default: 6.
 .TP 8
-.B \-skew \fInumber\fP
+.B \-\-skew \fInumber\fP
 Skew.  0 - 45. Default: 12.
 .TP 8
-.B \-wireframe | \-no-wireframe
+.B \-\-wireframe | \-\-no-wireframe
 Render in wireframe instead of solid.
 .TP 8
-.B \-fps | \-no-fps
+.B \-\-fps | \-\-no-fps
 Whether to show a frames-per-second display at the bottom of the screen.
 .SH ENVIRONMENT
 .PP
@@ -62,6 +66,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 9f5b73513f2a64cd0f6cd85a622421901e4b9317..f07119c41f53f22e6931644dd547db0d930667e7 100644 (file)
@@ -3,17 +3,18 @@
 companioncube \- a vital aparatus.
 .SH SYNOPSIS
 .B companioncube
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-speed \fIratio\fP]
-[\-spin]
-[\-wander]
-[\-count \fInumber\fP]
-[\-wireframe]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-speed \fIratio\fP]
+[\-\-spin]
+[\-\-wander]
+[\-\-count \fInumber\fP]
+[\-\-wireframe]
+[\-\-fps]
 .SH DESCRIPTION
 The symptoms most commonly produced by Enrichment Center testing are
 superstition, perceiving inanimate objects as alive, and hallucinations.
@@ -23,38 +24,41 @@ the Weighted Companion Cube does speak, the Enrichment Center urges you to
 disregard its advice.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 30000 (0.03 seconds.).
 .TP 8
-.B \-speed \fInumber\fP
+.B \-\-speed \fInumber\fP
 How fast the animation should run.
 Less than 1 for slower, greater than 1 for faster.
 .TP 8
-.B \-count \fInumber\fP
+.B \-\-count \fInumber\fP
 How many cubes.  Default 3.
 .TP 8
-.B \-spin
-.B \-no\-spin
+.B \-\-spin
+.B \-\-no\-spin
 Instead of bouncing, float and spin.
 .TP 8
-.B \-wander
-.B \-no\-wander
+.B \-\-wander
+.B \-\-no\-wander
 Instead of bouncing, float and drift.
 .TP 8
-.B \-wireframe
+.B \-\-wireframe
 Render in wireframe instead of solid.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .SH ENVIRONMENT
 .PP
@@ -65,6 +69,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR tronbit (MANSUFFIX),
index 4ebca96aa608ad66f876a9dbedcf3f0007260c89..3c938b081815b8cbe0607511cf3c7f8b01263f7f 100644 (file)
@@ -3,50 +3,54 @@
 covid19 \- the most 2020 of all screen savers.
 .SH SYNOPSIS
 .B covid19
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-speed \fInumber\fP]
-[\-count \fInumber\fP]
-[\-no-wander]
-[\-no-spin]
-[\-wireframe]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-speed \fInumber\fP]
+[\-\-count \fInumber\fP]
+[\-\-no-wander]
+[\-\-no-spin]
+[\-\-wireframe]
+[\-\-fps]
 .SH DESCRIPTION
 SARS-CoV-2. Stay the fuck home. Wear a fucking mask.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 30000 (0.03 seconds).
 .TP 8
-.B \-speed \fInumber\fP
+.B \-\-speed \fInumber\fP
 Animation speed.  2.0 means twice as fast, 0.5 means half as fast.
 .TP 8
-.B \-count \fInumber\fP
+.B \-\-count \fInumber\fP
 Maximum number of virus particles.  1 - 200. Default: 60.
 .TP 8
-.B \-wander | \-no-wander
+.B \-\-wander | \-\-no-wander
 Whether the viruses should wander around the screen.
 .TP 8
-.B \-spin | \-no-spin
+.B \-\-spin | \-\-no-spin
 Whether the viruses should spin.
 .TP 8
-.B \-wireframe | \-no-wireframe
+.B \-\-wireframe | \-\-no-wireframe
 Render in wireframe instead of solid.
 .TP 8
-.B \-fps | \-no-fps
+.B \-\-fps | \-\-no-fps
 Whether to show a frames-per-second display at the bottom of the screen.
 .SH ENVIRONMENT
 .PP
@@ -57,6 +61,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index a633951e61ffb72cae744e2524a455ad4f0d6d00..0ec7c6ef37b0680122cd3914e31c8508f053e0c2 100644 (file)
@@ -3,24 +3,25 @@
 crackberg \- Lose your way wandering some height fields, and enjoy candy.
 .SH SYNOPSIS
 .B crackberg
-[\-root]
-[\-window]
-[\-install]
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window-id \fIid\fP]
-[\-delay \fIusecs\fP]
-[\-fps]
-[\-crack]
-[\-lit]
-[\-boring]
-[\-letterbox]
-[\-flat]
-[\-wire]
-[\-nowater]
-[\-visibility \fIfloat\fP]
-[\-color \fIstring\fP]
-[\-nsubdivs \fIinteger\fP]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-window]
+[\-\-install]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window-id \fIid\fP]
+[\-\-delay \fIusecs\fP]
+[\-\-fps]
+[\-\-crack]
+[\-\-lit]
+[\-\-boring]
+[\-\-letterbox]
+[\-\-flat]
+[\-\-wire]
+[\-\-nowater]
+[\-\-visibility \fIfloat\fP]
+[\-\-color \fIstring\fP]
+[\-\-nsubdivs \fIinteger\fP]
 .SH DESCRIPTION
 Flies through height maps, optionally animating the instantiation and
 destruction of generated tiles; by default, tiles 'grow' into place (height
@@ -42,58 +43,61 @@ Return to automatic control.
 .I crackberg
 accepts the following options:
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-window
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-install
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual
 class, or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-delay \fImicroseconds\fP
+.B \-\-delay \fImicroseconds\fP
 Delay between frames; default 20000 (1/50th of a second).
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .TP 8
-.B \-crack
+.B \-\-crack
 Use all possible methods to animate tile instantiation.
 .TP 8
-.B \-boring
+.B \-\-boring
 Do not animate instatiation at all; use this to get standard landscape 
 generator behavior.
 .TP 8
-.B \-letterbox
+.B \-\-letterbox
 Drawable window region has a 16:9 aspect ratio, regardless of actual
 window size.
 .TP 8
-.B \-lit
+.B \-\-lit
 Enable lighting.
 .TP 8
-.B \-flat
+.B \-\-flat
 Flat shading (OpenGL will use one color per primitive, rather than
 interpolating betwixt vertices).
 .TP 8
-.B \-wire
+.B \-\-wire
 Wireframe.
 .TP 8
-.B \-nowater
+.B \-\-nowater
 Do not display 'water' (forces negative values to zero, and selects a 
 different coloring method).
 .TP 8
-.B \-visibility \fIfloat\fP
+.B \-\-visibility \fIfloat\fP
 Value in range [0.2,1.0] (default 0.6) specifying proportion of viewable 
 XY plane which is to be drawn upon.
 .TP 8
-.B \-color \fIstring\fP
+.B \-\-color \fIstring\fP
 Selects color scheme.  Use with no or bogus argument for current list.
 .TP 8
-.B \-nsubdivs \fIinteger\fP
+.B \-\-nsubdivs \fIinteger\fP
 Number of times to recursively subdivide each triangular tile.  Each 
 increment increases total triangles by a factor of 4; for instance the default
 setting 4 results in 256 triangles per tile.
@@ -107,6 +111,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 629e5136b7c0128780d98c6851e9400e21a14a1a..687e2cdc6d1ffcf679c69079170f001dbf04f0d9 100644 (file)
@@ -3,55 +3,59 @@
 crumbler \- voronoi divisions of a sphere.
 .SH SYNOPSIS
 .B crumbler
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-speed \fInumber\fP]
-[\-density \fInumber\fP]
-[\-fracture \fInumber\fP]
-[\-no-wander]
-[\-no-spin]
-[\-wireframe]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-speed \fInumber\fP]
+[\-\-density \fInumber\fP]
+[\-\-fracture \fInumber\fP]
+[\-\-no-wander]
+[\-\-no-spin]
+[\-\-wireframe]
+[\-\-fps]
 .SH DESCRIPTION
 Randomly subdivides a ball into voronoi chunks, then further subdivides one
 of the remaining pieces.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 30000 (0.03 seconds).
 .TP 8
-.B \-speed \fInumber\fP
+.B \-\-speed \fInumber\fP
 Animation speed.  2.0 means twice as fast, 0.5 means half as fast.
 .TP 8
-.B \-density \fInumber\fP
+.B \-\-density \fInumber\fP
 Density of the polygons mesh. 2.0 means twice as dense, 0.5 means half.
 .TP 8
-.B \-fracture \fInumber\fP
+.B \-\-fracture \fInumber\fP
 How many times to fracture each object.  0 means random.
 .TP 8
-.B \-wander | \-no-wander
+.B \-\-wander | \-\-no-wander
 Whether the object should wander around the screen.
 .TP 8
-.B \-spin | \-no-spin
+.B \-\-spin | \-\-no-spin
 Whether the object should spin.
 .TP 8
-.B \-wireframe | \-no-wireframe
+.B \-\-wireframe | \-\-no-wireframe
 Render in wireframe instead of solid.
 .TP 8
-.B \-fps | \-no-fps
+.B \-\-fps | \-\-no-fps
 Whether to show a frames-per-second display at the bottom of the screen.
 .SH ENVIRONMENT
 .PP
@@ -62,6 +66,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index a6e1ec238775ece31e57bdacef95d8a531456c08..68626d632ca651018acdafaf21b60fe3fb96587a 100644 (file)
@@ -3,25 +3,26 @@
 cube21 \- animates the Cube 21 puzzle
 .SH SYNOPSIS
 .B cube21
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-install]
-[\-delay \fImicroseconds\fP]
-[\-texture] [\-no\-texture]
-[\-mono]
-[\-wireframe]
-[\-spin] [\-no\-spin]
-[\-wander] [\-no\-wander]
-[\-randomize] [\-no\-randomize]
-[\-spinspeed \fInumber\fP]
-[\-rotspeed \fInumber\fP]
-[\-wanderspeed \fInumber\fP]
-[\-wait \fInumber\fP]
-[\-cubesize \fInumber\fP]
-[\-colormode \fIarg\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-install]
+[\-\-delay \fImicroseconds\fP]
+[\-\-texture] [\-\-no\-texture]
+[\-\-mono]
+[\-\-wireframe]
+[\-\-spin] [\-\-no\-spin]
+[\-\-wander] [\-\-no\-wander]
+[\-\-randomize] [\-\-no\-randomize]
+[\-\-spinspeed \fInumber\fP]
+[\-\-rotspeed \fInumber\fP]
+[\-\-wanderspeed \fInumber\fP]
+[\-\-wait \fInumber\fP]
+[\-\-cubesize \fInumber\fP]
+[\-\-colormode \fIarg\fP]
+[\-\-fps]
 .SH DESCRIPTION
 This program animates a puzzle known as Cube 21 or Square-1.
 Its moves are chosen randomly.
@@ -34,70 +35,73 @@ more than 200 different shapes and the total number of configurations
 .I cube21
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-install
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP\fP
+.B \-\-visual \fIvisual\fP\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-delay \fImicroseconds\fP
+.B \-\-delay \fImicroseconds\fP
 How long to pause between frames.  Default is 20000, or 0.02 second.
 .TP 8
-.B \-texture
+.B \-\-texture
 Use texture maps.  This is the default.
 .TP 8
-.B \-no\-texture
+.B \-\-no\-texture
 Use solid colors.
 .TP 8
-.B \-mono
+.B \-\-mono
 Disable both texture maps and colors.
 .TP 8
-.B \-wireframe
+.B \-\-wireframe
 Only draw outlines.  Outlines of all pieces, not only the whole object, are drawn.
 .TP 8
-.B \-spin
+.B \-\-spin
 Spin the whole object around X, Y and Z axes.  This is the default.
 .TP 8
-.B \-no\-spin
+.B \-\-no\-spin
 Do not spin, showing the same three faces all the time.
 .TP 8
-.B \-wander
+.B \-\-wander
 Move the object around the screen.  This is the default.
 .TP 8
-.B \-no\-wander
+.B \-\-no\-wander
 Keep the object centered on the screen.
 .TP 8
-.B \-randomize
+.B \-\-randomize
 Shuffle the puzzle randomly at startup.  This is the default.
 .TP 8
-.B \-no\-randomize
+.B \-\-no\-randomize
 Do not shuffle at startup, begin at the shape of cube.
 .TP 8
-.B \-spinspeed \fInumber\fP
+.B \-\-spinspeed \fInumber\fP
 The relative speed of spinning.  Default is 1.0.
 .TP 8
-.B \-rotspeed \fInumber\fP
+.B \-\-rotspeed \fInumber\fP
 The relative speed of the moves.  Default is 3.0.  Setting to \(<= 0.0
 makes the object stay at one configuration.
 .TP 8
-.B \-wanderspeed \fInumber\fP
+.B \-\-wanderspeed \fInumber\fP
 The relative speed of wandering around the screen.  Default is 1.0.
 .TP 8
-.B \-wait \fInumber\fP
+.B \-\-wait \fInumber\fP
 How long to stay at ending position after each move.  The meaning of
 the argument is again relative.  Default is 40.0.
 .TP 8
-.B \-cubesize \fInumber\fP
+.B \-\-cubesize \fInumber\fP
 Size of the object.  Value of 3.0 fills roughly all the screen (its height).  Default is 0.7.
 .TP 8
-.B \-colormode \fIargument\fP
+.B \-\-colormode \fIargument\fP
 How many and which colors should the object have.  The colors are put on the piece
 faces so that the puzzle is solvable.  The inner faces are not influenced.
 .RS
@@ -121,7 +125,7 @@ Anything else
 All faces white.
 .RE
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .SH ENVIRONMENT
 .PP
@@ -132,6 +136,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 5b087c2f5597797f87e1333f3e6183afe17de335..e4fe1887e42133a43b0c6f6cdb32dc8a3b54378a 100644 (file)
@@ -3,67 +3,71 @@
 cubenetic \- cubist 3D undulating blob.
 .SH SYNOPSIS
 .B cubenetic
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-count \fInumber\fP]
-[\-no-wander]
-[\-no-spin]
-[\-spin \fI[XYZ]\fP]
-[\-wireframe]
-[\-no-texture]
-[\-wave-speed \fInumber\fP]
-[\-wave-radius \fInumber\fP]
-[\-waves \fInumber\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-count \fInumber\fP]
+[\-\-no-wander]
+[\-\-no-spin]
+[\-\-spin \fI[XYZ]\fP]
+[\-\-wireframe]
+[\-\-no-texture]
+[\-\-wave-speed \fInumber\fP]
+[\-\-wave-radius \fInumber\fP]
+[\-\-waves \fInumber\fP]
+[\-\-fps]
 .SH DESCRIPTION
 Draws a pulsating set of overlapping boxes with ever-chaning blobby
 patterns undulating across their surfaces.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 20000 (0.02 seconds.).
 .TP 8
-.B \-count \fInumber\fP
+.B \-\-count \fInumber\fP
 How many boxes make up the object.  Default: 5.
 .TP 8
-.B \-wander | \-no-wander
+.B \-\-wander | \-\-no-wander
 Whether the object should wander around the screen.
 .TP 8
-.B \-spin \fI[XYZ]\fP
+.B \-\-spin \fI[XYZ]\fP
 Around which axes should the object spin?
 .TP 8
-.B \-no-spin
+.B \-\-no-spin
 Don't spin.
 .TP 8
-.B \-wireframe
+.B \-\-wireframe
 Render in wireframe instead of solid.
 .TP 8
-.B \-texture | \-no-texture
+.B \-\-texture | \-\-no-texture
 Display Solid Colors.
 .TP 8
-.B \-wave-speed \fInumber\fP
+.B \-\-wave-speed \fInumber\fP
 Surface Pattern Speed. 5 - 150.  Default: 80.
 .TP 8
-.B \-wave-radius \fInumber\fP
+.B \-\-wave-radius \fInumber\fP
 Surface Pattern Overlap.  5 - 600.  Default: 512.
 .TP 8
-.B \-waves \fInumber\fP
+.B \-\-waves \fInumber\fP
 Surface Pattern Complexity.  1 - 20.  Default: 3.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .SH ENVIRONMENT
 .PP
@@ -74,6 +78,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 8e2a8e2bc6a74b042639c69014d7623550780c45..c3df3fdba8c2af54b0fbc699f88f001103f6c306 100644 (file)
@@ -3,50 +3,54 @@
 cubestack \- An endless stack of unfolding, translucent cubes.
 .SH SYNOPSIS
 .B cubestack
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-speed \fInumber\fP]
-[\-thickness \fInumber\fP]
-[\-opacity \fInumber\fP]
-[\-no-wander]
-[\-wireframe]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-speed \fInumber\fP]
+[\-\-thickness \fInumber\fP]
+[\-\-opacity \fInumber\fP]
+[\-\-no-wander]
+[\-\-wireframe]
+[\-\-fps]
 .SH DESCRIPTION
 An endless stack of unfolding, translucent cubes.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 30000 (0.03 seconds).
 .TP 8
-.B \-speed \fInumber\fP
+.B \-\-speed \fInumber\fP
 Animation speed.  2.0 means twice as fast, 0.5 means half as fast.
 .TP 8
-.B \-thickness \fInumber\fP
+.B \-\-thickness \fInumber\fP
 Thickness of the face edges.  0.0 - 0.5.       Default: 0.13.
 .TP 8
-.B \-opacity \fInumber\fP
+.B \-\-opacity \fInumber\fP
 Opacity of the cubes.  0.01 - 1.0.  Default: 0.7.
 .TP 8
-.B \-wander | \-no-wander
+.B \-\-wander | \-\-no-wander
 Whether the object should wander around the screen.
 .TP 8
-.B \-wireframe | \-no-wireframe
+.B \-\-wireframe | \-\-no-wireframe
 Render in wireframe instead of solid.
 .TP 8
-.B \-fps | \-no-fps
+.B \-\-fps | \-\-no-fps
 Whether to show a frames-per-second display at the bottom of the screen.
 .SH ENVIRONMENT
 .PP
@@ -57,6 +61,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index aad0c9700c584973a8492e7d4f48560e2a8b2247..a7b93474950b432ce48322d44c49eb11b27bdab1 100644 (file)
@@ -3,55 +3,59 @@
 cubestorm \- a series of 3D boxes that fill space
 .SH SYNOPSIS
 .B cubestorm
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-speed \fIfloat\fP]
-[\-count \fIint\fP]
-[\-thickness \fIfloat\fP]
-[\-no-wander]
-[\-no-spin]
-[\-wireframe]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-speed \fIfloat\fP]
+[\-\-count \fIint\fP]
+[\-\-thickness \fIfloat\fP]
+[\-\-no-wander]
+[\-\-no-spin]
+[\-\-wireframe]
+[\-\-fps]
 .SH DESCRIPTION
 Draws a series of rotating 3D boxes that intersect each other and
 eventually fill space.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 30000 (0.03 seconds.).
 .TP 8
-.B \-speed \fInumber\fP
+.B \-\-speed \fInumber\fP
 Larger numbers mean run faster.  Default: 1.0.
 .TP 8
-.B \-count \fInumber\fP
+.B \-\-count \fInumber\fP
 Number of cubes.  Default 4.
 .TP 8
-.B \-thickness \fIfloat\fP
+.B \-\-thickness \fIfloat\fP
 How thick the struts making up the cubes should be (0.0-1.0).  Default 0.06.
 .TP 8
-.B \-wander | \-no-wander
+.B \-\-wander | \-\-no-wander
 Whether the cubes should wander around the screen.
 .TP 8
-.B \-spin | \-no-spin
+.B \-\-spin | \-\-no-spin
 Whether the cubes should spin.
 .TP 8
-.B \-wireframe | \-no-wireframe
+.B \-\-wireframe | \-\-no-wireframe
 Render in wireframe instead of solid.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .SH ENVIRONMENT
 .PP
@@ -62,6 +66,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 79efdd43f476d55996478e4bc21b42f3a0a8ae68..e6bbb18f74511e98efbab8dfd7ecf8eb7316fd7a 100644 (file)
@@ -3,58 +3,62 @@
 cubetwist \- A series of nested cubes rotate and slide recursively.
 .SH SYNOPSIS
 .B cubetwist
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-speed \fInumber\fP]
-[\-thickness \fInumber\fP]
-[\-displacement \fInumber\fP]
-[\-no-flat]
-[\-no-wander]
-[\-no-spin]
-[\-wireframe]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-speed \fInumber\fP]
+[\-\-thickness \fInumber\fP]
+[\-\-displacement \fInumber\fP]
+[\-\-no-flat]
+[\-\-no-wander]
+[\-\-no-spin]
+[\-\-wireframe]
+[\-\-fps]
 .SH DESCRIPTION
 A series of nested cubes rotate and slide recursively.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 30000 (0.03 seconds).
 .TP 8
-.B \-speed \fInumber\fP
+.B \-\-speed \fInumber\fP
 Animation speed.  2.0 means twice as fast, 0.5 means half as fast.
 .TP 8
-.B \-thickness \fInumber\fP
+.B \-\-thickness \fInumber\fP
 Thickness of the cube edges.  0.005 - 0.2.  Default: 0.05.
 .TP 8
-.B \-displacement \fInumber\fP
+.B \-\-displacement \fInumber\fP
 Displacement between nested cubes.  0.0 - 0.2.  Default: 0.01.
 .TP 8
-.B \-flat | \-no-flat
+.B \-\-flat | \-\-no-flat
 Whether to use flat shading, or lighting.  Default flat.
 .TP 8
-.B \-wander | \-no-wander
+.B \-\-wander | \-\-no-wander
 Whether the object should wander around the screen.
 .TP 8
-.B \-spin | \-no-spin
+.B \-\-spin | \-\-no-spin
 Whether the object should spin.
 .TP 8
-.B \-wireframe | \-no-wireframe
+.B \-\-wireframe | \-\-no-wireframe
 Render in wireframe instead of solid.
 .TP 8
-.B \-fps | \-no-fps
+.B \-\-fps | \-\-no-fps
 Whether to show a frames-per-second display at the bottom of the screen.
 .SH ENVIRONMENT
 .PP
@@ -65,6 +69,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index b83114d42859d20027a49b5141880716c7daeba1..3015a52b4bc30bf07b57a65f995d501c44a2c580 100644 (file)
@@ -3,19 +3,20 @@
 cubicgrid \- rotating 3D lattice seen from inside
 .SH SYNOPSIS
 .B cubicgrid
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-install]
-[\-delay \fImicroseconds\fP]
-[\-mono]
-[\-speed \fInumber\fP]
-[\-zoom \fInumber\fP]
-[\-ticks \fInumber\fP]
-[\-bigdots]
-[\-fps]
-[\-symmetry \fcrystalographic symmetry\fP]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-install]
+[\-\-delay \fImicroseconds\fP]
+[\-\-mono]
+[\-\-speed \fInumber\fP]
+[\-\-zoom \fInumber\fP]
+[\-\-ticks \fInumber\fP]
+[\-\-bigdots]
+[\-\-fps]
+[\-\-symmetry \fIcrystalographic symmetry\fP]
 .SH DESCRIPTION
 This program shows the view of an observer located inside a set of points 
 arranged to a 3D lattice.  As the lattice rotates, various view-throughs appear 
@@ -24,44 +25,47 @@ and evolve.  A simple idea with interesting results.
 .I cubicgrid
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-install
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP\fP
+.B \-\-visual \fIvisual\fP\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-delay \fImicroseconds\fP
+.B \-\-delay \fImicroseconds\fP
 How long to pause between frames.  Default is 20000, or 0.02 second.
 .TP 8
-.B \-mono
+.B \-\-mono
 Draw in black and white.  If not used, a fixed all-color scheme is chosen.
 .TP 8
-.B \-speed \fInumber\fP
+.B \-\-speed \fInumber\fP
 The maximum speed of the rotation.  The actual speed and axis change smoothly 
 for better effect.  0.5 - 10.  The default is 1.0.
 .TP 8
-.B \-zoom \fInumber\fP
+.B \-\-zoom \fInumber\fP
 Size of the lattice.  Ideally it should fill all the screen, but one may find 
 other values also interesting.  5 - 50.  The default of 20 should do for common 
 screen aspect ratios.
 .TP 8
-.B \-ticks \fInumber\fP
+.B \-\-ticks \fInumber\fP
 The count of points drawn along every axis.  10 - 100.  The default is 30.
 .TP 8
-.B \-bigdots
+.B \-\-bigdots
 Draw the points twice as big.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .TP 8
-.B \-symmetry \fSymmetry\fP
+.B \-\-symmetry \fISymmetry\fP
 Which crystalographic symmetry system to use. One of "auto", "cubic", or
 "hexagonal". "auto" will randomly select between symmetry systems.
 .SH ENVIRONMENT
@@ -73,6 +77,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index f50dc03f71415b9455b8e434e9fde8ef7298f8a0..84e9a30f0e6e9b5c5180297c6a03ef5f93cee63f 100644 (file)
@@ -3,50 +3,54 @@
 dangerball \- a 3D ball that periodically extrudes spikes. Ouch!
 .SH SYNOPSIS
 .B dangerball
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-speed \fInumber\fP]
-[\-count \fInumber\fP]
-[\-no-wander]
-[\-no-spin]
-[\-wireframe]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-speed \fInumber\fP]
+[\-\-count \fInumber\fP]
+[\-\-no-wander]
+[\-\-no-spin]
+[\-\-wireframe]
+[\-\-fps]
 .SH DESCRIPTION
 Draws a ball that periodically extrudes many random spikes. Ouch!
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 30000 (0.03 seconds.).
 .TP 8
-.B \-speed \fInumber\fP
+.B \-\-speed \fInumber\fP
 Spike growth frequency.  0.0 - 0.25.  Default: 0.05.
 .TP 8
-.B \-count \fInumber\fP
+.B \-\-count \fInumber\fP
 Number o spikes.  Default: 30.
 .TP 8
-.B \-wander | \-no-wander
+.B \-\-wander | \-\-no-wander
 Whether the object should wander around the screen.
 .TP 8
-.B \-spin | \-no-spin
+.B \-\-spin | \-\-no-spin
 Whether the object should spin.
 .TP 8
-.B \-wireframe | \-no-wireframe
+.B \-\-wireframe | \-\-no-wireframe
 Render in wireframe instead of solid.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .SH ENVIRONMENT
 .PP
@@ -57,6 +61,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index c95af2a84f36114c3bd967863f1d99ea5374c9a0..8e93ca2edc061404c7b636f05cdba9ed948b5780 100644 (file)
@@ -3,34 +3,38 @@
 deepstars \- screen saver.
 .SH SYNOPSIS
 .B deepstars
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-speed \fInumber\fP]
-[\-smear \fInumber\fP]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-speed \fInumber\fP]
+[\-\-smear \fInumber\fP]
 .SH DESCRIPTION
 A long exposure of the night sky, showing star paths as vapor trails.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 30000 (0.03 seconds).
 .TP 8
-.B \-speed \fInumber\fP
+.B \-\-speed \fInumber\fP
 Animation speed.  2.0 means twice as fast, 0.5 means half as fast.
 .TP 8
-.B \-smear \fInumber\fP
+.B \-\-smear \fInumber\fP
 How long the vapor trails should be.
 2.0 means twice as long, 0.5 means half as long.
 .SH ENVIRONMENT
@@ -42,6 +46,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 96c216a2603487f9284e2cfe370a14a4ae1b128c..5e1389eb4231c050914af16e8320d68981ddf8fc 100644 (file)
@@ -3,50 +3,54 @@
 discoball \- A dusty, dented disco ball screen saver.
 .SH SYNOPSIS
 .B discoball
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-speed \fInumber\fP]
-[\-count \fInumber\fP]
-[\-no-wander]
-[\-spin]
-[\-wireframe]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-speed \fInumber\fP]
+[\-\-count \fInumber\fP]
+[\-\-no-wander]
+[\-\-spin]
+[\-\-wireframe]
+[\-\-fps]
 .SH DESCRIPTION
 A dusty, dented disco ball. Woop woop.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 30000 (0.03 seconds).
 .TP 8
-.B \-speed \fInumber\fP
+.B \-\-speed \fInumber\fP
 Animation speed.  2.0 means twice as fast, 0.5 means half as fast.
 .TP 8
-.B \-count \fInumber\fP
+.B \-\-count \fInumber\fP
 Number of rows of tiles on the ball.  10 - 100.  Default: 30.
 .TP 8
-.B \-wander | \-no-wander
+.B \-\-wander | \-\-no-wander
 Whether the object should wander around the screen.
 .TP 8
-.B \-spin | \-no-spin
+.B \-\-spin | \-\-no-spin
 Whether the scene should spin.
 .TP 8
-.B \-wireframe | \-no-wireframe
+.B \-\-wireframe | \-\-no-wireframe
 Render in wireframe instead of solid.
 .TP 8
-.B \-fps | \-no-fps
+.B \-\-fps | \-\-no-fps
 Whether to show a frames-per-second display at the bottom of the screen.
 .SH ENVIRONMENT
 .PP
@@ -57,6 +61,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index c41e49543229067e47631b99a079db92e43c81be..bf01264034f66283ec7f85ce9a4f8ffd0d82f4b9 100644 (file)
@@ -3,23 +3,24 @@
 dymaxionmap \- An animation of Buckminster Fuller's unwrapped icosahedral globe.
 .SH SYNOPSIS
 .B dymaxionmap
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-speed \fIratio\fP]
-[\-no-wander]
-[\-no-roll]
-[\-no-stars]
-[\-no-grid]
-[\-flat]
-[\-satellite]
-[\-image \fIfile\fP]
-[\-image2 \fIfile\fP]
-[\-frames \fInumber\fP]
-[\-wireframe]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-speed \fIratio\fP]
+[\-\-no-wander]
+[\-\-no-roll]
+[\-\-no-stars]
+[\-\-no-grid]
+[\-\-flat]
+[\-\-satellite]
+[\-\-image \fIfile\fP]
+[\-\-image2 \fIfile\fP]
+[\-\-frames \fInumber\fP]
+[\-\-wireframe]
+[\-\-fps]
 .SH DESCRIPTION
 Buckminster Fuller's map of the Earth projected onto the surface of an
 unfolded icosahedron. It depicts the Earth's continents as one island, or
@@ -30,57 +31,60 @@ the flattened globe. It includes both satellite and flat-colored map
 imagery, and can load and convert other Equirectangular-projected maps.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 20000 (0.02 seconds).
 .TP 8
-.B \-speed \fIratio\fP
+.B \-\-speed \fIratio\fP
 Speed of the animation. 0.5 means half as fast, 2 means twice as fast.
 .TP 8
-.B \-wander | \-no-wander
+.B \-\-wander | \-\-no-wander
 Whether the object should wander around the screen. Default yes.
 .TP 8
-.B \-roll | \-no-roll
+.B \-\-roll | \-\-no-roll
 Whether the object should roll randomly. Default yes.
 .TP 8
-.B \-stars | \-no-stars
+.B \-\-stars | \-\-no-stars
 Whether to display a star field. Default yes.
 .TP 8
-.B \-grid | \-no-grid
+.B \-\-grid | \-\-no-grid
 Whether to overlay a latitude/longitude grid over the map. Default yes.
 .TP 8
-.B \-flat
+.B \-\-flat
 Display a flat-colored map of the Earth. This is the default.
 .TP 8
-.B \-satellite
+.B \-\-satellite
 Display a day-time satellite map of the Earth.
 .TP 8
-.B \-image \fIfile\fP
+.B \-\-image \fIfile\fP
 An image to use for the day-time map.
 .TP 8
-.B \-image2 \fIfile\fP
+.B \-\-image2 \fIfile\fP
 An image to use for the night-time map.
 The two images can be the same: the night-time one will be darkened.
 .TP 8
-.B \-frames \fInumber\fP
+.B \-\-frames \fInumber\fP
 The number of frames in the day/night animation. Default 720.
 Larger numbers are smoother, but use more memory.
 The day/night animation happens if \fIimage2\fP is set, or
 if \fIframes\fP is greater than 1.
 .TP 8
-.B \-wireframe | \-no-wireframe
+.B \-\-wireframe | \-\-no-wireframe
 Render in wireframe instead of solid.
 .TP 8
-.B \-fps | \-no-fps
+.B \-\-fps | \-\-no-fps
 Whether to show a frames-per-second display at the bottom of the screen.
 .SH ENVIRONMENT
 .PP
@@ -91,6 +95,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index c43cf6423659f4a07f6d77e1fc06b832064612ba..4b20d460c2ac95128af59818e39cb5e2fab7c3c5 100644 (file)
@@ -3,45 +3,49 @@
 endgame \- endgame chess screensaver
 .SH SYNOPSIS
 .B endgame
-[\-display \fIhost:display.screen\fP]
-[\-window]
-[\-root]
-[\-install]
-[\-visual \fIvisual\fP]
-[\-delay \fImicroseconds\fP]
-[\-wireframe]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-install]
+[\-\-visual \fIvisual\fP]
+[\-\-delay \fImicroseconds\fP]
+[\-\-wireframe]
+[\-\-fps]
 .SH DESCRIPTION
 endgame replays a brilliant chess ending
 .SH OPTIONS
 .I endgame
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-install
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-shadows
+.B \-\-shadows
 Project pieces against the board with dark blend.
 .TP 8
-.B \-reflections
+.B \-\-reflections
 Reflect pieces in light board squares.
 .TP 8
-.B \-classic
+.B \-\-classic
 Use the original low-polygon piece models.
 .TP 8
-.B \-visual \fIvisual\fP\fP
+.B \-\-visual \fIvisual\fP\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-wireframe
+.B \-\-wireframe
 Render in wireframe instead of solid.
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .SH ENVIRONMENT
 .PP
@@ -52,6 +56,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH BUGS
 It's not unknown for this and other OpenGL hacks to fail under hardware accelaration (UtahGLX) and take the X server with them.  Texture images must be 16x16 or 32x32 or 64x64 etc.
 .SH SEE ALSO
index e149d8472ae268f2762de34643e736426ba493df..11d7ad59d764001ec0cb99b0c2c153c4bad204e5 100644 (file)
@@ -3,34 +3,38 @@
 energystream \- a flow of particles which form an energy stream
 .SH SYNOPSIS
 .B energystream
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-no-wander]
-[\-no-spin]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-no-wander]
+[\-\-no-spin]
+[\-\-fps]
 .SH DESCRIPTION
 Draws a set of flowing particles with camera flying around and through it.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-wander | \-no-wander
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-wander | \-\-no-wander
 Whether the camera should wander around the screen.
 .TP 8
-.B \-spin | \-no-spin
+.B \-\-spin | \-\-no-spin
 Whether the camera should spin.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .SH ENVIRONMENT
 .PP
@@ -41,6 +45,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index ff9d6441384c1885bef2cccbee1b12e15cf1909a..5d4147f89e44a535e3e8ffbe94c02ed9ecc72856 100644 (file)
@@ -3,31 +3,35 @@
 engine \- draws a 3D four-stroke engine.
 .SH SYNOPSIS
 .B engine
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-engine \fIname\fP]
-[\-delay \fInumber\fP]
-[\-no-move]
-[\-no-spin]
-[\-no-title]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-engine \fIname\fP]
+[\-\-delay \fInumber\fP]
+[\-\-no-move]
+[\-\-no-spin]
+[\-\-no-title]
+[\-\-fps]
 .SH DESCRIPTION
 Draws a simple four-stroke engine that floats around the screen.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-engine \fIname\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-engine \fIname\fP
 What kind of engine to draw.  Default: random.
 Known models are:
 "Honda Insight" (3),
@@ -42,19 +46,19 @@ Known models are:
 and
 "Jaguar XKE" (V12).
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 10000 (0.01 seconds.).
 .TP 8
-.B \-move | \-no-move
+.B \-\-move | \-\-no-move
 Whether the object should wander around the screen.
 .TP 8
-.B \-spin | \-no-spin
+.B \-\-spin | \-\-no-spin
 Whether the object should spin.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .TP 8
-.B \-title | \-no-title
+.B \-\-title | \-\-no-title
 Whether to display the name of the engine being rendered.
 .SH ENVIRONMENT
 .PP
@@ -65,6 +69,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 48a4e78f6644addc1c87fae4ae25ca36da4b1d1d..c6c5b01b6d929007d685d0bb28c0ed452ec9b262 100644 (file)
@@ -3,14 +3,15 @@
 esper \- Enhance 224 to 176. Go right. Enhance 57 19. Track 45 left.
 .SH SYNOPSIS
 .B esper
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-speed \fInumber\fP]
-[\-titles]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-speed \fInumber\fP]
+[\-\-titles]
+[\-\-fps]
 .SH DESCRIPTION
 "Enhance 224 to 176. Pull out track right. Center in pull back. Pull back.
 Wait a minute. Go right. Stop. Enhance 57 19. Track 45 left. Gimme a
@@ -23,26 +24,29 @@ reconstructing different viewpoints within the space from the
 reflections on various objects in the photograph.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 20000 (0.02 seconds).
 .TP 8
-.B \-speed \fInumber\fP
+.B \-\-speed \fInumber\fP
 Animation speed.  2.0 means twice as fast, 0.5 means half as fast.
 .TP 8
-.B \-titles | \-no-titles
+.B \-\-titles | \-\-no-titles
 Show file names.  Boolean.
 .TP 8
-.B \-fps | \-no-fps
+.B \-\-fps | \-\-no-fps
 Whether to show a frames-per-second display at the top of the screen.
 .SH ENVIRONMENT
 .PP
@@ -53,6 +57,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 9517274d92350eddb737b7a96c56e59d10fd4372..ec43999b84b8d3c356c240b3bf277f9c3b692852 100644 (file)
@@ -5,46 +5,47 @@ deforms between the Etruscan Venus surface, the Roman surface, the Boy
 surface surface, and the Ida surface.
 .SH SYNOPSIS
 .B etruscanvenus
-[\-display \fIhost:display.screen\fP]
-[\-install]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fIusecs\fP]
-[\-fps]
-[\-mode \fIdisplay-mode\fP]
-[\-wireframe]
-[\-surface]
-[\-transparent]
-[\-appearance \fIappearance\fP]
-[\-solid]
-[\-distance-bands]
-[\-direction-bands]
-[\-colors \fIcolor-scheme\fP]
-[\-onesided-colors]
-[\-twosided-colors]
-[\-distance-colors]
-[\-direction-colors]
-[\-no-change-colors]
-[\-view-mode \fIview-mode\fP]
-[\-walk]
-[\-turn]
-[\-no-deform]
-[\-deformation-speed \fIfloat\fP]
-[\-initial-deformation \fIfloat\fP]
-[\-etruscan-venus]
-[\-roman]
-[\-boy]
-[\-ida]
-[\-orientation-marks]
-[\-projection \fImode\fP]
-[\-perspective]
-[\-orthographic]
-[\-speed-x \fIfloat\fP]
-[\-speed-y \fIfloat\fP]
-[\-speed-z \fIfloat\fP]
-[\-walk-direction \fIfloat\fP]
-[\-walk-speed \fIfloat\fP]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-install]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fIusecs\fP]
+[\-\-fps]
+[\-\-mode \fIdisplay-mode\fP]
+[\-\-wireframe]
+[\-\-surface]
+[\-\-transparent]
+[\-\-appearance \fIappearance\fP]
+[\-\-solid]
+[\-\-distance-bands]
+[\-\-direction-bands]
+[\-\-colors \fIcolor-scheme\fP]
+[\-\-onesided-colors]
+[\-\-twosided-colors]
+[\-\-distance-colors]
+[\-\-direction-colors]
+[\-\-no-change-colors]
+[\-\-view-mode \fIview-mode\fP]
+[\-\-walk]
+[\-\-turn]
+[\-\-no-deform]
+[\-\-deformation-speed \fIfloat\fP]
+[\-\-initial-deformation \fIfloat\fP]
+[\-\-etruscan-venus]
+[\-\-roman]
+[\-\-boy]
+[\-\-ida]
+[\-\-orientation-marks]
+[\-\-projection \fImode\fP]
+[\-\-perspective]
+[\-\-orthographic]
+[\-\-speed-x \fIfloat\fP]
+[\-\-speed-y \fIfloat\fP]
+[\-\-speed-z \fIfloat\fP]
+[\-\-walk-direction \fIfloat\fP]
+[\-\-walk-speed \fIfloat\fP]
 .SH DESCRIPTION
 The \fIetruscanvenus\fP program shows a 3d immersion of a Klein bottle
 that smoothly deforms between the Etruscan Venus surface, the Roman
@@ -147,79 +148,82 @@ Raymond L. Idaszak, presented at SIGGRAPH 1989.
 .I etruscanvenus
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-install
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual
 class, or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-delay \fImicroseconds\fP
+.B \-\-delay \fImicroseconds\fP
 How much of a delay should be introduced between steps of the
 animation.  Default 10000, or 1/100th second.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .PP
 The following four options are mutually exclusive.  They determine how
 the Klein bottle is displayed.
 .TP 8
-.B \-mode random
+.B \-\-mode random
 Display the Klein bottle in a random display mode (default).
 .TP 8
-.B \-mode wireframe \fP(Shortcut: \fB\-wireframe\fP)
+.B \-\-mode wireframe \fP(Shortcut: \fB\-\-wireframe\fP)
 Display the Klein bottle as a wireframe mesh.
 .TP 8
-.B \-mode surface \fP(Shortcut: \fB\-surface\fP)
+.B \-\-mode surface \fP(Shortcut: \fB\-\-surface\fP)
 Display the Klein bottle as a solid surface.
 .TP 8
-.B \-mode transparent \fP(Shortcut: \fB\-transparent\fP)
+.B \-\-mode transparent \fP(Shortcut: \fB\-\-transparent\fP)
 Display the Klein bottle as a transparent surface.
 .PP
 The following four options are mutually exclusive.  They determine the
 appearance of the Klein bottle.
 .TP 8
-.B \-appearance random
+.B \-\-appearance random
 Display the Klein bottle with a random appearance (default).
 .TP 8
-.B \-appearance solid \fP(Shortcut: \fB\-solid\fP)
+.B \-\-appearance solid \fP(Shortcut: \fB\-\-solid\fP)
 Display the Klein bottle as a solid object.
 .TP 8
-.B \-appearance distance-bands \fP(Shortcut: \fB\-distance-bands\fP)
+.B \-\-appearance distance-bands \fP(Shortcut: \fB\-\-distance-bands\fP)
 Display the Klein bottle as see-through bands that lie at increasing
 distances from the origin (see above for an explanation).
 .PP
 .TP 8
-.B \-appearance direction-bands \fP(Shortcut: \fB\-direction-bands\fP)
+.B \-\-appearance direction-bands \fP(Shortcut: \fB\-\-direction-bands\fP)
 Display the Klein bottle as see-through bands that lie at increasing
 angles with respect to the origin (see above for an explanation).
 .PP
 The following five options are mutually exclusive.  They determine how
 to color the Klein bottle.
 .TP 8
-.B \-colors random
+.B \-\-colors random
 Display the Klein bottle with a random color scheme (default).
 .TP 8
-.B \-colors onesided \fP(Shortcut: \fB\-onesided-colors\fP)
+.B \-\-colors onesided \fP(Shortcut: \fB\-\-onesided-colors\fP)
 Display the Klein bottle with a single color.
 .TP 8
-.B \-colors twosided \fP(Shortcut: \fB\-twosided-colors\fP)
+.B \-\-colors twosided \fP(Shortcut: \fB\-\-twosided-colors\fP)
 Display the Klein bottle with two colors: one color on one "side" and
 the complementary color on the "other side."
 .TP 8
-.B \-colors distance \fP(Shortcut: \fB\-distance-colors\fP)
+.B \-\-colors distance \fP(Shortcut: \fB\-\-distance-colors\fP)
 Display the Klein bottle with fully saturated colors that depend on
 the distance of the points on the projective plane to the origin (see
 above for an explanation).  If the Klein bottle is displayed as
 distance bands, each band will be displayed with a different color.
 .TP 8
-.B \-colors direction \fP(Shortcut: \fB\-direction-colors\fP)
+.B \-\-colors direction \fP(Shortcut: \fB\-\-direction-colors\fP)
 Display the Klein bottle with fully saturated colors that depend on
 the angle of the points on the projective plane with respect to the
 origin (see above for an explanation).  If the Klein bottle is
@@ -229,83 +233,83 @@ different color.
 The following options determine whether the colors with which the
 Klein bottle are displayed are static or are changing dynamically.
 .TP 8
-.B \-change-colors
+.B \-\-change-colors
 Change the colors with which the Klein bottle is displayed
 dynamically (default).
 .TP 8
-.B \-no-change-colors
+.B \-\-no-change-colors
 Use static colors to display the Klein bottle.
 .PP
 The following three options are mutually exclusive.  They determine
 how to view the Klein bottle.
 .TP 8
-.B \-view-mode random
+.B \-\-view-mode random
 View the Klein bottle in a random view mode (default).  The walking
 mode will be randomly selected in approximately 10% of the cases.
 .TP 8
-.B \-view-mode turn \fP(Shortcut: \fB\-turn\fP)
+.B \-\-view-mode turn \fP(Shortcut: \fB\-\-turn\fP)
 View the Klein bottle while it turns in 3d.
 .TP 8
-.B \-view-mode walk \fP(Shortcut: \fB\-walk\fP)
+.B \-\-view-mode walk \fP(Shortcut: \fB\-\-walk\fP)
 View the Klein bottle as if walking on its surface.
 .PP
 The following options determine whether the surface is being deformed.
 .TP 8
-.B \-deform
+.B \-\-deform
 Deform the surface smoothly between the Etruscan Venus surface, the
 Roman surface, the Boy surface surface, and the Ida surface (default).
 .TP 8
-.B \-no-deform
+.B \-\-no-deform
 Don't deform the surface.
 .PP
 The following option determines the deformation speed.
 .TP 8
-.B \-deformation-speed \fIfloat\fP
+.B \-\-deformation-speed \fIfloat\fP
 The deformation speed is measured in percent of some sensible maximum
 speed (default: 10.0).
 .PP
 The following options determine the initial deformation of the
 surface.  As described above, this is mostly useful if
-\fB\-no-deform\fP is specified.
+\fB\-\-no-deform\fP is specified.
 .TP 8
-.B \-initial-deformation \fIfloat\fP
+.B \-\-initial-deformation \fIfloat\fP
 The initial deformation is specified as a number between 0 and 4000.
 A value of 0 corresponds to the Etruscan Venus surface, a value of
 1000 to the Roman surface, a value of 2000 to the Boy surface, and a
 value of 3000 to the Ida surface.  The default value is 0.
 .TP 8
-.B \-etruscan-venus
-This is a shortcut for \fB\-initial-deformation 0\fP.
+.B \-\-etruscan-venus
+This is a shortcut for \fB\-\-initial-deformation 0\fP.
 .TP 8
-.B \-roman
-This is a shortcut for \fB\-initial-deformation 1000\fP.
+.B \-\-roman
+This is a shortcut for \fB\-\-initial-deformation 1000\fP.
 .TP 8
-.B \-boy
-This is a shortcut for \fB\-initial-deformation 2000\fP.
+.B \-\-boy
+This is a shortcut for \fB\-\-initial-deformation 2000\fP.
 .TP 8
-.B \-ida
-This is a shortcut for \fB\-initial-deformation 3000\fP.
+.B \-\-ida
+This is a shortcut for \fB\-\-initial-deformation 3000\fP.
 .PP
 The following options determine whether orientation marks are shown on
 the Klein bottle.
 .TP 8
-.B \-orientation-marks
+.B \-\-orientation-marks
 Display orientation marks on the Klein bottle.
 .TP 8
-.B \-no-orientation-marks
+.B \-\-no-orientation-marks
 Don't display orientation marks on the Klein bottle (default).
 .PP
 The following three options are mutually exclusive.  They determine
 how the Klain bottle is projected from 3d to 2d (i.e., to the screen).
 .TP 8
-.B \-projection random
+.B \-\-projection random
 Project the Klein bottle from 3d to 2d using a random projection mode
 (default).
 .TP 8
-.B \-projection perspective \fP(Shortcut: \fB\-perspective\fP)
+.B \-\-projection perspective \fP(Shortcut: \fB\-\-perspective\fP)
 Project the Klein bottle from 3d to 2d using a perspective projection.
 .TP 8
-.B \-projection orthographic \fP(Shortcut: \fB\-orthographic\fP)
+.B \-\-projection orthographic \fP(Shortcut: \fB\-\-orthographic\fP)
 Project the Klein bottle from 3d to 2d using an orthographic
 projection.
 .PP
@@ -315,18 +319,18 @@ in degrees per frame.  The speeds should be set to relatively small
 values, e.g., less than 4 in magnitude.  In walk mode, all speeds are
 ignored.
 .TP 8
-.B \-speed-x \fIfloat\fP
+.B \-\-speed-x \fIfloat\fP
 Rotation speed around the x axis (default: 1.1).
 .TP 8
-.B \-speed-y \fIfloat\fP
+.B \-\-speed-y \fIfloat\fP
 Rotation speed around the y axis (default: 1.3).
 .TP 8
-.B \-speed-z \fIfloat\fP
+.B \-\-speed-z \fIfloat\fP
 Rotation speed around the z axis (default: 1.5).
 .PP
 The following two options determine the walking speed and direction.
 .TP 8
-.B \-walk-direction \fIfloat\fP
+.B \-\-walk-direction \fIfloat\fP
 The walking direction is measured as an angle in degrees in the 2d
 square that forms the coordinate system of the surface of the Klein
 bottle (default: 83.0).  A value of 0 or 180 means that the walk is
@@ -336,7 +340,7 @@ directly along a direction band.  Any other value results in a curved
 path along the surface.  As noted above, walking is performed only on
 the Ida surface.
 .TP 8
-.B \-walk-speed \fIfloat\fP
+.B \-\-walk-speed \fIfloat\fP
 The walking speed is measured in percent of some sensible maximum
 speed (default: 20.0).
 .SH INTERACTION
@@ -356,6 +360,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index b4a0b2914ef8e531761fc897d726d1306ab52d58..b2a34435ffd08a30535f1c4424b4a7b11d6dbc8a 100644 (file)
@@ -3,47 +3,51 @@
 extrusion \- various rotating extruded shapes.
 .SH SYNOPSIS
 .B extrusion
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-name \fIwhich\fP]
-[\-no-light]
-[\-wireframe]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-name \fIwhich\fP]
+[\-\-no-light]
+[\-\-wireframe]
+[\-\-fps]
 .SH DESCRIPTION
 Draws various rotating extruded shapes that twist around, lengthen, and
 turn inside out.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 10000 (0.01 seconds.).
 .TP 8
-.B \-name \fIwhich\fP
+.B \-\-name \fIwhich\fP
 Which object to draw.  Choices are: helix2, helix3, helix4, joinoffset,
 screw, taper, and twistoid.
 .TP 8
-.B \-light | \-no-light
+.B \-\-light | \-\-no-light
 Whether to light the scene, or use flat coloring.
 .TP 8
-.B \-bitmap \fIfile\fP
+.B \-\-bitmap \fIfile\fP
 The texture map to use.
 .TP 8
-.B \-wireframe
+.B \-\-wireframe
 Render in wireframe instead of solid.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .SH ENVIRONMENT
 .PP
@@ -54,6 +58,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index ab84249f1cc2004a8fe9e6284d374f5c6906bf83..f0419c42a9673ec25467e3d12d1e983262d7b8fa 100644 (file)
@@ -3,72 +3,77 @@
 flipflop \- draws a grid of 3D squares that change positions
 .SH SYNOPSIS
 .B flipflop
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-count \fInumber\fP | \-free \fInumber\fP]
-[\-size \fInumber\fP]
-[\-size-x \fInumber\fP]
-[\-size-y \fInumber\fP]
-[\-spin \fInumber\fP]
-[\-mode sticks | tiles]
-[\-delay \fInumber\fP]
-[\-wireframe]
-[\-fps]
-[\-texture]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-count \fInumber\fP | \-\-free \fInumber\fP]
+[\-\-size \fInumber\fP]
+[\-\-size-x \fInumber\fP]
+[\-\-size-y \fInumber\fP]
+[\-\-spin \fInumber\fP]
+[\-\-mode sticks | tiles]
+[\-\-delay \fInumber\fP]
+[\-\-wireframe]
+[\-\-fps]
+[\-\-texture]
 .SH DESCRIPTION
 Flipflop draws a grid of 3D colored tiles that change positions with 
 each other.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-count \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-count \fInumber\fP
 Number of tiles on the board. A value of "0" means "default". The
 default number of tiles depends on the size of the board and the mode:
 95% of total tiles for "tiles" mode and 80% of total sticks for
 "sticks" mode (e.g. 76 tiles or 64 sticks for a 9x9 board). 
 .TP 8
-.B \-free \fInumber\fP
+.B \-\-free \fInumber\fP
 Number of tiles missing from the board. See -count. 
 .TP 8
-.B \-size \fInumber\fP
+.B \-\-size \fInumber\fP
 Number of tiles on each side of the board. Takes precedence over
 -size-x and -size-y. Default: 9.
 .TP 8
-.B \-size-x \fInumber\fP
+.B \-\-size-x \fInumber\fP
 Width (in tiles) of the board. Default: 9.
 .TP 8
-.B \-size-y \fInumber\fP
+.B \-\-size-y \fInumber\fP
 Length (in tiles) of the board. Default: 9.
 .TP 8
-.B \-spin \fInumber\fP
+.B \-\-spin \fInumber\fP
 Angular velocity for the rotation of the board. 
 .TP 8
-.B \-mode sticks 
+.B \-\-mode sticks 
 Draw hopping sticks instead of flipping tiles. 
 .TP 8
-.B \-mode tiles 
+.B \-\-mode tiles 
 Draw flipping tiles. This is the default. 
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 20000 (0.02 seconds.).
 .TP 8
-.B \-fps | \-no\-fps
+.B \-\-fps | \-\-no\-fps
 Display the current frame rate, CPU load, and polygon count.
 .TP 8
-.B \-wireframe
+.B \-\-wireframe
 Only draw outlines.
 .TP 8
-.B \-texture | \-no\-texture
+.B \-\-texture | \-\-no\-texture
 Whether to texture the tiles with a screen grab or an image.
 .SH ENVIRONMENT
 .PP
@@ -79,6 +84,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 3edaf0b34fe880801b9179d8f8d93e869b925577..561aa80e425733c5d297fd410458c49e5bd1eeee 100644 (file)
@@ -3,39 +3,43 @@
 flipscreen3d \- rotates an image of the screen through 3 dimensions.
 .SH SYNOPSIS
 .B flipscreen3d
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-no-rotate]
-[\-wireframe]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-no-rotate]
+[\-\-wireframe]
+[\-\-fps]
 .SH DESCRIPTION
 Grabs an image of the desktop, turns it into a GL texture map, and spins it
 around and deforms it in various ways.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 20000 (0.02 seconds.).
 .TP 8
-.B \-rotate | \-no-rotate
+.B \-\-rotate | \-\-no-rotate
 Whether to rotate.
 .TP 8
-.B \-wireframe
+.B \-\-wireframe
 Just render boxes instead of textures (for debugging).
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .SH ENVIRONMENT
 .PP
@@ -46,6 +50,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index d35a8b0a715ea19fb361fa2161040e1928b07335..5a877e85a8208528022cd604279f2e7aa06889e0 100644 (file)
@@ -3,19 +3,20 @@
 fliptext \- draws pages of text whose lines transparently flip around
 .SH SYNOPSIS
 .B fliptext
-[\-display \fIhost:display.screen\fP] [\-window] [\-root]
-[\-visual \fIvisual\fP]
-[\-delay \fImicroseconds\fP]
-[\-program \fIcommand\fP]
-[\-size \fIinteger\fP ]
-[\-columns \fIinteger\fP]
-[\-left | \-center | \-right]
-[\-lines \fIinteger\fP]
-[\-speed \fIfloat\fP]
-[\-delay \fIusecs\fP]
-[\-font \fIxlfd\fP]
-[\-wireframe]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-delay \fImicroseconds\fP]
+[\-\-program \fIcommand\fP]
+[\-\-size \fIinteger\fP ]
+[\-\-columns \fIinteger\fP]
+[\-\-left | \-\-center | \-\-right]
+[\-\-lines \fIinteger\fP]
+[\-\-speed \fIfloat\fP]
+[\-\-delay \fIusecs\fP]
+[\-\-font \fIxlfd\fP]
+[\-\-wireframe]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIfliptext\fP program runs another program to generate a stream of
 text, then animates the lines of that text transparently flipping in
@@ -24,20 +25,23 @@ and out in 3D.
 .I fliptext
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-install
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP\fP
+.B \-\-visual \fIvisual\fP\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-program \fIsh-command\fP
+.B \-\-program \fIsh-command\fP
 This program will be run periodically, and its output will be the text
 that is displayed.  Default \fIxscreensaver\-text\fP.
 
@@ -45,39 +49,39 @@ You can configure the text printed through the "Advanced" tab of
 .BR xscreensaver\-settings (1),
 or by editing your ~/.xscreensaver file.
 .TP 8
-.B \-size \fIinteger\fP
+.B \-\-size \fIinteger\fP
 How large a font to use, in points.  (Well, in some arbitrary unit 
 we're calling "points" for the sake of argument.)  Default: 20.
 .TP 8
-.B \-columns \fIinteger\fP
+.B \-\-columns \fIinteger\fP
 At (approximately) what column to wrap lines.  Default 80.  Wrapping is
 done by pixels, not characters, and lines will always wrap at the
 edge of the screen regardless.
 .TP 8
-.B \-left | \-center | \-right
+.B \-\-left | \-\-center | \-\-right
 Whether to align the text flush left, centered, or flush right.
 The default is to choose randomly each time a new screen of text 
 is displayed.
 .TP 8
-.B \-lines \fIinteger\fP
+.B \-\-lines \fIinteger\fP
 How many lines of text should be shown at once.  Default 8.
 .TP 8
-.B \-speed \fIratio\fP
+.B \-\-speed \fIratio\fP
 Change the animation speed; 0.5 to go half as fast, 2.0 to go twice as fast.
 .TP 8
-.B \-delay \fIusecs\fP
+.B \-\-delay \fIusecs\fP
 The delay between frames of the animation; default is 10000 (1/10th second.)
 .TP 8
-.B \-font \fIfont-name\fP
+.B \-\-font \fIfont-name\fP
 The name of the font to use.  For best effect, this should be a large
 font (at least 36 points.)  The bigger the font, the better looking the
 characters will be.  Note that the size of this font affects only the
 clarity of the characters, not their size on the screen: for that, use
-the \fI\-size\fP or \fI\-columns\fP options.
+the \fI\-\-size\fP or \fI\-\-columns\fP options.
 
 Default: -*-utopia-bold-r-normal-*-*-720-*-*-*-*-iso8859-1
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .SH ENVIRONMENT
 .PP
@@ -88,6 +92,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR xscreensaver (1),
 .BR xscreensaver\-text (MANSUFFIX),
index f0403593d869513243364bc61bf19e0bc7df04f0..76844849d1b6a0c582c9b809e971e910e3ab9bf8 100644 (file)
@@ -3,34 +3,38 @@
 flurry \- a colorful particle system
 .SH SYNOPSIS
 .B flurry
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-preset <arg>]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-preset <arg>]
+[\-\-fps]
 .SH DESCRIPTION
 This is a port of the OSX screensaver flurry.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-preset <arg>
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-preset <arg>
 Select a preset (classic, fire, water, psychedelic, rgb, binary, random, insane)
 
 (Insane will never be selected at random, because it requires lots of CPU/GPU
 power)
 
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .TP 8
 .SH ENVIRONMENT
@@ -42,6 +46,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index caef5fbdc2d1e59c6c314c7f1169f34a64b37c1e..51797d571a13268b670a94a84a0b84fcdbf06031 100644 (file)
@@ -3,55 +3,59 @@
 flyingtoasters \- 3d space-age jet-powered flying toasters (and toast)
 .SH SYNOPSIS
 .B flyingtoasters
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-speed \fInumber\fP]
-[\-ntoasters \fInumber\fP]
-[\-nslices \fInumber\fP]
-[\-no-texture]
-[\-no-fog]
-[\-wireframe]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-speed \fInumber\fP]
+[\-\-ntoasters \fInumber\fP]
+[\-\-nslices \fInumber\fP]
+[\-\-no-texture]
+[\-\-no-fog]
+[\-\-wireframe]
+[\-\-fps]
 .SH DESCRIPTION
 Draws a squadron of shiny 3D space-age jet-powered flying toasters, and
 associated toast, flying across your screen.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 30000 (0.03 seconds.).
 .TP 8
-.B \-speed \fInumber\fP
+.B \-\-speed \fInumber\fP
 How fast the toasters fly.  Larger for faster.  Default: 1.0.
 .TP 8
-.B \-ntoasters \fInumber\fP
+.B \-\-ntoasters \fInumber\fP
 How many toasters to draw.  Default 20.
 .TP 8
-.B \-nslices \fInumber\fP
+.B \-\-nslices \fInumber\fP
 How many slices of toast to draw.  Default 25.
 .TP 8
-.B \-no-texture
+.B \-\-no-texture
 Turn off texture mapping (for slow machines.)
 .TP 8
-.B \-no-fog
+.B \-\-no-fog
 Turn off fog (do not fade out distant toasters.)
 .TP 8
-.B \-wireframe
+.B \-\-wireframe
 Render in wireframe instead of solid.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .SH ENVIRONMENT
 .PP
@@ -62,6 +66,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 5be1368a2ce37c412ca4f78b9148f534617bd0b6..e6eac62a30ca9fd6db0abc19c0755a251aaf45bd 100644 (file)
@@ -3,12 +3,13 @@
 gears \- draw interlocking gears, for xscreensaver.
 .SH SYNOPSIS
 .B gears
-[\-display \fIhost:display.screen\fP] [\-window] [\-root] [\-install]
-[\-visual \fIvisual\fP]
-[\-delay \fIusecs\fP] 
-[\-speed \fIfloat\fP] 
-[\-no\-spin]
-[\-no\-wander]
+[\-\-display \fIhost:display.screen\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-install]
+[\-\-visual \fIvisual\fP]
+[\-\-delay \fIusecs\fP] 
+[\-\-speed \fIfloat\fP] 
+[\-\-no\-spin]
+[\-\-no\-wander]
 [-count \fIinteger\fP]
 [-wireframe]
 [-fps]
@@ -18,39 +19,42 @@ This draws a set of rotating gears.
 .I gears
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-install
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-delay \fIusecs\fP
+.B \-\-delay \fIusecs\fP
 The delay between frames of the animation, in microseconds.
 Default: 30000 (0.03 seconds.)
 .TP 8
-.B \-speed \fIfloat\fP
+.B \-\-speed \fIfloat\fP
 Larger numbers mean run faster.  Default: 1.0.
 .TP 8
-.B \-no\-spin
+.B \-\-no\-spin
 Don't rotate the object.
 .TP 8
-.B \-no\-wander
+.B \-\-no\-wander
 Don't wander the object around the screen.
 .TP 8
-.B \-count \fIinteger\fP
+.B \-\-count \fIinteger\fP
 How many gears to draw.  Default: 0 for random.
 .TP 8
-.B \-wireframe
+.B \-\-wireframe
 Render in wireframe instead of solid.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .SH ENVIRONMENT
 .PP
@@ -61,6 +65,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index a9f5f705cedf1b4e2f83538d3a977b7ef46f7b48..457ef89962292fec90dd129aad4452fb3e770ae9 100644 (file)
@@ -3,17 +3,18 @@
 geodesic \- animates a mesh geodesic sphere.
 .SH SYNOPSIS
 .B geodesic
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-mode \fImode\fP]
-[\-no-wander]
-[\-no-spin]
-[\-fps]
-[\-delay \fInumber\fP]
-[\-speed \fInumber\fP]
-[\-count \fInumber\fP]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-mode \fImode\fP]
+[\-\-no-wander]
+[\-\-no-spin]
+[\-\-fps]
+[\-\-delay \fInumber\fP]
+[\-\-speed \fInumber\fP]
+[\-\-count \fInumber\fP]
 .SH DESCRIPTION
 Animates a mesh geodesic sphere of increasing and decreasing complexity. A
 geodesic sphere is an icosohedron whose equilateral faces are sub-divided
@@ -25,35 +26,38 @@ sub-triangles to no longer be equilateral, but to more closely
 approximate the surface of a sphere.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-mode mesh | solid | stellated | stellated2 | wire
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-mode mesh | solid | stellated | stellated2 | wire
 Face/edge display style. Default mesh.
 .TP 8
-.B \-wander | \-no-wander
+.B \-\-wander | \-\-no-wander
 Whether the object should wander around the screen.
 .TP 8
-.B \-spin | \-no-spin
+.B \-\-spin | \-\-no-spin
 Whether the object should spin.
 .TP 8
-.B \-fps | \-no-fps
+.B \-\-fps | \-\-no-fps
 Whether to show a frames-per-second display at the bottom of the screen.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 30000 (0.03 seconds).
 .TP 8
-.B \-speed \fInumber\fP
+.B \-\-speed \fInumber\fP
 Animation speed.  2.0 means twice as fast, 0.5 means half as fast.
 .TP 8
-.B \-count \fInumber\fP
+.B \-\-count \fInumber\fP
 Depth (frequency) of the geodesic sphere.  Default: 4.
 .SH ENVIRONMENT
 .PP
@@ -64,6 +68,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index f6ca5e0f57c52a322ecde26a8d37c899001c8804..fe98b63c63592c02a3e3ec457317e1dd1c73d395 100644 (file)
@@ -3,54 +3,58 @@
 geodesicgears \- gears on the surface of a sphere.
 .SH SYNOPSIS
 .B geodesicgears
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-timeout \fInumber\fP]
-[\-labels]
-[\-numbers]
-[\-wireframe]
-[\-wander]
-[\-no-spin]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-timeout \fInumber\fP]
+[\-\-labels]
+[\-\-numbers]
+[\-\-wireframe]
+[\-\-wander]
+[\-\-no-spin]
+[\-\-fps]
 .SH DESCRIPTION
 A set of meshed gears arranged on the surface of a sphere.  
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 30000 (0.03 seconds).
 .TP 8
-.B \-timeout \fInumber\fP
+.B \-\-timeout \fInumber\fP
 Duration before switching to a new model.  5 - 120 seconds.  Default: 20.
 .TP 8
-.B \-labels | \-no-labels
+.B \-\-labels | \-\-no-labels
 Whether to show the number of gears and teeth.  Default: no.
 .TP 8
-.B \-numbers | \-no-numbers
+.B \-\-numbers | \-\-no-numbers
 Whether to label the gears with ID numbers.  Default: no.
 .TP 8
-.B \-wireframe | \-no-wireframe
+.B \-\-wireframe | \-\-no-wireframe
 Render in wireframe instead of solid.
 .TP 8
-.B \-wander | \-no-wander
+.B \-\-wander | \-\-no-wander
 Whether the object should wander around the screen.
 .TP 8
-.B \-spin | \-no-spin
+.B \-\-spin | \-\-no-spin
 Whether the object should spin.
 .TP 8
-.B \-fps | \-no-fps
+.B \-\-fps | \-\-no-fps
 Whether to show a frames-per-second display at the bottom of the screen.
 .SH ENVIRONMENT
 .PP
@@ -61,6 +65,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1),
index da6e4d6dfb6e5e2bd24a2444ed705a214c34e3f1..6fedd9c309133f4cce8a318e54442db4f2db0a01 100644 (file)
@@ -3,41 +3,45 @@
 gflux \- rippling surface graphics hack
 .SH SYNOPSIS
 .B gflux
-[\-display \fIhost:display.screen\fP] [\-window] [\-root] [\-install]
-[\-visual \fIvisual\fP] [\-delay \fImicroseconds\fP]
-[\-squares \fInum\fP] [\-resolution \fInum\fP] [\-mode \fImode\fP]
-[\-flat \fInum\fP] [\-speed \fInum\fP]
-[\-rotationx \fInum\fP] [\-rotationy \fInum\fP] [\-rotationz \fInum\fP]
-[\-waves \fInum\fP] [\-waveChange \fInum\fP] [\-waveHeight \fInum\fP]
-[\-waveFreq \fInum\fP] [\-zoom \fInum\fP]
-[\-wireframe]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-install]
+[\-\-visual \fIvisual\fP] [\-\-delay \fImicroseconds\fP]
+[\-\-squares \fInum\fP] [\-\-resolution \fInum\fP] [\-\-mode \fImode\fP]
+[\-\-flat \fInum\fP] [\-\-speed \fInum\fP]
+[\-\-rotationx \fInum\fP] [\-\-rotationy \fInum\fP] [\-\-rotationz \fInum\fP]
+[\-\-waves \fInum\fP] [\-\-waveChange \fInum\fP] [\-\-waveHeight \fInum\fP]
+[\-\-waveFreq \fInum\fP] [\-\-zoom \fInum\fP]
+[\-\-wireframe]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIgflux\fP program draws a colourfull animated rippling square rotating in 3D space.
 .SH OPTIONS
 .I gflux
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-install
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP\fP
+.B \-\-visual \fIvisual\fP\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-squares \fInum\fP\fP
+.B \-\-squares \fInum\fP\fP
 Specifies the size of the grid in squares. default 19
 .TP 8
-.B \-resolution \fInum\fP\fP
+.B \-\-resolution \fInum\fP\fP
 Specifies the wireframe detail of the squares. default 4
 .TP 8
-.B \-mode \fImode\fP\fP
+.B \-\-mode \fImode\fP\fP
 Specifies the draw method: wireframe; solid (meaning a solid colored
 surface); light (same as solid, but with lighting effects);
 checker (a texture-mapped checkerboard pattern); or grab (meaning
@@ -52,37 +56,37 @@ file; see
 .BR xscreensaver\-settings (1)
 for more details.
 .TP 8
-.B \-wireframe
+.B \-\-wireframe
 Same as "-mode wire".
 .TP 8
-.B \-flat \fInum\fP\fP
+.B \-\-flat \fInum\fP\fP
 0 for smooth shading 1 for flat. default 0
 .TP 8
-.B \-speed \fInum\fP\fP
+.B \-\-speed \fInum\fP\fP
 Specifies speed of ripples flowing over the surface. default 0.05
 .TP 8
-.B \-rotationx \fInum\fP \-rotationy \fInum\fP \-rotationz \fInum\fP\fP
+.B \-\-rotationx \fInum\fP \-\-rotationy \fInum\fP \-\-rotationz \fInum\fP\fP
 Specifies the speed of rotation of the surface in these axis 
 .TP 8
-.B \-waves \fInum\fP\fP
+.B \-\-waves \fInum\fP\fP
 Specifies the number of ripple centres at any one time.  Values should be greater than 1.  default 3
 .TP 8
-.B \-waveChange \fInum\fP\fP
+.B \-\-waveChange \fInum\fP\fP
 Specifies the duration of a ripple centre.  after this they fade away to be reborn elsewhere with a different frequency. default 50
 .TP 8
-.B \-waveHeight \fInum\fP\fP
+.B \-\-waveHeight \fInum\fP\fP
 Specifies the height of ripples on the surface. default 1.0
 .TP 8
-.B \-waveFreq \fInum\fP\fP
+.B \-\-waveFreq \fInum\fP\fP
 Specifies the maximum frequency of ripples. default 3.0
 .TP 8
-.B \-zoom \fInum\fP\fP
+.B \-\-zoom \fInum\fP\fP
 Specifies the size of the viewport. Smaller values fill the screen with rippling surface. default 1.0
 .TP 8
-.B \-delay \fImicroseconds\fP
+.B \-\-delay \fImicroseconds\fP
 How long to pause between frames.  Default is 20000, or 0.02 second.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .SH ENVIRONMENT
 .PP
@@ -93,6 +97,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 56aae6d5daaf56df4d331cdfab47170d5c10b88d..5a6e093eceb46eb8ca369e5feea1dc74b5f811af 100644 (file)
@@ -3,20 +3,21 @@
 gibson \- Hacking the Gibson screen saver.
 .SH SYNOPSIS
 .B gibson
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-speed \fInumber\fP]
-[\-grid-width \fInumber\fP]
-[\-grid-depth \fInumber\fP]
-[\-grid-height \fInumber\fP]
-[\-grid-spacing \fInumber\fP]
-[\-columns \fInumber\fP]
-[\-no-texture]
-[\-wireframe]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-speed \fInumber\fP]
+[\-\-grid-width \fInumber\fP]
+[\-\-grid-depth \fInumber\fP]
+[\-\-grid-height \fInumber\fP]
+[\-\-grid-spacing \fInumber\fP]
+[\-\-columns \fInumber\fP]
+[\-\-no-texture]
+[\-\-wireframe]
+[\-\-fps]
 .SH DESCRIPTION
 Hacking the Gibson, as per the 1995 classic film, \fIHACKERS\fP.
 
@@ -25,44 +26,47 @@ computer systems, infecting them with viruses, and stealing materials
 for their own ends. These people, they are terrorists."
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 20000 (0.02 seconds).
 .TP 8
-.B \-speed \fInumber\fP
+.B \-\-speed \fInumber\fP
 Animation speed.  2.0 means twice as fast, 0.5 means half as fast.
 .TP 8
-.B \-grid-width \fInumber\fP
+.B \-\-grid-width \fInumber\fP
 Number of towers across.  1 - 20.  Default: 10.
 .TP 8
-.B \-grid-depth \fInumber\fP
+.B \-\-grid-depth \fInumber\fP
 Number of towers deep.  1 - 20.  Default: 10.
 .TP 8
-.B \-grid-height \fInumber\fP
+.B \-\-grid-height \fInumber\fP
 Height of the towers.  1 - 20.  Default: 7.
 .TP 8
-.B \-grid-spacing \fInumber\fP
+.B \-\-grid-spacing \fInumber\fP
 Space between towers.  1 - 5.  Default: 2.0.
 .TP 8
-.B \-columns \fInumber\fP
+.B \-\-columns \fInumber\fP
 Columns of text on the towers.  1 - 20.        Default: 6.
 .TP 8
-.B \-texture | \-no-texture
+.B \-\-texture | \-\-no-texture
 Whether to draw text.  Default true.
 .TP 8
-.B \-wireframe | \-no-wireframe
+.B \-\-wireframe | \-\-no-wireframe
 Render in wireframe instead of solid.
 .TP 8
-.B \-fps | \-no-fps
+.B \-\-fps | \-\-no-fps
 Whether to show a frames-per-second display at the bottom of the screen.
 .SH ENVIRONMENT
 .PP
@@ -73,6 +77,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 96db6ed99b9e55b18e5368df936036041bbeea4f..ee446e7d0910ef7d55381e6ee42b82481fe50e1d 100644 (file)
@@ -3,16 +3,17 @@
 glblur \- 3D radial blur texture fields
 .SH SYNOPSIS
 .B glblur
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-blursize \fInumber\fP]
-[\-no-wander]
-[\-no-spin]
-[\-spin \fI[XYZ]\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-blursize \fInumber\fP]
+[\-\-no-wander]
+[\-\-no-spin]
+[\-\-spin \fI[XYZ]\fP]
+[\-\-fps]
 .SH DESCRIPTION
 This program draws a box and a few line segments, and generates a 
 radial blur outward from it.  This creates flowing field effects.
@@ -24,33 +25,36 @@ graphics intensive: don't bother trying to run this if you don't have
 hardware-accelerated texture support.  It will hurt your machine bad.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 10000 (0.01 seconds.).
 .TP 8
-.B \-blursize \fInumber\fP
+.B \-\-blursize \fInumber\fP
 How many copies of the scene should be laid down to make the vapor trail.
 Default: 15.  Larger numbers create smoother fields, but are slower.
 .TP 8
-.B \-wander | \-no-wander
+.B \-\-wander | \-\-no-wander
 Whether the object should wander around the screen.
 .TP 8
-.B \-spin [XYZ]
+.B \-\-spin [XYZ]
 Around which axes should the object spin?
 .TP 8
-.B \-no-spin
+.B \-\-no-spin
 None.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .SH ENVIRONMENT
 .PP
@@ -61,6 +65,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 1be3770ef09ccc0dc50d12a660b84bc3a7514edf..5c66c112ee28556059c9148acbf57ca3df9f6f20 100644 (file)
@@ -3,73 +3,77 @@
 glcells \- growing cells graphics hack
 .SH SYNOPSIS
 .B glcells
-[\-display \fIhost:display.screen\fP] [\-window] [\-root] [\-install]
-[\-visual \fIvisual\fP]
-[\-delay \fInum\fP] [\-pause \fInum\fP] [\-maxcells \fInum\fP]
-[\-radius \fInum\fP] [\-seeds \fInum\fP] [\-quality \fInum\fP]
-[\-minfood \fInum\fP] [\-maxfood \fInum\fP] [\-divideage \fInum\fP]
-[\-mindist \fInum\fP]
-[\-keepold]
-[\-wireframe]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-install]
+[\-\-visual \fIvisual\fP]
+[\-\-delay \fInum\fP] [\-\-pause \fInum\fP] [\-\-maxcells \fInum\fP]
+[\-\-radius \fInum\fP] [\-\-seeds \fInum\fP] [\-\-quality \fInum\fP]
+[\-\-minfood \fInum\fP] [\-\-maxfood \fInum\fP] [\-\-divideage \fInum\fP]
+[\-\-mindist \fInum\fP]
+[\-\-keepold]
+[\-\-wireframe]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIglcells\fP program draws cells that divide exponentially, eat and eventually die.
 .SH OPTIONS
 .I glcells
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-install
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP\fP
+.B \-\-visual \fIvisual\fP\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-pause \fInum\fP\fP
+.B \-\-pause \fInum\fP\fP
 Specifies the pause at the end of the animation (all cells dead or maximum amount of cells reached). Unit is in frames, default 20.
 .TP 8
-.B \-maxcells \fInum\fP\fP
+.B \-\-maxcells \fInum\fP\fP
 Specifies the maximum number of cells on screen (dead cells also count, even if invisible). Default is 800.
 .TP 8
-.B \-radius \fInum\fP\fP
+.B \-\-radius \fInum\fP\fP
 Specifies the radius of the cells. Default is 40.
 .TP 8
-.B \-seeds \fInum\fP\fP
+.B \-\-seeds \fInum\fP\fP
 Specifies the number of cells when animation starts. Default is 1.
 .TP 8
-.B \-quality \fInum\fP\fP
+.B \-\-quality \fInum\fP\fP
 Specifies subdivision quality of the spheres used to draw the cells [0...5]. Default is 3.
 .TP 8
-.B \-minfood \fInum\fP\fP
+.B \-\-minfood \fInum\fP\fP
 Food is ditributed randomly on the screen (Yes, the cells need to eat). This parameter specifies the
 minimum amount of food per pixel. Default is 5.
 .TP 8
-.B \-maxfood \fInum\fP\fP
+.B \-\-maxfood \fInum\fP\fP
 Food is ditributed randomly on the screen (Yes, the cells need to eat). This parameter specifies the
 maximum amount of food per pixel. Default is 20.
 .TP 8
-.B \-divideage \fInum\fP\fP
+.B \-\-divideage \fInum\fP\fP
 Specifies the minimum age in frames a cell needs to have before being able to divide. Default is 20
 .TP 8
-.B \-mindist \fInum\fP\fP
+.B \-\-mindist \fInum\fP\fP
 Specifies the minimum distance between cells. Default 1.4
 .TP 8
-.B \-delay \fInum\fP
+.B \-\-delay \fInum\fP
 How long to pause between frames.  Default is 20000, or 0.02 second.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .TP 8
-.B \-wireframe
+.B \-\-wireframe
 Draw wireframe only.
 .TP 8
-.B \-keepold
+.B \-\-keepold
 Dead cells stay on screen.
 .SH ENVIRONMENT
 .PP
@@ -80,6 +84,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 726e38f331c6430c49e8c8a4d384ae8c732c7f56..ff57b6fb9f9c38c4132f2948ff2eeca6947d2b75 100644 (file)
@@ -3,10 +3,11 @@
 gleidescope \- a tiled OpenGL kaleidescope
 .SH SYNOPSIS
 .B gleidescope
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
 [-delay \fInumber\fP]
 [-move]
 [-rotate]
@@ -19,38 +20,41 @@ gleidescope \- a tiled OpenGL kaleidescope
 A tiled kaleidescope using OpenGL.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 20000 (0.02 seconds.).
 .TP 8
-.B \-move
+.B \-\-move
 Move the camera.
 .TP 8
-.B \-rotate
+.B \-\-rotate
 Rotate the camera.
 .TP 8
-.B \-zoom
+.B \-\-zoom
 Zoom the camera in and out.
 .TP 8
-.B \-image \fIfile\fP
+.B \-\-image \fIfile\fP
 The texture map to use at the end of the kaleidescope.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .TP 8
-.B \-size \fInumber\fP
+.B \-\-size \fInumber\fP
 The size of the hexagons being displayed [1(small)-10(large)]
 .TP 8
-.B \-duration \fInumber\fP
+.B \-\-duration \fInumber\fP
 The time in seconds before another image is chosen.
 .TP 8
 .SH ENVIRONMENT
@@ -62,6 +66,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index a0d18c7dbbbfa8c0cf5c72eae83848e439d3734c..ca42a1b05a893fd6e4e89b81b78be4520474cbc1 100644 (file)
@@ -3,18 +3,19 @@
 glforestfire \- draws a GL animation of sprinkling fire-like 3D triangles
 .SH SYNOPSIS
 .B glforestfire
-[\-display \fIhost:display.screen\fP] [\-window] [\-root]
-[\-visual \fIvisual\fP] [\-delay \fImicroseconds\fP]
-[\-count \fInumber_of_particles\fP] 
-[\-trees \fInumber_of_trees\fP] 
-[\-size \fIviewport_size\fP] 
-[\-texture] [\-no-texture]
-[\-shadows] [\-no-shadows]
-[\-fog] [\-no-fog]
-[\-wireframe] [\-no-wireframe]
-[\-wander] [\-no-wander]
-[\-trackmouse] [\-no-trackmouse]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-visual \fIvisual\fP] [\-\-delay \fImicroseconds\fP]
+[\-\-count \fInumber_of_particles\fP] 
+[\-\-trees \fInumber_of_trees\fP] 
+[\-\-size \fIviewport_size\fP] 
+[\-\-texture] [\-\-no-texture]
+[\-\-shadows] [\-\-no-shadows]
+[\-\-fog] [\-\-no-fog]
+[\-\-wireframe] [\-\-no-wireframe]
+[\-\-wander] [\-\-no-wander]
+[\-\-trackmouse] [\-\-no-trackmouse]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIglforestfire\fP program draws an animation of sprinkling fire-like 3D triangles in
 a landscape filled with trees.
@@ -22,67 +23,70 @@ a landscape filled with trees.
 .I glforestfire
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-install
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP\fP
+.B \-\-visual \fIvisual\fP\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .TP 8
-.B \-trees \fInumber_of_trees\fP\fP
+.B \-\-trees \fInumber_of_trees\fP\fP
 Specify how much trees are drawn in the landscape. 
 .TP 8
-.B \-count \fInumber_of_particles\fP\fP
+.B \-\-count \fInumber_of_particles\fP\fP
 Specify how much fire particles are drawn. A very special case is 0
 wich means that you get
 .B rain
 !
 .TP 8
-.B \-size \fIviewport_size\fP\fP
+.B \-\-size \fIviewport_size\fP\fP
 Viewport of GL scene is specified size if greater than 32 and less than screensize. Default value is 0, meaning full screensize.
 .TP 8
-.B \-texture
+.B \-\-texture
 Show a textured ground and the trees. This is the default.
 .TP 8
-.B \-no\-texture
+.B \-\-no\-texture
 Disables texturing the landscape. This implies that no trees are drawn.
 .TP 8
-.B \-shadows
+.B \-\-shadows
 Show a shadow for each particle on the ground. This is the default.
 .TP 8
-.B \-no\-shadows
+.B \-\-no\-shadows
 Disables the drawing of the shadows.
 .TP 8
-.B \-fog
+.B \-\-fog
 Show a fog in the distance.
 .TP 8
-.B \-no\-fog
+.B \-\-no\-fog
 Disables the fog. This is the default.
 .TP 8
-.B \-wander
+.B \-\-wander
 Move the observer around the landscape. This is the default.
 .TP 8
-.B \-no\-wander
+.B \-\-no\-wander
 Keep the fire centered on the screen.
 .TP 8
-.B \-trackmouse
+.B \-\-trackmouse
 Let the mouse be a joystick to change the view of the landscape.
 This implies 
-.I \-no\-wander.
+.I \-\-no\-wander.
 .TP 8
-.B \-no\-trackmouse
+.B \-\-no\-trackmouse
 Disables mouse tracking. This is the default.
 .TP 8
-.B \-wire
+.B \-\-wire
 Draw a wireframe rendition of the fire: this will consist only of
 single-pixel lines for the triangles.
 .SH ENVIRONMENT
@@ -94,6 +98,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index a1e517a7b7dc0a66f5e3fa83737b4b66a23e82b1..492359cf843697f7fc744164e0661dcd4df6b9c4 100644 (file)
@@ -3,61 +3,65 @@
 glhanoi \- OpenGL Towers of Hanoi
 .SH SYNOPSIS
 .B glhanoi
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-count \fInumber\fP]
-[\-poles \fInumber\fP]
-[\-speed \fInumber\fP]
-[\-wireframe]
-[\-light]
-[\-texture]
-[\-fog]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-count \fInumber\fP]
+[\-\-poles \fInumber\fP]
+[\-\-speed \fInumber\fP]
+[\-\-wireframe]
+[\-\-light]
+[\-\-texture]
+[\-\-fog]
+[\-\-fps]
 .SH DESCRIPTION
 Implementation of Towers of Hanoi in OpenGL
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 30000 (0.03 seconds.).
 .TP 8
-.B \-count \fInumber\fP
+.B \-\-count \fInumber\fP
 Number of disks.  Default: 7.
 .TP 8
-.B \-poles \fInumber\fP
+.B \-\-poles \fInumber\fP
 Number of poles.  Default: random from 3 to disks+1.
 .TP 8
-.B \-speed \fInumber\fP
+.B \-\-speed \fInumber\fP
 Speed multiplier (for smallest disks).  Default: 1.
 .TP 8
-.B \-trails \fInumber\fP
+.B \-\-trails \fInumber\fP
 Length of disk trails, in seconds.  Default: 2.
 .TP 8
-.B \-wireframe | \-no-wireframe
+.B \-\-wireframe | \-\-no-wireframe
 Render in wireframe instead of solid.
 .TP 8
-.B \-fog | \-no-fog
+.B \-\-fog | \-\-no-fog
 Render in fog.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .TP 8
-.B \-light | -no-light
+.B \-\-light | -no-light
 Whether the scene is lit.
 .TP 8
-.B \-texture | \-no-texture
+.B \-\-texture | \-\-no-texture
 Render with textures instead of solid.
 .SH ENVIRONMENT
 .PP
@@ -68,6 +72,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 84439632191a35dbee63130f6124a6bf88b8f642..6ae1f741944c13e4fa61ddc22bb80f925233fc2f 100644 (file)
@@ -3,59 +3,63 @@
 glknots \- generates some twisting 3d knot patterns
 .SH SYNOPSIS
 .B glknots
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-speed \fIfloat\fP]
-[\-segments \fIint\fP]
-[\-thickness \fIfloat\fP]
-[\-duration \fIseconds\fP]
-[\-no-wander]
-[\-spin \fIXYZ\fP]
-[\-wireframe]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-speed \fIfloat\fP]
+[\-\-segments \fIint\fP]
+[\-\-thickness \fIfloat\fP]
+[\-\-duration \fIseconds\fP]
+[\-\-no-wander]
+[\-\-spin \fIXYZ\fP]
+[\-\-wireframe]
+[\-\-fps]
 .SH DESCRIPTION
 Generates some twisting 3d knot patterns.  Spins 'em around.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 30000 (0.03 seconds.).
 .TP 8
-.B \-speed \fInumber\fP
+.B \-\-speed \fInumber\fP
 Larger numbers mean run faster.  Default: 1.0.
 .TP 8
-.B \-segments \fInumber\fP
+.B \-\-segments \fInumber\fP
 Number of segments in each path.  Default 800.  Larger numbers make the
 curves smoother, at the expense of a higher polygon count.
 .TP 8
-.B \-thickness \fIfloat\fP
+.B \-\-thickness \fIfloat\fP
 How thick the tubes should be.  Default 0.3.
 .TP 8
-.B \-duration \fIseconds\fP
+.B \-\-duration \fIseconds\fP
 How long to leave each knot up.  Default 8 seconds.
 .TP 8
-.B \-wander | \-no-wander
+.B \-\-wander | \-\-no-wander
 Whether the cubes should wander around the screen.
 .TP 8
-.B \-spin [XYZ] | \-no-spin
+.B \-\-spin [XYZ] | \-\-no-spin
 Which axes, if any, to spin around on.
 .TP 8
-.B \-wireframe | \-no-wireframe
+.B \-\-wireframe | \-\-no-wireframe
 Render in wireframe instead of solid.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .SH ENVIRONMENT
 .PP
@@ -66,6 +70,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 46116f118c98fb48192816295438768202eb3752..9c0780514c54514a7cb879171ddfbb6df718b1ea 100644 (file)
@@ -3,21 +3,22 @@
 glmatrix \- simulates the title sequence effect of the movie
 .SH SYNOPSIS
 .B glmatrix
-[\-display \fIhost:display.screen\fP] [\-window] [\-root] [\-install]
-[\-visual \fIvisual\fP] 
-[\-delay \fIusecs\fP] 
-[\-speed \fIratio\fP]
-[\-density \fIpct\fP]
-[\-no\-fog]
-[\-no\-waves]
-[\-no\-rotate]
-[\-binary]
-[\-hexadecimal]
-[\-dna]
-[\-clock]
-[\-timefmt \fIfmt\fP]
-[\-wireframe]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-install]
+[\-\-visual \fIvisual\fP] 
+[\-\-delay \fIusecs\fP] 
+[\-\-speed \fIratio\fP]
+[\-\-density \fIpct\fP]
+[\-\-no\-fog]
+[\-\-no\-waves]
+[\-\-no\-rotate]
+[\-\-binary]
+[\-\-hexadecimal]
+[\-\-dna]
+[\-\-clock]
+[\-\-timefmt \fIfmt\fP]
+[\-\-wireframe]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIglmatrix\fP program draws the 3D "digital rain" effect, as seen
 in the title sequence of the Wachowski brothers' film, "The Matrix".
@@ -30,66 +31,69 @@ computer monitors actually \fIin\fP the movie.
 .I glmatrix
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-install
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP\fP
+.B \-\-visual \fIvisual\fP\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-delay \fIusecs\fP
+.B \-\-delay \fIusecs\fP
 The delay between frames of the animation, in microseconds: default 30000.
 .TP 8
-.B \-speed \fIratio\fP
+.B \-\-speed \fIratio\fP
 How fast the glyphs should move; default 1.0.  2.0 means twice as fast,
 0.5 means half as fast.
 .TP 8
-.B \-density \fIpercentage\fP
+.B \-\-density \fIpercentage\fP
 The approximate percentage of the screen that should be filled with 
 characters at any given time.  Default 20%.
 .TP 8
-.B \-no\-fog
+.B \-\-no\-fog
 By default, glyphs are dimmer the farther away they are.  This 
 argument disables that.
 .TP 8
-.B \-no\-waves
+.B \-\-no\-waves
 By default, waves of color roll down the columns of glyphs.  This
 argument disables that.
 .TP 8
-.B \-no-rotate\fP
+.B \-\-no-rotate\fP
 By default, the scene slowly tilts and rotates.  This
 argument disables that.
 .TP 8
-.B \-binary\fP
+.B \-\-binary\fP
 Instead of displaying Matrix glyphs, only display ones and zeros.
 .TP 8
-.B \-hexadecimal\fP
+.B \-\-hexadecimal\fP
 Instead of displaying Matrix glyphs, display hexadecimal digits.
 .TP 8
-.B \-dna\fP
+.B \-\-dna\fP
 Instead of displaying Matrix glyphs, display genetic code
 (guanine, adenine, thymine, and cytosine.)
 .TP 8
-.B \-clock\fP
+.B \-\-clock\fP
 Hide a clock displaying the current time somewhere in the glyphs.
 .TP 8
-.B \-timefmt\fP \fIstrftime-string\fP
-How to format the clock when \fI\-clock\fP is specified.
+.B \-\-timefmt\fP \fIstrftime-string\fP
+How to format the clock when \fI\-\-clock\fP is specified.
 Default "\ %l%M%p\ ".
 .TP 8
-.B \-speed \fIratio\fP
+.B \-\-speed \fIratio\fP
 Less than 1 for slower, greater than 1 for faster.  Default 1.
 .TP 8
-.B \-wireframe
+.B \-\-wireframe
 Just draw boxes instead of textured characters.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .SH ENVIRONMENT
 .PP
@@ -100,6 +104,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR xmatrix (MANSUFFIX),
 .BR X (1),
index 26e9d9b7cd801d539bb0382a2ca423db4ce4d0ae..92c6fc840ab2cf65ec2924ecd42f2f5c93404066 100644 (file)
@@ -3,17 +3,18 @@
 glplanet \- rotating 3d texture-mapped planet.
 .SH SYNOPSIS
 .B glplanet
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-image \fIfile\fP]
-[\-image2 \fIfile\fP]
-[\-mode \fIstring\fP]
-[\-resolution \fInumber\fP]
-[\-wireframe]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-image \fIfile\fP]
+[\-\-image2 \fIfile\fP]
+[\-\-mode \fIstring\fP]
+[\-\-resolution \fInumber\fP]
+[\-\-wireframe]
+[\-\-fps]
 .SH DESCRIPTION
 Draws a planet bouncing around in space.  The built-in images are day and
 night maps of the Earth, but you can wrap any Equirectangular-projected
@@ -21,42 +22,45 @@ map onto the sphere, e.g., the planetary textures included
 with \fIssystem.\fP
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 20000 (0.02 seconds.).
 .TP 8
-.B \-image \fIfile\fP
+.B \-\-image \fIfile\fP
 The day texture map to wrap around the planet's surface.
 .TP 8
-.B \-image2 \fIfile\fP
+.B \-\-image2 \fIfile\fP
 The night texture map to wrap around the planet's surface.
 The two will be blended together at the dusk terminator.
 .TP 8
-.B \-mode globe
+.B \-\-mode globe
 All is right with the world.
 .TP 8
-.B \-mode equirectangular
+.B \-\-mode equirectangular
 Wat.
 .TP 8
-.B \-mode mercator
+.B \-\-mode mercator
 Good day, Sir. I said GOOD DAY.
 .TP 8
-.B \-resolution
+.B \-\-resolution
 The resolution of the planetary mesh. Default: 128.
 .TP 8
-.B \-wireframe
+.B \-\-wireframe
 Render in wireframe instead of solid.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .SH ENVIRONMENT
 .PP
@@ -67,6 +71,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index a3d94e2cd6bfdfb11fb05847793508a5237e7e66..d1421c36225df4e0755996302cae1d04cf79f31b 100644 (file)
@@ -3,28 +3,29 @@
 glschool \- a 3D schooling simulation
 .SH SYNOPSIS
 .B glschool
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-wireframe]
-[\-fps]
-[\-delay \fInumber\fP]
-[\-nfish \fInumber\fP]
-[\-maxvel \fInumber\fP]
-[\-minvel \fInumber\fP]
-[\-acclimit \fInumber\fP]
-[\-avoidfact \fInumber\fP]
-[\-matchfact \fInumber\fP]
-[\-centerfact \fInumber\fP]
-[\-targetfact \fInumber\fP]
-[\-minradius \fInumber\fP]
-[\-momentum \fInumber\fP]
-[\-distexp \fInumber\fP]
-[\-goalchgf \fInumber\fP]
-[\-fog]
-[\-drawgoal]
-[\-drawbbox]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-wireframe]
+[\-\-fps]
+[\-\-delay \fInumber\fP]
+[\-\-nfish \fInumber\fP]
+[\-\-maxvel \fInumber\fP]
+[\-\-minvel \fInumber\fP]
+[\-\-acclimit \fInumber\fP]
+[\-\-avoidfact \fInumber\fP]
+[\-\-matchfact \fInumber\fP]
+[\-\-centerfact \fInumber\fP]
+[\-\-targetfact \fInumber\fP]
+[\-\-minradius \fInumber\fP]
+[\-\-momentum \fInumber\fP]
+[\-\-distexp \fInumber\fP]
+[\-\-goalchgf \fInumber\fP]
+[\-\-fog]
+[\-\-drawgoal]
+[\-\-drawbbox]
 .SH DESCRIPTION
 Uses the Craig Reynolds \fIBoids\fP algorithm to simulate a 3D school of
 fish.  This is a lightly modified version of the algorithm that supports
@@ -39,68 +40,71 @@ It looks best with the highest number of fish that will give you an FPS of >
 25 or so.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 20000 (0.020 seconds.).
 .TP 8
-.B \-wireframe | \-no-wireframe
+.B \-\-wireframe | \-\-no-wireframe
 Render in wireframe instead of solid.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .TP 8
-.B \-fog | \-no-fog
+.B \-\-fog | \-\-no-fog
  Whether to show foggy (cloudy) water.
 .TP 8
-.B \-drawgoal | \-no-drawgoal
+.B \-\-drawgoal | \-\-no-drawgoal
  Whether to show the school's attraction goal.
 .TP 8
-.B \-drawbbox | \-no-drawbbox
+.B \-\-drawbbox | \-\-no-drawbbox
  Whether to show the bounding box.
 .TP 8
-.B \-fog | \-no-fog
+.B \-\-fog | \-\-no-fog
  Whether to show foggy (cloudy) water.
 .TP 8
-.B \-nfish \fInumber\fP
+.B \-\-nfish \fInumber\fP
 Number of fish.  Defaults to 100
 .TP 8
-.B \-acclimit \fInumber\fP
+.B \-\-acclimit \fInumber\fP
 Acceleration limit.  Defaults to 8.0
 .TP 8
-.B \-minvel \fInumber\fP
+.B \-\-minvel \fInumber\fP
 Minimum velocity.  Defaults to 1.0
 .TP 8
-.B \-maxvel \fInumber\fP
+.B \-\-maxvel \fInumber\fP
 Minimum velocity.  Defaults to 7.0
 .TP 8
-.B \-goalchgf \fInumber\fP
+.B \-\-goalchgf \fInumber\fP
 Goal change frequency.  Defaults to 50 (frames)
 .TP 8
-.B \-avoidfact \fInumber\fP
+.B \-\-avoidfact \fInumber\fP
 Avoidance acceleration factor.  Defaults to 1.5
 .TP 8
-.B \-matchfact \fInumber\fP
+.B \-\-matchfact \fInumber\fP
 Match avg velocity acceleration factor.  Defaults to 0.15
 .TP 8
-.B \-centerfact \fInumber\fP
+.B \-\-centerfact \fInumber\fP
 School centering acceleration factor.  Defaults to 0.1
 .TP 8
-.B \-targetfact \fInumber\fP
+.B \-\-targetfact \fInumber\fP
 Target attraction acceleration factor.  Defaults to 80
 .TP 8
-.B \-distexp \fInumber\fP
+.B \-\-distexp \fInumber\fP
 Distance weighting exponent.  Defaults to 2.2
 .TP 8
-.B \-momentum \fInumber\fP
+.B \-\-momentum \fInumber\fP
 Momentum.  Defaults to 0.9
 .SH ENVIRONMENT
 .PP
@@ -111,6 +115,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1),
index 98f2b9fd69c53203d3c41efb88ed885eb86400fc..d1ab1abc2b01b7681fff2155e712bc60d0c37fc3 100644 (file)
@@ -3,21 +3,22 @@
 glslideshow \- slideshow of images using smooth zooming and fades
 .SH SYNOPSIS
 .B glslideshow
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-duration \fIseconds\fP]
-[\-zoom \fIpercent\fP]
-[\-pan \fIseconds\fP]
-[\-fade \fIseconds\fP]
-[\-titles]
-[\-letterbox | \-clip]
-[\-delay \fIusecs\fP]
-[\-fps]
-[\-debug]
-[\-wireframe]
-[\-cutoff \fIint\fP]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-duration \fIseconds\fP]
+[\-\-zoom \fIpercent\fP]
+[\-\-pan \fIseconds\fP]
+[\-\-fade \fIseconds\fP]
+[\-\-titles]
+[\-\-letterbox | \-\-clip]
+[\-\-delay \fIusecs\fP]
+[\-\-fps]
+[\-\-debug]
+[\-\-wireframe]
+[\-\-cutoff \fIint\fP]
 .SH DESCRIPTION
 Loads a random sequence of images and smoothly scans and zooms around
 in each, fading from pan to pan.  
@@ -30,63 +31,66 @@ To specify the directory that images are loaded from, run
 and click on the "Advanced" tab.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-duration \fIseconds\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-duration \fIseconds\fP
 How long each image will be displayed before loading a new one.
 Default 30 seconds.
 .TP 8
-.B \-pan \fIseconds\fP
+.B \-\-pan \fIseconds\fP
 How long each pan-and-zoom should last.  Default 6 seconds.
 
-With the default settings of \fI\-pan 6 \-duration 30\fP, each image
+With the default settings of \fI\-\-pan 6 \-\-duration 30\fP, each image
 will be displayed five times (30/6), and then a new image will be loaded.
-If you want a new image to be loaded at each fade, then set \fI\-pan\fP
-and \fI\-duration\fP to the same value.
+If you want a new image to be loaded at each fade, then set \fI\-\-pan\fP
+and \fI\-\-duration\fP to the same value.
 .TP 8
-.B \-fade \fIseconds\fP
+.B \-\-fade \fIseconds\fP
 How long each cross-fade between images should last.  Default 2 seconds.
 If set to 0, then no cross-fading will be done (all transitions
 will be jump-cuts.)
 
-Note that fades are included in the pan time, so \fI\-fade\fP cannot
-be larger than \fI\-pan\fP.
+Note that fades are included in the pan time, so \fI\-\-fade\fP cannot
+be larger than \fI\-\-pan\fP.
 .TP 8
-.B \-zoom \fInumber\fP
+.B \-\-zoom \fInumber\fP
 Amount to zoom and pan as a percentage. Default: 75, meaning that
 75% or more of each image will always be visible.  If set to 100%,
 then the images will always fill the screen, and no panning or 
 zooming will occur.  (Images will still smoothly fade from one
-to another if \fI\-fade\fP is non-zero.)
+to another if \fI\-\-fade\fP is non-zero.)
 .TP 8
-.B \-titles
+.B \-\-titles
 Whether to print the file name of the current image in the upper left corner.
 .TP 8
-.B \-letterbox
+.B \-\-letterbox
 In "letterbox" mode, when an image is not the same aspect ratio as the screen,
 black bars will appear at the top/bottom or left/right so that the whole
 image can be displayed.  This is the default.
 .TP 8
-.B \-clip
+.B \-\-clip
 In "clip" mode, when an image is not the same aspect ratio as the screen,
 we will zoom in further until the image takes up the whole screen.
-This is the opposite of \fI\-letterbox\fP.
+This is the opposite of \fI\-\-letterbox\fP.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 20000 (0.02 seconds.).
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .TP 8
-.B \-cutoff \fInumber\fP
+.B \-\-cutoff \fInumber\fP
 If the frame rate we are achieving is lower than this, then panning,
 fading, and zooming will be disabled.  Default 5 FPS.
 
@@ -94,10 +98,10 @@ The idea here is that if your machine can't maintain a decent frame
 rate, then it must not have fast 3D hardware, so we might as well
 behave in a simpler manner.  Set this to 0 to disable this check.
 .TP 8
-.B \-debug
+.B \-\-debug
 Prints debugging info to stderr.
 .TP 8
-.B \-wireframe
+.B \-\-wireframe
 Another debug mode.
 .SH ENVIRONMENT
 .PP
@@ -108,6 +112,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver\-settings (1),
index 609aadecda3ea7d3244870893f22e7b5b706e76e..0f70e74ed6707a20b6d55237509648deaf2b775c 100644 (file)
@@ -3,14 +3,15 @@
 glsnake \- OpenGL enhanced Rubik's Snake cyclewaster.
 .SH SYNOPSIS
 .B glsnake
-[\-display \fIhost:display.screen\fP] [\-window] [\-root]
-[\-visual \fIvisual\fP] [\-delay \fImicroseconds\fP] [\-fps]
-[\-wireframe] [\-altcolour]
-[\-angvel \fIangular\fP]
-[\-explode \fIdistance\fP]
-[\-statictime \fImilliseconds\fP]
-[\-yangvel \fIangle\fP]
-[\-zangvel \fIangle\fP]
+[\-\-display \fIhost:display.screen\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-visual \fIvisual\fP] [\-\-delay \fImicroseconds\fP] [\-\-fps]
+[\-\-wireframe] [\-\-altcolour]
+[\-\-angvel \fIangular\fP]
+[\-\-explode \fIdistance\fP]
+[\-\-statictime \fImilliseconds\fP]
+[\-\-yangvel \fIangle\fP]
+[\-\-zangvel \fIangle\fP]
 .SH DESCRIPTION
 .PP
 .B glsnake
@@ -19,26 +20,29 @@ is an imitation of Rubiks\' Snake, using OpenGL.
 .I glsnake
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-install
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP\fP
+.B \-\-visual \fIvisual\fP\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .TP 8
-.B \-wireframe
+.B \-\-wireframe
 Display the snake in wireframe mode, rather than the default solid mode.
 .TP 8
-.B \-altcolour
+.B \-\-altcolour
 Use the alternate colour scheme for the snake.  Shape identification using
 colour will be disabled.
 .TP 8
@@ -48,13 +52,13 @@ Change the speed at which the snake morphs to a new shape.
 .B -explode \fIdistance\fP
 Change the distance between the nodes of a snake.
 .TP 8
-.B \-statictime \fImilliseconds\fP
+.B \-\-statictime \fImilliseconds\fP
 Change the time between morphs.
 .TP 8
-.B \-yangvel \fIangle\fP
+.B \-\-yangvel \fIangle\fP
 Change the angle of rotation around the Y axis per frame.
 .TP 8
-.B \-zangvel \fIangle\fP
+.B \-\-zangvel \fIangle\fP
 Change the angle of rotation around the Z axis per frame.
 .SH ENVIRONMENT
 .PP
@@ -65,6 +69,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1),
index 9d3f4629e50fe1e48f380b60319fd11e7aef1ea4..9b5d23bb871a1b5c2f7792ce2f0026a2f0744e64 100644 (file)
@@ -3,16 +3,17 @@
 gltext \- draws text spinning around in 3D
 .SH SYNOPSIS
 .B gltext
-[\-display \fIhost:display.screen\fP] [\-window] [\-root]
-[\-visual \fIvisual\fP] [\-delay \fImicroseconds\fP]
-[\-text \fIstring\fP]
-[\-program \fIcommand\fP]
-[\-wander] [\-no-wander]
-[\-spin \fIaxes\fP]
-[\-no-spin]
-[\-front] [\-no\-front]
-[\-wireframe]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-visual \fIvisual\fP] [\-\-delay \fImicroseconds\fP]
+[\-\-text \fIstring\fP]
+[\-\-program \fIcommand\fP]
+[\-\-wander] [\-\-no-wander]
+[\-\-spin \fIaxes\fP]
+[\-\-no-spin]
+[\-\-front] [\-\-no\-front]
+[\-\-wireframe]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIgltext\fP program draws some text spinning around in 3D, using
 a font that appears to be made of solid tubes.  
@@ -20,20 +21,23 @@ a font that appears to be made of solid tubes.
 .I gltext
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-install
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP\fP
+.B \-\-visual \fIvisual\fP\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-text \fIstring\fP
+.B \-\-text \fIstring\fP
 The text to display.  This may contain newlines, but it shouldn't be
 very long.  The default is to display the machine name and OS version.
 
@@ -54,9 +58,9 @@ See the man page for
 .BR strftime (3)
 for more details.
 .TP 8
-.B \-program \fIcommand\fP
+.B \-\-program \fIcommand\fP
 The given program is run, and its output is displayed.
-If specified, this overrides \fI\-text\fP.
+If specified, this overrides \fI\-\-text\fP.
 The output of this program will be repeatedely displayed, with new
 pages of text shifting in every few seconds.  Lines should be relatively
 short.  You might try:
@@ -66,7 +70,7 @@ short.  You might try:
 .sp
 .fi
 .TP 8
-.B \-maxlines
+.B \-\-maxlines
 Set the number of lines of text to display.  By default, 
 .I gltext
 will print 8 lines of text at a time.  Use this option to increase or
@@ -76,44 +80,44 @@ is designed to work with a fairly small amount of text, so setting this
 value too high might result in slow performance or strange behaviour
 stemming from buffer overflows.  Increase at your own risk.
 .TP 8
-.B \-mono
+.B \-\-mono
 Display the text in a monospace font.  Default is a variable-width font.
 .TP 8
-.B \-no\-mono
+.B \-\-no\-mono
 Display the text in a variable-width font.  This is the default.  
 .TP 8
-.B \-wander
+.B \-\-wander
 Move the text around the screen.  This is the default.
 .TP 8
-.B \-no\-wander
+.B \-\-no\-wander
 Keep the text centered on the screen.
 .TP 8
-.B \-wander\-speed
+.B \-\-wander\-speed
 Sets the speed at which the text wanders around.  Default is 0.02.  
 .TP 8
-.B \-spin
+.B \-\-spin
 Which axes around which the text should spin.  The default is "XYZ",
-meaning rotate it freely in space.  "\fB\-spin Z\fP" would rotate the
+meaning rotate it freely in space.  "\fB\-\-spin Z\fP" would rotate the
 text in the plane of the screen while not rotating it into or out
 of the screen; etc.
 .TP 8
-.B \-no\-spin
-Don't spin the text at all: the same as \fB\-spin ""\fP.
+.B \-\-no\-spin
+Don't spin the text at all: the same as \fB\-\-spin ""\fP.
 .TP 8
-.B \-front
+.B \-\-front
 When spinning, never spin all the way around or upside down:
 always face mostly forward so that the text is easily readable.
 .TP 8
-.B \-no\-front
+.B \-\-no\-front
 Allow spins to go all the way around or upside down.  This is the default.
 .TP 8
-.B \-wireframe
+.B \-\-wireframe
 Render in wireframe instead of solid.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .TP 8
-.B \-scale
+.B \-\-scale
 Sets the scale at which the text is rendered.  Bigger values will result
 in bigger text; smaller values will result in smaller text.  The default
 value is 0.01.  
@@ -126,6 +130,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 8837072565b3dafd6dd5b2e5f36204a144240fe5..9a78e2115ed8bf06cd328b887455c9c2b31f6b27 100644 (file)
@@ -3,42 +3,46 @@
 gravitywell \- spaaaaace.
 .SH SYNOPSIS
 .B gravitywell
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-speed \fInumber\fP]
-[\-resolution \fInumber\fP]
-[\-grid-size \fInumber\fP]
-[\-count \fInumber\fP]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-speed \fInumber\fP]
+[\-\-resolution \fInumber\fP]
+[\-\-grid-size \fInumber\fP]
+[\-\-count \fInumber\fP]
 .SH DESCRIPTION
 Massive objects distort space in a two dimensional universe.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 30000 (0.03 seconds).
 .TP 8
-.B \-speed \fInumber\fP
+.B \-\-speed \fInumber\fP
 Animation speed. 2.0 means twice as fast, 0.5 means half as fast.
 .TP 8
-.B \-resolution \fInumber\fP
+.B \-\-resolution \fInumber\fP
 Density of the underlying universe. Default: 1.0.
 .TP 8
-.B \-grid-size \fInumber\fP
+.B \-\-grid-size \fInumber\fP
 Grid Size. Smaller values are more dense. Default: 1.0.
 .TP 8
-.B \-count \fInumber\fP
+.B \-\-count \fInumber\fP
 Number of stars.  Default: 15.
 .SH ENVIRONMENT
 .PP
@@ -49,6 +53,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 494fb178d99f14b1afd2ca13e7d60367ffe02df4..be652f36e6041e91e1dd8c44cec3b46c437ab533 100644 (file)
@@ -3,54 +3,58 @@
 handsy \- some hands.
 .SH SYNOPSIS
 .B handsy
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-speed \fInumber\fP]
-[\-count \fInumber\fP]
-[\-no-wander]
-[\-no-spin]
-[\-no-front]
-[\-wireframe]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-speed \fInumber\fP]
+[\-\-count \fInumber\fP]
+[\-\-no-wander]
+[\-\-no-spin]
+[\-\-no-front]
+[\-\-wireframe]
+[\-\-fps]
 .SH DESCRIPTION
 A set of robotic hands communicate non-verbally.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 30000 (0.03 seconds).
 .TP 8
-.B \-speed \fInumber\fP
+.B \-\-speed \fInumber\fP
 Animation speed.  2.0 means twice as fast, 0.5 means half as fast.
 .TP 8
-.B \-count \fInumber\fP
+.B \-\-count \fInumber\fP
 Number of hands.  1 - 50.  Default: 2.
 .TP 8
-.B \-wander | \-no-wander
+.B \-\-wander | \-\-no-wander
 Whether the hands should wander around the screen.
 .TP 8
-.B \-spin | \-no-spin
+.B \-\-spin | \-\-no-spin
 Whether the object should spin.
 .TP 8
-.B \-front | \-no-front
+.B \-\-front | \-\-no-front
 Whether to spin all the way around. Default: no.
 .TP 8
-.B \-wireframe | \-no-wireframe
+.B \-\-wireframe | \-\-no-wireframe
 Render in wireframe instead of solid.
 .TP 8
-.B \-fps | \-no-fps
+.B \-\-fps | \-\-no-fps
 Whether to show a frames-per-second display at the bottom of the screen.
 .SH ENVIRONMENT
 .PP
@@ -61,6 +65,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index bfe4b6fea4d61dd230aab674d0f3eb9d9e48062c..966b8c329d692b03ab999f9fa081bb6a06f149a3 100644 (file)
@@ -3,54 +3,58 @@
 headroom \- a twitchy head.
 .SH SYNOPSIS
 .B headroom
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-speed \fInumber\fP]
-[\-spin \fI[XYZ]\fP]
-[\-no-wander]
-[\-no-mask]
-[\-wireframe]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-speed \fInumber\fP]
+[\-\-spin \fI[XYZ]\fP]
+[\-\-no-wander]
+[\-\-no-mask]
+[\-\-wireframe]
+[\-\-fps]
 .SH DESCRIPTION
 "Back in my day, we used to say 'No future'. Well. This is it."
 -- Blank Reg
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 20000 (0.02 seconds).
 .TP 8
-.B \-speed \fInumber\fP
+.B \-\-speed \fInumber\fP
 Animation speed.  2.0 means twice as fast, 0.5 means half as fast.
 .TP 8
-.B \-spin 0
+.B \-\-spin 0
 Don't rotate.
 .TP 8
-.B \-spin \fI[XYZ]\fP
+.B \-\-spin \fI[XYZ]\fP
 Around which axes should the object spin?
 .TP 8
-.B \-wander | \-no-wander
+.B \-\-wander | \-\-no-wander
 Whether the object should wander around the screen.
 .TP 8
-.B \-mask | \-no-mask
+.B \-\-mask | \-\-no-mask
 Mask Headroom.
 .TP 8
-.B \-wireframe | \-no-wireframe
+.B \-\-wireframe | \-\-no-wireframe
 Render in wireframe instead of solid.
 .TP 8
-.B \-fps | \-no-fps
+.B \-\-fps | \-\-no-fps
 Whether to show a frames-per-second display at the bottom of the screen.
 .SH ENVIRONMENT
 .PP
@@ -61,6 +65,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index b72f504dfa0e5a7d1ec13408dd4921a7c7655540..268ebd5bccde8b495b69bede307b33a54e40fc44 100644 (file)
@@ -3,55 +3,59 @@
 hexstrut \- a grid of hexagons composed of rotating Y-shaped struts.
 .SH SYNOPSIS
 .B hexstrut
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-speed \fInumber\fP]
-[\-count \fInumber\fP]
-[\-thickness \fInumber\fP]
-[\-no-wander]
-[\-no-spin]
-[\-wireframe]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-speed \fInumber\fP]
+[\-\-count \fInumber\fP]
+[\-\-thickness \fInumber\fP]
+[\-\-no-wander]
+[\-\-no-spin]
+[\-\-wireframe]
+[\-\-fps]
 .SH DESCRIPTION
 A grid of hexagons composed of rotating Y-shaped struts.
 Waves of rotation and color changes randomly propagate across the plane.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 30000 (0.03 seconds).
 .TP 8
-.B \-speed \fInumber\fP
+.B \-\-speed \fInumber\fP
 Animation speed.  2.0 means twice as fast, 0.5 means half as fast.
 .TP 8
-.B \-count \fInumber\fP
+.B \-\-count \fInumber\fP
 Approximate number of hexagons on the screen, horizontally.  Default: 20.
 .TP 8
-.B \-thickness \fInumber\fP
+.B \-\-thickness \fInumber\fP
 Relative thickness of the struts.  0.01 - 1.7.  Default: 0.2.
 .TP 8
-.B \-wander | \-no-wander
+.B \-\-wander | \-\-no-wander
 Whether the grid should wander around the screen.
 .TP 8
-.B \-spin | \-no-spin
+.B \-\-spin | \-\-no-spin
 Whether the grid should spin.
 .TP 8
-.B \-wireframe | \-no-wireframe
+.B \-\-wireframe | \-\-no-wireframe
 Render in wireframe instead of solid.
 .TP 8
-.B \-fps | \-no-fps
+.B \-\-fps | \-\-no-fps
 Whether to show a frames-per-second display at the bottom of the screen.
 .SH ENVIRONMENT
 .PP
@@ -62,6 +66,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 563016afabb5d5763f55645ce0708c649dff376e..eb08e40d7405918dc09a0a186069ebc69aa77690 100644 (file)
@@ -3,23 +3,24 @@
 hilbert \- 3D Hilbert fractal.
 .SH SYNOPSIS
 .B hilbert
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-speed \fIratio\fP]
-[\-depth \fInumber\fP]
-[\-spin]
-[\-wander]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-speed \fIratio\fP]
+[\-\-depth \fInumber\fP]
+[\-\-spin]
+[\-\-wander]
 [\-2d]
 [\-3d]
-[\-closed]
-[\-open]
-[\-max\-depth \fInumber\fP]
-[\-thickness \fIratio\fP]
-[\-wireframe]
-[\-fps]
+[\-\-closed]
+[\-\-open]
+[\-\-max\-depth \fInumber\fP]
+[\-\-thickness \fIratio\fP]
+[\-\-wireframe]
+[\-\-fps]
 .SH DESCRIPTION
 This draws the recursive Hilbert space-filling curve, in both 2D and
 3D variants.  It incrementally animates the growth and recursion to
@@ -33,50 +34,53 @@ The converse is often, but not always, true.  The coloration
 reflects this.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 30000 (0.03 seconds.).
 .TP 8
-.B \-speed \fInumber\fP
+.B \-\-speed \fInumber\fP
 How fast the animation should run.
 Less than 1 for slower, greater than 1 for faster.
 .TP 8
-.B \-max\-depth \fInumber\fP
+.B \-\-max\-depth \fInumber\fP
 Max depth to descend.  Default: 5, which peaks at around half a
 million polygons.
 .TP 8
-.B \-spin
-.B \-no\-spin
+.B \-\-spin
+.B \-\-no\-spin
 Whether to rotate the object.  Default: true.
 .TP 8
-.B \-wander
-.B \-no\-wander
+.B \-\-wander
+.B \-\-no\-wander
 Whether to wander the object around on the screen.  Default: false;
 .TP 8
 .B \-2d
 .B \-3d
 Whether to draw the 2D or 3D variant. Default: random.
 .TP 8
-.B \-closed
-.B \-open
+.B \-\-closed
+.B \-\-open
 Whether to draw the open or closed-path variant. Default: random.
 .TP 8
-.B \-thickness \fIratio\fP
+.B \-\-thickness \fIratio\fP
 How thick the lines should be.  Default: 0.25.
 .TP 8
-.B \-wireframe
+.B \-\-wireframe
 Render in wireframe instead of solid.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .SH ENVIRONMENT
 .PP
@@ -87,6 +91,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index b2e06fae3ebd79d456e6e5dbaa95b9e407d6fa12..15fa690a322b75df969111681eaac0d83374d255 100644 (file)
@@ -3,23 +3,24 @@
 hydrostat \- Wiggly squid or jellyfish with many tentacles.
 .SH SYNOPSIS
 .B hydrostat
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-speed \fInumber\fP]
-[\-count \fInumber\fP]
-[\-head-radius \fInumber\fP]
-[\-tentacles \fInumber\fP]
-[\-thickness \fInumber\fP]
-[\-length \fInumber\fP]
-[\-gravity \fInumber\fP]
-[\-current \fInumber\fP]
-[\-friction \fInumber\fP]
-[\-no-pulse]
-[\-wireframe]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-speed \fInumber\fP]
+[\-\-count \fInumber\fP]
+[\-\-head-radius \fInumber\fP]
+[\-\-tentacles \fInumber\fP]
+[\-\-thickness \fInumber\fP]
+[\-\-length \fInumber\fP]
+[\-\-gravity \fInumber\fP]
+[\-\-current \fInumber\fP]
+[\-\-friction \fInumber\fP]
+[\-\-no-pulse]
+[\-\-wireframe]
+[\-\-fps]
 .SH DESCRIPTION
 Wiggly squid or jellyfish with many tentacles.  A muscular hydrostat
 is a biological structure used to move its host about, consisting of
@@ -28,53 +29,56 @@ without fluid in a separate compartment, as in a hydrostatic
 skeleton.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 20000 (0.02 seconds).
 .TP 8
-.B \-speed \fInumber\fP
+.B \-\-speed \fInumber\fP
 Animation speed.  2.0 means twice as fast, 0.5 means half as fast.
 .TP 8
-.B \-count \fInumber\fP
+.B \-\-count \fInumber\fP
 Number of squid.  1 - 100.  Default: 10.
 .TP 8
-.B \-head-radius \fInumber\fP
+.B \-\-head-radius \fInumber\fP
 Head size.  10 - 100.  Default: 60.
 .TP 8
-.B \-tentacles \fInumber\fP
+.B \-\-tentacles \fInumber\fP
 Number of tentacles.  3 - 100.  Default: 40.
 .TP 8
-.B \-thickness \fInumber\fP
+.B \-\-thickness \fInumber\fP
 Thickness of tentacles.  3 - 40.  Default: 18.
 .TP 8
-.B \-length \fInumber\fP
+.B \-\-length \fInumber\fP
 Length of tentacles.  10 - 150.  Default: 70.
 .TP 8
-.B \-gravity \fInumber\fP
+.B \-\-gravity \fInumber\fP
 Strength of gravity.  0 - 10.0.  Default: 0.5.
 .TP 8
-.B \-current \fInumber\fP
+.B \-\-current \fInumber\fP
 Strength of current.  0.0 - 10.0.  Default: 0.25.
 .TP 8
-.B \-friction \fInumber\fP
+.B \-\-friction \fInumber\fP
 Coefficient of friction.  0.0 - 0.1.  Default: 0.02.
 .TP 8
-.B \-pulse | \-no-pulse
+.B \-\-pulse | \-\-no-pulse
 Whether the squid should pulse. Default true.
 .TP 8
-.B \-wireframe | \-no-wireframe
+.B \-\-wireframe | \-\-no-wireframe
 Render in wireframe instead of solid.
 .TP 8
-.B \-fps | \-no-fps
+.B \-\-fps | \-\-no-fps
 Whether to show a frames-per-second display at the bottom of the screen.
 .SH ENVIRONMENT
 .PP
@@ -85,6 +89,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index fc6b668df318bc321447dc089197c79e351fa279..5ec02dc15cd6e5c6255b0e7938797862ebe89d14 100644 (file)
@@ -3,33 +3,34 @@
 hypertorus \- Draws a hypertorus that rotates in 4d
 .SH SYNOPSIS
 .B hypertorus
-[\-display \fIhost:display.screen\fP]
-[\-install]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fIusecs\fP]
-[\-fps]
-[\-wireframe]
-[\-surface]
-[\-transparent]
-[\-solid]
-[\-bands]
-[\-spirals-{1,2,4,8,16}]
-[\-onesided]
-[\-twosided]
-[\-colorwheel]
-[\-change-colors]
-[\-perspective-3d]
-[\-orthographic-3d]
-[\-perspective-4d]
-[\-orthographic-4d]
-[\-speed-wx \fIfloat\fP]
-[\-speed-wy \fIfloat\fP]
-[\-speed-wz \fIfloat\fP]
-[\-speed-xy \fIfloat\fP]
-[\-speed-xz \fIfloat\fP]
-[\-speed-yz \fIfloat\fP]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-install]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fIusecs\fP]
+[\-\-fps]
+[\-\-wireframe]
+[\-\-surface]
+[\-\-transparent]
+[\-\-solid]
+[\-\-bands]
+[\-\-spirals-{1,2,4,8,16}]
+[\-\-onesided]
+[\-\-twosided]
+[\-\-colorwheel]
+[\-\-change-colors]
+[\-\-perspective-3d]
+[\-\-orthographic-3d]
+[\-\-perspective-4d]
+[\-\-orthographic-4d]
+[\-\-speed-wx \fIfloat\fP]
+[\-\-speed-wy \fIfloat\fP]
+[\-\-speed-wz \fIfloat\fP]
+[\-\-speed-xy \fIfloat\fP]
+[\-\-speed-xz \fIfloat\fP]
+[\-\-speed-yz \fIfloat\fP]
 .SH DESCRIPTION
 The \fIhypertorus\fP program shows the Clifford torus as it rotates in
 4d.  The Clifford torus is a torus lies on the "surface" of the
@@ -67,60 +68,63 @@ Scientific American Library, 1990.
 .I hypertorus
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-install
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual
 class, or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-delay \fImicroseconds\fP
+.B \-\-delay \fImicroseconds\fP
 How much of a delay should be introduced between steps of the
 animation.  Default 25000, or 1/40th second.
 .PP
 The following three options are mutually exclusive.  They determine
 how the torus is displayed.
 .TP 8
-.B \-wireframe
+.B \-\-wireframe
 Display the torus as a wireframe mesh.
 .TP 8
-.B \-surface
+.B \-\-surface
 Display the torus as a solid surface (default).
 .TP 8
-.B \-transparent
+.B \-\-transparent
 Display the torus as a transparent surface.
 .PP
 The following seven options are mutually exclusive.  They determine the
 appearance of the torus.
 .TP 8
-.B \-solid
+.B \-\-solid
 Display the torus as a solid object.
 .TP 8
-.B \-bands
+.B \-\-bands
 Display the torus as see-through bands (default).
 .TP 8
-.B \-spirals-1, \-spirals-2, \-spirals-4, \-spirals-8, \-spirals-16
+.B \-\-spirals-1, \-\-spirals-2, \-\-spirals-4, \-\-spirals-8, \-\-spirals-16
 Display the torus as see-through spirals with the indicated number of
 spirals.
 .PP
 The following three options are mutually exclusive.  They determine
 how to color the torus.
 .TP 8
-.B \-onesided
+.B \-\-onesided
 Display the torus with a single color.
 .TP 8
-.B \-twosided
+.B \-\-twosided
 Display the torus with two colors: one color on the outside and the
 complementary on the inside.  For static colors, the colors are red
 and green.
 .TP 8
-.B \-colorwheel
+.B \-\-colorwheel
 Display the torus with a fully saturated color wheel (default).  If
 the torus is displayed as see-through bands, each band will be
 displayed with a different color.  Likewise, if the torus is displayed
@@ -129,30 +133,30 @@ as see-through spirals, each spiral will receive a different color.
 The following options determine whether the colors with which the
 torus is displayed are static or are changing dynamically.
 .TP 8
-.B \-change-colors
+.B \-\-change-colors
 Change the colors with which the torus is displayed dynamically.
 .TP 8
-.B \-no-change-colors
+.B \-\-no-change-colors
 Use static colors to display the torus (default).
 .PP
 The following two options are mutually exclusive.  They determine how
 the torus is projected from 3d to 2d (i.e., to the screen).
 .TP 8
-.B \-perspective-3d
+.B \-\-perspective-3d
 Project the torus from 3d to 2d using a perspective projection
 (default).
 .TP 8
-.B \-orthographic-3d
+.B \-\-orthographic-3d
 Project the torus from 3d to 2d using an orthographic projection.
 .PP
 The following two options are mutually exclusive.  They determine how
 the torus is projected from 4d to 3d.
 .TP 8
-.B \-perspective-4d
+.B \-\-perspective-4d
 Project the torus from 4d to 3d using a perspective projection
 (default).
 .TP 8
-.B \-orthographic-4d
+.B \-\-orthographic-4d
 Project the torus from 4d to 3d using an orthographic projection.
 .PP
 The following six options determine the rotation speed of the torus
@@ -160,25 +164,25 @@ around the six possible hyperplanes.  The rotation speed is measured
 in degrees per frame.  The speeds should be set to relatively small
 values, e.g., less than 4 in magnitude.
 .TP 8
-.B \-speed-wx \fIfloat\fP
+.B \-\-speed-wx \fIfloat\fP
 Rotation speed around the wx plane (default: 1.1).
 .TP 8
-.B \-speed-wy \fIfloat\fP
+.B \-\-speed-wy \fIfloat\fP
 Rotation speed around the wy plane (default: 1.3).
 .TP 8
-.B \-speed-wz \fIfloat\fP
+.B \-\-speed-wz \fIfloat\fP
 Rotation speed around the wz plane (default: 1.5).
 .TP 8
-.B \-speed-xy \fIfloat\fP
+.B \-\-speed-xy \fIfloat\fP
 Rotation speed around the xy plane (default: 1.7).
 .TP 8
-.B \-speed-xz \fIfloat\fP
+.B \-\-speed-xz \fIfloat\fP
 Rotation speed around the xz plane (default: 1.9).
 .TP 8
-.B \-speed-yz \fIfloat\fP
+.B \-\-speed-yz \fIfloat\fP
 Rotation speed around the yz plane (default: 2.1).
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .SH INTERACTION
 If you run this program in standalone mode you can rotate the
@@ -198,6 +202,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 9242a30f463c59f162809bab17c4f7c9428e272d..abf4478c0f12c66a59aee00e0dcd84a473c15598 100644 (file)
@@ -3,58 +3,62 @@
 hypnowheel \- draws overlapping, translucent spiral patterns
 .SH SYNOPSIS
 .B hypnowheel
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fIint\fP]
-[\-layers \fIint\fP]
-[\-count \fIint\fP]
-[\-twistiness \fIfloat\fP]
-[\-speed \fIfloat\fP]
-[\-wander\fP]
-[\-symmetric\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fIint\fP]
+[\-\-layers \fIint\fP]
+[\-\-count \fIint\fP]
+[\-\-twistiness \fIfloat\fP]
+[\-\-speed \fIfloat\fP]
+[\-\-wander\fP]
+[\-\-symmetric\fP]
+[\-\-fps]
 .SH DESCRIPTION
 Draws a series of overlapping, translucent spiral patterns.
 The tightness of their spirals fluctuates in and out.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fIint\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fIint\fP
 Delay between frames, in microseconds.  Default 20000.
 .TP 8
-.B \-layers \fIint\fP
+.B \-\-layers \fIint\fP
 How many different spirals to draw at once.  Default 4.
 .TP 8
-.B \-count \fIint\fP
+.B \-\-count \fIint\fP
 How many arms each spiral should have.  Default 11.
 .TP 8
-.B \-twistiness \fIfloat\fP
+.B \-\-twistiness \fIfloat\fP
 How tightly wound the spirals can become, measured in rotations.
 Default 4.0 (four times around).
 .TP 8
-.B \-speed \fIratio\fP
+.B \-\-speed \fIratio\fP
 Less than 1 for slower, greater than 1 for faster.  Default 1.
 .TP 8
-.B \-wander
+.B \-\-wander
 If specified, then the centers of the spirals will wander around,
 rather than them all having the same origin.
 .TP 8
-.B \-symmetric
+.B \-\-symmetric
 If specified, then each pair of left-wrapping and right-wrapping
 spirals will be mirror images of each other.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .SH ENVIRONMENT
 .PP
@@ -65,6 +69,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 04b2fb0a7d5cf4ae02ee14c3f763e643f1d531dd..ceedc5bf56c6e24f2a63437d5ca21695f53dd13a 100644 (file)
@@ -3,10 +3,11 @@
 jigglypuff \- save your screen by tormenting your eyes.
 .SH SYNOPSIS
 .B jigglypuff
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
 [-delay \fInumber\fP]
 [-cycles \fInumber\fP]
 [-wireframe]
@@ -25,23 +26,26 @@ objects orbiting lazily about the screen, with a dizzying array of
 mostly pointless options.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 20000 (0.02 seconds.).
 .TP 8
-.B \-wireframe
+.B \-\-wireframe
 Render in wireframe instead of solid. Default: render solid.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .TP 8
 .B -tetra | -no-tetra
@@ -106,6 +110,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 1780f550889fe62562d5792da20f49fd0a82d36f..730d006fafcdb127fd545e0066b9c283fa565698 100644 (file)
@@ -3,14 +3,18 @@
 jigsaw \- permute an image like a jigsaw puzzle
 .SH SYNOPSIS
 .B jigsaw
-[\-display \fIhost:display.screen\fP]
-[\-delay \fIusecs\fP]
-[\-speed \fIratio\fP]
-[\-complexity \fIratio\fP]
-[\-resolution \fIint\fP]
-[\-thickness \fIfloat\fP]
-[\-no\-wobble]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-delay \fIusecs\fP]
+[\-\-speed \fIratio\fP]
+[\-\-complexity \fIratio\fP]
+[\-\-resolution \fIint\fP]
+[\-\-thickness \fIfloat\fP]
+[\-\-no\-wobble]
+[\-\-fps]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
 .SH DESCRIPTION
 The \fIjigsaw\fP program loads an image, carves it up into
 a jigsaw puzzle, shuffles it, and then solves it.
@@ -27,41 +31,44 @@ for more details.
 .I jigsaw
 accepts the following options:
 .TP 8
-.B \-delay \fImicroseconds\fP
+.B \-\-delay \fImicroseconds\fP
 How long to wait between animation frames; default 20000.
 .TP 8
-.B \-speed \fIratio\fP
+.B \-\-speed \fIratio\fP
 Less than 1 for slower, greater than 1 for faster.  Default 1.
 .TP 8
-.B \-complexity \fIratio\fP
+.B \-\-complexity \fIratio\fP
 Less than 1 for simpler puzzles (fewer pieces), greater than 1 for
 more complex puzzles (more pieces).  Default 1.
 .TP 8
-.B \-resolution \fIratio\fP
+.B \-\-resolution \fIratio\fP
 Smoothness of the edges of the pieces.  Less than 1 for rougher pieces
 (fewer polygons), greater than 1 for more smoother pieces (more polygons).
 Default 1.
 .TP 8
-.B \-thickness \fIfloat\fP
+.B \-\-thickness \fIfloat\fP
 Thickness of the puzzle pieces (relative to their width).
 Default 0.06.
 .TP 8
-.B \-no\-wobble
+.B \-\-no\-wobble
 Keep the display stationary instead of very slowly wobbling back and forth.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, polygon count, and CPU load.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-install
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .SH ENVIRONMENT
@@ -73,6 +80,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1),
index f410489e2078ff6b16b1eb51987e4bde6ecf0665..540950fba7eedafa5779433cc580585cc1fad2d7 100644 (file)
@@ -5,59 +5,63 @@
 juggler3d \- juggling man screen saver.
 .SH SYNOPSIS
 .B juggler3d
-[\-display host:display.screen ]
-[\-root ]
-[\-window ]
-[\-mono ]
-[\-install | \-noinstall ]
-[\-visual visual ]
-[\-window\-id id ]
-[\-pattern pattern ]
-[\-tail number ]
-[\-real | \-no\-real ]
-[\-describe | \-no\-describe ]
-[\-balls | \-no\-balls ]
-[\-clubs | \-no\-clubs ]
-[\-torches | \-no\-torches ]
-[\-knives | \-no\-knives ]
-[\-rings | \-no\-rings ]
-[\-bballs | \-no\-bballs ]
-[\-count count ]
-[\-cycles cycles ]
-[\-delay delay ]
-[\-ncolors ncolors ]
-[\-fps]
+[\-\-display host:display.screen ]
+[\-\-root ]
+[\-\-window\-id \fInumber\fP]
+[\-\-window ]
+[\-\-mono ]
+[\-\-install | \-\-noinstall ]
+[\-\-visual visual ]
+[\-\-window\-id id ]
+[\-\-pattern pattern ]
+[\-\-tail number ]
+[\-\-real | \-\-no\-real ]
+[\-\-describe | \-\-no\-describe ]
+[\-\-balls | \-\-no\-balls ]
+[\-\-clubs | \-\-no\-clubs ]
+[\-\-torches | \-\-no\-torches ]
+[\-\-knives | \-\-no\-knives ]
+[\-\-rings | \-\-no\-rings ]
+[\-\-bballs | \-\-no\-bballs ]
+[\-\-count count ]
+[\-\-cycles cycles ]
+[\-\-delay delay ]
+[\-\-ncolors ncolors ]
+[\-\-fps]
 .SH DESCRIPTION
 Draws a stick-man juggling various collections of objects.
 .SH OPTIONS
 .I juggler3d
 accepts the following options:
 .TP 8
-.B \-display host:display.screen
+.B \-\-display host:display.screen
 X11 display to use.  Overrides
 .B DISPLAY
 environment variable.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-window
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-window
 Draw on a newly-created X window.  This is the default.
 .TP 8
-.B \-mono
+.B \-\-mono
 Draw in monochrome.
 .TP 8
-.B \-install | \-noinstall
+.B \-\-install | \-\-noinstall
 Turn on/off installing colormap.
 .TP 8
-.B \-visual visual
+.B \-\-visual visual
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window\-id id
+.B \-\-window\-id id
 Draw on an already existing X window.
 .TP 8
-.B \-pattern\ \(dq pattern \(dq
+.B \-\-pattern\ \(dq pattern \(dq
 Specify juggling pattern in annotated
 .B site-swap
 notation.  In 
@@ -77,7 +81,7 @@ x     Cross Throw and Catch
 \&_    Bounce
 .TE
 .TP 8
-.B \-pattern\ \(dq[ pattern ]\(dq
+.B \-\-pattern\ \(dq[ pattern ]\(dq
 Specify juggling pattern in annotated
 .B Adam
 notation.  Adam notation is a little harder to visualize.  Each
@@ -96,65 +100,65 @@ notation.
 
 For example, both of these describe a 3\-Shower:
 .IP
-.B \-pattern\ "+5 1"
+.B \-\-pattern\ "+5 1"
 .IP
-.B \-pattern\ "[+3 1]"
+.B \-\-pattern\ "[+3 1]"
 
 For further examples, see the
 .B portfolio
 list in the source code.
 .TP 8
-.B \-tail number
+.B \-\-tail number
 Minimum Trail Length.  0 \- 100.  Default: 1.  Objects may override
 this, for example flaming torches always leave a trail.
 .TP 8
-.BR \-real | \-no\-real
+.BR \-\-real | \-\-no\-real
 Turn on/off real-time juggling.
 .B Deprecated.
 There should be no need to turn off real-time juggling, even on slow
 systems.  Adjust speed using
-.B \-count
+.B \-\-count
 above.
 .TP 8
-.BR \-describe | \-no\-describe
+.BR \-\-describe | \-\-no\-describe
 Turn on/off pattern descriptions.
 .TP 8 
-.BR \-balls | \-no\-balls
+.BR \-\-balls | \-\-no\-balls
 Turn on/off Balls.
 .TP 8
-.BR \-clubs | \-no\-clubs
+.BR \-\-clubs | \-\-no\-clubs
 Turn on/off Clubs.
 .TP 8
-.BR \-torches | \-no\-torches
+.BR \-\-torches | \-\-no\-torches
 Turn on/off Flaming Torches.
 .TP 8
-.BR \-knives | \-no\-knives
+.BR \-\-knives | \-\-no\-knives
 Turn on/off Knives.
 .TP 8
-.BR \-rings | \-no\-rings
+.BR \-\-rings | \-\-no\-rings
 Turn on/off Rings.
 .TP 8
-.BR \-bballs | \-no\-bballs
+.BR \-\-bballs | \-\-no\-bballs
 Turn on/off Bowling Balls.
 .TP 8
-.B \-count number
+.B \-\-count number
 Speed. 50 \- 1000.  Default: 200.  This determines the expected time
 interval between a throw and the next catch, in milliseconds.
 .TP 8
-.B \-cycles number
+.B \-\-cycles number
 Performance Length. 50 \- 1000.  Default: 1000.  Setting this smaller
 will force the juggler to switch patterns (and objects) more often.
 .TP 8
-.B \-delay delay
+.B \-\-delay delay
 Additional delay between frames, in microseconds.  Default: 10000.
 .B Deprecated.
 Adjust speed using
-.BR \-count .
+.BR \-\-count .
 .TP 8
-.B \-ncolors ncolors
+.B \-\-ncolors ncolors
 Maximum number of colors to use.  Default: 32.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -165,6 +169,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 23c8e35691c6793c6d48411cddc1d0e7691679f0..e262a11c5c18b65fe2d617a56a57418d87bfa813 100644 (file)
@@ -3,15 +3,16 @@
 kaleidocycle \- draws twistable rings of tetrahedra
 .SH SYNOPSIS
 .B kaleidocycle
-[\-display \fIhost:display.screen\fP] [\-window] [\-root]
-[\-visual \fIvisual\fP] [\-delay \fImicroseconds\fP]
-[\-count \fInumber\fP]
-[\-speed \fInumber\fP]
-[\-wander] [\-no-wander]
-[\-spin \fIaxes\fP]
-[\-no-spin]
-[\-wireframe]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-visual \fIvisual\fP] [\-\-delay \fImicroseconds\fP]
+[\-\-count \fInumber\fP]
+[\-\-speed \fInumber\fP]
+[\-\-wander] [\-\-no-wander]
+[\-\-spin \fIaxes\fP]
+[\-\-no-spin]
+[\-\-wireframe]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIkaleidocycle\fP program draws a ring composed of tetrahedra
 connected at the edges that twists and rotates toroidally.  Segments
@@ -20,43 +21,46 @@ are occasionally inserted or removed.
 .I kaleidocycle
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-install
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP\fP
+.B \-\-visual \fIvisual\fP\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-count \fInumber\fP
+.B \-\-count \fInumber\fP
 The initial number of segments. Default 16.  Must be 8 or greater, and
 an even number.
 .TP 8
-.B \-speed \fInumber\fP
+.B \-\-speed \fInumber\fP
 Adjust the animation speed. 0.5 for half as fast, 2.0 for twice as fast.
 .TP 8
-.B \-wander
+.B \-\-wander
 Move the text around the screen.  This is the default.
 .TP 8
-.B \-no\-wander
+.B \-\-no\-wander
 Keep the text centered on the screen.
 .TP 8
-.B \-spin
+.B \-\-spin
 Which axes around which the text should spin.  The default is "Z",
 meaning rotate the object the plane of the screen only.
 .TP 8
-.B \-no\-spin
-Don't spin the text at all: the same as \fB\-spin ""\fP.
+.B \-\-no\-spin
+Don't spin the text at all: the same as \fB\-\-spin ""\fP.
 .TP 8
-.B \-wireframe
+.B \-\-wireframe
 Render in wireframe instead of solid.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .SH ENVIRONMENT
 .PP
@@ -67,6 +71,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index a57cee6c054549aaddcbe10cf8f26d644a528a37..de500996e21c51c24a21201982d37fef536d3361 100644 (file)
@@ -3,49 +3,50 @@
 klein \- Draws a 4d Klein bottle.
 .SH SYNOPSIS
 .B klein
-[\-display \fIhost:display.screen\fP]
-[\-install]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fIusecs\fP]
-[\-fps]
-[\-klein-bottle \fIbottle-name\fP]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-install]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fIusecs\fP]
+[\-\-fps]
+[\-\-klein-bottle \fIbottle-name\fP]
 [-figure-8]
 [-pinched-torus]
 [-lawson]
-[\-mode \fIdisplay-mode\fP]
-[\-wireframe]
-[\-surface]
-[\-transparent]
-[\-appearance \fIappearance\fP]
-[\-solid]
-[\-bands]
-[\-colors \fIcolor-scheme\fP]
-[\-onesided]
-[\-twosided]
-[\-rainbow]
-[\-depth]
-[\-change-colors]
-[\-view-mode \fIview-mode\fP]
-[\-walk]
-[\-turn]
-[\-walk-turn]
-[\-orientation-marks]
-[\-projection-3d \fImode\fP]
-[\-perspective-3d]
-[\-orthographic-3d]
-[\-projection-4d \fImode\fP]
-[\-perspective-4d]
-[\-orthographic-4d]
-[\-speed-wx \fIfloat\fP]
-[\-speed-wy \fIfloat\fP]
-[\-speed-wz \fIfloat\fP]
-[\-speed-xy \fIfloat\fP]
-[\-speed-xz \fIfloat\fP]
-[\-speed-yz \fIfloat\fP]
-[\-walk-direction \fIfloat\fP]
-[\-walk-speed \fIfloat\fP]
+[\-\-mode \fIdisplay-mode\fP]
+[\-\-wireframe]
+[\-\-surface]
+[\-\-transparent]
+[\-\-appearance \fIappearance\fP]
+[\-\-solid]
+[\-\-bands]
+[\-\-colors \fIcolor-scheme\fP]
+[\-\-onesided]
+[\-\-twosided]
+[\-\-rainbow]
+[\-\-depth]
+[\-\-change-colors]
+[\-\-view-mode \fIview-mode\fP]
+[\-\-walk]
+[\-\-turn]
+[\-\-walk-turn]
+[\-\-orientation-marks]
+[\-\-projection-3d \fImode\fP]
+[\-\-perspective-3d]
+[\-\-orthographic-3d]
+[\-\-projection-4d \fImode\fP]
+[\-\-perspective-4d]
+[\-\-orthographic-4d]
+[\-\-speed-wx \fIfloat\fP]
+[\-\-speed-wy \fIfloat\fP]
+[\-\-speed-wz \fIfloat\fP]
+[\-\-speed-xy \fIfloat\fP]
+[\-\-speed-xz \fIfloat\fP]
+[\-\-speed-yz \fIfloat\fP]
+[\-\-walk-direction \fIfloat\fP]
+[\-\-walk-speed \fIfloat\fP]
 .SH DESCRIPTION
 The \fIklein\fP program shows three different Klein bottles in 4d: the
 figure-8 Klein bottle, the pinched torus Klein bottle, or the Lawson
@@ -118,114 +119,117 @@ Dimensions", Scientific American Library, 1990.
 .I klein
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-install
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual
 class, or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-delay \fImicroseconds\fP
+.B \-\-delay \fImicroseconds\fP
 How much of a delay should be introduced between steps of the
 animation.  Default 10000, or 1/100th second.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .PP
 The following three options are mutually exclusive.  They determine
 which Klein bottle is displayed.
 .TP 8
-.B \-klein-bottle random
+.B \-\-klein-bottle random
 Display a random Klein bottle (default).
 .TP 8
-.B \-klein-bottle figure-8 \fP(Shortcut: \fB\-figure-8\fP)
+.B \-\-klein-bottle figure-8 \fP(Shortcut: \fB\-\-figure-8\fP)
 Display the figure-8 Klein bottle.
 .TP 8
-.B \-klein-bottle pinched-torus \fP(Shortcut: \fB\-pinched-torus\fP)
+.B \-\-klein-bottle pinched-torus \fP(Shortcut: \fB\-\-pinched-torus\fP)
 Display the pinched torus Klein bottle.
 .TP 8
-.B \-klein-bottle lawson \fP(Shortcut: \fB\-lawson\fP)
+.B \-\-klein-bottle lawson \fP(Shortcut: \fB\-\-lawson\fP)
 Display the Lawson Klein bottle.
 .PP
 The following four options are mutually exclusive.  They determine
 how the Klein bottle is displayed.
 .TP 8
-.B \-mode random
+.B \-\-mode random
 Display the Klein bottle in a random display mode (default).
 .TP 8
-.B \-mode wireframe \fP(Shortcut: \fB\-wireframe\fP)
+.B \-\-mode wireframe \fP(Shortcut: \fB\-\-wireframe\fP)
 Display the Klein bottle as a wireframe mesh.
 .TP 8
-.B \-mode surface \fP(Shortcut: \fB\-surface\fP)
+.B \-\-mode surface \fP(Shortcut: \fB\-\-surface\fP)
 Display the Klein bottle as a solid surface.
 .TP 8
-.B \-mode transparent \fP(Shortcut: \fB\-transparent\fP)
+.B \-\-mode transparent \fP(Shortcut: \fB\-\-transparent\fP)
 Display the Klein bottle as a transparent surface.
 .PP
 The following three options are mutually exclusive.  They determine the
 appearance of the Klein bottle.
 .TP 8
-.B \-appearance random
+.B \-\-appearance random
 Display the Klein bottle with a random appearance (default).
 .TP 8
-.B \-appearance solid \fP(Shortcut: \fB\-solid\fP)
+.B \-\-appearance solid \fP(Shortcut: \fB\-\-solid\fP)
 Display the Klein bottle as a solid object.
 .TP 8
-.B \-appearance bands \fP(Shortcut: \fB\-bands\fP)
+.B \-\-appearance bands \fP(Shortcut: \fB\-\-bands\fP)
 Display the Klein bottle as see-through bands.
 .PP
 The following five options are mutually exclusive.  They determine
 how to color the Klein bottle.
 .TP 8
-.B \-colors random
+.B \-\-colors random
 Display the Klein bottle with a random color scheme (default).
 .TP 8
-.B \-colors one-sided \fP(Shortcut: \fB\-onesided\fP)
+.B \-\-colors one-sided \fP(Shortcut: \fB\-\-onesided\fP)
 Display the Klein bottle with a single color.
 .TP 8
-.B \-colors two-sided \fP(Shortcut: \fB\-twosided\fP)
+.B \-\-colors two-sided \fP(Shortcut: \fB\-\-twosided\fP)
 Display the Klein bottle with two colors: one color one "side" and the
 complementary color on the "other side."  For static colors, the
 colors are red and green.
 .TP 8
-.B \-colors rainbow \fP(Shortcut: \fB\-rainbow\fP)
+.B \-\-colors rainbow \fP(Shortcut: \fB\-\-rainbow\fP)
 Display the Klein bottle with fully saturated rainbow colors.  If the
 Klein bottle is displayed as see-through bands, each band will be
 displayed with a different color.
 .TP 8
-.B \-colors depth \fP(Shortcut: \fB\-depth\fP)
+.B \-\-colors depth \fP(Shortcut: \fB\-\-depth\fP)
 Display the Klein bottle with colors chosen depending on the 4d
 "depth" of the points.
 .PP
 The following options determine whether the colors with which the
 Klein bottle is displayed are static or are changing dynamically.
 .TP 8
-.B \-change-colors
+.B \-\-change-colors
 Change the colors with which the Klein bottle is displayed
 dynamically.
 .TP 8
-.B \-no-change-colors
+.B \-\-no-change-colors
 Use static colors to display the Klein bottle (default).
 .PP
 The following four options are mutually exclusive.  They determine
 how to view the Klein bottle.
 .TP 8
-.B \-view-mode random
+.B \-\-view-mode random
 View the Klein bottle in a random view mode (default).
 .TP 8
-.B \-view-mode walk \fP(Shortcut: \fB\-walk\fP)
+.B \-\-view-mode walk \fP(Shortcut: \fB\-\-walk\fP)
 View the Klein bottle as if walking on its surface.
 .TP 8
-.B \-view-mode turn \fP(Shortcut: \fB\-turn\fP)
+.B \-\-view-mode turn \fP(Shortcut: \fB\-\-turn\fP)
 View the Klein bottle while it turns in 4d.
 .TP 8
-.B \-view-mode walk-turn \fP(Shortcut: \fB\-walk-turn\fP)
+.B \-\-view-mode walk-turn \fP(Shortcut: \fB\-\-walk-turn\fP)
 View the Klein bottle as if walking on its surface.  Additionally, the
 Klein bottle turns around the true 4d planes (the xy, xz, and yz
 planes).
@@ -233,37 +237,37 @@ planes).
 The following options determine whether orientation marks are shown on
 the Klein bottle.
 .TP 8
-.B \-orientation-marks
+.B \-\-orientation-marks
 Display orientation marks on the Klein bottle.
 .TP 8
-.B \-no-orientation-marks
+.B \-\-no-orientation-marks
 Don't display orientation marks on the Klein bottle (default).
 .PP
 The following three options are mutually exclusive.  They determine
 how the Klein bottle is projected from 3d to 2d (i.e., to the screen).
 .TP 8
-.B \-projection-3d random
+.B \-\-projection-3d random
 Project the Klein bottle from 3d to 2d using a random projection mode
 (default).
 .TP 8
-.B \-projection-3d perspective \fP(Shortcut: \fB\-perspective-3d\fP)
+.B \-\-projection-3d perspective \fP(Shortcut: \fB\-\-perspective-3d\fP)
 Project the Klein bottle from 3d to 2d using a perspective projection.
 .TP 8
-.B \-projection-3d orthographic \fP(Shortcut: \fB\-orthographic-3d\fP)
+.B \-\-projection-3d orthographic \fP(Shortcut: \fB\-\-orthographic-3d\fP)
 Project the Klein bottle from 3d to 2d using an orthographic
 projection.
 .PP
 The following three options are mutually exclusive.  They determine
 how the Klein bottle is projected from 4d to 3d.
 .TP 8
-.B \-projection-4d random
+.B \-\-projection-4d random
 Project the Klein bottle from 4d to 3d using a random projection mode
 (default).
 .TP 8
-.B \-projection-4d perspective \fP(Shortcut: \fB\-perspective-4d\fP)
+.B \-\-projection-4d perspective \fP(Shortcut: \fB\-\-perspective-4d\fP)
 Project the Klein bottle from 4d to 3d using a perspective projection.
 .TP 8
-.B \-projection-4d orthographic \fP(Shortcut: \fB\-orthographic-4d\fP)
+.B \-\-projection-4d orthographic \fP(Shortcut: \fB\-\-orthographic-4d\fP)
 Project the Klein bottle from 4d to 3d using an orthographic
 projection.
 .PP
@@ -277,32 +281,32 @@ smaller speeds must be used than in the turn mode to achieve a nice
 visualization.  Therefore, in walk-and-turn mode the speeds you have
 selected are divided by 5 internally.
 .TP 8
-.B \-speed-wx \fIfloat\fP
+.B \-\-speed-wx \fIfloat\fP
 Rotation speed around the wx plane (default: 1.1).
 .TP 8
-.B \-speed-wy \fIfloat\fP
+.B \-\-speed-wy \fIfloat\fP
 Rotation speed around the wy plane (default: 1.3).
 .TP 8
-.B \-speed-wz \fIfloat\fP
+.B \-\-speed-wz \fIfloat\fP
 Rotation speed around the wz plane (default: 1.5).
 .TP 8
-.B \-speed-xy \fIfloat\fP
+.B \-\-speed-xy \fIfloat\fP
 Rotation speed around the xy plane (default: 1.7).
 .TP 8
-.B \-speed-xz \fIfloat\fP
+.B \-\-speed-xz \fIfloat\fP
 Rotation speed around the xz plane (default: 1.9).
 .TP 8
-.B \-speed-yz \fIfloat\fP
+.B \-\-speed-yz \fIfloat\fP
 Rotation speed around the yz plane (default: 2.1).
 .PP
 The following two options determine the walking speed and direction.
 .TP 8
-.B \-walk-direction \fIfloat\fP
+.B \-\-walk-direction \fIfloat\fP
 The walking direction is measured as an angle in degrees in the 2d
 square that forms the coordinate system of the surface of the Klein
 bottle (default: 7.0).
 .TP 8
-.B \-walk-speed \fIfloat\fP
+.B \-\-walk-speed \fIfloat\fP
 The walking speed is measured in percent of some sensible maximum
 speed (default: 20.0).
 .SH INTERACTION
@@ -324,6 +328,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index e288972da7210a57349b1a7856e533b130278d27..c3fa4c53b527cd20bfeb45b6685c321732f4e918 100644 (file)
@@ -3,9 +3,10 @@
 lament \- animates the Lament Configuration
 .SH SYNOPSIS
 .B lament
-[\-display \fIhost:display.screen\fP] [\-window] [\-root] [\-install]
-[\-visual \fIvisual\fP] [\-delay \fImicroseconds\fP] [\-fps]
-[\-texture] [\-no\-texture] [\-wireframe]
+[\-\-display \fIhost:display.screen\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-install]
+[\-\-visual \fIvisual\fP] [\-\-delay \fImicroseconds\fP] [\-\-fps]
+[\-\-texture] [\-\-no\-texture] [\-\-wireframe]
 .SH DESCRIPTION
 The \fIlament\fP program draws an animation of a particular puzzle box
 repeatedly solving itself.
@@ -13,32 +14,35 @@ repeatedly solving itself.
 .I lament
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-install
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP\fP
+.B \-\-visual \fIvisual\fP\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-texture
+.B \-\-texture
 Use texture maps.  This is the default.
 .TP 8
-.B \-no\-texture
+.B \-\-no\-texture
 Do not use texture maps.  This is boring and wrong.
 .TP 8
-.B \-wireframe
+.B \-\-wireframe
 Only draw outlines.
 .TP 8
-.B \-delay \fImicroseconds\fP
+.B \-\-delay \fImicroseconds\fP
 How long to pause between frames.  Default is 20000, or 0.02 second.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .SH ENVIRONMENT
 .PP
@@ -49,6 +53,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH BUGS
 This hack is glacially slow on machines lacking hardware texture support.
 
index 6ff470263b602fa84366ec330545add87abd5d02..af15e1e74644c28795c3ee9ee9d0541f4d2d5bad 100644 (file)
@@ -3,23 +3,24 @@
 lavalite \- 3D OpenGL simulation of a Lavalite.
 .SH SYNOPSIS
 .B lavalite
-[\-display \fIhost:display.screen\fP] [\-window] [\-root]
-[\-visual \fIvisual\fP] [\-delay \fImicroseconds\fP] [\-fps]
-[\-style \fIstyle\fP ]
-[\-spin \fIxyz\fP ] [\-no-spin ]
-[\-speed \fIfloat\fP ]
-[\-resolution \fIinteger\fP ]
-[\-count \fIinteger\fP ]
-[\-no-smooth ]
-[\-wireframe ]
-[\-impatient ]
-[\-lava-color \fIcolor\fP ]
-[\-fluid-color \fIcolor\fP ]
-[\-base-color \fIcolor\fP ]
-[\-table-color \fIcolor\fP ]
-[\-fluid-texture \fIfilename\fP ]
-[\-base-texture \fIfilename\fP ]
-[\-table-texture \fIfilename\fP ]
+[\-\-display \fIhost:display.screen\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-visual \fIvisual\fP] [\-\-delay \fImicroseconds\fP] [\-\-fps]
+[\-\-style \fIstyle\fP ]
+[\-\-spin \fIxyz\fP ] [\-\-no-spin ]
+[\-\-speed \fIfloat\fP ]
+[\-\-resolution \fIinteger\fP ]
+[\-\-count \fIinteger\fP ]
+[\-\-no-smooth ]
+[\-\-wireframe ]
+[\-\-impatient ]
+[\-\-lava-color \fIcolor\fP ]
+[\-\-fluid-color \fIcolor\fP ]
+[\-\-base-color \fIcolor\fP ]
+[\-\-table-color \fIcolor\fP ]
+[\-\-fluid-texture \fIfilename\fP ]
+[\-\-base-texture \fIfilename\fP ]
+[\-\-table-texture \fIfilename\fP ]
 .SH DESCRIPTION
 The \fIlavalite\fP program displays a 3D simulation of the famous lamp
 of the same name.  It requires a fast computer with fast OpenGL support.
@@ -27,76 +28,79 @@ of the same name.  It requires a fast computer with fast OpenGL support.
 .I lavalite
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-visual \fIvisual\fP\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-visual \fIvisual\fP\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-style \fIstyle\fP\fP
+.B \-\-style \fIstyle\fP\fP
 Specify which model of lamp to draw.  Available models 
 are: \fBClassic\fP, \fBGiant\fP, \fBCone\fP, and \fBRocket\fP.
 Default: random.
 .TP 8
-.B \-spin \fIxyz\fP
+.B \-\-spin \fIxyz\fP
 Around which axes the model should auto-spin.  Defaults to "Z", meaning
 it rotates horizontally, but otherwise pitch or roll.
 .TP 8
-.B \-no-spin
-Same as \fB\-spin ''\fP.
+.B \-\-no-spin
+Same as \fB\-\-spin ''\fP.
 .TP 8
-.B \-speed \fIfloat\fP
+.B \-\-speed \fIfloat\fP
 A number controlling the frequency at which new blobs launch: you can
 think of this as being related to the the heat of the lightbulb in
 the base.  Default: 0.003.
 .TP 8
-.B \-delay \fIusecs\fP
+.B \-\-delay \fIusecs\fP
 The delay between steps of the animation; default is 30000 (0.03 second.)
 .TP 8
-.B \-resolution \fIinteger\fP
+.B \-\-resolution \fIinteger\fP
 The size of the grid from which the mesh is created that is used
 to polygonize the blobs.  higher values will give very smooth looking
 blobs, at the expense of speed.  Default: 40.
 
 The options "-resolution 10 -no-smooth" look kind of interesting.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .TP 8
-.B \-count \fIinteger\fP
+.B \-\-count \fIinteger\fP
 The maximum number of blobs that can be in motion at once.
 Default: 3.
 .TP 8
-.B \-no-smooth
+.B \-\-no-smooth
 Turn off smoothing: the objects in the scene will be facetted.
 .TP 8
-.B \-wireframe
+.B \-\-wireframe
 Render all objects in wireframe instead of as solids.
 .TP 8
-.B \-impatient
+.B \-\-impatient
 Provide this option if you are.  This will pre-warm the lamp, so when it
 starts up, the first frame will show a blob already halfway up the lamp.
 .TP 8
-.B \-lava-color \fIcolor\fP
+.B \-\-lava-color \fIcolor\fP
 Specifies the color of the blobbies.  Default: red.
 .TP 8
-.B \-fluid-color \fIcolor\fP
+.B \-\-fluid-color \fIcolor\fP
 Specifies the color of the fluid that the blobbies float in.
 Default: light blue.
 .TP 8
-.B \-base-color \fIcolor\fP
+.B \-\-base-color \fIcolor\fP
 Specifies the color of the lamp base, and the cap on top of the bottle.
 Default: very dark gray.
 .TP 8
-.B \-table-color \fIcolor\fP
+.B \-\-table-color \fIcolor\fP
 Specifies the color of the table that the lamp is sitting on.
 Default: black (meaning it is invisible.)
 .TP 8
-.B \-fluid-texture \fIfilename\fP
+.B \-\-fluid-texture \fIfilename\fP
 An image file to wrap around the glass.
 
 Note that on most systems, GL textures must have dimensions that are a
@@ -107,11 +111,11 @@ texture and it isn't showing up, try specifying the corresponding color
 as "white".  Otherwise, the combination of the two might be too dark to
 see.
 .TP 8
-.B \-base-texture \fIfilename\fP
+.B \-\-base-texture \fIfilename\fP
 An image file to wrap around the base of the lamp, and the cap on top
 of the bottle.
 .TP 8
-.B \-table-texture \fItexture\fP
+.B \-\-table-texture \fItexture\fP
 An image file to spread across the table that the lamp is sitting on.
 .SH ENVIRONMENT
 .PP
@@ -122,6 +126,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1),
index 4308c0e64912c458507395f363c39b947a4b7d6b..6edc240093ff0554f2d3863248a6d44b5dbcf457 100644 (file)
@@ -3,21 +3,22 @@
 lockward \- Rotating spinning color-cycling things
 .SH SYNOPSIS
 .B lockward
-[\-display \fIdisplayspec\fP]
-[\-root]
-[\-window]
-[\-visual \fIarg\fP]
-[\-window-id \fIarg\fP]
-[\-delay \fIusec\fP]
-[\-pair]
-[\-fps]
-[\-blink | \-no-blink]
-[\-rotateidle-min \fImsec\fP]
-[\-rotateidle-max \fImsec\fP]
-[\-blinkidle-min \fImsec\fP]
-[\-blinkidle-max \fImsec\fP]
-[\-blinkdwell-min \fImsec\fP]
-[\-blinkdwell-max \fImsec\fP]
+[\-\-display \fIdisplayspec\fP]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-window]
+[\-\-visual \fIarg\fP]
+[\-\-window-id \fIarg\fP]
+[\-\-delay \fIusec\fP]
+[\-\-pair]
+[\-\-fps]
+[\-\-blink | \-\-no-blink]
+[\-\-rotateidle-min \fImsec\fP]
+[\-\-rotateidle-max \fImsec\fP]
+[\-\-blinkidle-min \fImsec\fP]
+[\-\-blinkidle-max \fImsec\fP]
+[\-\-blinkdwell-min \fImsec\fP]
+[\-\-blinkdwell-max \fImsec\fP]
 .SH DESCRIPTION
 .B lockward
 draws a spinning, rotating set of notched wheels overlaid with some flashing
@@ -26,40 +27,43 @@ combination lock and those old information displays that animated via
 polarized light.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the ID number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window (default).
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fImicroseconds\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fImicroseconds\fP
 Per-frame delay, in microseconds.  Default: 20000 (50 frames/sec).
 .TP 8
-.B \-blink | \-no-blink
+.B \-\-blink | \-\-no-blink
 Enables/disables the blinking effects.  Default: Enabled.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .TP 8
-.B \-rotateidle-min \fImilliseconds
+.B \-\-rotateidle-min \fImilliseconds
 .TP 8
-.B \-rotateidle-max \fImilliseconds
+.B \-\-rotateidle-max \fImilliseconds
 The minimum and maximum time each spinner will sit idle, in milliseconds.
 Defaults: Min 1000, max 6000.
 .TP 8
-.B \-blinkidle-min \fImilliseconds
+.B \-\-blinkidle-min \fImilliseconds
 .TP 8
-.B \-blinkidle-max \fImilliseconds
+.B \-\-blinkidle-max \fImilliseconds
 The minimum and maximum time between blinking effects, in milliseconds.
 Defaults: Min 1000, max 9000.
 .TP 8
-.B \-blinkdwell-min \fImilliseconds
+.B \-\-blinkdwell-min \fImilliseconds
 .TP 8
-.B \-blinkdwell-max \fImilliseconds
+.B \-\-blinkdwell-max \fImilliseconds
 The minimum and maximum dwell time for the blinking effects, in
 milliseconds.  This affects how quickly the blinks actually happen.
 Defaults: Min 100, max 600.
@@ -72,6 +76,9 @@ Default host and display number.
 .B XENVIRONMENT
 Name of a resource file that overrides the global resources stored in the
 RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 107b0d91ed4be002f8a3641e372a7d8849b453fa..84e5c5d9585faf5065aacd77647c988963f0e3fd 100644 (file)
@@ -3,19 +3,20 @@
 mapscroller \- a slowly-scrolling map of a random place on Earth.
 .SH SYNOPSIS
 .B mapscroller
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-speed \fInumber\fP]
-[\-duration \fIseconds\fP]
-[\-map\-level \fInumber\fP]
-[\-url-template URL]
-[\-origin LAT/LON]
-[\-no-titles]
-[\-no-arrow]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-speed \fInumber\fP]
+[\-\-duration \fIseconds\fP]
+[\-\-map\-level \fInumber\fP]
+[\-\-url-template URL]
+[\-\-origin LAT/LON]
+[\-\-no-titles]
+[\-\-no-arrow]
+[\-\-fps]
 .SH DESCRIPTION
 A slowly-scrolling map of a random place on Earth.  The map images are loaded
 from openstreetmap.org, or any compatible service.
@@ -27,36 +28,39 @@ available lanes, every car is a policy failure, and the concept of
 "jaywalking" was invented for profit by auto industry lobbyists in the 1920s.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 30000 (0.03 seconds).
 .TP 8
-.B \-speed \fInumber\fP
+.B \-\-speed \fInumber\fP
 Scrolling speed.  2.0 means twice as fast, 0.5 means half as fast.
 .TP 8
-.B \-duration \fIseconds\fP
+.B \-\-duration \fIseconds\fP
 When in one of the random modes, re-select the map position every
 N seconds.  Default 20 minutes.
 .TP 8
-.B \-map\-level \fInumber\fP
+.B \-\-map\-level \fInumber\fP
 Larger numbers are zoomed in more. 5 - 18, default 15.
 .TP 8
-.B \-url-template \fIURL\fP
+.B \-\-url-template \fIURL\fP
 The map tile server to use. Default: Open Street Map.  You can find
 others here:
 
 \fIhttps://wiki.openstreetmap.org/wiki/Tiles#Servers\fP
 .TP 8
-.B \-origin \fIlocation\fP
+.B \-\-origin \fIlocation\fP
 "Random" means a fully random location somewhere on Earth, excluding
 the oceans.
 
@@ -65,13 +69,13 @@ major cities.  This is the default.
 
 Otherwise, this must be a latitude/longitude pair, as floats.
 .TP 8
-.B \-titles | \-no-titles
+.B \-\-titles | \-\-no-titles
 Whether to show the current coordinates in the upper left.  Default true.
 .TP 8
-.B \-arrow | \-no-arrow
+.B \-\-arrow | \-\-no-arrow
 Whether to show a directional arrow in the middle of the screen.  Default true.
 .TP 8
-.B \-fps | \-no-fps
+.B \-\-fps | \-\-no-fps
 Whether to show a frames-per-second display at the bottom of the screen.
 .SH FILES
 The map tile images are loaded from the network and cached on disk. Up to 20MB
@@ -95,6 +99,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .TP 4
 .B HTTP_PROXY, HTTPS_PROXY, http_proxy, or https_proxy
 to get the default proxy host and port.
index 9e833b07ac245d4176c7cd14e20680bc50fd01af..a43f57c96d07451f64dcf81e865f3a25bf3e8e39 100644 (file)
@@ -3,82 +3,86 @@
 maze3d \- A 3D maze.
 .SH SYNOPSIS
 .B maze3d
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-speed \fIfloat\fP]
-[\-delay \fInumber\fP]
-[\-fps]
-[\-rows \fInumber\fP]
-[\-columns \fInumber\fP]
-[\-overlay]
-[\-wall-texture \fItexture\fP]
-[\-floor-texture \fItexture\fP]
-[\-ceiling-texture \fItexture\fP]
-[\-drop-acid]
-[\-drop-acid-walls]
-[\-drop-acid-floor]
-[\-drop-acid-ceiling]
-[\-inverters \fInumber\fP]
-[\-rats \fInumber\fP]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-speed \fIfloat\fP]
+[\-\-delay \fInumber\fP]
+[\-\-fps]
+[\-\-rows \fInumber\fP]
+[\-\-columns \fInumber\fP]
+[\-\-overlay]
+[\-\-wall-texture \fItexture\fP]
+[\-\-floor-texture \fItexture\fP]
+[\-\-ceiling-texture \fItexture\fP]
+[\-\-drop-acid]
+[\-\-drop-acid-walls]
+[\-\-drop-acid-floor]
+[\-\-drop-acid-ceiling]
+[\-\-inverters \fInumber\fP]
+[\-\-rats \fInumber\fP]
 .SH DESCRIPTION
 A recreation of the 3D Maze screensaver from Windows 95.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-speed \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-speed \fInumber\fP
 Speed of the dungeon crawl. 2 is twice as fast, 0.5 is half as fast.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds. Default: 20000 (0.02 seconds).
 .TP 8
-.B \-fps | \-no-fps
+.B \-\-fps | \-\-no-fps
 Display the current frame rate and CPU load.
 .TP 8
-.B \-rows \fInumber\fP
+.B \-\-rows \fInumber\fP
 The number of rows in the maze. Default: 12.
 .TP 8
-.B \-columns \fInumber\fP
+.B \-\-columns \fInumber\fP
 The number of columns in the maze. Default: 12.
 .TP 8
-.B \-overlay
+.B \-\-overlay
 Overlays a minimap of the maze on the screen.
 .TP 8
-.B \-wall-texture \fItexture\fP
+.B \-\-wall-texture \fItexture\fP
 Sets the wall texture. \fItexture\fP can be a path to an image file, or it can be one of the built-in textures (see TEXTURES below).
 .TP 8
-.B \-floor-texture \fItexture\fP
+.B \-\-floor-texture \fItexture\fP
 Sets the floor texture. \fItexture\fP can be a path to an image file, or it can be one of the built-in textures (see TEXTURES below).
 .TP 8
-.B \-ceiling-texture \fItexture\fP
+.B \-\-ceiling-texture \fItexture\fP
 Sets the ceiling texture. \fItexture\fP can be a path to an image file, or it can be one of the built-in textures (see TEXTURES below).
 .TP 8
-.B \-drop-acid-walls
+.B \-\-drop-acid-walls
 Continuously shifts the hue of the wall texture. (This looks like an LSD trip, hence the name.)
 .TP 8
-.B \-drop-acid-floor
+.B \-\-drop-acid-floor
 Continuously shifts the hue of the floor texture.
 .TP 8
-.B \-drop-acid-ceiling
+.B \-\-drop-acid-ceiling
 Continuously shifts the hue of the ceiling texture.
 .TP 8
-.B \-drop-acid
+.B \-\-drop-acid
 Turns on all three.
 .TP 8
-.B \-inverters \fInumber\fP
+.B \-\-inverters \fInumber\fP
 Sets the number of inverters (the spinny grey things that flip the camera upside-down) in the maze. Default: 10.
 .TP 8
-.B \-rats \fInumber\fP
+.B \-\-rats \fInumber\fP
 Sets the number of rats, or rather "Bobs", in the maze. Default: 1.
 .TP 8
 .SH TEXTURES
@@ -103,6 +107,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 7180ca1a38a83b9ff744444c88c89aa25b7b76f7..6094a8eecdd3268f421b029f4468bfeba5b44b3a 100644 (file)
@@ -3,56 +3,60 @@
 menger \- 3D menger gasket fractal.
 .SH SYNOPSIS
 .B menger
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-speed \fInumber\fP]
-[\-depth \fInumber\fP]
-[\-no-wander]
-[\-no-spin]
-[\-spin \fI[XYZ]\fP]
-[\-wireframe]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-speed \fInumber\fP]
+[\-\-depth \fInumber\fP]
+[\-\-no-wander]
+[\-\-no-spin]
+[\-\-spin \fI[XYZ]\fP]
+[\-\-wireframe]
+[\-\-fps]
 .SH DESCRIPTION
 This draws the three-dimensional variant of the recursive Menger Gasket, a
 cube-based fractal object analogous to the Sierpinski Tetrahedron.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 30000 (0.03 seconds.).
 .TP 8
-.B \-speed \fInumber\fP
+.B \-\-speed \fInumber\fP
 Number of frames before changing shape.  Default: 150.
 .TP 8
-.B \-depth \fInumber\fP
+.B \-\-depth \fInumber\fP
 Max depth to descend.  Default: 3.  You probably don't have enough
 memory for 6.
 .TP 8
-.B \-wander | \-no-wander
+.B \-\-wander | \-\-no-wander
 Whether the object should wander around the screen.
 .TP 8
-.B \-spin [XYZ]
+.B \-\-spin [XYZ]
 Around which axes should the object spin?
 .TP 8
-.B \-no-spin
+.B \-\-no-spin
 None.
 .TP 8
-.B \-wireframe
+.B \-\-wireframe
 Render in wireframe instead of solid.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .SH ENVIRONMENT
 .PP
@@ -63,6 +67,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 88305b8585b07cf05b9c49b27f0764aacb48ac23..1e8a8f443c555cd9b8530ff6f85e17142310fa67 100644 (file)
@@ -3,85 +3,89 @@
 mirrorblob \- Draws a wobbly blob that distorts the image behind it.
 .SH SYNOPSIS
 .B mirrorblob
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-wire]
-[\-delay \fInumber\fP]
-[\-fog]
-[\-walls]
-[\-colour]
-[\-texture]
-[\-offset-texture]
-[\-blend]
-[\-antialias]
-[\-resolution \fInumber\fP]
-[\-bumps \fInumber\fP]
-[\-fade-time \fInumber\fP]
-[\-hold-time \fInumber\fP]
-[\-zoom \fInumber\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-wire]
+[\-\-delay \fInumber\fP]
+[\-\-fog]
+[\-\-walls]
+[\-\-colour]
+[\-\-texture]
+[\-\-offset-texture]
+[\-\-blend]
+[\-\-antialias]
+[\-\-resolution \fInumber\fP]
+[\-\-bumps \fInumber\fP]
+[\-\-fade-time \fInumber\fP]
+[\-\-hold-time \fInumber\fP]
+[\-\-zoom \fInumber\fP]
+[\-\-fps]
 .SH DESCRIPTION
 Draws a wobbling blob, making use of alpha blending, fog,
 textures, and lighting, plus a ``frames per second'' meter so that you can
 tell how fast your graphics card is... Requires OpenGL.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
-.B \-wire
+.TP 8
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.B \-\-wire
 Render in wireframe instead of solid.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 10000 (0.01 seconds.).
 .TP 8
-.B \-fog | \-no-fog
+.B \-\-fog | \-\-no-fog
 Whether to enable fog.
 .TP 8
-.B \-walls | \-no-walls
+.B \-\-walls | \-\-no-walls
 Add walls for blob to hit.
 .TP 8
-.B \-colour | \-no-colour
+.B \-\-colour | \-\-no-colour
 Draw coloured blob.  If also textured, the texture will have color mixed in.
 .TP 8
-.B \-texture | \-no-texture
+.B \-\-texture | \-\-no-texture
 Whether to wrap a texture image on the blob.
 .TP 8
-.B \-offset_texture | \-no-offset_texture
+.B \-\-offset_texture | \-\-no-offset_texture
 Whether to ofset the texture calculations to only use a region of the image
  under the blob.  This works well with a semi-transparent blob.
 .TP 8
-.B \-blend | \-no-blend
+.B \-\-blend | \-\-no-blend
 Whether to draw a transparent blob. (see also offset_texture above)
 .TP 8
-.B \-antialias | \-no-antialias
+.B \-\-antialias | \-\-no-antialias
 Whether to antialias lines.
 .TP 8
-.B \-resolution \fInumber\fP
+.B \-\-resolution \fInumber\fP
 Resolution of the tessellation used to calculate and draw the blob.  Larger
  numbers give a smoother blob but increase calculation times exponentially.
 .TP 8
-.B \-bumps \fInumber\fP
+.B \-\-bumps \fInumber\fP
 Number of bumps used to distort the blob.
 .TP 8
-.B \-hold-time \fInumber\fP
+.B \-\-hold-time \fInumber\fP
 Time until loading a new image.
 .TP 8
-.B \-fade-time \fInumber\fP
+.B \-\-fade-time \fInumber\fP
 Time taken to transition between images.
 .TP 8
-.B \-zoom \fInumber\fP
+.B \-\-zoom \fInumber\fP
 Size multiplier for blob.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .SH ENVIRONMENT
 .PP
@@ -92,6 +96,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index e48c208e2c69328fe78ba7792cabbc4e533d2d0f..ac8e6d8c22b59275d58ea8daf4f15c2b4ff03a90 100644 (file)
@@ -3,10 +3,11 @@
 moebius \- Escher's Moebuis Strip II, with ants.
 .SH SYNOPSIS
 .B moebius
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
 [-delay \fInumber\fP]
 [-solidmoebius]
 [-wireframe]
@@ -17,29 +18,32 @@ Another M. C. Escher hack by Marcelo Vianna, this one draws ``Moebius Strip
 II,'' a GL image of ants walking along the surface of a moebius strip. 
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 20000 (0.02 seconds.).
 .TP 8
-.B \-solidmoebius
+.B \-\-solidmoebius
 Solid Floor.
 .TP 8
-.B \-wireframe
+.B \-\-wireframe
 Render in wireframe instead of solid.
 .TP 8
-.B \-noants | \-no-noants
+.B \-\-noants | \-\-no-noants
 Draw Ants.  Boolean.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .SH ENVIRONMENT
 .PP
@@ -50,6 +54,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 650eb0edef41f41d55a219c72ebce8387c87eff2..db9ee3100e52c03f7ed266fe5497e993b9963a1a 100644 (file)
@@ -3,13 +3,14 @@
 moebiusgears \- draw a moebius strip of interlocking gears.
 .SH SYNOPSIS
 .B moebiusgears
-[\-display \fIhost:display.screen\fP] [\-window] [\-root] [\-install]
-[\-visual \fIvisual\fP]
-[\-delay \fIusecs\fP] 
-[\-speed \fIfloat\fP] 
-[\-no\-spin]
-[\-no\-wander]
-[\-no\-roll]
+[\-\-display \fIhost:display.screen\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-install]
+[\-\-visual \fIvisual\fP]
+[\-\-delay \fIusecs\fP] 
+[\-\-speed \fIfloat\fP] 
+[\-\-no\-spin]
+[\-\-no\-wander]
+[\-\-no\-roll]
 [-count \fIinteger\fP]
 [-teeth \fIinteger\fP]
 [-wireframe]
@@ -22,45 +23,48 @@ moebius strip.
 .I moebiusgears
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-install
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-delay \fIusecs\fP
+.B \-\-delay \fIusecs\fP
 The delay between frames of the animation, in microseconds.
 Default: 30000 (0.03 seconds.)
 .TP 8
-.B \-speed \fIfloat\fP
+.B \-\-speed \fIfloat\fP
 Larger numbers mean run faster.  Default: 1.0.
 .TP 8
-.B \-no\-spin
+.B \-\-no\-spin
 Don't rotate the object.
 .TP 8
-.B \-no\-wander
+.B \-\-no\-wander
 Don't wander the object around the screen.
 .TP 8
-.B \-no\-roll
+.B \-\-no\-roll
 Don't slowly roll the moebius strip inside out.
 .TP 8
-.B \-count \fIinteger\fP
+.B \-\-count \fIinteger\fP
 How many gears to draw.  Default: 17.  Minimum 11, must be odd.
 .TP 8
-.B \-teeth \fIinteger\fP
+.B \-\-teeth \fIinteger\fP
 How many teeth to draw on each draw.  Default: 15.  Minimum 7, must be odd.
 .TP 8
-.B \-wireframe
+.B \-\-wireframe
 Render in wireframe instead of solid.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .SH ENVIRONMENT
 .PP
@@ -71,6 +75,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index c173c6b37726198137fbb843953793df72d3c7db..e737d68f57ae6f2994cd4e6e0c8a128121a5f51a 100644 (file)
@@ -1,4 +1,4 @@
-/* molecule, Copyright (c) 2001-2016 Jamie Zawinski <jwz@jwz.org>
+/* molecule, Copyright (c) 2001-2016 Jamie Zawinskin <jwz@jwz.org>
  * Draws molecules, based on coordinates from PDB (Protein Data Base) files.
  *
  * Permission to use, copy, modify, distribute, and sell this software and its
@@ -1444,7 +1444,7 @@ draw_labels (ModeInfo *mi)
 
         s = 1.0 / h;                   /* Scale to unit */
         s *= mc->overall_scale;                /* Scale to size of atom */
-        s *= 0.8;                      /* Shrink a bit */
+        s *= 0.5;                      /* Shrink a bit */
         glScalef (s, s, 1);
         glTranslatef (-w/2, -h/2, 0);
 #ifndef HAVE_ANDROID   /* Doesn't work -- causes whole scene to be black */
index 38ac75112825ef88cbed3b50b8a1ce730f48e946..0c5cc54dd587249c86e211fe38e5473d89987ec3 100644 (file)
@@ -3,21 +3,22 @@
 molecule \- draws 3D molecular structures
 .SH SYNOPSIS
 .B molecule
-[\-display \fIhost:display.screen\fP] [\-window] [\-root]
-[\-visual \fIvisual\fP] [\-delay \fImicroseconds\fP]
-[\-wander] [\-no-wander]
-[\-spin \fIaxes\fP]
-[\-no-spin]
-[\-timeout \fIseconds\fP]
-[\-labels] [\-no-labels]
-[\-titles] [\-no-titles]
-[\-atoms] [\-no-atoms]
-[\-bonds] [\-no-bonds]
-[\-shells] [\-no-shells]
-[\-molecule \fIfile-or-directory\fP]
-[\-verbose]
-[\-wireframe]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-visual \fIvisual\fP] [\-\-delay \fImicroseconds\fP]
+[\-\-wander] [\-\-no-wander]
+[\-\-spin \fIaxes\fP]
+[\-\-no-spin]
+[\-\-timeout \fIseconds\fP]
+[\-\-labels] [\-\-no-labels]
+[\-\-titles] [\-\-no-titles]
+[\-\-atoms] [\-\-no-atoms]
+[\-\-bonds] [\-\-no-bonds]
+[\-\-shells] [\-\-no-shells]
+[\-\-molecule \fIfile-or-directory\fP]
+[\-\-verbose]
+[\-\-wireframe]
+[\-\-fps]
 .SH DESCRIPTION
 The \fImolecule\fP program draws several different representations of
 molecules.  Some common molecules are built in, and it can read PDB
@@ -26,89 +27,92 @@ molecules.  Some common molecules are built in, and it can read PDB
 .I molecule
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-install
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP\fP
+.B \-\-visual \fIvisual\fP\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .TP 8
-.B \-verbose
+.B \-\-verbose
 Print debugging info on stderr about files being loaded, etc.
 .TP 8
-.B \-wander
+.B \-\-wander
 Move the molecules around the screen.
 .TP 8
-.B \-no\-wander
+.B \-\-no\-wander
 Keep the molecule centered on the screen.  This is the default.
 .TP 8
-.B \-spin
+.B \-\-spin
 Which axes around which the molecule should spin.  The default is "XYZ",
-meaning rotate it freely in space.  "\fB\-spin Z\fP" would rotate the
+meaning rotate it freely in space.  "\fB\-\-spin Z\fP" would rotate the
 molecule in the plane of the screen while not rotating it into or out
 of the screen; etc.
 .TP 8
-.B \-no\-spin
-Don't spin it at all: the same as \fB\-spin ""\fP.
+.B \-\-no\-spin
+Don't spin it at all: the same as \fB\-\-spin ""\fP.
 .TP 8
-.B \-labels
+.B \-\-labels
 Draw labels on the atoms (or the spot where the atoms would be.)
 This is the default.
 .TP 8
-.B \-no\-labels
+.B \-\-no\-labels
 Do not draw labels on the atoms.
 .TP 8
-.B \-titles
+.B \-\-titles
 Print the name of the molecule and its chemical formula at the top of
 the screen.
 .TP 8
-.B \-no\-titles
+.B \-\-no\-titles
 Do not print the molecule name.
 .TP 8
-.B \-atoms
+.B \-\-atoms
 Represent the atoms as shaded spheres of appropriate sizes.
 This is the default.
 .TP 8
-.B \-no\-atoms
+.B \-\-no\-atoms
 Do not draw spheres for the atoms: only draw bond lines.
 .TP 8
-.B \-bonds
+.B \-\-bonds
 Represent the atomic bonds as solid tubes of appropriate thicknesses.
 This is the default.
 .TP 8
-.B \-no\-bonds
+.B \-\-no\-bonds
 Do not draw the bonds: instead, make the spheres for the atoms be
 larger, for a "space-filling" representation of the molecule.
 .TP 8
-.B \-shells
+.B \-\-shells
 Draw transparent electron shells around the atoms.  This only works
 if bonds are also being drawn.
 .TP 8
-.B \-no\-shells
+.B \-\-no\-shells
 Do not draw electron shells.  This is the default.
 .TP 8
-.B \-shell\-alpha
+.B \-\-shell\-alpha
 When drawing shells, how transparent to make them.  Default 0.4.
 .TP 8
-.B \-wireframe
+.B \-\-wireframe
 Draw a wireframe rendition of the molecule: this will consist only of
 single-pixel lines for the bonds, and text labels where the atoms go.
 This will be very fast.
 .TP 8
-.B \-timeout \fIseconds\fP
+.B \-\-timeout \fIseconds\fP
 When using the built-in data set, change to a new molecule every
 this-many seconds.  Default is 20 seconds.
 .TP 8
-.B \-molecule \fIfile-or-directory\fP
+.B \-\-molecule \fIfile-or-directory\fP
 Instead of using the built-in molecules, read one from the given file.
 This file must be in PDB (Protein Data Base) format.  (Note that it's
 not uncommon for PDB files to contain only the atoms, with no (or
@@ -116,10 +120,10 @@ little) information about the atomic bonds.)
 
 This can also be a directory, in which case, all of the .pdb files in
 that directory will be loaded.  A new one will be displayed at random
-every few seconds (as per the \fI\-timeout\fP option.)
+every few seconds (as per the \fI\-\-timeout\fP option.)
 .PP
 When the molecule is too large (bigger than about 30 angstroms from
-side to side), the \fI\-label\fP option will be automatically turned
+side to side), the \fI\-\-label\fP option will be automatically turned
 off, because otherwise, the labels would overlap and completely obscure
 the display.
 
@@ -134,6 +138,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 44c757bc26fc1c9ef2d89ebcde06e05b8a2d1a8f..74f91912d0adffd93ca43693c2cac1101514a85f 100644 (file)
@@ -3,35 +3,39 @@
 morph3d \- 3d morphing objects.
 .SH SYNOPSIS
 .B morph3d
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-count \fInumber\fP]
-[\-delay \fInumber\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-count \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-fps]
 .SH DESCRIPTION
 Another 3d shape-changing GL hack. It has the same shiny-plastic feel
 as Superquadrics, as many computer-generated objects do... 
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-count \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-count \fInumber\fP
 0 - 20.  Default: 0.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 40000 (0.04 seconds.).
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .SH ENVIRONMENT
 .PP
@@ -42,6 +46,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index f2143b900e6183ddf5c9377407484ace36bc4e4c..eb2e565563e3e1c69b6f9ffe67c4fba4e83d08e7 100644 (file)
@@ -3,17 +3,18 @@
 nakagin \- Nakagin Capsule Tower screen saver.
 .SH SYNOPSIS
 .B nakagin
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-speed \fInumber\fP]
-[\-no-spin]
-[\-wander]
-[\-no-tilt]
-[\-wireframe]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-speed \fInumber\fP]
+[\-\-no-spin]
+[\-\-wander]
+[\-\-no-tilt]
+[\-\-wireframe]
+[\-\-fps]
 .SH DESCRIPTION
 The Nakagin Capsule Tower was demolished in 2022, but this version will
 continue to grow forever.
@@ -24,35 +25,38 @@ produced and replaceable.  Utilities and fittings were installed before the
 capsules were shipped to the site.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 30000 (0.03 seconds).
 .TP 8
-.B \-speed \fInumber\fP
+.B \-\-speed \fInumber\fP
 Animation speed.  2.0 means twice as fast, 0.5 means half as fast.
 .TP 8
-.B \-spin | \-no-spin
+.B \-\-spin | \-\-no-spin
 Whether the building should slowly rotate.
 .TP 8
-.B \-wander | \-no-wander
+.B \-\-wander | \-\-no-wander
 Whether the building should wander around the screen.
 .TP 8
-.B \-tilt | \-no-tilt
+.B \-\-tilt | \-\-no-tilt
 Whether the observer should look up and down.
 .TP 8
-.B \-wireframe | \-no-wireframe
+.B \-\-wireframe | \-\-no-wireframe
 Render in wireframe instead of solid.
 .TP 8
-.B \-fps | \-no-fps
+.B \-\-fps | \-\-no-fps
 Whether to show a frames-per-second display at the bottom of the screen.
 .SH ENVIRONMENT
 .PP
@@ -63,6 +67,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 https://en.wikipedia.org/wiki/Nakagin_Capsule_Tower,
 .br
index a13b4d07c3df5d00c44c9a2703327f07d3dbd96e..fbbc2c5e8ad4e40160ee5ebee85c1ba4bda095dc 100644 (file)
@@ -3,30 +3,34 @@
 noof \- draw rotatey patterns
 .SH SYNOPSIS
 .B dangerball
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-fps]
 .SH DESCRIPTION
 Draws some rotatey patterns, using OpenGL.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 10000 (0.01 seconds.).
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .SH ENVIRONMENT
 .PP
@@ -37,6 +41,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 9efe310f299ffc1352dad32fffc85cb009180b60..4976d94951841e61dd0fd5fac1dd024f029a2c42 100644 (file)
@@ -3,58 +3,62 @@
 peepers \- floating eyeballs.
 .SH SYNOPSIS
 .B peepers
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-speed \fInumber\fP]
-[\-count \fInumber\fP]
-[\-mode bounce | scroll | random]
-[\-wireframe]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-speed \fInumber\fP]
+[\-\-count \fInumber\fP]
+[\-\-mode bounce | scroll | random]
+[\-\-wireframe]
+[\-\-fps]
 .SH DESCRIPTION
 Eyeballs. They float. They bounce. They stare at your cursor.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 30000 (0.03 seconds).
 .TP 8
-.B \-speed \fInumber\fP
+.B \-\-speed \fInumber\fP
 Animation speed.  2.0 means twice as fast, 0.5 means half as fast.
 .TP 8
-.B \-count \fInumber\fP
+.B \-\-count \fInumber\fP
 Number of eyes. 0 means random.
 .TP 8
-.B \-mode bounce
+.B \-\-mode bounce
 The eyeballs bounce onto the screen from the bottom.  Like a cow.
 .TP 8
-.B \-mode scroll
+.B \-\-mode scroll
 The eyeballs scroll in from the left and right.
 .TP 8
-.B \-mode xeyes
+.B \-\-mode xeyes
 The eyeballs remain stationary, but always turn to stare at the mouse
 pointer, wherever it happens to be on the screen.  Perhaps best used
-in conjunction with \fI\-count 2\fP.
+in conjunction with \fI\-\-count 2\fP.
 .TP 8
-.B \-mode beholder
-Render a ball made of eyeballs, all looking at you. Valid \fI\-count\fP
+.B \-\-mode beholder
+Render a ball made of eyeballs, all looking at you. Valid \fI\-\-count\fP
 values are 20, 80, 320 or 1280.
 .TP 8
-.B \-wireframe | \-no-wireframe
+.B \-\-wireframe | \-\-no-wireframe
 Render in wireframe instead of solid.
 .TP 8
-.B \-fps | \-no-fps
+.B \-\-fps | \-\-no-fps
 Whether to show a frames-per-second display at the bottom of the screen.
 .SH ENVIRONMENT
 .PP
@@ -65,6 +69,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index e58d0df8cf15aa6af82366853410c5ece8a1195f..ff586957cad8d04d37bd34bdd636e3c62ee0de2a 100644 (file)
@@ -3,22 +3,23 @@
 photopile \- displays multiple images in a periodically shuffled pile
 .SH SYNOPSIS
 .B photopile
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-count \fIint\fP]
-[\-scale \fIfactor\fP]
-[\-maxTilt \fIdegrees\fP]
-[\-titles | \-no\-titles]
-[\-polaroid | \-no\-polaroid]
-[\-shadows | \-no\-shadows]
-[\-font \fIfont\fP]
-[\-speed \fIratio\fP]
-[\-duration \fIseconds\fP]
-[\-fps]
-[\-debug]
-[\-wireframe]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-count \fIint\fP]
+[\-\-scale \fIfactor\fP]
+[\-\-maxTilt \fIdegrees\fP]
+[\-\-titles | \-\-no\-titles]
+[\-\-polaroid | \-\-no\-polaroid]
+[\-\-shadows | \-\-no\-shadows]
+[\-\-font \fIfont\fP]
+[\-\-speed \fIratio\fP]
+[\-\-duration \fIseconds\fP]
+[\-\-fps]
+[\-\-debug]
+[\-\-wireframe]
 .SH DESCRIPTION
 Loads several random images, and displays them as if lying in a random pile.
 The pile is periodically reshuffled, with new images coming in and old ones
@@ -32,55 +33,58 @@ To specify the directory that images are loaded from, run
 and click on the "Advanced" tab.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-count \fIint\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-count \fIint\fP
 How many images to display.  Default 7.
 .TP 8
-.B \-scale \fIfactor\fP
+.B \-\-scale \fIfactor\fP
 Size of images in relation to the size of the window.  Default 0.4.
 .TP 8
-.B \-maxTilt \fIdegrees\fP
+.B \-\-maxTilt \fIdegrees\fP
 Maximum deviation from vertical.  Default 50 degrees.
 .TP 8
-.B \-duration \fIseconds\fP
+.B \-\-duration \fIseconds\fP
 Every \fIduration\fP seconds, one of the images will be replaced
 with a new one.  Default 5 seconds.
 .TP 8
-.B \-speed \fIratio\fP
+.B \-\-speed \fIratio\fP
 Speed up or slow down the animation.  0.5 means half as fast as the
 default; 2.0 means twice as fast.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 10000 (0.01 seconds.).
 .TP 8
-.B \-titles \fB| \-no\-titles\fP
+.B \-\-titles \fB| \-\-no\-titles\fP
 Whether to display the file names of the images beneath them.  Default: yes.
 .TP 8
-.B \-polaroid \fB| \-no\-polaroid\fP
+.B \-\-polaroid \fB| \-\-no\-polaroid\fP
 Whether to simulate images taken by an instant camera.  Default: yes.
 .TP 8
-.B \-shadows \fB| \-no\-shadows\fP
+.B \-\-shadows \fB| \-\-no\-shadows\fP
 Whether to draw images with drop shadows.  Default: no.
 .TP 8
-.B \-font \fIfont-name\fP
+.B \-\-font \fIfont-name\fP
 The font to use for the initial loading screen and for image titles.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .TP 8
-.B \-debug
+.B \-\-debug
 Prints debugging info to stderr.
 .TP 8
-.B \-wireframe
+.B \-\-wireframe
 Another debug mode.
 .SH ENVIRONMENT
 .PP
@@ -91,6 +95,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver\-settings (1)
index bada8f4d225d01b369ba6d4ba650053c55183437..73d718173579019d66a6c45a97677b4afdc9ae2d 100644 (file)
@@ -3,15 +3,16 @@
 pinion \- draws a scrolling sequence of interconnected gears
 .SH SYNOPSIS
 .B pinion
-[\-display \fIhost:display.screen\fP] [\-window] [\-root] [\-install]
-[\-visual \fIvisual\fP] 
-[\-delay \fIusecs\fP] 
-[\-scroll \fIratio\fP]
-[\-spin \fIratio\fP]
-[\-size \fIratio\fP]
-[\-max-rpm \fIint\fP]
-[\-wireframe]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-install]
+[\-\-visual \fIvisual\fP] 
+[\-\-delay \fIusecs\fP] 
+[\-\-scroll \fIratio\fP]
+[\-\-spin \fIratio\fP]
+[\-\-size \fIratio\fP]
+[\-\-max-rpm \fIint\fP]
+[\-\-wireframe]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIpinion\fP program draws an interconnected set of gears moving
 across the screen.
@@ -19,43 +20,46 @@ across the screen.
 .I pinion
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-install
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP\fP
+.B \-\-visual \fIvisual\fP\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-delay \fIusecs\fP
+.B \-\-delay \fIusecs\fP
 The delay between frames of the animation, in microseconds: default 15000.
 .TP 8
-.B \-spin \fIratio\fP
+.B \-\-spin \fIratio\fP
 How fast the gears should spin; default 1.0.  2.0 means twice as fast,
 0.5 means half as fast.
 .TP 8
-.B \-scroll \fIratio\fP
+.B \-\-scroll \fIratio\fP
 How fast the gears should scroll past the screen; default 1.0.  
 2.0 means twice as fast, 0.5 means half as fast.
 .TP 8
-.B \-size \fIratio\fP
+.B \-\-size \fIratio\fP
 How big the gears should be, on average; default 1.0. 
 2.0 means twice as large, 0.5 means half as large.
 .TP 8
-.B \-max\-rpm \fIinteger\fP
+.B \-\-max\-rpm \fIinteger\fP
 If any gear exceeds the maximum RPM, the current gear train is broken there,
 and we start a new train.  Default: 900 RPM.  (At 30 FPS, that's about half
 a rotation per frame.)
 .TP 8
-.B \-wireframe
+.B \-\-wireframe
 Render in wireframe instead of solid.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .SH ENVIRONMENT
 .PP
@@ -66,6 +70,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR gears (MANSUFFIX),
 .BR xscreensaver (1),
index f367c748d5a14d946c54926e4738f67580556dd9..490fb21f9690646d01ef2a3ad9d76fcbff7fa750 100644 (file)
@@ -3,10 +3,11 @@
 pipes \- fill the screen with a plumbing system.
 .SH SYNOPSIS
 .B pipes
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
 [-count 0]
 [-count 1]
 [-cycles \fInumber\fP]
@@ -22,44 +23,47 @@ If you've ever been in the same room as a Windows NT machine, you've
 probably seen this GL hack.  It fills the screen with a plumbing system.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-count 0
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-count 0
 Curved Pipes.
 .TP 8
-.B \-count 1
+.B \-\-count 1
 Ball Joints.
 .TP 8
-.B \-cycles \fInumber\fP
+.B \-\-cycles \fInumber\fP
 Number of pipe systems to draw at once.  Default: 5.
 .TP 8
-.B \-size \fInumber\fP
+.B \-\-size \fInumber\fP
 Length of each pipe system.  Default: 500.
 .TP 8
-.B \-factory \fInumber\fP
+.B \-\-factory \fInumber\fP
 How much gadgetry to create; Useful range is 0-10.  Default: 2.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-delay \fInumber\fP
 How long (in microseconds) to sleep between frames.  Default: 10000.
 .TP 8
-.B \-fisheye | \-no-fisheye
+.B \-\-fisheye | \-\-no-fisheye
 Whether to use a fisheye lens.
 .TP 8
-.B \-tightturns | \-no-tightturns
+.B \-\-tightturns | \-\-no-tightturns
 Whether to allow tight turns.
 .TP 8
-.B \-db | \-no-db
+.B \-\-db | \-\-no-db
 Whether to double-buffer.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .SH ENVIRONMENT
 .PP
@@ -70,6 +74,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index c08dd54134616603122ecf0da71c0cb1e488c618..0408760f3389a7818ba620093a4e584c697086d4 100644 (file)
@@ -4,20 +4,21 @@ polyhedra \- draws the 80 uniform polyhedra and their duals
 .SH SYNOPSIS
 .SH SYNOPSIS
 .B polyhedra
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-speed \fIfloat\fP]
-[\-duration \fIseconds\fP]
-[\-no-wander]
-[\-spin \fIXYZ\fP]
-[\-wireframe]
-[\-no-titles]
-[\-which \fIname\fP]
-[\-wireframe]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-speed \fIfloat\fP]
+[\-\-duration \fIseconds\fP]
+[\-\-no-wander]
+[\-\-spin \fIXYZ\fP]
+[\-\-wireframe]
+[\-\-no-titles]
+[\-\-which \fIname\fP]
+[\-\-wireframe]
+[\-\-fps]
 .SH DESCRIPTION
 This program renders 160 different 3D solids, and displays some
 information about each.  A new solid is chosen every few seconds.
@@ -41,42 +42,45 @@ create the "dual" of a polyhedron, faces are replaced with vertices,
 and vertices with faces.)
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 30000 (0.03 seconds.).
 .TP 8
-.B \-speed \fInumber\fP
+.B \-\-speed \fInumber\fP
 Larger numbers mean run faster.  Default: 1.0.
 .TP 8
-.B \-duration \fIseconds\fP
+.B \-\-duration \fIseconds\fP
 How long before switching to a new polyhedron.  Default 12 seconds.
 .TP 8
-.B \-wander | \-no-wander
+.B \-\-wander | \-\-no-wander
 Whether the objects should wander around the screen.
 .TP 8
-.B \-spin [XYZ] | \-no-spin
+.B \-\-spin [XYZ] | \-\-no-spin
 Which axes, if any, to spin around on.
 .TP 8
-.B \-titles | \-no-titles
+.B \-\-titles | \-\-no-titles
 Whether to display text describing each object.
 .TP 8
-.B \-which \fIobject-name\fP
+.B \-\-which \fIobject-name\fP
 Display only one particular object, identified by number, name, or
 Whthoff symbol.
 .TP 8
-.B \-wireframe | \-no-wireframe
+.B \-\-wireframe | \-\-no-wireframe
 Render in wireframe instead of solid.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .SH KEY BINDINGS
 When running in a window, you can rotate the object with the mouse.
@@ -102,6 +106,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 2016828793074ed87b67bbe528c36c412cdbc663..951838e31b2470a1bea03f17ace97df5cd48152c 100644 (file)
@@ -3,34 +3,35 @@
 polytopes \- Draws one of the six regular 4d polytopes rotating in 4d.
 .SH SYNOPSIS
 .B polytopes
-[\-display \fIhost:display.screen\fP]
-[\-install]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fIusecs\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-install]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fIusecs\fP]
+[\-\-fps]
 [\-5-cell]
 [\-8-cell]
 [\-16-cell]
 [\-24-cell]
 [\-120-cell]
 [\-600-cell]
-[\-wireframe]
-[\-surface]
-[\-transparent]
-[\-single-color]
-[\-depth-colors]
-[\-perspective-3d]
-[\-orthographic-3d]
-[\-perspective-4d]
-[\-orthographic-4d]
-[\-speed-wx \fIfloat\fP]
-[\-speed-wy \fIfloat\fP]
-[\-speed-wz \fIfloat\fP]
-[\-speed-xy \fIfloat\fP]
-[\-speed-xz \fIfloat\fP]
-[\-speed-yz \fIfloat\fP]
+[\-\-wireframe]
+[\-\-surface]
+[\-\-transparent]
+[\-\-single-color]
+[\-\-depth-colors]
+[\-\-perspective-3d]
+[\-\-orthographic-3d]
+[\-\-perspective-4d]
+[\-\-orthographic-4d]
+[\-\-speed-wx \fIfloat\fP]
+[\-\-speed-wy \fIfloat\fP]
+[\-\-speed-wz \fIfloat\fP]
+[\-\-speed-xy \fIfloat\fP]
+[\-\-speed-xz \fIfloat\fP]
+[\-\-speed-yz \fIfloat\fP]
 .SH DESCRIPTION
 The \fIpolytopes\fP program shows one of the six regular 4d polytopes
 (5-cell, 8-cell, 16-cell, 24-cell, 120-cell, or 600-cell) rotating in
@@ -56,20 +57,23 @@ the cells lie "inside" the figure in 3d.
 .I polytopes
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-install
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual
 class, or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-delay \fImicroseconds\fP
+.B \-\-delay \fImicroseconds\fP
 How much of a delay should be introduced between steps of the
 animation.  Default 25000, or 1/40th second.
 .PP
@@ -109,22 +113,22 @@ regular tetrahedra as its cells, 1200 equilateral triangles as faces,
 The following three options are mutually exclusive.  They determine
 how the polytope is displayed.
 .TP 8
-.B \-wireframe
+.B \-\-wireframe
 Display the polytope as a wireframe mesh.
 .TP 8
-.B \-surface
+.B \-\-surface
 Display the polytope as a solid object.
 .TP 8
-.B \-transparent
+.B \-\-transparent
 Display the polytope as a transparent object (default).
 .PP
 The following two options are mutually exclusive.  They determine how
 to color the polytope.
 .TP 8
-.B \-single-color
+.B \-\-single-color
 Display the polytope in red.
 .TP 8
-.B \-depth-colors
+.B \-\-depth-colors
 Display the polytope with a fully saturated color wheel in which the
 edges or faces are colored according to their average 4d "depth", i.e.,
 the w coordinate of the polytope in its unrotated position (default).
@@ -132,21 +136,21 @@ the w coordinate of the polytope in its unrotated position (default).
 The following two options are mutually exclusive.  They determine how
 the polytope is projected from 3d to 2d (i.e., to the screen).
 .TP 8
-.B \-perspective-3d
+.B \-\-perspective-3d
 Project the polytope from 3d to 2d using a perspective projection
 (default).
 .TP 8
-.B \-orthographic-3d
+.B \-\-orthographic-3d
 Project the polytope from 3d to 2d using an orthographic projection.
 .PP
 The following two options are mutually exclusive.  They determine how
 the polytope is projected from 4d to 3d.
 .TP 8
-.B \-perspective-4d
+.B \-\-perspective-4d
 Project the polytope from 4d to 3d using a perspective projection
 (default).
 .TP 8
-.B \-orthographic-4d
+.B \-\-orthographic-4d
 Project the polytope from 4d to 3d using an orthographic projection.
 .PP
 The following six options determine the rotation speed of the polytope
@@ -154,22 +158,22 @@ around the six possible hyperplanes.  The rotation speed is measured
 in degrees per frame.  The speeds should be set to relatively small
 values, e.g., less than 4 in magnitude.
 .TP 8
-.B \-speed-wx \fIfloat\fP
+.B \-\-speed-wx \fIfloat\fP
 Rotation speed around the wx plane (default: 1.1).
 .TP 8
-.B \-speed-wy \fIfloat\fP
+.B \-\-speed-wy \fIfloat\fP
 Rotation speed around the wy plane (default: 1.3).
 .TP 8
-.B \-speed-wz \fIfloat\fP
+.B \-\-speed-wz \fIfloat\fP
 Rotation speed around the wz plane (default: 1.5).
 .TP 8
-.B \-speed-xy \fIfloat\fP
+.B \-\-speed-xy \fIfloat\fP
 Rotation speed around the xy plane (default: 1.7).
 .TP 8
-.B \-speed-xz \fIfloat\fP
+.B \-\-speed-xz \fIfloat\fP
 Rotation speed around the xz plane (default: 1.9).
 .TP 8
-.B \-speed-yz \fIfloat\fP
+.B \-\-speed-yz \fIfloat\fP
 Rotation speed around the yz plane (default: 2.1).
 .SH INTERACTION
 If you run this program in standalone mode you can rotate the polytope
@@ -180,7 +184,7 @@ button pressed the polytope is rotated in 4D, i.e., around the xy, xz,
 and yz planes.  To examine the polytope at your leisure, it is best to
 set all speeds to 0.  Otherwise, the polytope will rotate while the
 left mouse button is not pressed.
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .SH ENVIRONMENT
 .PP
@@ -191,6 +195,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index bf6ffb10cdeae51cfce2bf468e074bc7e3abfdc1..b505bb8e8ee0c8755a17aeeef6cb70e8db90a139 100644 (file)
@@ -3,47 +3,48 @@
 projectiveplane \- Draws a 4d embedding of the real projective plane.
 .SH SYNOPSIS
 .B projectiveplane
-[\-display \fIhost:display.screen\fP]
-[\-install]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fIusecs\fP]
-[\-fps]
-[\-mode \fIdisplay-mode\fP]
-[\-wireframe]
-[\-surface]
-[\-transparent]
-[\-appearance \fIappearance\fP]
-[\-solid]
-[\-distance-bands]
-[\-direction-bands]
-[\-colors \fIcolor-scheme\fP]
-[\-onesided-colors]
-[\-twosided-colors]
-[\-distance-colors]
-[\-direction-colors]
-[\-change-colors]
-[\-depth-colors]
-[\-view-mode \fIview-mode\fP]
-[\-walk]
-[\-turn]
-[\-walk-turn]
-[\-orientation-marks]
-[\-projection-3d \fImode\fP]
-[\-perspective-3d]
-[\-orthographic-3d]
-[\-projection-4d \fImode\fP]
-[\-perspective-4d]
-[\-orthographic-4d]
-[\-speed-wx \fIfloat\fP]
-[\-speed-wy \fIfloat\fP]
-[\-speed-wz \fIfloat\fP]
-[\-speed-xy \fIfloat\fP]
-[\-speed-xz \fIfloat\fP]
-[\-speed-yz \fIfloat\fP]
-[\-walk-direction \fIfloat\fP]
-[\-walk-speed \fIfloat\fP]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-install]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fIusecs\fP]
+[\-\-fps]
+[\-\-mode \fIdisplay-mode\fP]
+[\-\-wireframe]
+[\-\-surface]
+[\-\-transparent]
+[\-\-appearance \fIappearance\fP]
+[\-\-solid]
+[\-\-distance-bands]
+[\-\-direction-bands]
+[\-\-colors \fIcolor-scheme\fP]
+[\-\-onesided-colors]
+[\-\-twosided-colors]
+[\-\-distance-colors]
+[\-\-direction-colors]
+[\-\-change-colors]
+[\-\-depth-colors]
+[\-\-view-mode \fIview-mode\fP]
+[\-\-walk]
+[\-\-turn]
+[\-\-walk-turn]
+[\-\-orientation-marks]
+[\-\-projection-3d \fImode\fP]
+[\-\-perspective-3d]
+[\-\-orthographic-3d]
+[\-\-projection-4d \fImode\fP]
+[\-\-perspective-4d]
+[\-\-orthographic-4d]
+[\-\-speed-wx \fIfloat\fP]
+[\-\-speed-wy \fIfloat\fP]
+[\-\-speed-wz \fIfloat\fP]
+[\-\-speed-xy \fIfloat\fP]
+[\-\-speed-xz \fIfloat\fP]
+[\-\-speed-yz \fIfloat\fP]
+[\-\-walk-direction \fIfloat\fP]
+[\-\-walk-speed \fIfloat\fP]
 .SH DESCRIPTION
 The \fIprojectiveplane\fP program shows a 4d embedding of the real
 projective plane.  You can walk on the projective plane, see it turn
@@ -188,76 +189,79 @@ Dimensions", Scientific American Library, 1990.
 .I projectiveplane
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-install
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual
 class, or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-delay \fImicroseconds\fP
+.B \-\-delay \fImicroseconds\fP
 How much of a delay should be introduced between steps of the
 animation.  Default 10000, or 1/100th second.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .PP
 The following four options are mutually exclusive.  They determine how
 the projective plane is displayed.
 .TP 8
-.B \-mode random
+.B \-\-mode random
 Display the projective plane in a random display mode (default).
 .TP 8
-.B \-mode wireframe \fP(Shortcut: \fB\-wireframe\fP)
+.B \-\-mode wireframe \fP(Shortcut: \fB\-\-wireframe\fP)
 Display the projective plane as a wireframe mesh.
 .TP 8
-.B \-mode surface \fP(Shortcut: \fB\-surface\fP)
+.B \-\-mode surface \fP(Shortcut: \fB\-\-surface\fP)
 Display the projective plane as a solid surface.
 .TP 8
-.B \-mode transparent \fP(Shortcut: \fB\-transparent\fP)
+.B \-\-mode transparent \fP(Shortcut: \fB\-\-transparent\fP)
 Display the projective plane as a transparent surface.
 .PP
 The following three options are mutually exclusive.  They determine
 the appearance of the projective plane.
 .TP 8
-.B \-appearance random
+.B \-\-appearance random
 Display the projective plane with a random appearance (default).
 .TP 8
-.B \-appearance solid \fP(Shortcut: \fB\-solid\fP)
+.B \-\-appearance solid \fP(Shortcut: \fB\-\-solid\fP)
 Display the projective plane as a solid object.
 .TP 8
-.B \-appearance distance-bands \fP(Shortcut: \fB\-distance-bands\fP)
+.B \-\-appearance distance-bands \fP(Shortcut: \fB\-\-distance-bands\fP)
 Display the projective plane as see-through bands that lie at
 increasing distances from the origin.
 .PP
 .TP 8
-.B \-appearance direction-bands \fP(Shortcut: \fB\-direction-bands\fP)
+.B \-\-appearance direction-bands \fP(Shortcut: \fB\-\-direction-bands\fP)
 Display the projective plane as see-through bands that lie at
 increasing angles with respect to the origin.
 .PP
 The following four options are mutually exclusive.  They determine how
 to color the projective plane.
 .TP 8
-.B \-colors random
+.B \-\-colors random
 Display the projective plane with a random color scheme (default).
 .TP 8
-.B \-colors onesided \fP(Shortcut: \fB\-onesided-colors\fP)
+.B \-\-colors onesided \fP(Shortcut: \fB\-\-onesided-colors\fP)
 Display the projective plane with a single color.
 .TP 8
-.B \-colors twosided \fP(Shortcut: \fB\-twosided-colors\fP)
+.B \-\-colors twosided \fP(Shortcut: \fB\-\-twosided-colors\fP)
 Display the projective plane with two colors: one color one "side" and
 the complementary color on the "other side."  For static colors, the
 colors are red and green.  Note that the line at infinity lies at the
 points where the red and green "sides" of the projective plane meet,
 i.e., where the orientation of the projective plane reverses.
 .TP 8
-.B \-colors distance \fP(Shortcut: \fB\-distance-colors\fP)
+.B \-\-colors distance \fP(Shortcut: \fB\-\-distance-colors\fP)
 Display the projective plane with fully saturated colors that depend
 on the distance of the points on the projective plane to the origin.
 For static colors, the origin is displayed in red, while the line at
@@ -265,7 +269,7 @@ infinity is displayed in magenta.  If the projective plane is
 displayed as distance bands, each band will be displayed with a
 different color.
 .TP 8
-.B \-colors direction \fP(Shortcut: \fB\-direction-colors\fP)
+.B \-\-colors direction \fP(Shortcut: \fB\-\-direction-colors\fP)
 Display the projective plane with fully saturated colors that depend
 on the angle of the points on the projective plane with respect to the
 origin.  Angles in opposite directions to the origin (e.g., 15 and 205
@@ -273,7 +277,7 @@ degrees) are displayed in the same color since they are projectively
 equivalent.  If the projective plane is displayed as direction bands,
 each band will be displayed with a different color.
 .TP 8
-.B \-colors depth \fP(Shortcut: \fB\-depth\fP)
+.B \-\-colors depth \fP(Shortcut: \fB\-\-depth\fP)
 Display the projective plane with colors chosen depending on the 4d
 "depth" (i.e., the w coordinate) of the points on the projective plane
 at its default orientation in 4d.
@@ -281,26 +285,26 @@ at its default orientation in 4d.
 The following options determine whether the colors with which the
 projective plane is displayed are static or are changing dynamically.
 .TP 8
-.B \-change-colors
+.B \-\-change-colors
 Change the colors with which the projective plane is displayed
 dynamically.
 .TP 8
-.B \-no-change-colors
+.B \-\-no-change-colors
 Use static colors to display the projective plane (default).
 .PP
 The following four options are mutually exclusive.  They determine how
 to view the projective plane.
 .TP 8
-.B \-view-mode random
+.B \-\-view-mode random
 View the projective plane in a random view mode (default).
 .TP 8
-.B \-view-mode turn \fP(Shortcut: \fB\-turn\fP)
+.B \-\-view-mode turn \fP(Shortcut: \fB\-\-turn\fP)
 View the projective plane while it turns in 4d.
 .TP 8
-.B \-view-mode walk \fP(Shortcut: \fB\-walk\fP)
+.B \-\-view-mode walk \fP(Shortcut: \fB\-\-walk\fP)
 View the projective plane as if walking on its surface.
 .TP 8
-.B \-view-mode walk-turn \fP(Shortcut: \fB\-walk-turn\fP)
+.B \-\-view-mode walk-turn \fP(Shortcut: \fB\-\-walk-turn\fP)
 View the projective plane as if walking on its surface.  Additionally,
 the projective plane turns around the true 4d planes (the xy, xz, and
 yz planes).
@@ -308,40 +312,40 @@ yz planes).
 The following options determine whether orientation marks are shown on
 the projective plane.
 .TP 8
-.B \-orientation-marks
+.B \-\-orientation-marks
 Display orientation marks on the projective plane.
 .TP 8
-.B \-no-orientation-marks
+.B \-\-no-orientation-marks
 Don't display orientation marks on the projective plane (default).
 .PP
 The following three options are mutually exclusive.  They determine
 how the projective plane is projected from 3d to 2d (i.e., to the
 screen).
 .TP 8
-.B \-projection-3d random
+.B \-\-projection-3d random
 Project the projective plane from 3d to 2d using a random projection
 mode (default).
 .TP 8
-.B \-projection-3d perspective \fP(Shortcut: \fB\-perspective-3d\fP)
+.B \-\-projection-3d perspective \fP(Shortcut: \fB\-\-perspective-3d\fP)
 Project the projective plane from 3d to 2d using a perspective
 projection.
 .TP 8
-.B \-projection-3d orthographic \fP(Shortcut: \fB\-orthographic-3d\fP)
+.B \-\-projection-3d orthographic \fP(Shortcut: \fB\-\-orthographic-3d\fP)
 Project the projective plane from 3d to 2d using an orthographic
 projection.
 .PP
 The following three options are mutually exclusive.  They determine
 how the projective plane is projected from 4d to 3d.
 .TP 8
-.B \-projection-4d random
+.B \-\-projection-4d random
 Project the projective plane from 4d to 3d using a random projection
 mode (default).
 .TP 8
-.B \-projection-4d perspective \fP(Shortcut: \fB\-perspective-4d\fP)
+.B \-\-projection-4d perspective \fP(Shortcut: \fB\-\-perspective-4d\fP)
 Project the projective plane from 4d to 3d using a perspective
 projection.
 .TP 8
-.B \-projection-4d orthographic \fP(Shortcut: \fB\-orthographic-4d\fP)
+.B \-\-projection-4d orthographic \fP(Shortcut: \fB\-\-orthographic-4d\fP)
 Project the projective plane from 4d to 3d using an orthographic
 projection.
 .PP
@@ -355,27 +359,27 @@ walk-and-turn mode, smaller speeds must be used than in the turn mode
 to achieve a nice visualization.  Therefore, in walk-and-turn mode the
 speeds you have selected are divided by 5 internally.
 .TP 8
-.B \-speed-wx \fIfloat\fP
+.B \-\-speed-wx \fIfloat\fP
 Rotation speed around the wx plane (default: 1.1).
 .TP 8
-.B \-speed-wy \fIfloat\fP
+.B \-\-speed-wy \fIfloat\fP
 Rotation speed around the wy plane (default: 1.3).
 .TP 8
-.B \-speed-wz \fIfloat\fP
+.B \-\-speed-wz \fIfloat\fP
 Rotation speed around the wz plane (default: 1.5).
 .TP 8
-.B \-speed-xy \fIfloat\fP
+.B \-\-speed-xy \fIfloat\fP
 Rotation speed around the xy plane (default: 1.7).
 .TP 8
-.B \-speed-xz \fIfloat\fP
+.B \-\-speed-xz \fIfloat\fP
 Rotation speed around the xz plane (default: 1.9).
 .TP 8
-.B \-speed-yz \fIfloat\fP
+.B \-\-speed-yz \fIfloat\fP
 Rotation speed around the yz plane (default: 2.1).
 .PP
 The following two options determine the walking speed and direction.
 .TP 8
-.B \-walk-direction \fIfloat\fP
+.B \-\-walk-direction \fIfloat\fP
 The walking direction is measured as an angle in degrees in the 2d
 square that forms the coordinate system of the surface of the
 projective plane (default: 83.0).  A value of 0 or 180 means that the
@@ -385,7 +389,7 @@ walk is directly from the origin to the line at infinity and back
 (analogous to a direction band).  Any other value results in a curved
 path from the origin to the line at infinity and back.
 .TP 8
-.B \-walk-speed \fIfloat\fP
+.B \-\-walk-speed \fIfloat\fP
 The walking speed is measured in percent of some sensible maximum
 speed (default: 20.0).
 .SH INTERACTION
@@ -408,6 +412,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 0ee2d9bd292b3a7750c2ac2db1e5afbd2c5f7aad..c9108e247d30ce74c4147638777b4473aef2769d 100644 (file)
@@ -3,14 +3,15 @@
 providence \- eye in glory screenhack
 .SH SYNOPSIS
 .B providence
-[\-display \fIhost:display.screen\fP]
-[\-window]
-[\-root]
- [\-install]
-[\-visual \fIvisual\fP]
-[\-delay \fImicroseconds\fP]
-[\-wireframe]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+ [\-\-install]
+[\-\-visual \fIvisual\fP]
+[\-\-delay \fImicroseconds\fP]
+[\-\-wireframe]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIprovidence\fP code displays an eye, shrouded in glory, set upon the
 base of a pyramid.
@@ -18,26 +19,29 @@ base of a pyramid.
 .I providence
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-install
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-eye
+.B \-\-eye
 Draw an eye/$.
 .TP 8
-.B \-visual \fIvisual\fP\fP
+.B \-\-visual \fIvisual\fP\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-wireframe
+.B \-\-wireframe
 Render in wireframe (with hidden line removal) instead of as textured solids.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .SH ENVIRONMENT
 .PP
@@ -48,6 +52,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index f5697a96df87b045dabfe4de666be6649038b73f..40b18359953baffce239c4fd14027e47051c6fde 100644 (file)
@@ -3,80 +3,84 @@
 pulsar \- intersecting planes, alpha blending, fog, and textures.
 .SH SYNOPSIS
 .B pulsar
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-no-light]
-[\-wire]
-[\-delay \fInumber\fP]
-[\-quads \fInumber\fP]
-[\-image \fIfile\fP]
-[\-light]
-[\-fog]
-[\-texture]
-[\-mipmap]
-[\-no-blend]
-[\-antialias]
-[\-texture_quality]
-[\-do_depth]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-no-light]
+[\-\-wire]
+[\-\-delay \fInumber\fP]
+[\-\-quads \fInumber\fP]
+[\-\-image \fIfile\fP]
+[\-\-light]
+[\-\-fog]
+[\-\-texture]
+[\-\-mipmap]
+[\-\-no-blend]
+[\-\-antialias]
+[\-\-texture_quality]
+[\-\-do_depth]
+[\-\-fps]
 .SH DESCRIPTION
 Draws some intersecting planes, making use of alpha blending, fog,
 textures, and mipmaps, plus a ``frames per second'' meter so that you can
 tell how fast your graphics card is... Requires OpenGL.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-light | \-no-light
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-light | \-\-no-light
 Use Flat Coloring.
 .TP 8
-.B \-wire
+.B \-\-wire
 Render in wireframe instead of solid.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 10000 (0.01 seconds.).
 .TP 8
-.B \-image \fIfile\fP
+.B \-\-image \fIfile\fP
 The texture map to use.
 .TP 8
-.B \-quads \fInumber\fP
+.B \-\-quads \fInumber\fP
 Quad Count.  1 - 50.  Default: 5.
 .TP 8
-.B \-light | \-no-light
+.B \-\-light | \-\-no-light
 Whether to enable lighting.
 .TP 8
-.B \-fog | \-no-fog
+.B \-\-fog | \-\-no-fog
 Whether to enable fog.
 .TP 8
-.B \-texture | \-no-texture
+.B \-\-texture | \-\-no-texture
 Whether to enable texturing.
 .TP 8
-.B \-mipmap | \-no-mipmap
+.B \-\-mipmap | \-\-no-mipmap
 Whether to enable texture mipmaps.
 .TP 8
-.B \-blend | \-no-blend
+.B \-\-blend | \-\-no-blend
 Whether to enable blending.
 .TP 8
-.B \-antialias | \-no-antialias
+.B \-\-antialias | \-\-no-antialias
 Whether to anti-alias lines.
 .TP 8
-.B \-texture_quality | \-no-texture_quality
+.B \-\-texture_quality | \-\-no-texture_quality
 Whether to enable texture filtering.
 .TP 8
-.B \-do_depth | \-no-do_depth
+.B \-\-do_depth | \-\-no-do_depth
 Whether to enable depth buffer.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .SH ENVIRONMENT
 .PP
@@ -87,6 +91,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index ff4003eddc105e5fea3762e5ec4c3fb247dd3a08..8f7d52a33dac54d4187fc89bda0df3ddfefa32b3 100644 (file)
@@ -3,18 +3,19 @@
 quasicrystal \- aperiodic plane tilings.
 .SH SYNOPSIS
 .B quasicrystal
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-speed \fInumber\fP]
-[\-count \fInumber\fP]
-[\-contrast \fIpercent\fP]
-[\-no-wander]
-[\-no-spin]
-[\-asymmetric]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-speed \fInumber\fP]
+[\-\-count \fInumber\fP]
+[\-\-contrast \fIpercent\fP]
+[\-\-no-wander]
+[\-\-no-spin]
+[\-\-asymmetric]
+[\-\-fps]
 .SH DESCRIPTION
 A quasicrystal is a structure that is ordered but aperiodic.
 Two-dimensional quasicrystals can be generated by adding a set of planes
@@ -25,39 +26,42 @@ the circle (the "symmetric" option, above) or random. See also the
 "RD-Bomb", "CWaves" and "Penrose" screen savers.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 30000 (0.03 seconds.).
 .TP 8
-.B \-speed \fInumber\fP
+.B \-\-speed \fInumber\fP
 Animation speed. 2 for twice as fast, 0.5 for half as fast.
 .TP 8
-.B \-contrast \fIcontrast\fP
+.B \-\-contrast \fIcontrast\fP
 Contrast. Sort of.  Default 30%.
 .TP 8
-.B \-count \fInumber\fP
+.B \-\-count \fInumber\fP
 How many planes to use. Default 17.
 .TP 8
-.B \-wander | \-no-wander
+.B \-\-wander | \-\-no-wander
 Whether the planes should displace horizontally and vertically.
 .TP 8
-.B \-spin | \-no-spin
+.B \-\-spin | \-\-no-spin
 Whether the planes should rotate.
 .TP 8
-.B \-asymmetric
+.B \-\-asymmetric
 Allow each plane to rotate freely instead of being constrained to an
 even distribution around the circle.
 .TP 8
-.B \-fps | \-no-fps
+.B \-\-fps | \-\-no-fps
 Whether to show a frames-per-second display at the bottom of the screen.
 .SH ENVIRONMENT
 .PP
@@ -68,6 +72,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 9626b06502995dd9b5f6b6f2e6d20c97a8c13022..706a85b432f1948a00a2dfeb106a1c12765da3e8 100644 (file)
@@ -3,14 +3,15 @@
 queens \- n queens screensaver
 .SH SYNOPSIS
 .B queens
-[\-display \fIhost:display.screen\fP]
-[\-window]
-[\-root]
-[\-install]
-[\-visual \fIvisual\fP]
-[\-delay \fImicroseconds\fP]
-[\-wireframe]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-install]
+[\-\-visual \fIvisual\fP]
+[\-\-delay \fImicroseconds\fP]
+[\-\-wireframe]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIqueens\fP program solves the n-queens problem (where, in this
 program, N is between 5 and 10 queens) using a straightforward
@@ -20,22 +21,25 @@ on an NxN chessboard such that no queen can attack a sister?
 .I queens
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-install
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP\fP
+.B \-\-visual \fIvisual\fP\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-wireframe
+.B \-\-wireframe
 Render in wireframe instead of solid.
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .SH ENVIRONMENT
 .PP
@@ -46,6 +50,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH BUGS
 It's not unknown for this and other OpenGL hacks to fail under hardware accelaration (UtahGLX) and take the X server with them.  Texture images must be 16x16 or 32x32 or 64x64 etc.
 .SH SEE ALSO
index 425c504cfc3471c41c9001d8d65faca9e98fe184..3f63c3c8e9872b9b385866185a39fa1daf3435ba 100644 (file)
@@ -3,61 +3,65 @@
 raverhoop \- Simulates an LED hula hoop in a dark room.
 .SH SYNOPSIS
 .B raverhoop
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-ncolors \fInumber\fP]
-[\-lights \fInumber\fP]
-[\-speed \fInumber\fP]
-[\-light-speed \fInumber\fP]
-[\-sustain \fInumber\fP]
-[\-no-wander]
-[\-no-spin]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-ncolors \fInumber\fP]
+[\-\-lights \fInumber\fP]
+[\-\-speed \fInumber\fP]
+[\-\-light-speed \fInumber\fP]
+[\-\-sustain \fInumber\fP]
+[\-\-no-wander]
+[\-\-no-spin]
+[\-\-fps]
 .SH DESCRIPTION
 Simulates an LED hula hoop in a dark room. Oontz oontz oontz.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 20000 (0.02 seconds).
 .TP 8
-.B \-ncolors \fInumber\fP
+.B \-\-ncolors \fInumber\fP
 The number of colors to use on the hoop.  Default: 12.
 .TP 8
-.B \-lights \fInumber\fP
+.B \-\-lights \fInumber\fP
 The number of LEDs comprising the hoop.  Default: 200.
 .TP 8
-.B \-speed \fInumber\fP
+.B \-\-speed \fInumber\fP
 Speed of the motion of the object.
 2.0 means twice as fast, 0.5 means half as fast.
 .TP 8
-.B \-light-speed \fInumber\fP
+.B \-\-light-speed \fInumber\fP
 Speed at which the lights animate.
 2.0 means twice as fast, 0.5 means half as fast.
 .TP 8
-.B \-sustain \fInumber\fP
+.B \-\-sustain \fInumber\fP
 Speed at which the after-images / vapor trails fade away.
 2.0 means they last twice as long, 0.5 means half as long.
 .TP 8
-.B \-wander | \-no-wander
+.B \-\-wander | \-\-no-wander
 Whether the object should wander around the screen.
 .TP 8
-.B \-spin | \-no-spin
+.B \-\-spin | \-\-no-spin
 Whether the scene itself should spin.
 .TP 8
-.B \-fps | \-no-fps
+.B \-\-fps | \-\-no-fps
 Whether to show a frames-per-second display at the bottom of the screen.
 .SH ENVIRONMENT
 .PP
@@ -68,6 +72,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index b2a731ff0ebb3e19fab56d450f716190ff61a895..cedf9921891df91fc69f6c853ac3a86c00af5198 100644 (file)
@@ -3,17 +3,18 @@
 razzledazzle \- screen saver.
 .SH SYNOPSIS
 .B razzledazzle
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-speed \fInumber\fP]
-[\-ncolors \fInumber\fP]
-[\-density \fInumber\fP]
-[\-thickness \fInumber\fP]
-[\-mode \fIstring\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-speed \fInumber\fP]
+[\-\-ncolors \fInumber\fP]
+[\-\-density \fInumber\fP]
+[\-\-thickness \fInumber\fP]
+[\-\-mode \fIstring\fP]
+[\-\-fps]
 .SH DESCRIPTION
 Generates an infinitely-scrolling sequence of dazzle camouflage patterns.
 Dazzle Ships were military vessels during World War I and early in World
@@ -22,35 +23,38 @@ overlapping stripes, it was very hard to estimate their size, range and
 heading. This was a big deal before the invention of Radar.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 30000 (0.03 seconds).
 .TP 8
-.B \-speed \fInumber\fP
+.B \-\-speed \fInumber\fP
 Animation speed.  2.0 means twice as fast, 0.5 means half as fast.
 .TP 8
-.B \-ncolors \fInumber\fP
+.B \-\-ncolors \fInumber\fP
 Colors.  Default: 2.
 .TP 8
-.B \-density \fInumber\fP
+.B \-\-density \fInumber\fP
 Thickness of the grid, and overall complexity.  1 - 10.  Default: 5.0.
 .TP 8
-.B \-thickness \fInumber\fP
+.B \-\-thickness \fInumber\fP
 Thickness of the lines. 0.05 - 1.0.  Default: 0.1.
 .TP 8
-.B \-mode \fIstring\fP
+.B \-\-mode \fIstring\fP
 Random, Ships or Flat. Default Random.
 .TP 8
-.B \-fps | \-no-fps
+.B \-\-fps | \-\-no-fps
 Whether to show a frames-per-second display at the bottom of the screen.
 .SH ENVIRONMENT
 .PP
@@ -61,6 +65,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index b066e0ecde83b87daa73513e6f7627d956fc3ae4..6be9fff399ad9344db3caf58ad52f5f8693ea64d 100644 (file)
@@ -4,45 +4,46 @@ romanboy \- Draws a 3d immersion of the real projective plane that
 smoothly deforms between the Roman surface and the Boy surface.
 .SH SYNOPSIS
 .B romanboy
-[\-display \fIhost:display.screen\fP]
-[\-install]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fIusecs\fP]
-[\-fps]
-[\-mode \fIdisplay-mode\fP]
-[\-wireframe]
-[\-surface]
-[\-transparent]
-[\-appearance \fIappearance\fP]
-[\-solid]
-[\-distance-bands]
-[\-direction-bands]
-[\-colors \fIcolor-scheme\fP]
-[\-onesided-colors]
-[\-twosided-colors]
-[\-distance-colors]
-[\-direction-colors]
-[\-change-colors]
-[\-view-mode \fIview-mode\fP]
-[\-walk]
-[\-turn]
-[\-no-deform]
-[\-deformation-speed \fIfloat\fP]
-[\-initial-deformation \fIfloat\fP]
-[\-roman]
-[\-boy]
-[\-surface-order \fInumber\fP]
-[\-orientation-marks]
-[\-projection \fImode\fP]
-[\-perspective]
-[\-orthographic]
-[\-speed-x \fIfloat\fP]
-[\-speed-y \fIfloat\fP]
-[\-speed-z \fIfloat\fP]
-[\-walk-direction \fIfloat\fP]
-[\-walk-speed \fIfloat\fP]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-install]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fIusecs\fP]
+[\-\-fps]
+[\-\-mode \fIdisplay-mode\fP]
+[\-\-wireframe]
+[\-\-surface]
+[\-\-transparent]
+[\-\-appearance \fIappearance\fP]
+[\-\-solid]
+[\-\-distance-bands]
+[\-\-direction-bands]
+[\-\-colors \fIcolor-scheme\fP]
+[\-\-onesided-colors]
+[\-\-twosided-colors]
+[\-\-distance-colors]
+[\-\-direction-colors]
+[\-\-change-colors]
+[\-\-view-mode \fIview-mode\fP]
+[\-\-walk]
+[\-\-turn]
+[\-\-no-deform]
+[\-\-deformation-speed \fIfloat\fP]
+[\-\-initial-deformation \fIfloat\fP]
+[\-\-roman]
+[\-\-boy]
+[\-\-surface-order \fInumber\fP]
+[\-\-orientation-marks]
+[\-\-projection \fImode\fP]
+[\-\-perspective]
+[\-\-orthographic]
+[\-\-speed-x \fIfloat\fP]
+[\-\-speed-y \fIfloat\fP]
+[\-\-speed-z \fIfloat\fP]
+[\-\-walk-direction \fIfloat\fP]
+[\-\-walk-speed \fIfloat\fP]
 .SH DESCRIPTION
 The \fIromanboy\fP program shows a 3d immersion of the real projective
 plane that smoothly deforms between the Roman surface and the Boy
@@ -178,76 +179,79 @@ Projective Plane", Vieweg, 1987.
 .I romanboy
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-install
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual
 class, or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-delay \fImicroseconds\fP
+.B \-\-delay \fImicroseconds\fP
 How much of a delay should be introduced between steps of the
 animation.  Default 10000, or 1/100th second.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .PP
 The following four options are mutually exclusive.  They determine how
 the projective plane is displayed.
 .TP 8
-.B \-mode random
+.B \-\-mode random
 Display the projective plane in a random display mode (default).
 .TP 8
-.B \-mode wireframe \fP(Shortcut: \fB\-wireframe\fP)
+.B \-\-mode wireframe \fP(Shortcut: \fB\-\-wireframe\fP)
 Display the projective plane as a wireframe mesh.
 .TP 8
-.B \-mode surface \fP(Shortcut: \fB\-surface\fP)
+.B \-\-mode surface \fP(Shortcut: \fB\-\-surface\fP)
 Display the projective plane as a solid surface.
 .TP 8
-.B \-mode transparent \fP(Shortcut: \fB\-transparent\fP)
+.B \-\-mode transparent \fP(Shortcut: \fB\-\-transparent\fP)
 Display the projective plane as a transparent surface.
 .PP
 The following four options are mutually exclusive.  They determine the
 appearance of the projective plane.
 .TP 8
-.B \-appearance random
+.B \-\-appearance random
 Display the projective plane with a random appearance (default).
 .TP 8
-.B \-appearance solid \fP(Shortcut: \fB\-solid\fP)
+.B \-\-appearance solid \fP(Shortcut: \fB\-\-solid\fP)
 Display the projective plane as a solid object.
 .TP 8
-.B \-appearance distance-bands \fP(Shortcut: \fB\-distance-bands\fP)
+.B \-\-appearance distance-bands \fP(Shortcut: \fB\-\-distance-bands\fP)
 Display the projective plane as see-through bands that lie at
 increasing distances from the origin.
 .PP
 .TP 8
-.B \-appearance direction-bands \fP(Shortcut: \fB\-direction-bands\fP)
+.B \-\-appearance direction-bands \fP(Shortcut: \fB\-\-direction-bands\fP)
 Display the projective plane as see-through bands that lie at
 increasing angles with respect to the origin.
 .PP
 The following four options are mutually exclusive.  They determine how
 to color the projective plane.
 .TP 8
-.B \-colors random
+.B \-\-colors random
 Display the projective plane with a random color scheme (default).
 .TP 8
-.B \-colors onesided \fP(Shortcut: \fB\-onesided-colors\fP)
+.B \-\-colors onesided \fP(Shortcut: \fB\-\-onesided-colors\fP)
 Display the projective plane with a single color.
 .TP 8
-.B \-colors twosided \fP(Shortcut: \fB\-twosided-colors\fP)
+.B \-\-colors twosided \fP(Shortcut: \fB\-\-twosided-colors\fP)
 Display the projective plane with two colors: one color one "side" and
 the complementary color on the "other side."  For static colors, the
 colors are red and green.  Note that the line at infinity lies at the
 points where the red and green "sides" of the projective plane meet,
 i.e., where the orientation of the projective plane reverses.
 .TP 8
-.B \-colors distance \fP(Shortcut: \fB\-distance-colors\fP)
+.B \-\-colors distance \fP(Shortcut: \fB\-\-distance-colors\fP)
 Display the projective plane with fully saturated colors that depend
 on the distance of the points on the projective plane to the origin.
 For static colors, the origin is displayed in red, while the line at
@@ -255,7 +259,7 @@ infinity is displayed in magenta.  If the projective plane is
 displayed as distance bands, each band will be displayed with a
 different color.
 .TP 8
-.B \-colors direction \fP(Shortcut: \fB\-direction-colors\fP)
+.B \-\-colors direction \fP(Shortcut: \fB\-\-direction-colors\fP)
 Display the projective plane with fully saturated colors that depend
 on the angle of the points on the projective plane with respect to the
 origin.  Angles in opposite directions to the origin (e.g., 15 and 205
@@ -266,59 +270,59 @@ each band will be displayed with a different color.
 The following options determine whether the colors with which the
 projective plane is displayed are static or are changing dynamically.
 .TP 8
-.B \-change-colors
+.B \-\-change-colors
 Change the colors with which the projective plane is displayed
 dynamically.
 .TP 8
-.B \-no-change-colors
+.B \-\-no-change-colors
 Use static colors to display the projective plane (default).
 .PP
 The following three options are mutually exclusive.  They determine
 how to view the projective plane.
 .TP 8
-.B \-view-mode random
+.B \-\-view-mode random
 View the projective plane in a random view mode (default).
 .TP 8
-.B \-view-mode turn \fP(Shortcut: \fB\-turn\fP)
+.B \-\-view-mode turn \fP(Shortcut: \fB\-\-turn\fP)
 View the projective plane while it turns in 3d.
 .TP 8
-.B \-view-mode walk \fP(Shortcut: \fB\-walk\fP)
+.B \-\-view-mode walk \fP(Shortcut: \fB\-\-walk\fP)
 View the projective plane as if walking on its surface.
 .PP
 The following options determine whether the surface is being deformed.
 .TP 8
-.B \-deform
+.B \-\-deform
 Deform the surface smoothly between the Roman and Boy surfaces
 (default).
 .TP 8
-.B \-no-deform
+.B \-\-no-deform
 Don't deform the surface.
 .PP
 The following option determines the deformation speed.
 .TP 8
-.B \-deformation-speed \fIfloat\fP
+.B \-\-deformation-speed \fIfloat\fP
 The deformation speed is measured in percent of some sensible maximum
 speed (default: 10.0).
 .PP
 The following options determine the initial deformation of the
 surface.  As described above, this is mostly useful if
-\fB\-no-deform\fP is specified.
+\fB\-\-no-deform\fP is specified.
 .TP 8
-.B \-initial-deformation \fIfloat\fP
+.B \-\-initial-deformation \fIfloat\fP
 The initial deformation is specified as a number between 0 and 1000.
 A value of 0 corresponds to the Roman surface, while a value of 1000
 corresponds to the Boy surface.  The default value is 1000.
 .TP 8
-.B \-roman
-This is a shortcut for \fB\-initial-deformation 0\fP.
+.B \-\-roman
+This is a shortcut for \fB\-\-initial-deformation 0\fP.
 .TP 8
-.B \-boy
-This is a shortcut for \fB\-initial-deformation 1000\fP.
+.B \-\-boy
+This is a shortcut for \fB\-\-initial-deformation 1000\fP.
 .PP
 The following option determines the order of the surface to be
 displayed.
 .TP 8
-.B \-surface-order \fInumber\fP
+.B \-\-surface-order \fInumber\fP
 The surface order can be set to values between 2 and 9 (default: 3).
 As described above, odd surface orders result in generalized
 immersions of the real projective plane, while even numbers result in
@@ -327,25 +331,25 @@ a immersion of a topological sphere.
 The following options determine whether orientation marks are shown on
 the projective plane.
 .TP 8
-.B \-orientation-marks
+.B \-\-orientation-marks
 Display orientation marks on the projective plane.
 .TP 8
-.B \-no-orientation-marks
+.B \-\-no-orientation-marks
 Don't display orientation marks on the projective plane (default).
 .PP
 The following three options are mutually exclusive.  They determine
 how the projective plane is projected from 3d to 2d (i.e., to the
 screen).
 .TP 8
-.B \-projection random
+.B \-\-projection random
 Project the projective plane from 3d to 2d using a random projection
 mode (default).
 .TP 8
-.B \-projection perspective \fP(Shortcut: \fB\-perspective\fP)
+.B \-\-projection perspective \fP(Shortcut: \fB\-\-perspective\fP)
 Project the projective plane from 3d to 2d using a perspective
 projection.
 .TP 8
-.B \-projection orthographic \fP(Shortcut: \fB\-orthographic\fP)
+.B \-\-projection orthographic \fP(Shortcut: \fB\-\-orthographic\fP)
 Project the projective plane from 3d to 2d using an orthographic
 projection.
 .PP
@@ -355,18 +359,18 @@ is measured in degrees per frame.  The speeds should be set to
 relatively small values, e.g., less than 4 in magnitude.  In walk
 mode, all speeds are ignored.
 .TP 8
-.B \-speed-x \fIfloat\fP
+.B \-\-speed-x \fIfloat\fP
 Rotation speed around the x axis (default: 1.1).
 .TP 8
-.B \-speed-y \fIfloat\fP
+.B \-\-speed-y \fIfloat\fP
 Rotation speed around the y axis (default: 1.3).
 .TP 8
-.B \-speed-z \fIfloat\fP
+.B \-\-speed-z \fIfloat\fP
 Rotation speed around the z axis (default: 1.5).
 .PP
 The following two options determine the walking speed and direction.
 .TP 8
-.B \-walk-direction \fIfloat\fP
+.B \-\-walk-direction \fIfloat\fP
 The walking direction is measured as an angle in degrees in the 2d
 square that forms the coordinate system of the surface of the
 projective plane (default: 83.0).  A value of 0 or 180 means that the
@@ -376,7 +380,7 @@ walk is directly from the origin to the line at infinity and back
 (analogous to a direction band).  Any other value results in a curved
 path from the origin to the line at infinity and back.
 .TP 8
-.B \-walk-speed \fIfloat\fP
+.B \-\-walk-speed \fIfloat\fP
 The walking speed is measured in percent of some sensible maximum
 speed (default: 20.0).
 .SH INTERACTION
@@ -396,6 +400,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index d4777dfd1a2a5ef9c5c1bf6210f33f0da4e5ff30..a513b857366d169617ec71f50e8b9cc4c22f7afc 100644 (file)
@@ -3,47 +3,51 @@
 rubik \- screen saver that solves Rubik's Cube.
 .SH SYNOPSIS
 .B rubik
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-count \fInumber\fP]
-[\-cycles \fInumber\fP]
-[\-delay \fInumber\fP]
-[\-size \fInumber\fP]
-[\-hideshuffling]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-count \fInumber\fP]
+[\-\-cycles \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-size \fInumber\fP]
+[\-\-hideshuffling]
+[\-\-fps]
 .SH DESCRIPTION
 Draws a Rubik's Cube that rotates in three dimensions and repeatedly
 shuffles and solves itself.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-count \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-count \fInumber\fP
 Count. -100 - 100.  Default: -30.
 .TP 8
-.B \-cycles \fInumber\fP
+.B \-\-cycles \fInumber\fP
 Timeout.  0 - 60.  Default: 5.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 40000 (0.04 seconds.).
 .TP 8
-.B \-size \fInumber\fP
+.B \-\-size \fInumber\fP
 Size.  -20 - 20.  Default: -6.
 .TP 8
-.B \-hideshuffling | \-no-hideshuffling
+.B \-\-hideshuffling | \-\-no-hideshuffling
 Show Shuffling.  Boolean.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .SH ENVIRONMENT
 .PP
@@ -54,6 +58,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index febdd7c391dd9500f2a555a3f10a476f03853bf9..cf4b3af94b292d934f4cdf4e63e93410fe0a50c3 100644 (file)
@@ -3,24 +3,25 @@
 rubikblocks \- animates the Rubik's Mirror Blocks puzzle
 .SH SYNOPSIS
 .B rubikblocks
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-install]
-[\-delay \fImicroseconds\fP]
-[\-texture] [\-no\-texture]
-[\-mono]
-[\-wireframe]
-[\-spin] [\-no\-spin]
-[\-wander] [\-no\-wander]
-[\-randomize] [\-no\-randomize]
-[\-spinspeed \fInumber\fP]
-[\-rotspeed \fInumber\fP]
-[\-wanderspeed \fInumber\fP]
-[\-wait \fInumber\fP]
-[\-cubesize \fInumber\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-install]
+[\-\-delay \fImicroseconds\fP]
+[\-\-texture] [\-\-no\-texture]
+[\-\-mono]
+[\-\-wireframe]
+[\-\-spin] [\-\-no\-spin]
+[\-\-wander] [\-\-no\-wander]
+[\-\-randomize] [\-\-no\-randomize]
+[\-\-spinspeed \fInumber\fP]
+[\-\-rotspeed \fInumber\fP]
+[\-\-wanderspeed \fInumber\fP]
+[\-\-wait \fInumber\fP]
+[\-\-cubesize \fInumber\fP]
+[\-\-fps]
 .SH DESCRIPTION
 This program animates a puzzle called Rubik's Mirror Blocks.
 The moves are chosen randomly.
@@ -28,70 +29,73 @@ The moves are chosen randomly.
 .I rubikblocks
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-install
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP\fP
+.B \-\-visual \fIvisual\fP\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-delay \fImicroseconds\fP
+.B \-\-delay \fImicroseconds\fP
 How long to pause between frames.  Default is 20000, or 0.02 second.
 .TP 8
-.B \-texture
+.B \-\-texture
 Use texture maps.  This is the default.
 .TP 8
-.B \-no\-texture
+.B \-\-no\-texture
 Use solid colors.  Looks a bit weird.
 .TP 8
-.B \-mono
+.B \-\-mono
 Disable both texture maps and colors.  Ditto.
 .TP 8
-.B \-wireframe
+.B \-\-wireframe
 Only draw outlines.  Outlines of each piece, not only the whole object, are drawn.
 .TP 8
-.B \-spin
+.B \-\-spin
 Spin the whole object around X, Y and Z axes.  This is the default.
 .TP 8
-.B \-no\-spin
+.B \-\-no\-spin
 Do not spin, stay in the same tilt all the time.
 .TP 8
-.B \-wander
+.B \-\-wander
 Move the object around the screen.  This is the default.
 .TP 8
-.B \-no\-wander
+.B \-\-no\-wander
 Keep the object centered on the screen.
 .TP 8
-.B \-randomize
+.B \-\-randomize
 Shuffle the puzzle randomly at startup.  This is the default.
 .TP 8
-.B \-no\-randomize
+.B \-\-no\-randomize
 Do not shuffle at startup, begin at the shape of cube.
 .TP 8
-.B \-spinspeed \fInumber\fP
+.B \-\-spinspeed \fInumber\fP
 The relative speed of spinning.  Default is 1.0.
 .TP 8
-.B \-rotspeed \fInumber\fP
+.B \-\-rotspeed \fInumber\fP
 The relative speed of the moves.  Default is 3.0.  Setting to \(<= 0.0
 makes the object stay at one configuration.
 .TP 8
-.B \-wanderspeed \fInumber\fP
+.B \-\-wanderspeed \fInumber\fP
 The relative speed of wandering around the screen.  Default is 0.02.
 .TP 8
-.B \-wait \fInumber\fP
+.B \-\-wait \fInumber\fP
 How long to stay at final position after each move.  The meaning of
 the argument is again relative.  Default is 40.0.
 .TP 8
-.B \-cubesize \fInumber\fP
+.B \-\-cubesize \fInumber\fP
 Size of the object.  Value of 3.0 fills roughly all the screen.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .SH ENVIRONMENT
 .PP
@@ -102,6 +106,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 128cdd4eb569b5378967c7026a30e87096720cf5..7e68554347fb7f70952cc502c0a7e78203285b2e 100644 (file)
@@ -3,38 +3,42 @@
 sballs \- draws balls spinning like crazy in GL
 .SH SYNOPSIS
 .B sballs
-[\-display \fIhost:display.screen\fP] [\-window] [\-root]
-[\-visual \fIvisual\fP] [\-delay \fImicroseconds\fP]
-[\-object \fIobject_number\fP] 
-[\-cycles \fIsphere_speed\fP] 
-[\-size \fIviewport_size\fP] 
-[\-texture] [\-no-texture]
-[\-wireframe] [\-no-wireframe]
-[\-trackmouse] [\-no-trackmouse]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-visual \fIvisual\fP] [\-\-delay \fImicroseconds\fP]
+[\-\-object \fIobject_number\fP] 
+[\-\-cycles \fIsphere_speed\fP] 
+[\-\-size \fIviewport_size\fP] 
+[\-\-texture] [\-\-no-texture]
+[\-\-wireframe] [\-\-no-wireframe]
+[\-\-trackmouse] [\-\-no-trackmouse]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIsballs\fP program draws an animation of balls spinning like crazy in GL.
 .SH OPTIONS
 .I sballs
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-install
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .TP 8
-.B \-object \fIobject_number\fP\fP
+.B \-\-object \fIobject_number\fP\fP
 Specify how the spheres are grouped (forming an object).
 Objects are:
 .TP 10
@@ -62,24 +66,24 @@ pyramid
 .B 8 
 star
 .TP 8
-.B \-size \fIviewport_size\fP\fP
+.B \-\-size \fIviewport_size\fP\fP
 Viewport of GL scene is specified size if greater than 32 and less than screensize. Default value is 0, meaning full screensize.
 .TP 8
-.B \-texture
+.B \-\-texture
 Show a textured background and spheres. This is the default.
 .TP 8
-.B \-no\-texture
+.B \-\-no\-texture
 Disables texturing the animation.
 .TP 8
-.B \-trackmouse
+.B \-\-trackmouse
 Let the mouse be a joystick to change the view of the animation.
 This implies 
-.I \-no\-wander.
+.I \-\-no\-wander.
 .TP 8
-.B \-no\-trackmouse
+.B \-\-no\-trackmouse
 Disables mouse tracking. This is the default.
 .TP 8
-.B \-wire
+.B \-\-wire
 Draw a wireframe rendition of the spheres.
 .SH ENVIRONMENT
 .PP
@@ -90,6 +94,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index c92dcd6ff91b6a3540f3159e5dbd942d560d9e9d..38625a7c391225daca01190ada6e7a81e9379f35 100644 (file)
@@ -3,44 +3,48 @@
 sierpinski3d \- 3D Sierpinski triangle fractal.
 .SH SYNOPSIS
 .B sierpinski3d
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-speed \fInumber\fP]
-[\-depth \fInumber\fP]
-[\-wireframe]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-speed \fInumber\fP]
+[\-\-depth \fInumber\fP]
+[\-\-wireframe]
+[\-\-fps]
 .SH DESCRIPTION
 This draws the three-dimensional variant of the recursive Sierpinski
 triangle fractal, using GL.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 20000 (0.02 seconds.).
 .TP 8
-.B \-speed \fInumber\fP
+.B \-\-speed \fInumber\fP
 Number of frames before changing shape.  Default: 150.
 .TP 8
-.B \-depth \fInumber\fP
+.B \-\-depth \fInumber\fP
 Max depth to descend.  Default: 5.  You probably don't have enough
 memory for 6.
 .TP 8
-.B \-wireframe
+.B \-\-wireframe
 Render in wireframe instead of solid.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .SH ENVIRONMENT
 .PP
@@ -51,6 +55,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 7845f34417a44e0e2694d8ded6501f73d45872ee..b4ea5fdfcaf0704a440156bbc1f1c8105ee11af5 100644 (file)
@@ -3,80 +3,84 @@
 skytentacles \- 3D tentacles from the sky!
 .SH SYNOPSIS
 .B skytentacles
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fIint\fP]
-[\-speed \fIratio\fP]
-[\-count \fIint\fP]
-[\-slices \fIint\fP]
-[\-length \fIfloat\fP]
-[\-wiggliness \fIratio\fP]
-[\-flexibility \fIratio\fP]
-[\-color \fIcolor\fP]
-[\-stripe\-color \fIcolor\fP]
-[\-sucker\-color \fIcolor\fP]
-[\-segments \fIint\fP]
-[\-thickness \fIratio\fP]
-[\-no\-smooth]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fIint\fP]
+[\-\-speed \fIratio\fP]
+[\-\-count \fIint\fP]
+[\-\-slices \fIint\fP]
+[\-\-length \fIfloat\fP]
+[\-\-wiggliness \fIratio\fP]
+[\-\-flexibility \fIratio\fP]
+[\-\-color \fIcolor\fP]
+[\-\-stripe\-color \fIcolor\fP]
+[\-\-sucker\-color \fIcolor\fP]
+[\-\-segments \fIint\fP]
+[\-\-thickness \fIratio\fP]
+[\-\-no\-smooth]
+[\-\-fps]
 .SH DESCRIPTION
 There is a tentacled abomination in the sky.  From above you it devours.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fIint\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fIint\fP
 Delay between frames, in microseconds.  Default 30000.
 .TP 8
-.B \-speed \fIratio\fP
+.B \-\-speed \fIratio\fP
 Less than 1 for slower, greater than 1 for faster.  Default 1.
 .TP 8
-.B \-count \fIint\fP
+.B \-\-count \fIint\fP
 How many tentacles.  Default 8.
 .TP 8
-.B \-thickness \fIratio\fP
+.B \-\-thickness \fIratio\fP
 Less than 1 for thinner tentacles, greater than 1 for thicker.  Default 1.
 .TP 8
-.B \-length \fIratio\fP
+.B \-\-length \fIratio\fP
 Length of the tentacles.  Default 9.
 .TP 8
-.B \-wiggliness \fIratio\fP
+.B \-\-wiggliness \fIratio\fP
 A measure of how bendy the tentacles are.  Smaller numbers result in
 smoother flexing; larger numbers make it "crinkly".  Default 0.35.
 .TP 8
-.B \-flexibility \fIratio\fP
+.B \-\-flexibility \fIratio\fP
 Another measure of how bendy the tentacles are.  Smaller numbers
 result in straighter tentacles; larger numbers result in more extreme
 curves.  Default 0.35.
 .TP 8
-.B \-color \fIcolor\fP
+.B \-\-color \fIcolor\fP
 .TP 8
-.B \-stripe\-color \fIcolor\fP
+.B \-\-stripe\-color \fIcolor\fP
 .TP 8
-.B \-sucker\-color \fIcolor\fP
+.B \-\-sucker\-color \fIcolor\fP
 The colors of the various parts of the tentacle.  Default green
 with a redish stripe.
 .TP 8
-.B \-slices \fIint\fP
+.B \-\-slices \fIint\fP
 .TP 8
-.B \-segments \fIint\fP
+.B \-\-segments \fIint\fP
 Larger numbers increase number of polygons in the object mesh.
 Default 32.
 .TP 8
-.B \-no\-smooth
+.B \-\-no\-smooth
 Make the tentacles appear faceted instead of smooth.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .SH ENVIRONMENT
 .PP
@@ -87,6 +91,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 00de3d2b80eae06394e471774481bea3938708fb..fa405476a36a0ff10ae7f7d77bca0b470613833b 100644 (file)
@@ -3,21 +3,26 @@
 sonar \- display a sonar scope
 .SH SYNOPSIS
 .B sonar
-[\-ping \fIhosts-or-subnets\fP]
-[\-ping\-timeout \fIint\fP]
-[\-delay \fIusecs\fP]
-[\-speed \fIratio\fP]
-[\-sweep-size \fIratio\fP]
-[\-font-size \fIpoints\fP]
-[\-team-a-name \fIstring\fP] 
-[\-team-b-name \fIstring\fP]
-[\-team-a-count \fIint\fP]
-[\-team-b-count \fIint\fP]
-[\-no\-dns] 
-[\-no\-times] 
-[\-no\-wobble] 
-[\-debug] 
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-ping \fIhosts-or-subnets\fP]
+[\-\-ping\-timeout \fIint\fP]
+[\-\-delay \fIusecs\fP]
+[\-\-speed \fIratio\fP]
+[\-\-sweep-size \fIratio\fP]
+[\-\-font-size \fIpoints\fP]
+[\-\-team-a-name \fIstring\fP] 
+[\-\-team-b-name \fIstring\fP]
+[\-\-team-a-count \fIint\fP]
+[\-\-team-b-count \fIint\fP]
+[\-\-no\-dns] 
+[\-\-no\-times] 
+[\-\-no\-wobble] 
+[\-\-debug] 
+[\-\-fps]
 .SH DESCRIPTION
 This draws a sonar screen that pings (get it?) the hosts on
 your local network, and plots their distance (response time) from you.
@@ -29,7 +34,20 @@ Alternately, it can run a simulation that doesn't involve hosts.
 .I sonar
 understands the following options:
 .TP 8
-.B \-ping \fIhosts-or-subnets\fP
+.B \-\-visual \fIvisual\fP
+Specify which visual to use.  Legal values are the name of a visual class,
+or the id number (decimal or hex) of a specific visual.
+.TP 8
+.B \-\-window
+Draw on a newly-created window.  This is the default.
+.TP 8
+.B \-\-root
+Draw on the root window.
+.TP 8
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-ping \fIhosts-or-subnets\fP
 The list of things to ping, separated by commas or spaces. 
 Elements of this list may be:
 .RS 8
@@ -67,46 +85,45 @@ try this:
   sonar -ping $HOME/.ssh/known_hosts
 .RE
 .TP 8
-.B \-ping\-timeout \fIint\fP
+.B \-\-ping\-timeout \fIint\fP
 The amount of time in milliseconds the program will wait for an answer
 to a ping.
 .TP 8
-.B \-delay \fIint\fP
+.B \-\-delay \fIint\fP
 Delay between frames, in microseconds.  Default 20000.
 .TP 8
-.B \-speed \fIratio\fP
+.B \-\-speed \fIratio\fP
 Less than 1 for slower, greater than 1 for faster.  Default 1.
 .TP 8
-.B \-sweep-size \fIratio\fP
+.B \-\-sweep-size \fIratio\fP
 How big the glowing sweep area should be. Default 0.3.
 .TP 8
-.B \-font-size \fIpoints\fP
+.B \-\-font-size \fIpoints\fP
 How large the text should be.  Default 10 points.
 .TP 8
-.B \-no\-wobble
+.B \-\-no\-wobble
 Keep the display stationary instead of very slowly wobbling back and forth.
 .TP 8
-.B \-no\-dns
+.B \-\-no\-dns
 Do not attempt to resolve IP addresses to hostnames.
 .TP 8
-.B \-no\-times
+.B \-\-no\-times
 Do not display ping times beneath the host names.
 .TP 8
-.B \-team-a-name \fIstring\fP
+.B \-\-team-a-name \fIstring\fP
 In simulation mode, the name of team A.
 .TP 8
-.B \-team-b-name \fIstring\fP
+.B \-\-team-b-name \fIstring\fP
 In simulation mode, the name of team B.
 .TP 8
-.B \-team-a-count \fIint\fP
+.B \-\-team-a-count \fIint\fP
 In simulation mode, the number of bogies on team A.
 .TP 8
-.B \-team-b-count \fIint\fP
+.B \-\-team-b-count \fIint\fP
 In simulation mode, the number of bogies on team B.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, polygon count, and CPU load.
-
 .PP
 In ping-mode, the display is a logarithmic scale, calibrated so that the
 three rings represent ping times of approximately 2.5, 70 and 2,000
@@ -116,21 +133,9 @@ This means that if any the hosts you are pinging take longer than 2
 seconds to respond, they won't show up; and if you are pinging several
 hosts with very fast response times, they will all appear close to the
 center of the screen (making their names hard to read.)
-
 .SH INSTALLATION
 For this program to be able to ping other hosts, it must have the
-ability to open ICMP sockets, which is usually an action that requires
-additional privileges.
-
-If your system has
-.BR setcap (8)
-then this permission can be added with
-.nf
-.sp
-       setcap cap_net_raw=p sonar
-.sp
-.fi
-Otherwise, the program must be setuid root in order to ping hosts.
+ability to open ICMP sockets, which requires that it be setuid root.
 Privileges are disavowed shortly after startup (just after connecting
 to the X server) so this is believed to be safe:
 .nf
@@ -139,18 +144,27 @@ to the X server) so this is believed to be safe:
        chmod u+s sonar
 .sp
 .fi
-It is not necessary to use setcap or setuid on macOS systems, as
-unprivileged programs can ping by using ICMP DGRAM sockets instead
-of ICMP RAW.
 .SH BUGS
 Does not support IPv6.
+.SH ENVIRONMENT
+.PP
+.TP 8
+.B DISPLAY
+to get the default host and display number.
+.TP 8
+.B XENVIRONMENT
+to get the name of a resource file that overrides the global resources
+stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1),
 .BR ping (8),
 .BR ping6 (8)
 .SH COPYRIGHT
-Copyright \(co 2000-2021 by Jamie Zawinski <jwz@jwz.org>
+Copyright \(co 2000-2022 by Jamie Zawinski <jwz@jwz.org>
 .RE
 Copyright \(co 1998 by Stephen Martin. <smartin@canada.com>
 
@@ -161,7 +175,6 @@ copyright notice and this permission notice appear in supporting
 documentation.  No representations are made about the suitability of this
 software for any purpose.  It is provided "as is" without express or 
 implied warranty.
-
 .SH AUTHORS
 Stephen Martin <smartin@canada.com>, 3-nov-1998.
 
index 4034c80897aa74dd4774d2962f783176ecede4ce..9d78149450b05fdc2e8cd900e173f91baca84f9c 100644 (file)
@@ -3,43 +3,44 @@
 sphereeversion - Displays a sphere eversion.
 .SH SYNOPSIS
 .B sphereeversion
-[\-display \fIhost:display.screen\fP]
-[\-install]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fIusecs\fP]
-[\-fps]
-[\-eversion-method \fImethod\fP]
-[\-analytic]
-[\-corrugations]
-[\-mode \fIdisplay-mode\fP]
-[\-surface]
-[\-transparent]
-[\-appearance \fIappearance\fP]
-[\-solid]
-[\-parallel-bands]
-[\-meridian-bands]
-[\-graticule \fImode\fP]
-[\-colors \fIcolor-scheme\fP]
-[\-twosided-colors]
-[\-parallel-colors]
-[\-meridian-colors]
-[\-earth-colors]
-[\-deformation-speed \fIfloat\fP]
-[\-projection \fImode\fP]
-[\-perspective]
-[\-orthographic]
-[\-surface-order \fIorder\fP]
-[\-lunes-1]
-[\-lunes-2]
-[\-lunes-4]
-[\-lunes-8]
-[\-hemispheres-1]
-[\-hemispheres-2]
-[\-speed-x \fIfloat\fP]
-[\-speed-y \fIfloat\fP]
-[\-speed-z \fIfloat\fP]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-install]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fIusecs\fP]
+[\-\-fps]
+[\-\-eversion-method \fImethod\fP]
+[\-\-analytic]
+[\-\-corrugations]
+[\-\-mode \fIdisplay-mode\fP]
+[\-\-surface]
+[\-\-transparent]
+[\-\-appearance \fIappearance\fP]
+[\-\-solid]
+[\-\-parallel-bands]
+[\-\-meridian-bands]
+[\-\-graticule \fImode\fP]
+[\-\-colors \fIcolor-scheme\fP]
+[\-\-twosided-colors]
+[\-\-parallel-colors]
+[\-\-meridian-colors]
+[\-\-earth-colors]
+[\-\-deformation-speed \fIfloat\fP]
+[\-\-projection \fImode\fP]
+[\-\-perspective]
+[\-\-orthographic]
+[\-\-surface-order \fIorder\fP]
+[\-\-lunes-1]
+[\-\-lunes-2]
+[\-\-lunes-4]
+[\-\-lunes-8]
+[\-\-hemispheres-1]
+[\-\-hemispheres-2]
+[\-\-speed-x \fIfloat\fP]
+[\-\-speed-y \fIfloat\fP]
+[\-\-speed-z \fIfloat\fP]
 .SH DESCRIPTION
 The \fIsphereeversion\fP program shows a sphere eversion, i.e., a
 smooth deformation (homotopy) that turns a sphere inside out.  During
@@ -143,20 +144,20 @@ in the first phase of the eversion.  Then, the method described above
 is applied to the eight lunes.  Finally, the corrugations are removed
 to obtain the everted sphere.
 .PP
-To see the eversion for a single lune, the option \fB\-lunes-1\fP can
+To see the eversion for a single lune, the option \fB\-\-lunes-1\fP can
 be used.  Using this option, the eversion, as described above, is
 easier to understand.  It is also possible to display two lunes using
-\fB\-lunes-2\fP and four lunes using \fB\-lunes-4\fP.  Using fewer
+\fB\-\-lunes-2\fP and four lunes using \fB\-\-lunes-4\fP.  Using fewer
 than eight lunes reduces the visual complexity of the eversion and may
 help to understand the method.
 .PP
 Furthermore, it is possible to display only one hemisphere using the
-option \fB\-hemispheres-1\fP.  This allows to see what is happening in
+option \fB\-\-hemispheres-1\fP.  This allows to see what is happening in
 the center of the sphere during the eversion.  Note that the north and
 south half of the sphere move in a symmetric fashion during the
 eversion.  Hence, the eversion is actually composed of 16 semi-lunes
 (spherical triangles from the equator to the poles) that all deform in
-the same manner.  By specifying \fB\-lunes-1 \-hemispheres-1\fP, the
+the same manner.  By specifying \fB\-\-lunes-1 \-\-hemispheres-1\fP, the
 deformation of one semi-lune can be observed.
 .PP
 Note that the options described above are only intended for
@@ -167,64 +168,67 @@ explicitly specified.
 .I sphereeversion
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-install
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual
 class, or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-delay \fImicroseconds\fP
+.B \-\-delay \fImicroseconds\fP
 How much of a delay should be introduced between steps of the
 animation.  Default 10000, or 1/100th second.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .PP
 The following three options are mutually exclusive.  They determine
 which sphere eversion method is used.
 .TP 8
-.B \-eversion-method random
+.B \-\-eversion-method random
 Use a random sphere eversion method (default).
 .TP 8
-.B \-eversion-method analytic \fP(Shortcut: \fB\-analytic\fP)
+.B \-\-eversion-method analytic \fP(Shortcut: \fB\-\-analytic\fP)
 Use the analytic sphere eversion method.
 .TP 8
-.B \-eversion-method corrugations \fP(Shortcut: \fB\-corrugations\fP)
+.B \-\-eversion-method corrugations \fP(Shortcut: \fB\-\-corrugations\fP)
 Use the corrugations sphere eversion method.
 .PP
 The following three options are mutually exclusive.  They determine
 how the deformed sphere is displayed.
 .TP 8
-.B \-mode random
+.B \-\-mode random
 Display the sphere in a random display mode (default).
 .TP 8
-.B \-mode surface \fP(Shortcut: \fB\-surface\fP)
+.B \-\-mode surface \fP(Shortcut: \fB\-\-surface\fP)
 Display the sphere as a solid surface.
 .TP 8
-.B \-mode transparent \fP(Shortcut: \fB\-transparent\fP)
+.B \-\-mode transparent \fP(Shortcut: \fB\-\-transparent\fP)
 Display the sphere as a transparent surface.
 .PP
 The following four options are mutually exclusive.  They determine the
 appearance of the deformed sphere.
 .TP 8
-.B \-appearance random
+.B \-\-appearance random
 Display the sphere with a random appearance (default).
 .TP 8
-.B \-appearance solid \fP(Shortcut: \fB\-solid\fP)
+.B \-\-appearance solid \fP(Shortcut: \fB\-\-solid\fP)
 Display the sphere as a solid object.
 .TP 8
-.B \-appearance parallel-bands \fP(Shortcut: \fB\-parallel-bands\fP)
+.B \-\-appearance parallel-bands \fP(Shortcut: \fB\-\-parallel-bands\fP)
 Display the sphere as see-through bands that lie along the parallels
 of the sphere.
 .TP 8
-.B \-appearance meridian-bands \fP(Shortcut: \fB\-meridian-bands\fP)
+.B \-\-appearance meridian-bands \fP(Shortcut: \fB\-\-meridian-bands\fP)
 Display the sphere as see-through bands that lie along the meridians
 of the sphere.
 .PP
@@ -233,34 +237,34 @@ whether a graticule is displayed on top of the sphere.  These options
 only have an effect if the analytic sphere eversion method is
 selected.
 .TP 8
-.B \-graticule random
+.B \-\-graticule random
 Randomly choose whether to display a graticule (default).
 .TP 8
-.B \-graticule on
+.B \-\-graticule on
 Display a graticule.
 .TP 8
-.B \-graticule off
+.B \-\-graticule off
 Do not display a graticule.
 .PP
 The following five options are mutually exclusive.  They determine how
 to color the deformed sphere.
 .TP 8
-.B \-colors random
+.B \-\-colors random
 Display the sphere with a random color scheme (default).
 .TP 8
-.B \-colors twosided \fP(Shortcut: \fB\-twosided-colors\fP)
+.B \-\-colors twosided \fP(Shortcut: \fB\-\-twosided-colors\fP)
 Display the sphere with two colors: red on one side and green on the
 other side (analytic eversion) or gold on one side and purple on the
 other side (corrugations eversion).
 .TP 8
-.B \-colors parallel \fP(Shortcut: \fB\-parallel-colors\fP)
+.B \-\-colors parallel \fP(Shortcut: \fB\-\-parallel-colors\fP)
 Display the sphere with colors that run from from blue to white to
 orange on one side of the surface and from magenta to black to green
 on the other side.  The colors are aligned with the parallels of the
 sphere.  If the sphere is displayed as parallel bands, each band will
 be displayed with a different color.
 .TP 8
-.B \-colors meridian \fP(Shortcut: \fB\-meridian-colors\fP)
+.B \-\-colors meridian \fP(Shortcut: \fB\-\-meridian-colors\fP)
 Display the sphere with colors that run from from blue to white to
 orange to black and back to blue on one side of the surface and from
 magenta to white to green to black and back to magenta on the other
@@ -268,7 +272,7 @@ side.  The colors are aligned with the meridians of the sphere.  If
 the sphere is displayed as meridian bands, each band will be displayed
 with a different color.
 .TP 8
-.B \-colors earth \fP(Shortcut: \fB\-earth-colors\fP)
+.B \-\-colors earth \fP(Shortcut: \fB\-\-earth-colors\fP)
 Display the sphere with a texture of earth by day on one side and with
 a texture of earth by night on the other side.  Initially, the earth
 by day is on the outside and the earth by night on the inside.  After
@@ -280,7 +284,7 @@ reversed.
 .PP
 The following option determines the deformation speed.
 .TP 8
-.B \-deformation-speed \fIfloat\fP
+.B \-\-deformation-speed \fIfloat\fP
 The deformation speed is measured in percent of some sensible maximum
 speed (default: 10.0).
 .PP
@@ -288,21 +292,21 @@ The following three options are mutually exclusive.  They determine
 how the deformed sphere is projected from 3d to 2d (i.e., to the
 screen).
 .TP 8
-.B \-projection random
+.B \-\-projection random
 Project the sphere from 3d to 2d using a random projection mode
 (default).
 .TP 8
-.B \-projection perspective \fP(Shortcut: \fB\-perspective\fP)
+.B \-\-projection perspective \fP(Shortcut: \fB\-\-perspective\fP)
 Project the sphere from 3d to 2d using a perspective projection.
 .TP 8
-.B \-projection orthographic \fP(Shortcut: \fB\-orthographic\fP)
+.B \-\-projection orthographic \fP(Shortcut: \fB\-\-orthographic\fP)
 Project the sphere from 3d to 2d using an orthographic projection.
 .PP
 The following option determines the order of the surface to be
 displayed.  This option only has an effect if the analytic sphere
 eversion method is selected.
 .TP 8
-.B \-surface-order \fIorder\fP
+.B \-\-surface-order \fIorder\fP
 The surface order can be set to random or to a value between 2 and 5
 (default: random).  This determines the the complexity of the
 deformation.
@@ -311,26 +315,26 @@ The following four options are mutually exclusive.  They determine how
 many lunes of the sphere are displayed.  These options only have an
 effect if the corrugations sphere eversion method is selected.
 .TP 8
-.B \-lunes-1
+.B \-\-lunes-1
 Display one of the eight lunes that form the sphere.
 .TP 8
-.B \-lunes-2
+.B \-\-lunes-2
 Display two of the eight lunes that form the sphere.
 .TP 8
-.B \-lunes-4
+.B \-\-lunes-4
 Display four of the eight lunes that form the sphere.
 .TP 8
-.B \-lunes-8
+.B \-\-lunes-8
 Display all eight lunes that form the sphere (default).
 .PP
 The following two options are mutually exclusive.  They determine how
 many hemispheres of the sphere are displayed.  These options only have
 an effect if the corrugations sphere eversion method is selected.
 .TP 8
-.B \-hemispheres-1
+.B \-\-hemispheres-1
 Display only one hemisphere of the sphere.
 .TP 8
-.B \-hemispheres-2
+.B \-\-hemispheres-2
 Display both hemispheres of the sphere (default).
 .PP
 The following three options determine the rotation speed of the
@@ -338,13 +342,13 @@ deformed sphere around the three possible axes.  The rotation speed is
 measured in degrees per frame.  The speeds should be set to relatively
 small values, e.g., less than 4 in magnitude.
 .TP 8
-.B \-speed-x \fIfloat\fP
+.B \-\-speed-x \fIfloat\fP
 Rotation speed around the x axis (default: 0.0).
 .TP 8
-.B \-speed-y \fIfloat\fP
+.B \-\-speed-y \fIfloat\fP
 Rotation speed around the y axis (default: 0.0).
 .TP 8
-.B \-speed-z \fIfloat\fP
+.B \-\-speed-z \fIfloat\fP
 Rotation speed around the z axis (default: 0.0).
 .SH INTERACTION
 If you run this program in standalone mode, you can rotate the
@@ -362,6 +366,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1),
index ca57c51dd526609d5863d0b0e127c95b43bba442..34e206a625df3f7b4d09f2f0eab80546ddf027c5 100644 (file)
@@ -3,21 +3,22 @@
 spheremonics \- 3d spherical harmonic shapes.
 .SH SYNOPSIS
 .B spheremonics
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-duration \fInumber\fP]
-[\-resolution \fInumber\fP]
-[\-wander]
-[\-no-spin]
-[\-spin \fI[XYZ]\fP]
-[\-wireframe]
-[\-no-smooth]
-[\-no-grid]
-[\-bbox]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-duration \fInumber\fP]
+[\-\-resolution \fInumber\fP]
+[\-\-wander]
+[\-\-no-spin]
+[\-\-spin \fI[XYZ]\fP]
+[\-\-wireframe]
+[\-\-no-smooth]
+[\-\-no-grid]
+[\-\-bbox]
+[\-\-fps]
 .SH DESCRIPTION
 These closed objects are commonly called spherical harmonics, although they
 are only remotely related to the mathematical definition found in the
@@ -25,47 +26,50 @@ solution to certain wave functions, most notable the eigenfunctions of
 angular momentum operators.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 30000 (0.03 seconds.).
 .TP 8
-.B \-duration \fInumber\fP
+.B \-\-duration \fInumber\fP
 Duration.  5 - 1000.  Default: 100.
 .TP 8
-.B \-resolution \fInumber\fP
+.B \-\-resolution \fInumber\fP
 Resolution.  5 - 100.  Default: 64.
 .TP 8
-.B \-wander | \-no-wander
+.B \-\-wander | \-\-no-wander
 Whether the object should wander around the screen.
 .TP 8
-.B \-spin \fI[XYZ]\fP
+.B \-\-spin \fI[XYZ]\fP
 Around which axes should the object spin?
 .TP 8
-.B \-no-spin
+.B \-\-no-spin
 Don't spin.
 .TP 8
-.B \-wireframe
+.B \-\-wireframe
 Render in wireframe instead of solid.
 .TP 8
-.B \-smooth | \-no-smooth
+.B \-\-smooth | \-\-no-smooth
 Smoothed Lines.  Boolean.
 .TP 8
-.B \-grid | \-no-grid
+.B \-\-grid | \-\-no-grid
 Draw Grid.  Boolean.
 .TP 8
-.B \-bbox | \-no-bbox
+.B \-\-bbox | \-\-no-bbox
 Draw Bounding Box.  Boolean.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .SH ENVIRONMENT
 .PP
@@ -76,6 +80,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 278bdeda817305776604554c7903d2c78732c144..ce45d3cd3c7f9184bdbf5aa490953e3ed7027b25 100644 (file)
@@ -3,76 +3,80 @@
 splitflap \- a simulation of a split-flap electromechanical display.
 .SH SYNOPSIS
 .B splitflap
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fImicroseconds\fP]
-[\-speed \fIfloat\fP]
-[\-width \fIcolumns\fP]
-[\-height \fIrows\fP]
-[\-mode text | clock12 | clock24]
-[\-no-wander]
-[\-spin \fIaxes\fP]
-[\-no\-spin]
-[\-front] [\-no-front]
-[\-wireframe]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fImicroseconds\fP]
+[\-\-speed \fIfloat\fP]
+[\-\-width \fIcolumns\fP]
+[\-\-height \fIrows\fP]
+[\-\-mode text | clock12 | clock24]
+[\-\-no-wander]
+[\-\-spin \fIaxes\fP]
+[\-\-no\-spin]
+[\-\-front] [\-\-no-front]
+[\-\-wireframe]
+[\-\-fps]
 .SH DESCRIPTION
 Simulates a split-flap display, an old style of electromechanical sign as
 seen in airports and train stations, and commonly used in alarm clocks in
 the 1960s and 1970s.  
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 20000 (0.02 seconds).
 .TP 8
-.B \-speed \fInumber\fP
+.B \-\-speed \fInumber\fP
 Animation speed.  2.0 means twice as fast, 0.5 means half as fast.
 .TP 8
-.B \-width \fInumber\fP
+.B \-\-width \fInumber\fP
 Columns of the display.  Default: 22.
 .TP 8
-.B \-height \fInumber\fP
+.B \-\-height \fInumber\fP
 Rows of the display. Default: 8.
 .TP 8
-.B \-mode clock12
+.B \-\-mode clock12
 Display a 12-hour clock.
 .TP 8
-.B \-mode clock24
+.B \-\-mode clock24
 Display a 24-hour clock.
 .TP 8
-.B \-front | \-no-front
+.B \-\-front | \-\-no-front
 When spinning, never spin all the way around or upside down:
 always face mostly forward so that the text is easily readable.
 This is the default.
 .TP 8
-.B \-no\-front
+.B \-\-no\-front
 Allow spins to go all the way around or upside down.
 .TP 8
-.B \-wander | \-no-wander
+.B \-\-wander | \-\-no-wander
 Whether the object should wander around the screen.
 .TP 8
-.B \-spin
+.B \-\-spin
 Which axes around which the text should spin.  The default is "XYZ",
-meaning rotate it freely in space.  "\fB\-spin Z\fP" would rotate the
+meaning rotate it freely in space.  "\fB\-\-spin Z\fP" would rotate the
 text in the plane of the screen while not rotating it into or out
 of the screen; etc.
 .TP 8
-.B \-wireframe | \-no-wireframe
+.B \-\-wireframe | \-\-no-wireframe
 Render in wireframe instead of solid.
 .TP 8
-.B \-fps | \-no-fps
+.B \-\-fps | \-\-no-fps
 Whether to show a frames-per-second display at the bottom of the screen.
 .SH ENVIRONMENT
 .PP
@@ -83,6 +87,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 74e85cd25e3569ee342d645e017d94565ef385ec..8ab57169886321681fb1d93da90e163dffd2eba8 100644 (file)
@@ -4,46 +4,50 @@ splodesic \- k
 A geodesic sphere experiences a series of eruptions.
 .SH SYNOPSIS
 .B splodesic
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-no-wander]
-[\-no-spin]
-[\-fps]
-[\-delay \fInumber\fP]
-[\-speed \fInumber\fP]
-[\-depth \fInumber\fP]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-no-wander]
+[\-\-no-spin]
+[\-\-fps]
+[\-\-delay \fInumber\fP]
+[\-\-speed \fInumber\fP]
+[\-\-depth \fInumber\fP]
 .SH DESCRIPTION
 A geodesic sphere experiences a series of eruptions.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-wander | \-no-wander
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-wander | \-\-no-wander
 Whether the object should wander around the screen.
 .TP 8
-.B \-spin | \-no-spin
+.B \-\-spin | \-\-no-spin
 Whether the object should spin.
 .TP 8
-.B \-fps | \-no-fps
+.B \-\-fps | \-\-no-fps
 Whether to show a frames-per-second display at the bottom of the screen.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 30000 (0.03 seconds).
 .TP 8
-.B \-speed \fInumber\fP
+.B \-\-speed \fInumber\fP
 Frequency of eruptions.  2.0 means twice as often, 0.5 means half as often.
 .TP 8
-.B \-depth \fInumber\fP
+.B \-\-depth \fInumber\fP
 Depth (frequency) of the geodesic. 0 - 5. Default: 4.
 .SH ENVIRONMENT
 .PP
@@ -54,6 +58,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 86bd8c3ce3ca19cb339cda2f0a33c09137e803bb..1510c24b76473fdad0d3e0a8d90561ad976f7b70 100644 (file)
@@ -3,46 +3,50 @@
 sproingies \- Q-Bert meets Marble Madness!
 .SH SYNOPSIS
 .B sproingies
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-count \fInumber\fP]
-[\-delay \fInumber\fP]
-[\-size \fInumber\fP]
-[\-no\-fall]
-[\-wireframe]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-count \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-size \fInumber\fP]
+[\-\-no\-fall]
+[\-\-wireframe]
+[\-\-fps]
 .SH DESCRIPTION
 Q-Bert meets Marble Madness!
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-count \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-count \fInumber\fP
 How many sproingies to draw at once.  Default: 5.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 25000 (0.03 seconds.).
 .TP 8
-.B \-size \fInumber\fP
+.B \-\-size \fInumber\fP
 How much to scale the image down.  Default 0 (full screen.)
 .TP 8
-.B \-no\-fall
+.B \-\-no\-fall
 Make sproingies "smart", so they do not fall down the edge.
 .TP 8
-.B \-wireframe
+.B \-\-wireframe
 Render in wireframe instead of solid.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .SH ENVIRONMENT
 .PP
@@ -53,6 +57,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 3ef1163e8096bbd8b55b53376388dbbef14bcdf1..48822cf247b02b9482bc758990580f6b2c5b2511 100644 (file)
@@ -3,39 +3,43 @@
 squirtorus \- how rainbows are made.
 .SH SYNOPSIS
 .B squirtorus
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-speed \fInumber\fP]
-[\-count \fInumber\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-speed \fInumber\fP]
+[\-\-count \fInumber\fP]
+[\-\-fps]
 .SH DESCRIPTION
 A scrolling landscape vents toroidal rainbows into the sky.
 Above, the stars are slowly going out.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 30000 (0.03 seconds).
 .TP 8
-.B \-speed \fInumber\fP
+.B \-\-speed \fInumber\fP
 Scrolling speed.  2.0 means twice as fast, 0.5 means half as fast.
 .TP 8
-.B \-count \fInumber\fP
+.B \-\-count \fInumber\fP
 Count. 1 - 50.  Default: 12.
 .TP 8
-.B \-fps | \-no-fps
+.B \-\-fps | \-\-no-fps
 Whether to show a frames-per-second display at the bottom of the screen.
 .SH ENVIRONMENT
 .PP
@@ -46,6 +50,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index b01cab469f19d30044473d9c90b25baeb7324b9f..200aa687bf5021547edf5377179c851158c4fa2f 100644 (file)
@@ -3,34 +3,38 @@
 stairs \- Escher's infinite staircase.
 .SH SYNOPSIS
 .B stairs
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-wireframe]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-wireframe]
+[\-\-fps]
 .SH DESCRIPTION
 This draws an "infinite" staircase. 
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 20000 (0.02 seconds.).
 .TP 8
-.B \-wireframe
+.B \-\-wireframe
 Render in wireframe instead of solid.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .SH ENVIRONMENT
 .PP
@@ -41,6 +45,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 1d5145879bad92da35d35818b0f6e21caee60b97..259e455794519632c6a9df7bb00ad7b63cfe4058 100644 (file)
@@ -3,23 +3,24 @@
 starwars \- draws a perspective text crawl, like at the beginning of the movie
 .SH SYNOPSIS
 .B starwars
-[\-display \fIhost:display.screen\fP] [\-window] [\-root]
-[\-visual \fIvisual\fP]
-[\-delay \fImicroseconds\fP]
-[\-program \fIcommand\fP]
-[\-size \fIinteger\fP ]
-[\-columns \fIinteger\fP]
-[\-wrap | \-no\-wrap]
-[\-left | \-center | \-right]
-[\-lines \fIinteger\fP]
-[\-spin \fIfloat\fP]
-[\-steps \fIinteger\fP]
-[\-delay \fIusecs\fP]
-[\-font \fIxlfd\fP]
-[\-no\-textures]
-[\-no\-smooth]
-[\-no\-thick]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-delay \fImicroseconds\fP]
+[\-\-program \fIcommand\fP]
+[\-\-size \fIinteger\fP ]
+[\-\-columns \fIinteger\fP]
+[\-\-wrap | \-\-no\-wrap]
+[\-\-left | \-\-center | \-\-right]
+[\-\-lines \fIinteger\fP]
+[\-\-spin \fIfloat\fP]
+[\-\-steps \fIinteger\fP]
+[\-\-delay \fIusecs\fP]
+[\-\-font \fIxlfd\fP]
+[\-\-no\-textures]
+[\-\-no\-smooth]
+[\-\-no\-thick]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIstarwars\fP program runs another program to generate a stream of
 text, then animates that text receeding into the background at an angle,
@@ -28,20 +29,23 @@ in front of a star field.
 .I starwars
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-install
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP\fP
+.B \-\-visual \fIvisual\fP\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-program \fIsh-command\fP
+.B \-\-program \fIsh-command\fP
 The command to run to generate the text to display.  This option may be
 any string acceptable to /bin/sh.  The program will be run at the end of
 a pipe, and any characters that it prints to \fIstdout\fP will be printed
@@ -72,68 +76,68 @@ Some examples:
 .sp
 .fi
 .TP 8
-.B \-size \fIinteger\fP
+.B \-\-size \fIinteger\fP
 How large a font to use, in points.  (Well, in some arbitrary unit 
 we're calling "points" for the sake of argument.)  Default: 24.
 .TP 8
-.B \-columns \fIinteger\fP
+.B \-\-columns \fIinteger\fP
 How many columns of text should be visible on the bottom line of the
 screen.  Default: 60.
 
-Only one of \fI\-columns\fP and \fI\-size\fP may be specified;
-if both are specified, \fI\-columns\fP takes priority.
+Only one of \fI\-\-columns\fP and \fI\-\-size\fP may be specified;
+if both are specified, \fI\-\-columns\fP takes priority.
 .TP 8
-.B \-wrap
+.B \-\-wrap
 Word-wrap lines when they reach the rightmost column.  This is the default.
 .TP 8
-.B \-no\-wrap
+.B \-\-no\-wrap
 Do not word-wrap: just let the lines go off the right side of the screen.
 .TP 8
-.B \-left | \-center | \-right
+.B \-\-left | \-\-center | \-\-right
 Whether to align the text flush left, centered, or flush right.
 The default is centered.
 .TP 8
-.B \-lines \fIinteger\fP
+.B \-\-lines \fIinteger\fP
 How many lines should be allowed to be on the screen before they fall off
 the end.  The default is 125.
 .TP 8
-.B \-spin \fIfloat\fP
+.B \-\-spin \fIfloat\fP
 The star field on the background slowly rotates.  This is how fast.
 The default is 0.03.
 .TP 8
-.B \-steps \fIinteger\fP
+.B \-\-steps \fIinteger\fP
 How many steps should be used to scroll a single line.  The default is 35.
 If the animation looks jerky to you, increase this number.
 .TP 8
-.B \-delay \fIusecs\fP
+.B \-\-delay \fIusecs\fP
 The delay between steps of the animation; default is 40000 (1/25th second.)
 .TP 8
-.B \-font \fIfont-name\fP
+.B \-\-font \fIfont-name\fP
 The name of the font to use.  For best effect, this should be a large
 font (at least 36 points.)  The bigger the font, the better looking the
 characters will be.  Note that the size of this font affects only the
 clarity of the characters, not their size on the screen: for that, use
-the \fI\-size\fP or \fI\-columns\fP options.
+the \fI\-\-size\fP or \fI\-\-columns\fP options.
 
 Default: -*-utopia-bold-r-normal-*-*-720-*-*-*-*-iso8859-1
 .TP 8
-.B \-no\-textures
+.B \-\-no\-textures
 Instead of texture-mapping a real font to render the text, use a
 built-in font composed of line segments.  On graphics cards without
 texture support, the line-segment font will have much better
 performance.
 .TP 8
-.B \-no\-smooth
+.B \-\-no\-smooth
 When using the line-segment font, turn off anti-aliasing of the lines
 used to draw the font.  This will make the text blockier, but may
 improve performance.
 .TP 8
-.B \-no\-thick
+.B \-\-no\-thick
 When using the line-segment font, turn off use of thick lines for the
 characters that are close to the foreground.  This will make the text
 appear unnaturally skinny, but may improve performance.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .SH ENVIRONMENT
 .PP
@@ -144,6 +148,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR xscreensaver (1),
 .BR xscreensaver\-text (MANSUFFIX),
index 2c75e51bf7085424545e704812a49ca48e773d62..b8ec4ddd4fe1b3126f867a22c38ee8a76d4f3a3d 100644 (file)
@@ -3,31 +3,35 @@
 stonerview \- 3D undulating ribbons of squares.
 .SH SYNOPSIS
 .B stonerview
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-wireframe]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-wireframe]
+[\-\-fps]
 .SH DESCRIPTION
 Chains of colorful squares dance around each other in complex spiral
 patterns.  This is a clone of the SGI "electropaint" screen saver.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-wireframe
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-wireframe
 Render in wireframe instead of solid.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .SH ENVIRONMENT
 .PP
@@ -38,6 +42,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 180d3d1fec9c62919ad87701c3cfb2477a154d41..d84863ea054337e9b61195af75b6d7f361f8c812 100644 (file)
@@ -3,48 +3,52 @@
 superquadrics \- morphing 3d shapes.
 .SH SYNOPSIS
 .B superquadrics
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-spinspeed \fInumber\fP]
-[\-count \fInumber\fP]
-[\-cycles \fInumber\fP]
-[\-wireframe]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-spinspeed \fInumber\fP]
+[\-\-count \fInumber\fP]
+[\-\-cycles \fInumber\fP]
+[\-\-wireframe]
+[\-\-fps]
 .SH DESCRIPTION
 Ed Mackey reports that he wrote the first version of this program in BASIC
 on a Commodore 64 in 1987, as a 320x200 black and white wireframe. Now it
 is GL and has specular reflections. 
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 40000 (0.04 seconds.).
 .TP 8
-.B \-spinspeed \fInumber\fP
+.B \-\-spinspeed \fInumber\fP
 0.1 - 15.0.  Default: 5.0.
 .TP 8
-.B \-count \fInumber\fP
+.B \-\-count \fInumber\fP
 0 - 100.  Default: 25.
 .TP 8
-.B \-cycles \fInumber\fP
+.B \-\-cycles \fInumber\fP
 0 - 100.  Default: 40.
 .TP 8
-.B \-wireframe
+.B \-\-wireframe
 Render in wireframe instead of solid.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .SH ENVIRONMENT
 .PP
@@ -55,6 +59,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 284abad4306322c9b21cf87df74e45e5f502bc5f..3fef5d444d48fa459f824fce38d864390d7a5385 100644 (file)
 surfaces \- Draws some interesting 3d parametric surfaces.
 .SH SYNOPSIS
 .B surfaces
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-speed \fInumber\fP]
-[\-rand]
-[\-spin]
-[\-wander]
-[\-fps]
-[\-surface \fIsurface-name\fP]
-[\-random-surface]
-[\-dini]
-[\-enneper]
-[\-kuen]
-[\-moebius]
-[\-seashell]
-[\-swallowtail]
-[\-bohemian]
-[\-whitney]
-[\-pluecker]
-[\-henneberg]
-[\-catalan]
-[\-corkscrew]
-[\-mode \fIdisplay-mode\fP]
-[\-random-mode]
-[\-points]
-[\-lines]
-[\-line-loops]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-speed \fInumber\fP]
+[\-\-rand]
+[\-\-spin]
+[\-\-wander]
+[\-\-fps]
+[\-\-surface \fIsurface-name\fP]
+[\-\-random-surface]
+[\-\-dini]
+[\-\-enneper]
+[\-\-kuen]
+[\-\-moebius]
+[\-\-seashell]
+[\-\-swallowtail]
+[\-\-bohemian]
+[\-\-whitney]
+[\-\-pluecker]
+[\-\-henneberg]
+[\-\-catalan]
+[\-\-corkscrew]
+[\-\-mode \fIdisplay-mode\fP]
+[\-\-random-mode]
+[\-\-points]
+[\-\-lines]
+[\-\-line-loops]
 .SH DESCRIPTION
 This draws one of several three dimensional parametric surfaces.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual
 class, or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 20000 (0.02 seconds.).
 .TP 8
-.B \-speed \fInumber\fP
+.B \-\-speed \fInumber\fP
 Number of frames before changing shape.  Default: 1000.
 .TP 8
-.B \-surface random \fP(Shortcut: \fB\-random-surface\fP)
+.B \-\-surface random \fP(Shortcut: \fB\-\-random-surface\fP)
 Display a random surface.  This is the default.
 .TP 8
-.B \-surface dini \fP(Shortcut: \fB\-dini\fP)
+.B \-\-surface dini \fP(Shortcut: \fB\-\-dini\fP)
 Display Dini's surface.
 .TP 8
-.B \-surface enneper \fP(Shortcut: \fB\-enneper\fP)
+.B \-\-surface enneper \fP(Shortcut: \fB\-\-enneper\fP)
 Display Enneper's minimal surface.
 .TP 8
-.B \-surface kuen \fP(Shortcut: \fB\-kuen\fP)
+.B \-\-surface kuen \fP(Shortcut: \fB\-\-kuen\fP)
 Display the Kuen surface.
 .TP 8
-.B \-surface moebius \fP(Shortcut: \fB\-moebius\fP)
+.B \-\-surface moebius \fP(Shortcut: \fB\-\-moebius\fP)
 Display the Moebius strip.
 .TP 8
-.B \-surface seashell \fP(Shortcut: \fB\-seashell\fP)
+.B \-\-surface seashell \fP(Shortcut: \fB\-\-seashell\fP)
 Display the seashell surface.
 .TP 8
-.B \-surface swallowtail \fP(Shortcut: \fB\-swallowtail\fP)
+.B \-\-surface swallowtail \fP(Shortcut: \fB\-\-swallowtail\fP)
 Display the swallowtail catastrophe.
 .TP 8
-.B \-surface bohemian \fP(Shortcut: \fB\-bohemian\fP)
+.B \-\-surface bohemian \fP(Shortcut: \fB\-\-bohemian\fP)
 Display the Bohemian dome.
 .TP 8
-.B \-surface whitney \fP(Shortcut: \fB\-whitney\fP)
+.B \-\-surface whitney \fP(Shortcut: \fB\-\-whitney\fP)
 Display the Whitney umbrella.
 .TP 8
-.B \-surface pluecker \fP(Shortcut: \fB\-pluecker\fP)
+.B \-\-surface pluecker \fP(Shortcut: \fB\-\-pluecker\fP)
 Display Pluecker's conoid.
 .TP 8
-.B \-surface henneberg \fP(Shortcut: \fB\-henneberg\fP)
+.B \-\-surface henneberg \fP(Shortcut: \fB\-\-henneberg\fP)
 Display Henneberg's minimal surface.
 .TP 8
-.B \-surface catalan \fP(Shortcut: \fB\-catalan\fP)
+.B \-\-surface catalan \fP(Shortcut: \fB\-\-catalan\fP)
 Display Catalan's minimal surface.
 .TP 8
-.B \-surface corkscrew \fP(Shortcut: \fB\-corkscrew\fP)
+.B \-\-surface corkscrew \fP(Shortcut: \fB\-\-corkscrew\fP)
 Display the corkscrew surface.
 .TP 8
-.B \-mode random \fP(Shortcut: \fB\-random-mode\fP)
+.B \-\-mode random \fP(Shortcut: \fB\-\-random-mode\fP)
 Use random OpenGL primitives to display the surface.  This is the
 default.
 .TP 8
-.B \-mode points \fP(Shortcut: \fB\-points\fP)
+.B \-\-mode points \fP(Shortcut: \fB\-\-points\fP)
 Use OpenGL points to display the surface.
 .TP 8
-.B \-mode lines \fP(Shortcut: \fB\-lines\fP)
+.B \-\-mode lines \fP(Shortcut: \fB\-\-lines\fP)
 Use OpenGL lines to display the surface.
 .TP 8
-.B \-mode line-loops \fP(Shortcut: \fB\-line-loops\fP)
+.B \-\-mode line-loops \fP(Shortcut: \fB\-\-line-loops\fP)
 Use OpenGL line loops to display the surface.
 .TP 8
-.B \-wander | \-no-wander
+.B \-\-wander | \-\-no-wander
 Whether to wander around the screen.
 .TP 8
-.B \-spin | \-no-spin
+.B \-\-spin | \-\-no-spin
 Whether to rotate around the center of the figure.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .SH ENVIRONMENT
 .PP
@@ -120,6 +124,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 18d147d8842217882969ea7c038f65a71d42b0aa..c21f1be81a43434d88a5c119374965aee3a5bbaa 100644 (file)
@@ -3,45 +3,49 @@
 tangram \- watch the computer solve tangram puzzles.
 .SH SYNOPSIS
 .B tangram 
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-wireframe]
-[\-viewing_time \fInumber\fP]
-[\-rotate]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-wireframe]
+[\-\-viewing_time \fInumber\fP]
+[\-\-rotate]
+[\-\-fps]
 .SH DESCRIPTION
 The \fItangram\fP program uses a few basic shapes to build silhouettes of recognizable objects.
 .SH OPTIONS
 .I tangram
 accepts the following options:
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 10000 (0.01 seconds.).
 .TP 8
-.B \-wireframe | \-no-wireframe
+.B \-\-wireframe | \-\-no-wireframe
 Render in wireframe instead of solid.
 .TP 8
-.B \-viewing_time \fInumber\fP 
+.B \-\-viewing_time \fInumber\fP 
 Specify the length of time, in seconds, that the finished puzzle
 should be displayed. Default: 5
 .TP 8
-.B \-rotate | \-no-rotate
+.B \-\-rotate | \-\-no-rotate
 Rotate the camera around the puzzle.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .SH ENVIRONMENT
 .PP
@@ -52,6 +56,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 58a89d189be4ac38c7c1f0399cc62517ef2b9511..97d58b3dddd9d72148a706f651dfe328514340f6 100644 (file)
@@ -3,83 +3,87 @@
 timetunnel \- Plasma tunnels fade in and out
 .SH SYNOPSIS
 .B timetunnel
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-start \fInumber\fP]
-[\-end \fInumber\fP]
-[\-dilate \fInumber\fP]
-[\-no-logo]
-[\-reverse]
-[\-no-fog]
-[\-no-texture]
-[\-wireframe]
-[\-fps]
-[\-tardis \fItexture\fP]
-[\-head \fItexture\fP]
-[\-marquee \fItexture\fP]
-[\-tun1 \fItexture\fP]
-[\-tun2 \fItexture\fP]
-[\-tun3 \fItexture\fP]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-start \fInumber\fP]
+[\-\-end \fInumber\fP]
+[\-\-dilate \fInumber\fP]
+[\-\-no-logo]
+[\-\-reverse]
+[\-\-no-fog]
+[\-\-no-texture]
+[\-\-wireframe]
+[\-\-fps]
+[\-\-tardis \fItexture\fP]
+[\-\-head \fItexture\fP]
+[\-\-marquee \fItexture\fP]
+[\-\-tun1 \fItexture\fP]
+[\-\-tun2 \fItexture\fP]
+[\-\-tun3 \fItexture\fP]
 .SH DESCRIPTION
 Draws an animation similar to the opening and closing effects on the
 Dr. Who television show.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-start \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-start \fInumber\fP
 Start time of loop, 0.0 - 30.00. Default 0.0.  May be identical to end time.
 .TP 8
-.B \-end \fInumber\fP
+.B \-\-end \fInumber\fP
 End time of loop, 0.0 - 30.00. Default 27.79.  May be identical to start time.
 .TP 8
-.B \-dilate \fInumber\fP
+.B \-\-dilate \fInumber\fP
 Scale time to speed or slow simulation.  Numbers less than one slow it down.
 .TP 8
-.B \-no-logo
+.B \-\-no-logo
 Show only tunnels, no logos, etc.
 .TP 8
-.B \-reverse
+.B \-\-reverse
 Play in reverse, including tunnels.
 .TP 8
-.B \-no-fog
+.B \-\-no-fog
 Turn off fog.
 .TP 8
-.B \-no-texture
+.B \-\-no-texture
 Turn off textures.
 .TP 8
-.B \-wireframe
+.B \-\-wireframe
 Show as wire frame.
 .TP 8
-.B \-fps | \-no-fps
+.B \-\-fps | \-\-no-fps
 Whether to show a frames-per-second display at the bottom of the screen.
 .TP 8
-.B \-tardis \fItexture\fP
+.B \-\-tardis \fItexture\fP
 Specify an xpm file to override default tardis texture.
 .TP 8
-.B \-head \fItexture\fP
+.B \-\-head \fItexture\fP
 Specify an xpm file to override default Dr. Who head texture.
 .TP 8
-.B \-marquee \fItexture\fP
+.B \-\-marquee \fItexture\fP
 Specify an xpm file to override default show marquee texture.
 .TP 8
-.B \-tun1 \fItexture\fP
+.B \-\-tun1 \fItexture\fP
 Specify an xpm file to override default tardis tunnel texture.
 .TP 8
-.B \-tun2 \fItexture\fP
+.B \-\-tun2 \fItexture\fP
 Specify an xpm file to override default middle tunnel texture.
 .TP 8
-.B \-tun3 \fItexture\fP
+.B \-\-tun3 \fItexture\fP
 Specify an xpm file to override default final tunnel texture.
 .SH ENVIRONMENT
 .PP
@@ -90,6 +94,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index ba63c7047ba51124cfc2dd20d9fb53cef2208334..e37a7ec9d0a285fb80f5bafc45bbe014d234fbfa 100644 (file)
 topblock \- a 3D world of falling blocks that build up and up.
 .SH SYNOPSIS
 .B topblock
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-wireframe]
-[\-fps]
-[\-size \fInumber\fP]
-[\-spawn \fInumber\fP]
-[\-camX \fInumber\fP]
-[\-camY \fInumber\fP]
-[\-camZ \fInumber\fP]
-[\-rotate]
-[\-no-carpet]
-[\-no-nipples]
-[\-blob]
-[\-rotateSpeed \fInumber\fP]
-[\-follow]
-[\-maxFalling \fInumber\fP]
-[\-resolution \fInumber\fP]
-[\-maxColors \fInumber\fP]
-[\-dropSpeed \fInumber\fP]
-[\-override]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-wireframe]
+[\-\-fps]
+[\-\-size \fInumber\fP]
+[\-\-spawn \fInumber\fP]
+[\-\-camX \fInumber\fP]
+[\-\-camY \fInumber\fP]
+[\-\-camZ \fInumber\fP]
+[\-\-rotate]
+[\-\-no-carpet]
+[\-\-no-nipples]
+[\-\-blob]
+[\-\-rotateSpeed \fInumber\fP]
+[\-\-follow]
+[\-\-maxFalling \fInumber\fP]
+[\-\-resolution \fInumber\fP]
+[\-\-maxColors \fInumber\fP]
+[\-\-dropSpeed \fInumber\fP]
+[\-\-override]
 .SH DESCRIPTION
 Creates a world of falling blocks that build up and up.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 10000 (0.01 seconds.).
 .TP 8
-.B \-wireframe | \-no-wireframe
+.B \-\-wireframe | \-\-no-wireframe
 Render in wireframe instead of solid.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .TP 8
-.B \-size \fInumber\fP
+.B \-\-size \fInumber\fP
 Size of the base/carpet.
 .TP 8
-.B \-spawn \fInumber\fP
+.B \-\-spawn \fInumber\fP
 Likeyhood of a new block being created per frame : 1 high, 1000 very low.
 .TP 8
-.B \-camX \fInumber\fP
+.B \-\-camX \fInumber\fP
 Initial camera X location in the world.
 .TP 8
-.B \-camY \fInumber\fP
+.B \-\-camY \fInumber\fP
 Initial camera Y location in the world.
 .TP 8
-.B \-camZ \fInumber\fP
+.B \-\-camZ \fInumber\fP
 Initial camera Z location in the world.
 .TP 8
-.B \-rotate | -no-rotate
+.B \-\-rotate | -no-rotate
 Add/Remove rotation to/from the animation.
 .TP 8
-.B \-no-carpet
+.B \-\-no-carpet
 Remove the base/carpet.
 .TP 8
-.B \-no-nipples
+.B \-\-no-nipples
 Remove nipples on the blocks (also applies to udders) (has no effect in blob mode).
 .TP 8
-.B \-blob
+.B \-\-blob
 Run in blob mode, blocks become over sized spheres.
 .TP 8
-.B \-rotateSpeed \fInumber\fP
+.B \-\-rotateSpeed \fInumber\fP
 Varries speed of world rotation.
 .TP 8
-.B \-follow
+.B \-\-follow
 Camera follows blocks as they fall instead of camera being semi static (stays with top block).
 .TP 8
-.B \-maxFalling \fInumber\fP
+.B \-\-maxFalling \fInumber\fP
 Maximum number of objects created before recycling occurs.
 .TP 8
-.B \-resolution \fInumber\fP
+.B \-\-resolution \fInumber\fP
 Resolution of tubes, disks and spheres.
 .TP 8
-.B \-maxColors \fInumber\fP
+.B \-\-maxColors \fInumber\fP
 Number of different colors available to falling objects.
 .TP 8
-.B \-dropSpeed \fInumber\fP
+.B \-\-dropSpeed \fInumber\fP
 Varries speed of falling objects.
 .TP 8
-.B \-override
+.B \-\-override
 Overrides camera settings and provides a tunnel view.
 
 .SH KEYS
@@ -154,6 +158,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1),
index 532c6f2af63685051535f27f1a3d1ae4057b298c..7aea6db882c9c6accdae65222b16d09e5c868f39 100644 (file)
@@ -62,7 +62,7 @@ trackball(float q[4], float p1x, float p1y, float p2x, float p2y);
  * over-written with the resulting new total rotation).
  */
 void
-add_quats(float *q1, float *q2, float *dest);
+add_quats(float q1[4], float q2[4], float dest[4]);
 
 /*
  * A useful function, builds a rotation matrix in Matrix based on
index bda26fa58c51233d1094f587d72dc97fac025599..6692498cbe3089cde8ae351653ea9bf331b4231f 100644 (file)
@@ -3,16 +3,17 @@
 tronbit \- Yes. Yes. No. Yes. Yes. No. Yes. Yes yes yes yes yes.
 .SH SYNOPSIS
 .B tronbit
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-speed \fIratio\fP]
-[\-spin]
-[\-wander]
-[\-wireframe]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-speed \fIratio\fP]
+[\-\-spin]
+[\-\-wander]
+[\-\-wireframe]
+[\-\-fps]
 .SH DESCRIPTION
 Draws an animation of the character "Bit" from the film, \fITron\fP.
 
@@ -22,33 +23,36 @@ a small triambic icosahedron and the compound of an icosahedron and
 a dodecahedron.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 30000 (0.03 seconds.).
 .TP 8
-.B \-speed \fInumber\fP
+.B \-\-speed \fInumber\fP
 How fast the animation should run.
 Less than 1 for slower, greater than 1 for faster.
 .TP 8
-.B \-no\-spin
+.B \-\-no\-spin
 Don't rotate.
 .TP 8
-.B \-no\-wander
+.B \-\-no\-wander
 Don't wander around.
 .TP 8
-.B \-wireframe
+.B \-\-wireframe
 Render in wireframe instead of solid.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .SH ENVIRONMENT
 .PP
@@ -59,6 +63,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR polyhedra (1),
index faa7ee42bbe7d80bb76dae86d05464aeaa1c347c..63289d2a4b7c2bbac4c41d51e252dd6d512543ad 100644 (file)
@@ -3,52 +3,56 @@
 unicrud \- Bounces a random Unicode character on the screen.
 .SH SYNOPSIS
 .B unicrud
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-speed \fInumber\fP]
-[\-block \fIstring\fP]
-[\-no-titles]
-[\-no-wander]
-[\-no-roll]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-speed \fInumber\fP]
+[\-\-block \fIstring\fP]
+[\-\-no-titles]
+[\-\-no-wander]
+[\-\-no-roll]
+[\-\-fps]
 .SH DESCRIPTION
 Chooses a random Unicode character and displays it full screen, along with
 some information about it.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 20000 (0.02 seconds).
 .TP 8
-.B \-speed \fInumber\fP
+.B \-\-speed \fInumber\fP
 Animation speed.  2.0 means twice as fast, 0.5 means half as fast.
 .TP 8
-.B \-titles | \-no-titles
+.B \-\-titles | \-\-no-titles
 Whether to describe the character being shown. Default true.
 .TP 8
-.B \-wander | \-no-wander
+.B \-\-wander | \-\-no-wander
 Whether the object should wander around the screen.
 .TP 8
-.B \-roll | \-no-roll
+.B \-\-roll | \-\-no-roll
 Whether the object should rotate.  Boolean.
 .TP 8
-.B \-block \fIstring\fP
+.B \-\-block \fIstring\fP
 Which block or blocks of Unicode characters to display.  Default: "all".
-Use \fI\-block help\fP to see the full list.
+Use \fI\-\-block help\fP to see the full list.
 .TP 8
-.B \-fps | \-no-fps
+.B \-\-fps | \-\-no-fps
 Whether to show a frames-per-second display at the bottom of the screen.
 .SH ENVIRONMENT
 .PP
@@ -59,6 +63,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 https://en.wikipedia.org/wiki/Unicode,
 .br
index 33ea46dc97db5046c422df1aff068a2e015c9bd8..37b1534b3233ffddbd9a1f77d33687e52556f584 100644 (file)
@@ -3,21 +3,22 @@
 unknownpleasures \- a waterfall graph of the signal from pulsar PSR B1919+21.
 .SH SYNOPSIS
 .B unknownpleasures
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-count \fInumber\fP]
-[\-speed \fInumber\fP]
-[\-resolution \fInumber\fP]
-[\-amplitude \fInumber\fP]
-[\-noise \fInumber\fP]
-[\-mask \fIfile\fP]
-[\-no-ortho]
-[\-buzz]
-[\-wireframe]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-count \fInumber\fP]
+[\-\-speed \fInumber\fP]
+[\-\-resolution \fInumber\fP]
+[\-\-amplitude \fInumber\fP]
+[\-\-noise \fInumber\fP]
+[\-\-mask \fIfile\fP]
+[\-\-no-ortho]
+[\-\-buzz]
+[\-\-wireframe]
+[\-\-fps]
 .SH DESCRIPTION
 PSR B1919+21 (AKA CP 1919) was the first pulsar ever discovered: a spinning
 neutron star emitting a periodic lighthouse-like beacon. An illustration of
@@ -28,49 +29,52 @@ appropriated by Peter Saville for the cover of the band's album "Unknown
 Pleasures".
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 30000 (0.03 seconds).
 .TP 8
-.B \-speed \fInumber\fP
+.B \-\-speed \fInumber\fP
 Animation speed. 2 for twice as fast, 0.5 for half as fast.
 .TP 8
-.B \-count \fInumber\fP
+.B \-\-count \fInumber\fP
 Scanlines (vertical resolution).  Default: 80.
 .TP 8
-.B \-resolution \fInumber\fP
+.B \-\-resolution \fInumber\fP
 Horizontal Resolution, Default: 100.
 .TP 8
-.B \-amplitude \fInumber\fP
+.B \-\-amplitude \fInumber\fP
 Height of the waves, 0 - 1.0.  Default: 0.13.
 .TP 8
-.B \-noise \fInumber\fP
+.B \-\-noise \fInumber\fP
 How noisy the signal is. 2 for twice as noisy, 0.5 for half as noisy.
 .TP 8
-.B \-mask \fIfile\fP
+.B \-\-mask \fIfile\fP
 Use the given image file as a clipping mask against the data.
 A high contrast image of around 256x256 works best.
 Signal peaks appear in the dark areas.
 .TP 8
-.B \-ortho | \-no-ortho
+.B \-\-ortho | \-\-no-ortho
 Whether to use an orthographic projection.
 .TP 8
-.B \-buzz | \-no-buzz
+.B \-\-buzz | \-\-no-buzz
 Whether each line should seethe with noise.
 .TP 8
-.B \-wireframe | \-no-wireframe
+.B \-\-wireframe | \-\-no-wireframe
 Render in wireframe instead of solid.
 .TP 8
-.B \-fps | \-no-fps
+.B \-\-fps | \-\-no-fps
 Whether to show a frames-per-second display at the bottom of the screen.
 .SH ENVIRONMENT
 .PP
@@ -81,6 +85,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 12ab91001b15014664f9b54941a56519e5dc6ab4..ac3bbbfb78ef1cc846e15cee61dbcd7cf8ae5033 100644 (file)
@@ -3,35 +3,39 @@
 vigilance \- screen saver.
 .SH SYNOPSIS
 .B vigilance
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-speed \fInumber\fP]
-[\-count \fInumber\fP]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-speed \fInumber\fP]
+[\-\-count \fInumber\fP]
 .SH DESCRIPTION
 A set of security cameras keep very careful track of their surroundings.
 You can trust them. Everything is completely under control.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 20000 (0.02 seconds).
 .TP 8
-.B \-speed \fInumber\fP
+.B \-\-speed \fInumber\fP
 Animation speed.  2.0 means twice as fast, 0.5 means half as fast.
 .TP 8
-.B \-count \fInumber\fP
+.B \-\-count \fInumber\fP
 Number of cameras.  1 - 50.  Default: 5.
 .SH ENVIRONMENT
 .PP
@@ -42,6 +46,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 8eb4a41c7ea9ede2d3a0fd5b5c81ce96a0d3c14c..2564225c08004bf5b2198a2876367bc9b5d86378 100644 (file)
@@ -3,17 +3,18 @@
 voronoi \- draws a randomly-colored Voronoi tessellation
 .SH SYNOPSIS
 .B voronoi
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-points \fIint\fP]
-[\-point\-size \fIint\fP]
-[\-point\-speed \fIratio\fP]
-[\-point\-delay \fIseconds\fP]
-[\-zoom\-speed \fIratio\fP]
-[\-zoom\-delay \fIseconds\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-points \fIint\fP]
+[\-\-point\-size \fIint\fP]
+[\-\-point\-speed \fIratio\fP]
+[\-\-point\-delay \fIseconds\fP]
+[\-\-zoom\-speed \fIratio\fP]
+[\-\-zoom\-delay \fIseconds\fP]
+[\-\-fps]
 .SH DESCRIPTION
 Draws a randomly-colored Voronoi tessellation, and periodically zooms 
 in and adds new points.  The existing points also wander around.
@@ -32,37 +33,40 @@ compute the cells for us, by rendering the intersection of overlapping
 cones in an orthographic plane.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-points \fIint\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-points \fIint\fP
 How many points to add each time we zoom in.
 .TP 8
-.B \-point\-size \fIint\fP
+.B \-\-point\-size \fIint\fP
 How big to draw the stars, in pixels.  0 for no stars.
 .TP 8
-.B \-point\-speed \fIratio\fP
+.B \-\-point\-speed \fIratio\fP
 How fast the points should wander.  
 Less than 1 for slower, greater than 1 for faster.
 .TP 8
-.B \-point\-delay \fIseconds\fP
+.B \-\-point\-delay \fIseconds\fP
 How quickly to insert new points, when adding.
 .TP 8
-.B \-zoom\-speed \fIratio\fP
+.B \-\-zoom\-speed \fIratio\fP
 How fast to zoom in.
 Less than 1 for slower, greater than 1 for faster.
 .TP 8
-.B \-zoom\-delay \fIseconds\fP
+.B \-\-zoom\-delay \fIseconds\fP
 Zoom in every this-many seconds.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate, CPU load, and polygon count.
 .SH ENVIRONMENT
 .PP
@@ -73,6 +77,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 89ae29d65f4df8623d987c9590c0f9c8d4cb9917..26ea319941b676d65cc675840105a5cf6ba64d03 100644 (file)
@@ -3,19 +3,20 @@
 winduprobot \- screen saver.
 .SH SYNOPSIS
 .B winduprobot
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-count \fInumber\fP]
-[\-speed \fIratio\fP]
-[\-size \fIratio\fP]
-[\-opacity \fIratio\fP]
-[\-talk \fIratio\fP]
-[\-no-texture]
-[\-no-fade]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-count \fInumber\fP]
+[\-\-speed \fIratio\fP]
+[\-\-size \fIratio\fP]
+[\-\-opacity \fIratio\fP]
+[\-\-talk \fIratio\fP]
+[\-\-no-texture]
+[\-\-no-fade]
+[\-\-fps]
 .SH DESCRIPTION
 A swarm of wind-up toy robots wander around the table-top, bumping into
 each other. Each robot contains a mechanically accurate gear system inside,
@@ -23,42 +24,45 @@ which you can see when the robot's shell occasionally fades to
 transparency.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 20000 (0.02 seconds).
 .TP 8
-.B \-count \fInumber\fP
+.B \-\-count \fInumber\fP
 Number of robots.  1 - 100.  Default: 25.
 .TP 8
-.B \-speed \fIratio\fP
+.B \-\-speed \fIratio\fP
 Animation speed.  2.0 means twice as fast, 0.5 means half as fast.
 .TP 8
-.B \-size \fIratio\fP
+.B \-\-size \fIratio\fP
 Robot size.  2.0 means twice as big, 0.5 means half as big.
 .TP 8
-.B \-opacity \fIratio\fP
+.B \-\-opacity \fIratio\fP
 Robot skin transparency.  0.0 - 1.0.  Default: 1.0.
 .TP 8
-.B \-talk \fIratio\fP
+.B \-\-talk \fIratio\fP
 How often to occasionally pop up a word bubble with random text in it.
 0.0 means never. 1.0 means often.
 .TP 8
-.B \-texture | \-no-texture
+.B \-\-texture | \-\-no-texture
 Whether the robot's surface should be reflective chrome.
 .TP 8
-.B \-fade | \-no-fade
+.B \-\-fade | \-\-no-fade
 Whether to sometimes fade the robot's opacity to show the inner mechanism.
 .TP 8
-.B \-fps | \-no-fps
+.B \-\-fps | \-\-no-fps
 Whether to show a frames-per-second display at the bottom of the screen.
 .SH ENVIRONMENT
 .PP
@@ -69,6 +73,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index af56cd18142f4e526489aa230220aa33c4c2cb09..fddfaab6cf4ff16f1daca57f9705c92701f78a1e 100644 (file)
@@ -3,7 +3,7 @@
 xscreensaver-gl-visual \- figure out which X visual to use for GL programs
 .SH SYNOPSIS
 .B xscreensaver-gl-visual
-[\-display \fIhost:display.screen\fP]
+[\-\-display \fIhost:display.screen\fP]
 .SH DESCRIPTION
 This program prints the ID of the visual that should be used for proper
 operation of OpenGL programs.  This program only exists so that the 
index d97c705047955905217b906734b758d611d2f4eb..90e9c1d8d8e083a077a6c043c152ed3645cf0833 100644 (file)
@@ -3,8 +3,10 @@
 goop \- squishy transparent oil and bubble screenhack
 .SH SYNOPSIS
 .B goop
-[\-display \fIhost:display.screen\fP] [\-foreground \fIcolor\fP] [\-background \fIcolor\fP] [\-window] [\-root] [\-mono] [\-install] [\-visual \fIvisual\fP] [\-transparent] [\-non\-transparent] [\-additive] [\-subtractive] [\-xor] [\-no\-xor]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP] [\-\-foreground \fIcolor\fP]
+[\-\-background \fIcolor\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-mono] [\-\-install] [\-\-visual \fIvisual\fP] [\-\-transparent] [\-\-non\-transparent] [\-\-additive] [\-\-subtractive] [\-\-xor] [\-\-no\-xor]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIgoop\fP program draws a simulation of bubbles in layers of 
 overlapping multicolored translucent fluid.
@@ -12,53 +14,56 @@ overlapping multicolored translucent fluid.
 .I goop
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-mono 
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-mono 
 If on a color display, pretend we're on a monochrome display.
 .TP 8
-.B \-install
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-count \fIinteger\fP
+.B \-\-count \fIinteger\fP
 How many bubbles to draw per layer.  Default: random.
 .TP 8
-.B \-planes \fIinteger\fP
+.B \-\-planes \fIinteger\fP
 How many planes to draw.  Default: random, based on screen depth.
 .TP 8
-.B \-delay \fImicroseconds\fP
+.B \-\-delay \fImicroseconds\fP
 How much of a delay should be introduced between steps of the animation.
 Default 12000, or about 0.012 seconds.
 .TP 8
-.B \-transparent
-If \fI\-layers\fP is greater than 1, then each layer will be drawn in one
+.B \-\-transparent
+If \fI\-\-layers\fP is greater than 1, then each layer will be drawn in one
 color, and when they overlap, the colors will be mixed. This is the default.
 .TP 8
-.B \-non\-transparent
-Turns off \fI\-transparent\fP.
+.B \-\-non\-transparent
+Turns off \fI\-\-transparent\fP.
 .TP 8
-.B \-additive
-If \fI\-transparent\fP is specified, then this option means that the colors
+.B \-\-additive
+If \fI\-\-transparent\fP is specified, then this option means that the colors
 will be mixed using an additive color model, as if the blobs were projected
 light.  This is the default.
 .TP 8
-.B \-subtractive
-If \fI\-transparent\fP is specified, then this option means that the
+.B \-\-subtractive
+If \fI\-\-transparent\fP is specified, then this option means that the
 colors will be mixed using a subtractive color model, as if the blobs were
 translucent filters.
 .TP 8
-.B \-xor
+.B \-\-xor
 Draw with xor instead of the other color tricks.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -69,6 +74,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index f20b220b50ab0f1a94bf27339d0313be8a42fa39..1fd11a63ef34304fb3a2d23524040cb23c2d63c9 100644 (file)
@@ -3,52 +3,57 @@
 grav \- draws a simple orbital simulation
 .SH SYNOPSIS
 .B grav
-[\-display \fIhost:display.screen\fP] [\-foreground \fIcolor\fP] [\-background \fIcolor\fP] [\-window] [\-root] [\-mono] [\-install] [\-visual \fIvisual\fP] [\-ncolors \fIinteger\fP] [\-delay \fImicroseconds\fP] [\-count \fIinteger\fP] [\-decay] [\-no\-decay] [\-trail] [\-no\-trail]
+[\-\-display \fIhost:display.screen\fP] [\-\-foreground \fIcolor\fP]
+[\-\-background \fIcolor\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-mono] [\-\-install] [\-\-visual \fIvisual\fP] [\-\-ncolors \fIinteger\fP] [\-\-delay \fImicroseconds\fP] [\-\-count \fIinteger\fP] [\-\-decay] [\-\-no\-decay] [\-\-trail] [\-\-no\-trail]
 
-[\-fps]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIgrav\fP program draws a simple orbital simulation
 .SH OPTIONS
 .I grav
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-mono 
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-mono 
 If on a color display, pretend we're on a monochrome display.
 .TP 8
-.B \-install
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-ncolors \fIinteger\fP
+.B \-\-ncolors \fIinteger\fP
 How many colors should be used (if possible).  Default 64.
 The colors are chosen randomly.
 .TP 8
-.B \-count \fIinteger\fP
+.B \-\-count \fIinteger\fP
 Default 12.
 .TP 8
-.B \-decay
+.B \-\-decay
 .TP 8
-.B \-no\-decay
+.B \-\-no\-decay
 Whether orbits should decay.
 
 .TP 8
-.B \-trail
+.B \-\-trail
 .TP 8
-.B \-no\-trail
+.B \-\-no\-trail
 Whether the objects should leave trails behind them (makes it look vaguely
 like a cloud-chamber.
 
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -59,6 +64,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1),
index 6d2a8c34e0d25eae8a4205f9b340ba3e79920cd4..47153652bc3c49d5136cad2b9001a7b5a982288f 100644 (file)
@@ -3,34 +3,39 @@
 greynetic \- draw random stippled/color rectangles
 .SH SYNOPSIS
 .B greynetic
-[\-display \fIhost:display.screen\fP] [\-foreground \fIcolor\fP] [\-background \fIcolor\fP] [\-window] [\-root] [\-mono] [\-install] [\-visual \fIvisual\fP] [\-delay \fIusecs\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP] [\-\-foreground \fIcolor\fP]
+[\-\-background \fIcolor\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-mono] [\-\-install] [\-\-visual \fIvisual\fP] [\-\-delay \fIusecs\fP]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIgreynetic\fP program draws random rectangles.
 .SH OPTIONS
 .I greynetic
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-mono 
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-mono 
 If on a color display, pretend we're on a monochrome display.
 .TP 8
-.B \-install
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-delay \fImicroseconds\fP
+.B \-\-delay \fImicroseconds\fP
 Slow it down.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -41,6 +46,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 4148f93de5ffd94ec71ac731244565b669357979..ca82ea43400f61e2cdc22f7b944877a486b4e0e5 100644 (file)
@@ -3,59 +3,63 @@
 halftone \- simple halftone pattern of moving mass points
 .SH SYNOPSIS
 .B halftone
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-count \fInumber\fP]
-[\-spacing \fInumber\fP]
-[\-sizefactor \fInumber\fP]
-[\-delay \fInumber\fP]
-[\-minmass \fInumber\fP]
-[\-maxmass \fInumber\fP]
-[\-minspeed \fInumber\fP]
-[\-maxspeed \fInumber\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-count \fInumber\fP]
+[\-\-spacing \fInumber\fP]
+[\-\-sizefactor \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-minmass \fInumber\fP]
+[\-\-maxmass \fInumber\fP]
+[\-\-minspeed \fInumber\fP]
+[\-\-maxspeed \fInumber\fP]
+[\-\-fps]
 .SH DESCRIPTION
 Draws the gravity force in each point on the screen seen through a
 halftone dot pattern. The gravity force is calculated from a set of
 moving mass points. View it from a distance for best effect.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-count \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-count \fInumber\fP
 How many mass points to move around. Default: 10
 .TP 8
-.B \-spacing \fInumber\fP
+.B \-\-spacing \fInumber\fP
 Distance between each halftone dot. Default: 14
 .TP 8
-.B \-sizefactor \fInumber\fP
+.B \-\-sizefactor \fInumber\fP
 How big each halftone dot should be drawn compared to the spacing value. Default: 1.5
 .TP 8
-.B \-minmass \fInumber\fP
+.B \-\-minmass \fInumber\fP
 The minimum mass of each mass point. Default: 0.001
 .TP 8
-.B \-maxmass \fInumber\fP
+.B \-\-maxmass \fInumber\fP
 The maximum mass of each mass point. Default: 0.02
 .TP 8
-.B \-minspeed \fInumber\fP
+.B \-\-minspeed \fInumber\fP
 The minimum speed of each mass point. Default: 0.001
 .TP 8
-.B \-maxspeed \fInumber\fP
+.B \-\-maxspeed \fInumber\fP
 The maximum speed of each mass point. Default: 0.02
-.B \-delay \fInumber\fP
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 10000
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -66,6 +70,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 2894018ba52d37fadfb04b6596d42d90b71856a1..134a73920185e8d87b9898df973368a3ac133a71 100644 (file)
@@ -3,53 +3,58 @@
 halo \- draw circular patterns
 .SH SYNOPSIS
 .B halo
-[\-display \fIhost:display.screen\fP] [\-foreground \fIcolor\fP] [\-background \fIcolor\fP] [\-window] [\-root] [\-mono] [\-install] [\-visual \fIvisual\fP] [\-count \fIint\fP] [\-delay \fIusecs\fP] [\-mode seuss | ramp | random ] [\-animate] [\-colors \fIinteger\fP] 
-[\-fps]
+[\-\-display \fIhost:display.screen\fP] [\-\-foreground \fIcolor\fP]
+[\-\-background \fIcolor\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-mono] [\-\-install] [\-\-visual \fIvisual\fP] [\-\-count \fIint\fP] [\-\-delay \fIusecs\fP] [\-\-mode seuss | ramp | random ] [\-\-animate] [\-\-colors \fIinteger\fP] 
+[\-\-fps]
 .SH DESCRIPTION
 The \fIhalo\fP program draws cool patterns based on circles.
 .SH OPTIONS
 .I halo
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-mono 
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-mono 
 If on a color display, pretend we're on a monochrome display.
 .TP 8
-.B \-install
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-count \fIinteger\fP
+.B \-\-count \fIinteger\fP
 How many circles to draw.  Default 0, meaning random.
 .TP 8
-.B \-mode "seuss | ramp | random"
+.B \-\-mode "seuss | ramp | random"
 In \fIseuss\fP mode, alternating striped curves will be drawn.
 
 In \fIramp\fP mode, a color ramp will be drawn.
 
 \fIrandom\fP means pick the mode randomly.
 .TP 8
-.B \-delay \fImicroseconds\fP
+.B \-\-delay \fImicroseconds\fP
 How much of a delay should be introduced between steps of the animation.
 Default 100000, or about 0.1 second.
 .TP 8
-.B \-colors \fIinteger\fP
+.B \-\-colors \fIinteger\fP
 How many colors to use.  Default 100.
 .TP 8
-.B \-animate
+.B \-\-animate
 If specified, then the centerpoints of the circles will bounce around.
 Otherwise, the circles will be drawn once, erased, and a new set of
 circles will be drawn.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -60,6 +65,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index dbdbd1099f6f114ee07d2172c5ea3fe8200f810c..27fe2bde8df1d67cc538479f14dd057a44cdbe20 100644 (file)
@@ -3,8 +3,10 @@
 helix \- draw helical string-art patterns
 .SH SYNOPSIS
 .B helix
-[\-display \fIhost:display.screen\fP] [\-foreground \fIcolor\fP] [\-background \fIcolor\fP] [\-window] [\-root] [\-mono] [\-erase\-speed \fIusecs\fP] [\-erase\-mode \fIinteger\fP] [\-delay \fIseconds\fP] [\-install] [\-visual \fIvisual\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP] [\-\-foreground \fIcolor\fP]
+[\-\-background \fIcolor\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-mono] [\-\-erase\-speed \fIusecs\fP] [\-\-erase\-mode \fIinteger\fP] [\-\-delay \fIseconds\fP] [\-\-install] [\-\-visual \fIvisual\fP]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIhelix\fP program draws interesting patterns composed of line segments
 in random colors.
@@ -12,29 +14,32 @@ in random colors.
 .I helix
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-mono 
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-mono 
 If on a color display, pretend we're on a monochrome display.
 .TP 8
-.B \-delay \fIseconds\fP
+.B \-\-delay \fIseconds\fP
 This sets the number of seconds that the helix will be on the screen.
 .TP 8
-.B \-subdelay \fImicroseconds\fP
+.B \-\-subdelay \fImicroseconds\fP
 This sets the amount of time to pause periodically while drawing.
 .TP 8
-.B \-install
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -45,6 +50,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 83756cdf609c679c4ac02ea4dd56d286c0d9255b..ad86ecf45ac4f42ecd6f743988db32dcf9b481e6 100644 (file)
@@ -3,52 +3,56 @@
 hexadrop \- shrinking hexagons.
 .SH SYNOPSIS
 .B hexadrop
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-speed \fInumber\fP]
-[\-size \fInumber\fP]
-[\-sides \fInumber\fP]
-[\-uniform-speed]
-[\-no-uniform-speed]
-[\-lockstep]
-[\-no-lockstep]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-speed \fInumber\fP]
+[\-\-size \fInumber\fP]
+[\-\-sides \fInumber\fP]
+[\-\-uniform-speed]
+[\-\-no-uniform-speed]
+[\-\-lockstep]
+[\-\-no-lockstep]
+[\-\-fps]
 .SH DESCRIPTION
 Draws a grid of hexagons or other shapes and drops them out.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 30000 (0.03 seconds.).
 .TP 8
-.B \-speed \fInumber\fP
+.B \-\-speed \fInumber\fP
 Speed. 0.5 for half as fast; 2.0 for twice as fast.
 .TP 8
-.B \-size \fInumber\fP
+.B \-\-size \fInumber\fP
 How many tiles to fit horizontally on the screen.  Default 15.
 .TP 8
-.B \-sides \fInumber\fP
+.B \-\-sides \fInumber\fP
 Shape of the tiles. 3, 4, 6 or 8. Default: random.
 .TP 8
-.B \-uniform-speed | \-no-uniform-speed
+.B \-\-uniform-speed | \-\-no-uniform-speed
 Whether each tile should drop at the same speed. Default: random.
 .TP 8
-.B \-lockstep | \-no-lockstep
+.B \-\-lockstep | \-\-no-lockstep
 Whether each tile should drop at the same time. Default: random.
 .TP 8
-.B \-fps | \-no-fps
+.B \-\-fps | \-\-no-fps
 Whether to show a frames-per-second display at the bottom of the screen.
 .SH ENVIRONMENT
 .PP
@@ -59,6 +63,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 2ea005428d6ceb281aecb0ea1c9c9af062bc8b6a..865cc12a8d21a45a58d75d19938626719a958569 100644 (file)
@@ -3,9 +3,11 @@
 hopalong \- draw real plane fractals
 .SH SYNOPSIS
 .B hopalong
-[\-display \fIhost:display.screen\fP] [\-foreground \fIcolor\fP] [\-background \fIcolor\fP] [\-window] [\-root] [\-mono] [\-install] [\-visual \fIvisual\fP] [\-ncolors \fIinteger\fP] [\-delay \fImicroseconds\fP] [\-cycles \fIinteger\fP] [\-count \fIinteger\fP] [\-jong] [\-no\-jong] [\-jong] [\-no\-sine]
+[\-\-display \fIhost:display.screen\fP] [\-\-foreground \fIcolor\fP]
+[\-\-background \fIcolor\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-mono] [\-\-install] [\-\-visual \fIvisual\fP] [\-\-ncolors \fIinteger\fP] [\-\-delay \fImicroseconds\fP] [\-\-cycles \fIinteger\fP] [\-\-count \fIinteger\fP] [\-\-jong] [\-\-no\-jong] [\-\-jong] [\-\-no\-sine]
 
-[\-fps]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIhop\fP program generates real plane fractals as described in
 the September 1986 issue of Scientific American.
@@ -13,46 +15,49 @@ the September 1986 issue of Scientific American.
 .I hopalong
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-mono 
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-mono 
 If on a color display, pretend we're on a monochrome display.
 .TP 8
-.B \-install
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-ncolors \fIinteger\fP
+.B \-\-ncolors \fIinteger\fP
 How many colors should be used (if possible).  Default 200.
 The colors used cycle through the hue, making N stops around
 the color wheel.
 .TP 8
-.B \-cycles \fIinteger\fP
+.B \-\-cycles \fIinteger\fP
 How long to run each batch.  Default 2500 pixels.
 .TP 8
-.B \-count \fIinteger\fP
+.B \-\-count \fIinteger\fP
 How many pixels should be drawn before a color change.  Default 1000.
 .TP 8
-.B \-jong \fIinteger\fP
+.B \-\-jong \fIinteger\fP
 .TP 8
-.B \-no\-jong \fIinteger\fP
+.B \-\-no\-jong \fIinteger\fP
 Whether to use the Jong format (default is to choose randomly.)
 
 .TP 8
-.B \-sine \fIinteger\fP
+.B \-\-sine \fIinteger\fP
 .TP 8
-.B \-no\-sine \fIinteger\fP
+.B \-\-no\-sine \fIinteger\fP
 Whether to use the Sine format (default is to choose randomly.)
 
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -63,6 +68,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1),
index 7d7020d7f7f51d7a4114b1e595a32afa96021c27..0e2773f5d1d3f63f170c6ccb8879087cf68988de 100644 (file)
@@ -3,22 +3,23 @@
 hyperball \- 2d projection of a 4d object
 .SH SYNOPSIS
 .B hyperball
-[\-display \fIhost:display.screen\fP]
-[\-foreground \fIcolor\fP]
-[\-background \fIcolor\fP]
-[\-xy \fIfloat\fP]
-[\-xz \fIfloat\fP]
-[\-yz \fIfloat\fP]
-[\-xw \fIfloat\fP]
-[\-yw \fIfloat\fP]
-[\-zw \fIfloat\fP]
-[\-delay \fIusecs\fP]
-[\-window]
-[\-root]
-[\-mono]
-[\-install]
-[\-visual \fIvisual\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-foreground \fIcolor\fP]
+[\-\-background \fIcolor\fP]
+[\-\-xy \fIfloat\fP]
+[\-\-xz \fIfloat\fP]
+[\-\-yz \fIfloat\fP]
+[\-\-xw \fIfloat\fP]
+[\-\-yw \fIfloat\fP]
+[\-\-zw \fIfloat\fP]
+[\-\-delay \fIusecs\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-mono]
+[\-\-install]
+[\-\-visual \fIvisual\fP]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIhyperball\fP program displays a wireframe projection of a hyperball
 which is rotating at user-specified rates around any or all of its four axes.
@@ -26,43 +27,46 @@ which is rotating at user-specified rates around any or all of its four axes.
 .I hyperball
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-mono 
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-mono 
 If on a color display, pretend we're on a monochrome display.
 .TP 8
-.B \-install
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-delay \fImicroseconds\fP
+.B \-\-delay \fImicroseconds\fP
 How much of a delay should be introduced between steps of the animation.
 Default 20000, or about 0.02 seconds.
 .TP 8
-.B \-xw \fIfloat\fP
+.B \-\-xw \fIfloat\fP
 .TP 8
-.B \-xy \fIfloat\fP
+.B \-\-xy \fIfloat\fP
 .TP 8
-.B \-xz \fIfloat\fP
+.B \-\-xz \fIfloat\fP
 .TP 8
-.B \-yw \fIfloat\fP
+.B \-\-yw \fIfloat\fP
 .TP 8
-.B \-yz \fIfloat\fP
+.B \-\-yz \fIfloat\fP
 .TP 8
-.B \-zw \fIfloat\fP
+.B \-\-zw \fIfloat\fP
 The amount that the ball should be rotated around the specified axis at
 each frame of the animation, expressed in 0.001 radians.  These should be small
 floating-point values (less than 50 works best.)  Default: xy=3,
 xz=5, yw=10.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -73,6 +77,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index a82eef3fb926a03e7b957becca1548557c09a5ea..a78ec20877281cae3c7c2265bc3b79ca2a44a775 100644 (file)
@@ -3,8 +3,13 @@
 hypercube \- 2d projection of a 4d object
 .SH SYNOPSIS
 .B hypercube
-[\-display \fIhost:display.screen\fP] [\-foreground \fIcolor\fP] [\-background \fIcolor\fP] [\-color[0-7] \fIcolor\fP] [\-xy \fIfloat\fP] [\-xz \fIfloat\fP] [\-yz \fIfloat\fP] [\-xw \fIfloat\fP] [\-yw \fIfloat\fP] [\-zw \fIfloat\fP] [\-observer-z \fIint\fP] [\-delay \fIusecs\fP] [\-window] [\-root] [\-mono] [\-install] [\-visual \fIvisual\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP] [\-\-foreground \fIcolor\fP]
+[\-\-background \fIcolor\fP] [\-\-color[0-7] \fIcolor\fP] [\-\-xy \fIfloat\fP]
+[\-\-xz \fIfloat\fP] [\-\-yz \fIfloat\fP] [\-\-xw \fIfloat\fP] [\-\-yw
+\fIfloat\fP] [\-\-zw \fIfloat\fP] [\-\-observer-z \fIint\fP] [\-\-delay
+\fIusecs\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-mono] [\-\-install] [\-\-visual \fIvisual\fP]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIhypercube\fP program displays a wireframe projection of a hypercube
 which is rotating at user-specified rates around any or all of its four axes.
@@ -12,66 +17,69 @@ which is rotating at user-specified rates around any or all of its four axes.
 .I hypercube
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-mono 
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-mono 
 If on a color display, pretend we're on a monochrome display.
 .TP 8
-.B \-install
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-delay \fImicroseconds\fP
+.B \-\-delay \fImicroseconds\fP
 How much of a delay should be introduced between steps of the animation.
 Default 100000, or about 1/10th second.
 .TP 8
-.B \-observer-z \fIint\fP
+.B \-\-observer-z \fIint\fP
 How far away the observer is from the center of the cube (the cube is one
 unit per side.)  Default 5.
 .TP 8
-.B \-color0 \fIcolor\fP
+.B \-\-color0 \fIcolor\fP
 .TP 8
-.B \-color1 \fIcolor\fP
+.B \-\-color1 \fIcolor\fP
 .TP 8
-.B \-color2 \fIcolor\fP
+.B \-\-color2 \fIcolor\fP
 .TP 8
-.B \-color3 \fIcolor\fP
+.B \-\-color3 \fIcolor\fP
 .TP 8
-.B \-color4 \fIcolor\fP
+.B \-\-color4 \fIcolor\fP
 .TP 8
-.B \-color5 \fIcolor\fP
+.B \-\-color5 \fIcolor\fP
 .TP 8
-.B \-color6 \fIcolor\fP
+.B \-\-color6 \fIcolor\fP
 .TP 8
-.B \-color7 \fIcolor\fP
+.B \-\-color7 \fIcolor\fP
 The colors used to draw the line segments bordering the eight faces of
 the cube.  Some of the faces have only two of their border-lines drawn in
 the specified color, and some have all four.
 .TP 8
-.B \-xw \fIfloat\fP
+.B \-\-xw \fIfloat\fP
 .TP 8
-.B \-xy \fIfloat\fP
+.B \-\-xy \fIfloat\fP
 .TP 8
-.B \-xz \fIfloat\fP
+.B \-\-xz \fIfloat\fP
 .TP 8
-.B \-yw \fIfloat\fP
+.B \-\-yw \fIfloat\fP
 .TP 8
-.B \-yz \fIfloat\fP
+.B \-\-yz \fIfloat\fP
 .TP 8
-.B \-zw \fIfloat\fP
+.B \-\-zw \fIfloat\fP
 The amount that the cube should be rotated around the specified axis at
 each frame of the animation, expressed in 0.001 radians.  These should be small
 floating-point values (less than 50 works best.)  Default: xy=3,
 xz=5, yw=10.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -82,6 +90,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 5e59f155a3240aa9d5c2bad64790654b522b665f..5abb1c61a5bbbe7be5ce7b42cb8a6600776f8264 100644 (file)
@@ -3,74 +3,78 @@
 ifs \- draws spinning, colliding iterated-function-system images
 .SH SYNOPSIS
 .B ifs
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-no\-db]
-[\-delay \fInumber\fP]
-[\-detail \fInumber\fP]
-[\-colors \fInumber\fP]
-[\-functions \fInumber\fP]
-[\-iterate | \-recurse]
-[\-no\-rotate]
-[\-no\-scale]
-[\-no\-translate]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-no\-db]
+[\-\-delay \fInumber\fP]
+[\-\-detail \fInumber\fP]
+[\-\-colors \fInumber\fP]
+[\-\-functions \fInumber\fP]
+[\-\-iterate | \-\-recurse]
+[\-\-no\-rotate]
+[\-\-no\-scale]
+[\-\-no\-translate]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIifs\fP program draws spinning, colliding iterated-function-system images.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-no\-db
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-no\-db
 Disable double-buffering.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 20000
 .TP 8
-.B \-colors \fInumber\fP
+.B \-\-colors \fInumber\fP
 Number of colours to use. Default: 200
 .TP 8
-.B \-detail \fInumber\fP
-In \fI\-iterate\fP mode, number of times to randomly iterate the
-functions, in thousands.  In \fI\-recurse\fP mode, number of times
+.B \-\-detail \fInumber\fP
+In \fI\-\-iterate\fP mode, number of times to randomly iterate the
+functions, in thousands.  In \fI\-\-recurse\fP mode, number of times
 to apply functions (recursion depth) before drawing each point.
 Default: 9
 .TP 8
-.B \-functions \fInumber\fP
+.B \-\-functions \fInumber\fP
 Number of functions to be iterated. Default: 3
 .TP 8
-.B \-iterate
+.B \-\-iterate
 Calculate by iteratively applying the functions in a random order,
-usually faster than \fI\-recurse\fP.  This is the default.
+usually faster than \fI\-\-recurse\fP.  This is the default.
 .TP 8
-.B \-recurse
+.B \-\-recurse
 Calculate by recursively applying all combinations of the functions.
 This is the historical behavior and may produce neater output than
-\fI\-iterate\fP.
+\fI\-\-iterate\fP.
 .TP 8
-.B \-no-rotate
+.B \-\-no-rotate
 Disable the rotation component of the functions.
 .TP 8
-.B \-no-scale
+.B \-\-no-scale
 Disable the scaling component of the functions.
 .TP 8
-.B \-no-translate
+.B \-\-no-translate
 Disable the varying translation component of the functions.
 .TP 8
-.B \-no-multi
+.B \-\-no-multi
 Turn off multi-coloured mode, only one colour is used to colour the whole set.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -81,6 +85,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1),
index 25edd2c437818552347b155acee427a240a71126..c3e6d054fa229ab773c243893acd62c68c58cf20 100644 (file)
@@ -3,8 +3,10 @@
 imsmap \- generate fractal maps
 .SH SYNOPSIS
 .B imsmap
-[\-display \fIhost:display.screen\fP] [\-foreground \fIcolor\fP] [\-background \fIcolor\fP] [\-window] [\-root] [\-mono] [\-install] [\-visual \fIvisual\fP] [\-ncolors \fIint\fP] [\-delay \fIseconds\fP] [\-delay2 \fImicroseconds\fP] [\-iterations \fIint\fP] [\-mode h|s|v|random]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP] [\-\-foreground \fIcolor\fP]
+[\-\-background \fIcolor\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-mono] [\-\-install] [\-\-visual \fIvisual\fP] [\-\-ncolors \fIint\fP] [\-\-delay \fIseconds\fP] [\-\-delay2 \fImicroseconds\fP] [\-\-iterations \fIint\fP] [\-\-mode h|s|v|random]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIimsmap\fP program generates map or cloud-like patterns.  It looks
 quite different in monochrome and color.
@@ -12,39 +14,42 @@ quite different in monochrome and color.
 .I imsmap
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-mono 
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-mono 
 If on a color display, pretend we're on a monochrome display.
 .TP 8
-.B \-install
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-ncolors \fIinteger\fP
+.B \-\-ncolors \fIinteger\fP
 How many colors to use.  Default 50.
 .TP 8
-.B \-delay \fIinteger\fP
+.B \-\-delay \fIinteger\fP
 How long to delay between images.  Default 10 seconds.
 .TP 8
-.B \-delay2 \fIinteger\fP
+.B \-\-delay2 \fIinteger\fP
 How long to delay between bitmaps.  Default 200000 (0.2 seconds).
 .TP 8
-.B \-iterations \fIinteger\fP
+.B \-\-iterations \fIinteger\fP
 A measure of the resolution of the resultant image, from 0 to 7.  Default 7.
 .TP 8
-.B \-mode [ hue | saturation | value | random ]
+.B \-\-mode [ hue | saturation | value | random ]
 The axis upon which colors should be interpolated between the foreground
 and background color.  Default random.  
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -55,6 +60,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 9dc61d25f47ff624cb2c935cc0f004ce40bfc1db..69244cd40e1c899eabafc9e0048711e673c884f2 100644 (file)
@@ -4,17 +4,21 @@ interaggregate \- Visualize the momentary and aggregate intersections
 between slowly moving circles.
 .SH SYNOPSIS
 .B interaggregate
-[\-display \fIhost:display.screen\fP]
-[\-foreground \fIcolor\fP]
-[\-background \fIcolor\fP]
-[\-num\-circles \fIdisc count\fP]
-[\-growth\-delay \fIdelayms\fP]
-[\-max\-cycles \fImaxr\fP]
-[\-percent\-orbits \fIpercent\fP]
-[\-base\-orbits \fIpercent\fP]
-[\-base\-on\-center]
-[\-draw\-centers]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-foreground \fIcolor\fP]
+[\-\-background \fIcolor\fP]
+[\-\-num\-circles \fIdisc count\fP]
+[\-\-growth\-delay \fIdelayms\fP]
+[\-\-max\-cycles \fImaxr\fP]
+[\-\-percent\-orbits \fIpercent\fP]
+[\-\-base\-orbits \fIpercent\fP]
+[\-\-base\-on\-center]
+[\-\-draw\-centers]
+[\-\-fps]
 .SH DESCRIPTION
 The Intersection Aggregate is a fun visualization defining the relationships 
 between objects with Casey Reas, William Ngan, and Robert Hodgin. Commissioned 
@@ -29,17 +33,30 @@ different size and direction, but moves at the same slow rate. Display:
 .I interaggregate
 accepts the following options:
 .TP 8
-.B \-num\-circles \fIdisc count\fP (Default: \fI100\fP)
+.B \-\-num\-circles \fIdisc count\fP (Default: \fI100\fP)
 Number of slowly moving and growing discs to use.  The more discs, 
 the more CPU power.
 .TP 8
-.B \-growth\-delay \fIdelayms\fP (Default: \fI18000\fP)
+.B \-\-growth\-delay \fIdelayms\fP (Default: \fI18000\fP)
 Delay in ms between drawing cycles.  More delay, slower (but smoother 
 and less CPU intensive.)
 art.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
+.TP 8
+.B \-\-visual \fIvisual\fP
+Specify which visual to use.  Legal values are the name of a visual class,
+or the id number (decimal or hex) of a specific visual.
+.TP 8
+.B \-\-window
+Draw on a newly-created window.  This is the default.
+.TP 8
+.B \-\-root
+Draw on the root window.
+.TP 8
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
 .SH ENVIRONMENT
 .PP
 .TP 8
@@ -50,6 +67,8 @@ to get the default host and display number.
 to get the name of a resource file that overrides the global
 resources stored in the RESOURCE_MANAGER property.
 .TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH BUGS
 .PP
 .TP 8
index 3d9f4727803f3d81c1f1c79f3330be10eebf6c64..11410eaaab71085f919a8d5008600697e78d799a 100644 (file)
@@ -3,64 +3,68 @@
 interference \- decaying sinusoidal waves
 .SH SYNOPSIS
 .B interference
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-count \fInumber\fP]
-[\-gridsize \fInumber\fP]
-[\-delay \fInumber\fP]
-[\-speed \fInumber\fP]
-[\-radius \fInumber\fP]
-[\-ncolors \fInumber\fP]
-[\-color-shift \fInumber\fP]
-[\-hue \fInumber\fP]
-[\-no-db]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-count \fInumber\fP]
+[\-\-gridsize \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-speed \fInumber\fP]
+[\-\-radius \fInumber\fP]
+[\-\-ncolors \fInumber\fP]
+[\-\-color-shift \fInumber\fP]
+[\-\-hue \fInumber\fP]
+[\-\-no-db]
+[\-\-fps]
 .SH DESCRIPTION
 Another color-field hack, this one works by computing decaying sinusoidal
 waves, and allowing them to interfere with each other as their origins
 move.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-count \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-count \fInumber\fP
 Number of Waves.  0 - 20.  Default: 3.
 .TP 8
-.B \-gridsize \fInumber\fP
+.B \-\-gridsize \fInumber\fP
 Magnification. 1 - 20.  Default: 2.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 30000 (0.03 seconds.).
 .TP 8
-.B \-speed \fInumber\fP
+.B \-\-speed \fInumber\fP
 Wave Speed.  1 - 100.  Default: 30.
 .TP 8
-.B \-radius \fInumber\fP
+.B \-\-radius \fInumber\fP
 Wave Size.  50 - 1500. Default: 800.
 .TP 8
-.B \-ncolors \fInumber\fP
+.B \-\-ncolors \fInumber\fP
 Number of Colors.  Default: 192.
 .TP 8
-.B \-color-shift \fInumber\fP
+.B \-\-color-shift \fInumber\fP
 Color Contrast.  0 - 100.  Default: 60.
 .TP 8
-.B \-hue \fInumber\fP
+.B \-\-hue \fInumber\fP
 Hue of the base color (0-360, as in HSV space.)  Default 0, meaning random.
 .TP 8
-.B \-db | \-no-db
+.B \-\-db | \-\-no-db
 Whether to double buffer.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -71,6 +75,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index ee8959cf76d549c4223db2453afacf3e082f4ab2..84bcce3db561099361f46d5363a3267238a9034b 100644 (file)
@@ -4,14 +4,18 @@ intermomentary \- Visualize the momentary and aggregate intersections
 between slowly moving circles.
 .SH SYNOPSIS
 .B intermomentary
-[\-display \fIhost:display.screen\fP]
-[\-foreground \fIcolor\fP]
-[\-background \fIcolor\fP]
-[\-num\-discs \fIdisc count\fP]
-[\-draw\-delay \fIdelayms\fP]
-[\-max\-riders \fImaxr\fP]
-[\-max\-radius \fImaxradius\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-foreground \fIcolor\fP]
+[\-\-background \fIcolor\fP]
+[\-\-num\-discs \fIdisc count\fP]
+[\-\-draw\-delay \fIdelayms\fP]
+[\-\-max\-riders \fImaxr\fP]
+[\-\-max\-radius \fImaxradius\fP]
+[\-\-fps]
 .SH DESCRIPTION
 The Intersection Momentary is a fun visualization defining the relationships 
 between objects with Casey Reas, William Ngan, and Robert Hodgin. Commissioned 
@@ -31,23 +35,39 @@ intersection point.
 .SH OPTIONS
 Intermomentary accepts the following options:
 .TP 8
-.B \-num\-discs \fIdisc count\fP (Default: \fI85\fP)
+.B \-\-num\-discs \fIdisc count\fP (Default: \fI85\fP)
 Number of slowly moving and growing discs to use.  The more discs, 
 the more CPU power.
 .TP 8
-.B \-draw\-delay \fIdelayms\fP (Default: \fI30000\fP)
+.B \-\-draw\-delay \fIdelayms\fP (Default: \fI30000\fP)
 Delay in ms between drawing cycles.  More delay, slower (but smoother 
 and less CPU intensive.)
 art.
 .TP 8
-.B \-max\-riders \fImaxrider\fP (Default: \fI40\fP)
+.B \-\-max\-riders \fImaxrider\fP (Default: \fI40\fP)
 Maximum number of 'riders', single dots moving around the edge of the discs.
 .TP 8
-.B \-max\-radius \fImaxradius\fP (Default: \fI100\fP)
+.B \-\-max\-radius \fImaxradius\fP (Default: \fI100\fP)
 Maximum possible radius of a disc.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
+.TP 8
+.B \-\-visual \fIvisual\fP
+Specify which visual to use.  Legal values are the name of a visual class,
+or the id number (decimal or hex) of a specific visual.
+.TP 8
+.B \-\-window
+Draw on a newly-created window.  This is the default.
+.TP 8
+.B \-\-root
+Draw on the root window.
+.TP 8
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.SH BUGS
+Setting the background to anything besides black confuses the intensity 
+algorithm and will look terrible.
 .SH ENVIRONMENT
 .PP
 .TP 8
@@ -57,9 +77,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global
 resources stored in the RESOURCE_MANAGER property.
-.SH BUGS
-Setting the background to anything besides black confuses the intensity 
-algorithm and will look terrible.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 115af8ce39c119d61a52e5dfc561baf19af1b175..ee6199a0403b71de9b8f9e95c480757deaabbecb 100644 (file)
@@ -5,59 +5,68 @@
 juggle \- juggling man screen saver.
 .SH SYNOPSIS
 .B juggle
-[\-display host:display.screen ]
-[\-root ]
-[\-window ]
-[\-mono ]
-[\-install | \-noinstall ]
-[\-visual visual ]
-[\-window\-id id ]
-[\-pattern pattern ]
-[\-tail number ]
-[\-real | \-no\-real ]
-[\-describe | \-no\-describe ]
-[\-balls | \-no\-balls ]
-[\-clubs | \-no\-clubs ]
-[\-torches | \-no\-torches ]
-[\-knives | \-no\-knives ]
-[\-rings | \-no\-rings ]
-[\-bballs | \-no\-bballs ]
-[\-count count ]
-[\-cycles cycles ]
-[\-delay delay ]
-[\-ncolors ncolors ]
-[\-fps]
+[\-\-display host:display.screen]
+[\-\-root]
+[\-\-window]
+[\-\-visual \fIvisual\fP]
+[\-\-window\-id \fInumber\fP]
+[\-\-mono]
+[\-\-install | \-\-noinstall]
+[\-\-visual visual]
+[\-\-window\-id id]
+[\-\-pattern pattern]
+[\-\-tail number]
+[\-\-real | \-\-no\-real]
+[\-\-describe | \-\-no\-describe]
+[\-\-balls | \-\-no\-balls]
+[\-\-clubs | \-\-no\-clubs]
+[\-\-torches | \-\-no\-torches]
+[\-\-knives | \-\-no\-knives]
+[\-\-rings | \-\-no\-rings]
+[\-\-bballs | \-\-no\-bballs]
+[\-\-count count]
+[\-\-cycles cycles]
+[\-\-delay delay]
+[\-\-ncolors ncolors]
+[\-\-fps]
 .SH DESCRIPTION
 Draws a stick-man juggling various collections of objects.
 .SH OPTIONS
 .I juggle
 accepts the following options:
 .TP 8
-.B \-display host:display.screen
+.B \-\-display host:display.screen
 X11 display to use.  Overrides
 .B DISPLAY
 environment variable.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created X window.  This is the default.
 .TP 8
-.B \-mono
+.B \-\-visual \fIvisual\fP
+Specify which visual to use.  Legal values are the name of a visual class,
+or the id number (decimal or hex) of a specific visual.
+.TP 8
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-mono
 Draw in monochrome.
 .TP 8
-.B \-install | \-noinstall
+.B \-\-install | \-\-noinstall
 Turn on/off installing colormap.
 .TP 8
-.B \-visual visual
+.B \-\-visual visual
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window\-id id
+.B \-\-window\-id id
 Draw on an already existing X window.
 .TP 8
-.B \-pattern\ \(dq pattern \(dq
+.B \-\-pattern\ \(dq pattern \(dq
 Specify juggling pattern in annotated
 .B site-swap
 notation.  In 
@@ -77,7 +86,7 @@ x     Cross Throw and Catch
 \&_    Bounce
 .TE
 .TP 8
-.B \-pattern\ \(dq[ pattern ]\(dq
+.B \-\-pattern\ \(dq[ pattern ]\(dq
 Specify juggling pattern in annotated
 .B Adam
 notation.  Adam notation is a little harder to visualize.  Each
@@ -96,65 +105,65 @@ notation.
 
 For example, both of these describe a 3\-Shower:
 .IP
-.B \-pattern\ "+5 1"
+.B \-\-pattern\ "+5 1"
 .IP
-.B \-pattern\ "[+3 1]"
+.B \-\-pattern\ "[+3 1]"
 
 For further examples, see the
 .B portfolio
 list in the source code.
 .TP 8
-.B \-tail number
+.B \-\-tail number
 Minimum Trail Length.  0 \- 100.  Default: 1.  Objects may override
 this, for example flaming torches always leave a trail.
 .TP 8
-.BR \-real | \-no\-real
+.BR \-\-real | \-\-no\-real
 Turn on/off real-time juggling.
 .B Deprecated.
 There should be no need to turn off real-time juggling, even on slow
 systems.  Adjust speed using
-.B \-count
+.B \-\-count
 above.
 .TP 8
-.BR \-describe | \-no\-describe
+.BR \-\-describe | \-\-no\-describe
 Turn on/off pattern descriptions.
 .TP 8 
-.BR \-balls | \-no\-balls
+.BR \-\-balls | \-\-no\-balls
 Turn on/off Balls.
 .TP 8
-.BR \-clubs | \-no\-clubs
+.BR \-\-clubs | \-\-no\-clubs
 Turn on/off Clubs.
 .TP 8
-.BR \-torches | \-no\-torches
+.BR \-\-torches | \-\-no\-torches
 Turn on/off Flaming Torches.
 .TP 8
-.BR \-knives | \-no\-knives
+.BR \-\-knives | \-\-no\-knives
 Turn on/off Knives.
 .TP 8
-.BR \-rings | \-no\-rings
+.BR \-\-rings | \-\-no\-rings
 Turn on/off Rings.
 .TP 8
-.BR \-bballs | \-no\-bballs
+.BR \-\-bballs | \-\-no\-bballs
 Turn on/off Bowling Balls.
 .TP 8
-.B \-count number
+.B \-\-count number
 Speed. 50 \- 1000.  Default: 200.  This determines the expected time
 interval between a throw and the next catch, in milliseconds.
 .TP 8
-.B \-cycles number
+.B \-\-cycles number
 Performance Length. 50 \- 1000.  Default: 1000.  Setting this smaller
 will force the juggler to switch patterns (and objects) more often.
 .TP 8
-.B \-delay delay
+.B \-\-delay delay
 Additional delay between frames, in microseconds.  Default: 10000.
 .B Deprecated.
 Adjust speed using
-.BR \-count .
+.BR \-\-count .
 .TP 8
-.B \-ncolors ncolors
+.B \-\-ncolors ncolors
 Maximum number of colors to use.  Default: 32.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -165,6 +174,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 3eb1ef639f71344bff5a65156190ad6619933ac3..d745bf02d485f162f0d1750a56deac7a10239339 100644 (file)
@@ -3,9 +3,11 @@
 julia \- draws spinning, animating julia-set fractals
 .SH SYNOPSIS
 .B julia
-[\-display \fIhost:display.screen\fP] [\-foreground \fIcolor\fP] [\-background \fIcolor\fP] [\-window] [\-root] [\-mono] [\-install] [\-visual \fIvisual\fP] [\-ncolors \fIinteger\fP] [\-delay \fImicroseconds\fP] [\-cycles \fIinteger\fP] [\-count \fIinteger\fP]
+[\-\-display \fIhost:display.screen\fP] [\-\-foreground \fIcolor\fP]
+[\-\-background \fIcolor\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-mono] [\-\-install] [\-\-visual \fIvisual\fP] [\-\-ncolors \fIinteger\fP] [\-\-delay \fImicroseconds\fP] [\-\-cycles \fIinteger\fP] [\-\-count \fIinteger\fP]
 
-[\-fps]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIjulia\fP program draws spinning, animating julia-set fractals.
 
@@ -25,33 +27,36 @@ control point for the generation of ths set.
 .I julia
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-mono 
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-mono 
 If on a color display, pretend we're on a monochrome display.
 .TP 8
-.B \-install
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-ncolors \fIinteger\fP
+.B \-\-ncolors \fIinteger\fP
 How many colors should be used (if possible).  Default 200.
 The colors used cycle through the hue, making N stops around
 the color wheel.
 .TP 8
-.B \-cycles \fIinteger\fP
+.B \-\-cycles \fIinteger\fP
 
 .TP 8
-.B \-count \fIinteger\fP
+.B \-\-count \fIinteger\fP
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -62,6 +67,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1),
index 81e24a741522d4bba38b279d71de0e192bcdf1c3..6410bd27afef1f388be270c1841ffdb4705760ee 100644 (file)
@@ -3,8 +3,10 @@
 Kaleidescope \- rotating line segments
 .SH SYNOPSIS
 .B kaleidescope
-[\-display \fIhost:display.screen\fP] [\-foreground \fIcolor\fP] [\-background \fIcolor\fP] [\-window] [\-root] [\-install] [\-visual \fIvisual\fP] [\-color_mode \fImono | nice | greedy\fP] [-nsegments \fIint\fP] [\-ntrails \fIint\fP] [\-local_rotation \fIint\fP] [\-global_rotation \fIint\fP] [\-delay \fIusecs\fP] [\-redmin \fIint\fP] [\-greenmin \fIint\fP] [\-bluemin \fIint\fP] [\-redrange \fIint\fP] [\-greenrange \fIint\fP] [\-bluerange \fIint\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP] [\-\-foreground \fIcolor\fP]
+[\-\-background \fIcolor\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-install] [\-\-visual \fIvisual\fP] [\-\-color_mode \fImono | nice | greedy\fP] [-nsegments \fIint\fP] [\-\-ntrails \fIint\fP] [\-\-local_rotation \fIint\fP] [\-\-global_rotation \fIint\fP] [\-\-delay \fIusecs\fP] [\-\-redmin \fIint\fP] [\-\-greenmin \fIint\fP] [\-\-bluemin \fIint\fP] [\-\-redrange \fIint\fP] [\-\-greenrange \fIint\fP] [\-\-bluerange \fIint\fP]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIkaleidescope\fP program draws line segments in a symmetric pattern
 that evolves over time. 
@@ -12,44 +14,47 @@ that evolves over time.
 .I kaleidescope
 accepts the following options:
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-color_mode "mono | nice | greedy"
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-color_mode "mono | nice | greedy"
 Specify how kaleidescope uses colors. Mono uses
 just the default foreground and background colors. Nice uses one
 color for each segment (specified by nsegments). Greedy uses (ntrails * nsegments) + 1  colors.
 .TP 8
-.B \-install
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-nsegments integer
+.B \-\-nsegments integer
 The number of segments to draw. Default is 7.
 .TP 8
-.B \-ntrails integer
+.B \-\-ntrails integer
 The number of trails to draw. Default is 100.
 .TP 8
-.B \-local_rotation integer
+.B \-\-local_rotation integer
 The rate at which segments rotate around their center. Default is -59.
 .TP 8
-.B \-global_rotation integer 
+.B \-\-global_rotation integer 
 The rate at which segments rotate around the center of the window.
 Default is 1. 
 .TP 8
-.B \-redmin, \-greenmin, \-bluemin, \-redrange, \-greenrange, \-bluerange
+.B \-\-redmin, \-\-greenmin, \-\-bluemin, \-\-redrange, \-\-greenrange, \-\-bluerange
 All take an integer argument. When colors are randomly chosen, they 
 are chosen from the interval min to min plus range. The minimums default
 to 30000. The ranges default to 20000. 
 .TP 8
-.B \-delay microseconds
+.B \-\-delay microseconds
 How much of a delay should be introduced between steps of the animation.
 Default is 20000, or about 5 frames a second.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -60,6 +65,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR kaleidescope (MANSUFFIX)
index be5bcb1cb012d62fd03c32d07319a168910909ef..0cc68497d0bce0a52e5ca1edc6b142ae3f8f26e6 100644 (file)
@@ -3,43 +3,47 @@
 kumppa \- spiraling, spinning, splashes of color rush toward the screen.
 .SH SYNOPSIS
 .B kumppa
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-speed \fInumber\fP]
-[\-random]
-[\-dbuf]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-speed \fInumber\fP]
+[\-\-random]
+[\-\-dbuf]
+[\-\-fps]
 .SH DESCRIPTION
 Spiraling, spinning, and very, very fast splashes of color rush toward the
 screen.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 10000 (0.01 seconds.).
 .TP 8
-.B \-speed \fInumber\fP
+.B \-\-speed \fInumber\fP
 Density.  0.0001 - 0.2.  Default: 0.1.
 .TP 8
-.B \-random | \-no-random
+.B \-\-random | \-\-no-random
 Whether to randomize.
 .TP 8
-.B \-dbuf | \-no-dbuf
+.B \-\-dbuf | \-\-no-dbuf
 Whether to double buffer.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -50,6 +54,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index df3029a81e0d47c9b2d950c7e5abc3b71f134b0f..55f2e76e044ff128f4ad1076407552568ac22f35 100644 (file)
@@ -3,42 +3,47 @@
 laser \- draws vaguely laser-like moving lines
 .SH SYNOPSIS
 .B laser
-[\-display \fIhost:display.screen\fP] [\-foreground \fIcolor\fP] [\-background \fIcolor\fP] [\-window] [\-root] [\-mono] [\-install] [\-visual \fIvisual\fP] [\-ncolors \fIinteger\fP] [\-delay \fImicroseconds\fP] [\-cycles \fIinteger\fP] [\-count \fIinteger\fP]
+[\-\-display \fIhost:display.screen\fP] [\-\-foreground \fIcolor\fP]
+[\-\-background \fIcolor\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-mono] [\-\-install] [\-\-visual \fIvisual\fP] [\-\-ncolors \fIinteger\fP] [\-\-delay \fImicroseconds\fP] [\-\-cycles \fIinteger\fP] [\-\-count \fIinteger\fP]
 
-[\-fps]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIlaser\fP program draws vaguely laser-like moving lines
 .SH OPTIONS
 .I laser
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-mono 
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-mono 
 If on a color display, pretend we're on a monochrome display.
 .TP 8
-.B \-install
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-ncolors \fIinteger\fP
+.B \-\-ncolors \fIinteger\fP
 How many colors should be used (if possible).  Default 64.
 The colors used cycle through the hue, making N stops around the color wheel.
 .TP 8
-.B \-cycles \fIinteger\fP
+.B \-\-cycles \fIinteger\fP
 Default 200.
 .TP 8
-.B \-count \fIinteger\fP
+.B \-\-count \fIinteger\fP
 Default 10.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -49,6 +54,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1),
index 5ae5dfb2a088be1cb8e9c9ce2a887f9e2e4eb229..ae0828c4d34e0cb8ab513a6a99cb27a47a4d95d1 100644 (file)
@@ -3,14 +3,15 @@
 lcdscrub \- attempt to repair burn-in on LCD screens
 .SH SYNOPSIS
 .B lcdscrub
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-spread \fInumber\fP]
-[\-cycles \fInumber\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-spread \fInumber\fP]
+[\-\-cycles \fInumber\fP]
+[\-\-fps]
 .SH DESCRIPTION
 This screen saver is not meant to look pretty, but rather, to
 repair burn-in on LCD monitors.
@@ -21,26 +22,29 @@ However, leaving the screen on and displaying high contrast images
 can often repair the damage.  That's what this screen saver does.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 1000000 (1 second.).
 .TP 8
-.B \-spread \fInumber\fP
+.B \-\-spread \fInumber\fP
 Distance between lines.  Default 8.
 .TP 8
-.B \-cycles \fInumber\fP
+.B \-\-cycles \fInumber\fP
 Steps before switching display mode.  Default 60.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -51,6 +55,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1),
index 92afdd7f2c68e8eea00f9aa32eed3fe3390d3f74..a85a2bf60fc2e4153b2f8b14f930b7d6abbd40cd 100644 (file)
@@ -3,36 +3,41 @@
 lightning \- draws fractal lightning bolts
 .SH SYNOPSIS
 .B lightning
-[\-display \fIhost:display.screen\fP] [\-foreground \fIcolor\fP] [\-background \fIcolor\fP] [\-window] [\-root] [\-mono] [\-install] [\-visual \fIvisual\fP] [\-ncolors \fIinteger\fP] [\-delay \fImicroseconds\fP]
+[\-\-display \fIhost:display.screen\fP] [\-\-foreground \fIcolor\fP]
+[\-\-background \fIcolor\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-mono] [\-\-install] [\-\-visual \fIvisual\fP] [\-\-ncolors \fIinteger\fP] [\-\-delay \fImicroseconds\fP]
 
-[\-fps]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIlightning\fP program draws fractal lightning bolts
 .SH OPTIONS
 .I lightning
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-mono 
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-mono 
 If on a color display, pretend we're on a monochrome display.
 .TP 8
-.B \-install
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-ncolors \fIinteger\fP
+.B \-\-ncolors \fIinteger\fP
 How many colors should be used (if possible).  Default 64.
 The colors are chosen randomly.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -43,6 +48,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1),
index e8a42b13425c493299f5859cd54588b96d39393a..10076b61b80c4877c89922aa0504492f17618881 100644 (file)
@@ -3,45 +3,50 @@
 lisa \- draws animated full-loop lissajous figures
 .SH SYNOPSIS
 .B lisa
-[\-display \fIhost:display.screen\fP] [\-foreground \fIcolor\fP] [\-background \fIcolor\fP] [\-window] [\-root] [\-mono] [\-install] [\-visual \fIvisual\fP] [\-ncolors \fIinteger\fP] [\-delay \fImicroseconds\fP] [\-cycles \fIinteger\fP] [\-count \fIinteger\fP] [\-size \fIinteger\fP]
+[\-\-display \fIhost:display.screen\fP] [\-\-foreground \fIcolor\fP]
+[\-\-background \fIcolor\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-mono] [\-\-install] [\-\-visual \fIvisual\fP] [\-\-ncolors \fIinteger\fP] [\-\-delay \fImicroseconds\fP] [\-\-cycles \fIinteger\fP] [\-\-count \fIinteger\fP] [\-\-size \fIinteger\fP]
 
-[\-fps]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIlisa\fP program draws animated full-loop lissajous figures.
 .SH OPTIONS
 .I lisa
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-mono 
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-mono 
 If on a color display, pretend we're on a monochrome display.
 .TP 8
-.B \-install
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-ncolors \fIinteger\fP
+.B \-\-ncolors \fIinteger\fP
 How many colors should be used (if possible).  Default 200.
 The colors are chosen randomly.
 .TP 8
-.B \-cycles \fIinteger\fP
+.B \-\-cycles \fIinteger\fP
 
 .TP 8
-.B \-count \fIinteger\fP
+.B \-\-count \fIinteger\fP
 
 .TP 8
-.B \-size \fIinteger\fP
+.B \-\-size \fIinteger\fP
 
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -52,6 +57,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1),
index 05a10df3cb2c88d7f3db50fcf9023efe8f3063f3..2065cafdc0f0b414f07cf6f4fbdbde14b3bf15f8 100644 (file)
@@ -3,47 +3,51 @@
 lissie \- lissajous figure.
 .SH SYNOPSIS
 .B lissie
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-count \fInumber\fP]
-[\-cycles \fInumber\fP]
-[\-delay \fInumber\fP]
-[\-ncolors \fInumber\fP]
-[\-size \fInumber\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-count \fInumber\fP]
+[\-\-cycles \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-ncolors \fInumber\fP]
+[\-\-size \fInumber\fP]
+[\-\-fps]
 .SH DESCRIPTION
 Another Lissajous figure. This one draws the progress of circular shapes
 along a path.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-count \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-count \fInumber\fP
 Count. 0 - 20.  Default: 1.
 .TP 8
-.B \-cycles \fInumber\fP
+.B \-\-cycles \fInumber\fP
 Timeout. Default: 20000.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 10000 (0.01 seconds.).
 .TP 8
-.B \-ncolors \fInumber\fP
+.B \-\-ncolors \fInumber\fP
 Number of Colors.  Default: 200.
 .TP 8
-.B \-size \fInumber\fP
+.B \-\-size \fInumber\fP
 Size.  -500 to +500.  Default: -200.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -54,6 +58,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index be8e19ee49c41c0d9070e4af3bdec005abfb8c82..329ed073fbc5820884182b9f9b13f3b1f95e679d 100644 (file)
@@ -3,8 +3,10 @@
 lmorph \- morphing lines
 .SH SYNOPSIS
 .B lmorph
-[\-display \fIhost:display.screen\fP] [\-foreground \fIcolor\fP] [\-background \fIcolor\fP] [\-window] [\-root] [\-mono] [\-install] [\-visual \fIvisual\fP] [\-points \fIint\fP] [\-steps \fIint\fP] [\-delay \fIusecs\fP] [\-figtype \fItype\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP] [\-\-foreground \fIcolor\fP]
+[\-\-background \fIcolor\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-mono] [\-\-install] [\-\-visual \fIvisual\fP] [\-\-points \fIint\fP] [\-\-steps \fIint\fP] [\-\-delay \fIusecs\fP] [\-\-figtype \fItype\fP]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIlmorph\fP program generates random spline-ish line drawings and
 morphs between them.
@@ -12,41 +14,44 @@ morphs between them.
 .I lmorph
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window. This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-mono 
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-mono 
 If on a color display, pretend we're on a monochrome display.
 .TP 8
-.B \-install
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use. Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-points \fIinteger\fP
+.B \-\-points \fIinteger\fP
 Number of points in each line drawing. Default is 200 points.
 .TP 8
-.B \-steps \fIinteger\fP
+.B \-\-steps \fIinteger\fP
 Interpolation steps from one drawing to the next. Default is 150. You
 may specify 0, to get a random number between 100 and 500.
 .TP 8
-.B \-delay \fImicroseconds\fP
+.B \-\-delay \fImicroseconds\fP
 How much of a delay should be introduced between steps of the animation.
 Default 70000.
 .TP 8
-.B \-figtype \fItype\fP
+.B \-\-figtype \fItype\fP
 Limit the figures to only open or closed figures. Possible types are
 "all" (default), "open" and "closed".
 .TP 8
-.B \-linewidth \fIinteger\fP
+.B \-\-linewidth \fIinteger\fP
 Width of lines. Default is 5 pixels.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -57,6 +62,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 21915d56ff7193eb8d00c0ce5faf1c567a6295d9..7422ea635bc3d93f3c579f85a9c8cf8f8e23f164 100644 (file)
@@ -3,43 +3,47 @@
 loop \- cellular automaton.
 .SH SYNOPSIS
 .B loop
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-cycles \fInumber\fP]
-[\-delay \fInumber\fP]
-[\-ncolors \fInumber\fP]
-[\-size \fInumber\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-cycles \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-ncolors \fInumber\fP]
+[\-\-size \fInumber\fP]
+[\-\-fps]
 .SH DESCRIPTION
 Another cellular automaton.
 This one produces loop-shaped colonies that spawn, age, and eventually die.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-cycles \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-cycles \fInumber\fP
 Timeout.  0 - 8000.  Default: 1600.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 100000 (0.10 seconds.).
 .TP 8
-.B \-ncolors \fInumber\fP
+.B \-\-ncolors \fInumber\fP
 Number of Colors.  Default: 15.
 .TP 8
-.B \-size \fInumber\fP
+.B \-\-size \fInumber\fP
 Size.  -50 - 50.  Default: -12.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -50,6 +54,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 62102e0b3782b39e8075aac8b31c72fbd6e9fb90..fc499cdbc7e4355c5c9cf61540fa889ba2ac6d35 100644 (file)
@@ -3,14 +3,15 @@
 marbling \- Marble-like or cloud-like patterns.
 .SH SYNOPSIS
 .B marbling
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-scale \fInumber\fP]
-[\-iterations \fInumber\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-scale \fInumber\fP]
+[\-\-iterations \fInumber\fP]
+[\-\-fps]
 .SH DESCRIPTION
 This generates a random field with Perlin Noise, then permutes it with
 Fractal Brownian Motion to create images that somewhat resemble clouds,
@@ -18,26 +19,29 @@ or the striations in marble, depending on the parameters selected and
 the colors chosen.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 10000 (0.01 seconds).
 .TP 8
-.B \-scale \fInumber\fP
+.B \-\-scale \fInumber\fP
 Scale. 1 - 30.  Default: 10.
 .TP 8
-.B \-iterations \fInumber\fP
+.B \-\-iterations \fInumber\fP
 Complexity.  1 - 20.  Default: 5.
 .TP 8
-.B \-fps | \-no-fps
+.B \-\-fps | \-\-no-fps
 Whether to show a frames-per-second display at the bottom of the screen.
 .SH ENVIRONMENT
 .PP
@@ -48,6 +52,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index c827da86a7a1172cc0016ec5f71511fe03922c6f..b746aa162cdb2e6b36d60467b905c3bb6d9cc346 100644 (file)
@@ -3,8 +3,10 @@
 maze \- an automated X11 demo repeatedly creating and solving a random maze
 .SH SYNOPSIS
 .B maze 
-[\-display \fIhost:display.screen\fP] [\-foreground \fIcolor\fP] [\-background \fIcolor\fP] [\-window] [\-root] [\-install] [\-visual \fIvisual\fP] [\-grid\-size \fIpixels\fP] [\-live\-color \fIcolor\fP] [\-dead\-color \fIcolor\fP] [\-solve\-delay \fIusecs\fP] [\-pre\-delay \fIusecs\fP] [\-post\-delay \fIusecs\fP] [\-generator \fIinteger\fP] [\-max\-length \fIinteger\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP] [\-\-foreground \fIcolor\fP]
+[\-\-background \fIcolor\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-install] [\-\-visual \fIvisual\fP] [\-\-grid\-size \fIpixels\fP] [\-\-live\-color \fIcolor\fP] [\-\-dead\-color \fIcolor\fP] [\-\-solve\-delay \fIusecs\fP] [\-\-pre\-delay \fIusecs\fP] [\-\-post\-delay \fIusecs\fP] [\-\-generator \fIinteger\fP] [\-\-max\-length \fIinteger\fP]
+[\-\-fps]
 .SH DESCRIPTION
 The \fImaze\fP program creates a "random" maze and then solves it with 
 graphical feedback. 
@@ -12,53 +14,56 @@ graphical feedback.
 .I maze
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-install
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-grid\-size \fIpixels\fP
+.B \-\-grid\-size \fIpixels\fP
 The size of each block of the maze, in pixels; default is 0, meaning
 pick a random grid size.  Minimum meaningful value is 2.
 .TP 8
-.B \-live\-color \fIcolor\fP
+.B \-\-live\-color \fIcolor\fP
 The color of the path.
 .TP 8
-.B \-dead\-color \fIcolor\fP
+.B \-\-dead\-color \fIcolor\fP
 The color of the failed path (it is also stippled with a 50% pattern.)
 .TP 8
-.B \-skip\-color \fIcolor\fP
+.B \-\-skip\-color \fIcolor\fP
 The maze solver will choose to not go down a path if it can "see" (in a
 straight line) that it is a dead end.  This is the color to use for paths
 that are skipped for this reason.
 .TP 8
-.B \-surround\-color \fIcolor\fP
+.B \-\-surround\-color \fIcolor\fP
 If the maze solver ever completely encloses an area within the maze, then
 it knows that the exit is not in there (and in fact the interior of that
 area might not even be reachable.)  It will mark out those cells using this
 color.
 .TP 8
-.B \-solve\-delay \fIinteger\fP
+.B \-\-solve\-delay \fIinteger\fP
 Delay (in microseconds) between each step of the solution path.
 Default 5000, or about 1/200th second.
 .TP 8
-.B \-pre\-delay \fIinteger\fP
+.B \-\-pre\-delay \fIinteger\fP
 Delay (in microseconds) between generating a maze and starting to solve it.
 Default 2000000 (2 seconds.)
 .TP 8
-.B \-post\-delay \fIinteger\fP
+.B \-\-post\-delay \fIinteger\fP
 Delay (in microseconds) after solving a maze and before generating a new one.
 Default 4000000 (4 seconds.)
 .TP 8
-.B \-generator \fInum\fP
+.B \-\-generator \fInum\fP
 Sets the algorithm that will be used to generate the mazes. The
 default is \-1, which randomly selects an algorithm for each maze that
 is generated. Generator 0 is the original one, and works by walking
@@ -78,7 +83,7 @@ can spot them!
 The three algorithms are essentially Kruskal, Prim, and a depth-first
 recursive backtracker.
 .TP 8
-.B \-max\-length \fInum\fP
+.B \-\-max\-length \fInum\fP
 Controls the maximum length of walls drawn in one go by generator 1.
 .PP
 Clicking the mouse in the maze window controls it.
@@ -92,7 +97,7 @@ Pause or unpause the program.
 .B RightButton
 Exit.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH BUGS
 Expose events force a restart of maze.
@@ -108,6 +113,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 29bf1f9ff8565a5aa6930c7b9d179fa91158491a..172e4b198813694959fda504869d17ecb09e4f7e 100644 (file)
@@ -3,13 +3,14 @@
 memscroller \- scrolls a dump of its own RAM across the screen
 .SH SYNOPSIS
 .B memscroller
-[\-display \fIhost:display.screen\fP]
-[\-window] [\-root] [\-mono] [\-install] [\-visual \fIvisual\fP]
-[\-font \fIfont\fP]
-[\-delay \fIint\fP]
-[\-mono | -color]
-[\-ram | -random | \-filename \fIfile\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-mono] [\-\-install] [\-\-visual \fIvisual\fP]
+[\-\-font \fIfont\fP]
+[\-\-delay \fIint\fP]
+[\-\-mono | -color]
+[\-\-ram | -random | \-\-filename \fIfile\fP]
+[\-\-fps]
 .SH DESCRIPTION
 The \fImemscroller\fP program scrolls a dump of its own process memory
 across the screen in three windows at three different rates.
@@ -17,42 +18,45 @@ across the screen in three windows at three different rates.
 .I memscroller
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-install
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-color
+.B \-\-color
 Render each three bytes of memory as R, G, B.  This is the default.
 .TP 8
-.B \-mono 
+.B \-\-mono 
 Render each byte of memory in shades of green.
 .TP 8
-.B \-ram
+.B \-\-ram
 Read from the process's address space.  This is the default.
 .TP 8
-.B \-random
+.B \-\-random
 Instead of reading from memory, generate random numbers.
 .TP 8
-.B \-filename \fIfile\fP
+.B \-\-filename \fIfile\fP
 Instead of reading from memory, read from the given file until EOF, then
 re-open it.  If you have permission, /dev/mem is an interesting choice here.
 (Note that /dev/null won't ever display anything, because it returns EOF
 without ever returning any data.)
 .TP 8
-.B \-delay \fImicroseconds\fP
+.B \-\-delay \fImicroseconds\fP
 How much of a delay should be introduced between steps of the animation.
 Default 10000.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -63,6 +67,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 5a78f9fadfcaedeb6cc886311b702aab6456506f..d9afcbbd1e1959099f9e71963cce06b4ae11e906 100644 (file)
@@ -3,51 +3,55 @@
 MetaBalls \- draws 2D metaballs
 .SH SYNOPSIS
 .B MetaBalls
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-ncolors \fInumber\fP]
-[\-count \fInumber\fP]
-[\-delay \fInumber\fP]
-[\-cycles \fInumber\fP]
-[\-radius \fInumber\fP]
-[\-delta \fInumber\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-ncolors \fInumber\fP]
+[\-\-count \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-cycles \fInumber\fP]
+[\-\-radius \fInumber\fP]
+[\-\-delta \fInumber\fP]
+[\-\-fps]
 .SH DESCRIPTION
 This hack draws 2D metaballs to the screen by calculating the sum
 of the colors of all metaballs covering a pixel. 
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-ncolors \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-ncolors \fInumber\fP
 Number of Colors.  Default: 256.
 .TP 8
-.B \-count \fInumber\fP
+.B \-\-count \fInumber\fP
 Number of MetaBalls.   2 - 255.  Default: 10.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 5000 (0.005 seconds.).
 .TP 8
-.B \-cycles \fInumber\fP
+.B \-\-cycles \fInumber\fP
 Duration.  100 - 3000.  Default: 1000.
 .TP 8
-.B \-radius \fInumber\fP
+.B \-\-radius \fInumber\fP
 MetaBall Radius.  2 - 100.  Default: 100.
 .TP 8
-.B \-delta \fInumber\fP
+.B \-\-delta \fInumber\fP
 MetaBall Movement.  1 - 20.  Default: 3.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -58,6 +62,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1),
index 2de15cd492472ae635a0e9739ee760b73a0e2833..fe0e74bcda67a903b4c6b3e4c9152ed73ac00b40 100644 (file)
@@ -3,45 +3,50 @@
 moire \- draw circular interference patterns
 .SH SYNOPSIS
 .B moire
-[\-display \fIhost:display.screen\fP] [\-foreground \fIcolor\fP] [\-background \fIcolor\fP] [\-window] [\-root] [\-mono] [\-install] [\-visual \fIvisual\fP] [\-delay \fIseconds\fP] [\-random \fIboolean\fP] [\-ncolors \fIint\fP] [\-offset \fIint\fP] 
-[\-fps]
+[\-\-display \fIhost:display.screen\fP] [\-\-foreground \fIcolor\fP]
+[\-\-background \fIcolor\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-mono] [\-\-install] [\-\-visual \fIvisual\fP] [\-\-delay \fIseconds\fP] [\-\-random \fIboolean\fP] [\-\-ncolors \fIint\fP] [\-\-offset \fIint\fP] 
+[\-\-fps]
 .SH DESCRIPTION
 The \fImoire\fP program draws cool circular interference patterns.
 .SH OPTIONS
 .I moire
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-mono 
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-mono 
 If on a color display, pretend we're on a monochrome display.
 .TP 8
-.B \-install
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-delay \fIseconds\fP
+.B \-\-delay \fIseconds\fP
 How long to wait before starting over.  Default 5 seconds.
 .TP 8
-.B \-random \fIboolean\fP
+.B \-\-random \fIboolean\fP
 Whether to ignore the foreground/background colors, and pick them randomly
 instead.
 .TP 8
-.B \-offset \fIinteger\fP
+.B \-\-offset \fIinteger\fP
 The maximum random radius increment to use.
 .TP 8
-.B \-ncolors \fIinteger\fP
+.B \-\-ncolors \fIinteger\fP
 How many colors should be allocated in the color ramp (note that this
 value interacts with \fIoffset\fP.)
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -52,6 +57,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 9c347b5e1d3d7f733ced7d8a9d64d6375d738fd9..5bc3a6eddb7edd3fcdc6971805a723d6d6111d69 100644 (file)
@@ -3,14 +3,15 @@
 moire2 \- circular interference patterns.
 .SH SYNOPSIS
 .B moire2
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-ncolors \fInumber\fP]
-[\-thickness \fInumber\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-ncolors \fInumber\fP]
+[\-\-thickness \fInumber\fP]
+[\-\-fps]
 .SH DESCRIPTION
 Another example of the fun you can have with moire interference patterns;
 this hack generates fields of concentric circles or ovals, and combines the
@@ -18,26 +19,29 @@ planes with various operations. The planes are moving independently of one
 another, causing the interference lines to ``spray.''
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 50000 (0.05 seconds.).
 .TP 8
-.B \-ncolors \fInumber\fP
+.B \-\-ncolors \fInumber\fP
 Number of Colors.  Default: 150.
 .TP 8
-.B \-thickness \fInumber\fP
+.B \-\-thickness \fInumber\fP
 Thickness of lines, in pixels.  Default: 0.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -48,6 +52,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 61bd1be5ff5be27864458cd2de78931679beea4c..6a91e479e8dc000bf2cae4db1545383136e61b81 100644 (file)
@@ -3,38 +3,42 @@
 mountain \- random 3D plots that look vaguely mountainous.
 .SH SYNOPSIS
 .B mountain
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-count \fInumber\fP]
-[\-delay \fInumber\fP]
-[\-ncolors \fInumber\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-count \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-ncolors \fInumber\fP]
+[\-\-fps]
 .SH DESCRIPTION
 Generates random 3d plots that look vaguely mountainous.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-count \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-count \fInumber\fP
 Count. 0 - 100.  Default: 30.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 1000 (0.001 seconds.).
 .TP 8
-.B \-ncolors \fInumber\fP
+.B \-\-ncolors \fInumber\fP
 Number of colors.  Default: 64.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -45,6 +49,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 90bb2d1dfac5ab115a5912e3d477bd88da19978a..ae2ba52a9dc41933fff840579a2971d451e779b7 100644 (file)
@@ -3,12 +3,13 @@
 munch \- munching squares
 .SH SYNOPSIS
 .B munch
-[\-display \fIhost:display.screen\fP] [\-foreground \fIcolor\fP]
-[\-background \fIcolor\fP] [\-window] [\-root] [\-mono] [\-install]
-[\-visual \fIvisual\fP] [\-delay \fIusecs\fP] [\-xor] [\-noxor] 
-[\-clear \fInumber\fP] [\-simul \fInumber\fP]
-[\-classic | \-mismunch | \-random]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP] [\-\-foreground \fIcolor\fP]
+[\-\-background \fIcolor\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-mono] [\-\-install]
+[\-\-visual \fIvisual\fP] [\-\-delay \fIusecs\fP] [\-\-xor] [\-\-noxor] 
+[\-\-clear \fInumber\fP] [\-\-simul \fInumber\fP]
+[\-\-classic | \-\-mismunch | \-\-random]
+[\-\-fps]
 .SH DESCRIPTION
 The
 .I munch
@@ -24,47 +25,50 @@ instructions of PDP-6 code.
 .I munch
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-mono 
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-mono 
 If on a color display, pretend we're on a monochrome display.
 .TP 8
-.B \-install
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-delay \fIusecs\fP
+.B \-\-delay \fIusecs\fP
 The delay between steps of the animation, in microseconds.  Default: 2500.
 .TP 8
-.B \-xor
+.B \-\-xor
 Use the XOR drawing function.  This is the default.
 .TP 8
-.B \-no\-xor
+.B \-\-no\-xor
 Don't use the XOR drawing function.
 .TP 8
-.B \-clear \fInumber\fP
+.B \-\-clear \fInumber\fP
 Number of squares to misdraw before clearing the display.  Default: 65.
 .TP 8
-.B \-simul \fInumber\fP
+.B \-\-simul \fInumber\fP
 Number of squares to misdraw simultaneously.  Default: 5.
 .TP 8
-.B \-classic
+.B \-\-classic
 Draw classic munching squares only.
 .TP 8
-.B \-mismunch
+.B \-\-mismunch
 Draw "mismunch" only.
 .TP 8
-.B \-random
+.B \-\-random
 Do one or the other.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -75,6 +79,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH HISTORY
 .B HAKMEM: MIT AI Memo 239, Feb. 29, 1972.
 Beeler, M., Gosper, R.W., and Schroeppel, R.
index aa4d341ff1c1b7f3a252d92ae347c6dd5f9e4b8c..87196c44a7eb25a5f9ed9d454c12896610344853 100755 (executable)
@@ -1,5 +1,5 @@
 #!/usr/bin/perl -w
-# Copyright © 2008-2021 Jamie Zawinski <jwz@jwz.org>
+# Copyright © 2008-2022 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
@@ -18,7 +18,7 @@ use diagnostics;
 use strict;
 
 my $progname = $0; $progname =~ s@.*/@@g;
-my ($version) = ('$Revision: 1.15 $' =~ m/\s(\d[.\d]+)\s/s);
+my ($version) = ('$Revision: 1.16 $' =~ m/\s(\d[.\d]+)\s/s);
 
 my $verbose = 0;
 
@@ -141,7 +141,7 @@ sub munge_ad($) {
                            ? $a cmp $b 
                            : $hacks{$a} <=> $hacks{$b}}
                     (keys(%hacks))) {
-    my $cmd = "$hack -root";
+    my $cmd = "$hack --root";
     my $ts = (length($cmd) / 8) * 8;
     while ($ts < 40) { $cmd .= "\t"; $ts += 8; }
 
index c5faca9abbb6ce9e044af2ad3dea0389ddcec2ad..b0b370f040cf58610154141a7e909f03754c797b 100644 (file)
@@ -3,8 +3,10 @@
 nerverot \- induces edginess in the viewer
 .SH SYNOPSIS
 .B nerverot
-[\-display \fIhost:display.screen\fP] [\-foreground \fIcolor\fP] [\-background \fIcolor\fP] [\-window] [\-root] [\-mono] [\-install] [\-visual \fIvisual\fP] [\-db] [\-no\-db] [\-colors \fIinteger\fP] [\-delay \fImicroseconds\fP] [\-count \fIinteger\fP] [\-line\-width \fIinteger\fP] [\-event\-chance \fIfraction\fP] [\-iter\-amt \fIfraction\fP] [\-nervousness \fIfraction\fP] [\-max\-nerve\-radius \fIfraction\fP] [\-min\-radius \fIinteger\fP] [\-max\-radius \fIinteger\fP] [\-min\-scale \fIfraction\fP] [\-max\-scale \fIfraction\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP] [\-\-foreground \fIcolor\fP]
+[\-\-background \fIcolor\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-mono] [\-\-install] [\-\-visual \fIvisual\fP] [\-\-db] [\-\-no\-db] [\-\-colors \fIinteger\fP] [\-\-delay \fImicroseconds\fP] [\-\-count \fIinteger\fP] [\-\-line\-width \fIinteger\fP] [\-\-event\-chance \fIfraction\fP] [\-\-iter\-amt \fIfraction\fP] [\-\-nervousness \fIfraction\fP] [\-\-max\-nerve\-radius \fIfraction\fP] [\-\-min\-radius \fIinteger\fP] [\-\-max\-radius \fIinteger\fP] [\-\-min\-scale \fIfraction\fP] [\-\-max\-scale \fIfraction\fP]
+[\-\-fps]
 .SH DESCRIPTION
 The goal of \fInerverot\fP is to be interesting and compelling to
 watch, yet induce a state of nervous edginess in the viewer. This manpage
@@ -13,24 +15,27 @@ describes v1.3 of the program.
 .I nerverot
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-mono 
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-mono 
 If on a color display, pretend we're on a monochrome display.
 .TP 8
-.B \-install
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-db
-.B \-no\-db
+.B \-\-db
+.B \-\-no\-db
 Use double-buffering (or not, respectively). Double-buffering may make 
 things look better for larger line widths and/or larger numbers of
 blots, but "better" may equate to yielding less of the desired edginess
@@ -38,67 +43,67 @@ effect. You'll be calmer after watching the double-buffered variant;
 you're more likely to go into epileptic fits with it off. Hence, it
 is off (false) by default, resource \fIdoubleBuffer\fP.
 .TP 8
-.B \-colors \fIinteger\fP
+.B \-\-colors \fIinteger\fP
 How many colors should be used (if possible). The colors
 form a smooth ramp between two randomly-chosen colors. Defaults to 4,
 resource \fIcolors\fP.
 .TP 8
-.B \-delay \fImicroseconds\fP
+.B \-\-delay \fImicroseconds\fP
 The interframe delay, in microseconds. Defaults to 10000, resource
 \fIdelay\fP.
 .TP 8
-.B \-max\-iters \fIinteger\fP
+.B \-\-max\-iters \fIinteger\fP
 The maximum number of iterations (frames) before a new model is
 generated. The actual number of iterations per model is a random number
 between 1 and this value. Defaults to 1200, resource
 \fImaxIters\fP.
 .TP 8
-.B \-count \fIinteger\fP
+.B \-\-count \fIinteger\fP
 How many "blots" to draw at a time. This number may be rounded down to
 fit the particularly chosen model, and has a fixed minimum per-model.
 Defaults to 250, resource \fIcount\fP.
 .TP 8
-.B \-line\-width \fIinteger\fP
+.B \-\-line\-width \fIinteger\fP
 The width of the lines to draw. 0 means an optimized pixel-thick line.
 Defaults to 0, resource \fIlineWidth\fP.
 .TP 8
-.B \-event\-chance \fIfraction\fP
+.B \-\-event\-chance \fIfraction\fP
 The chance, per iteration, for a life-altering event to occur (such as
 picking a new rotation target), in the range 0..1. Defaults to 0.2,
 resource \fIeventChance\fP.
 .TP 8 
-.B \-iter\-amt \fIfraction\fP
+.B \-\-iter\-amt \fIfraction\fP
 The fraction of movement towards a target (such as rotation angle or scale)
 that happens per iteration, in the range 0..1. Defaults to 0.01,
 resource \fIiterAmt\fP.
 .TP 8
-.B \-nervousness \fIfraction\fP
+.B \-\-nervousness \fIfraction\fP
 How nervous the drawing is, in the range 0..1. This is how jumpy the points
 on each blot are. Defaults to 0.3, resource \fInervousness\fP.
 .TP 8
-.B \-max\-nerve\-radius \fIfraction\fP
+.B \-\-max\-nerve\-radius \fIfraction\fP
 The maximum radius of blot nervousness, as a fraction of the radius of the
 blot, in the range 0..1. Defaults to 0.7, resource \fImaxNerveRadius\fP.
 .TP 8
-.B \-min\-radius \fIinteger\fP
+.B \-\-min\-radius \fIinteger\fP
 The minimum radius for a blot, in the range 1..100. Defaults to 3,
 resource \fIminRadius\fP.
 .TP 8
-.B \-max\-radius \fIinteger\fP
+.B \-\-max\-radius \fIinteger\fP
 The maximum radius for a blot, in the range 1..100. Defaults to 25,
 resource \fImaxRadius\fP.
 .TP 8
-.B \-min\-scale \fIfraction\fP
+.B \-\-min\-scale \fIfraction\fP
 The minimum overall scale of drawing, as a fraction of
 \fImin(windowHeight,windowWidth)\fP, in the range 0..10. Defaults to 0.6,
 resource \fIminScale\fP.
 .TP 8
-.B \-max\-scale \fIfraction\fP
+.B \-\-max\-scale \fIfraction\fP
 The maximum overall scale of drawing, as a fraction of
 \fImin(windowHeight,windowWidth)\fP, in the range 0..10. Defaults to 1.75,
 resource \fImaxScale\fP.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -109,6 +114,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH X RESOURCES
 There are resource equivalents for each option, noted above.
 .SH BUGS
index e2a75b8eb72370fa5072543c0d73c5fb6cb81de1..e958d74402b5838b512b31bf98c137c82d2063fe 100644 (file)
@@ -3,21 +3,22 @@
 noseguy \- a little guy with a big nose wanders around being witty
 .SH SYNOPSIS
 .B noseguy
-[\-display \fIhost:display.screen\fP]
-[\-foreground \fIcolor\fP]
-[\-background \fIcolor\fP]
-[\-text-foreground \fIcolor\fP]
-[\-text-background \fIcolor\fP]
-[\-font \fIfont\fP]
-[\-window]
-[\-root]
-[\-install]
-[\-visual \fIvisual\fP]
-[\-mode \fImode\fP]
-[\-program \fIprogram\fP]
-[\-filename \fIfile\fP]
-[\-text \fItext\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-foreground \fIcolor\fP]
+[\-\-background \fIcolor\fP]
+[\-\-text-foreground \fIcolor\fP]
+[\-\-text-background \fIcolor\fP]
+[\-\-font \fIfont\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-install]
+[\-\-visual \fIvisual\fP]
+[\-\-mode \fImode\fP]
+[\-\-program \fIprogram\fP]
+[\-\-filename \fIfile\fP]
+[\-\-text \fItext\fP]
+[\-\-fps]
 .SH DESCRIPTION
 A little man with a big nose and a hat runs around spewing out messages to
 the screen.  This code (and its bitmaps) were extracted from the \fIxnlock\fP
@@ -26,23 +27,26 @@ program.
 .I noseguy
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-install
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-font \fIfont\fP
+.B \-\-font \fIfont\fP
 The font used for the messages.
 .TP 8
-.B \-program \fIprogram\fP
+.B \-\-program \fIprogram\fP
 This program will be run periodically, and its output will be the text
 of the messages.  Default:
 
@@ -52,14 +56,14 @@ You can configure the text printed through the "Advanced" tab of
 .BR xscreensaver\-settings (1),
 or by editing your ~/.xscreensaver file.
 .TP 8
-.B \-filename \fIfile\fP
+.B \-\-filename \fIfile\fP
 If \fImode\fP is \fIfile\fP, then the contents of this file will be used
 for all messages.
 .TP 8
-.B \-text \fIstring\fP
+.B \-\-text \fIstring\fP
 If \fImode\fP is \fIstring\fP, then this text will be used for all messages.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -70,6 +74,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1),
index b413de6ae13b82b083b4261115cdd2d234af8190..e89a395a6d602ac942a255e13fa21337bcf7a0d2 100644 (file)
@@ -3,45 +3,49 @@
 pacman \- simulates a game of Pac-Man on a randomly-created level.
 .SH SYNOPSIS
 .B pacman
-[\-display \fIhost:display.screen\fP]
-[\-window]
-[\-root]
-[\-mono]
-[\-install]
-[\-visual \fIvisual\fP]
-[\-ncolors \fIinteger\fP]
-[\-delay \fImicroseconds\fP]
-[\-size \fIpixels\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-mono]
+[\-\-install]
+[\-\-visual \fIvisual\fP]
+[\-\-ncolors \fIinteger\fP]
+[\-\-delay \fImicroseconds\fP]
+[\-\-size \fIpixels\fP]
+[\-\-fps]
 .SH DESCRIPTION
 Simulates a game of Pac-Man on a randomly-created level.
 .SH OPTIONS
 .I pacman
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-mono 
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-mono 
 If on a color display, pretend we're on a monochrome display.
 .TP 8
-.B \-install
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-ncolors \fIinteger\fP
+.B \-\-ncolors \fIinteger\fP
 How many colors should be used (if possible).  Default 6.
 .TP 8
-.B \-size \fIinteger\fP
+.B \-\-size \fIinteger\fP
 How big to make Pac-Man and the ghosts.  0 means "default."
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -52,6 +56,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1).
index ce59d38f671a7d8547bb2b488ddbf4b9dca35820..71d867b8eae6a2f16f9a62165d61585bcdfd4d94 100644 (file)
@@ -3,37 +3,42 @@
 pedal \- pretty geometric picture program
 .SH SYNOPSIS
 .B pedal
-[\-display \fIhost:display.screen\fP] [\-foreground \fIcolor\fP] [\-background \fIcolor\fP] [\-window] [\-root] [\-delay \fIseconds\fP] [-maxlines \fInumber\fP] [-mono] [\-install] [\-visual \fIvisual\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP] [\-\-foreground \fIcolor\fP]
+[\-\-background \fIcolor\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-delay \fIseconds\fP] [-maxlines \fInumber\fP] [-mono] [\-\-install] [\-\-visual \fIvisual\fP]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIpedal\fP program displays pretty geometric pictures.
 .SH OPTIONS
 .I pedal
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-foreground \fIcolor\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-foreground \fIcolor\fP
 The color for the foreground.  Default is white.
 .TP 8
-.B \-background \fIcolor\fP
+.B \-\-background \fIcolor\fP
 The color for the background.  Default is black.
 .TP 8
-.B \-delay \fIseconds\fP
+.B \-\-delay \fIseconds\fP
 The number of seconds to pause between each picture.
 .TP 8
-.B \-maxlines \fInumber\fP
+.B \-\-maxlines \fInumber\fP
 The maximum number of lines in the drawing.  Good values are
 between 20 and 2000.  Maximum value is 16K.
 .PP
 To make your X server grunt under load, and to impress your
-friends, try \fIpedal -mono -delay 0 -maxlines 100\fp.
+friends, try \fIpedal -mono -delay 0 -maxlines 100\fP.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -44,6 +49,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 4961c90c10e37095b73a9984d76178ccbb3ed172..abe8e08e66872b931de4ddcb00214a07dcb97060 100644 (file)
@@ -3,10 +3,17 @@
 penetrate \- simulates a classic arcade shooting game
 .SH SYNOPSIS
 .B penetrate
-[\-display \fIhost:display.screen\fP] [\-root] [\-window]
-[\-install] [\-noinstall] [\-visual \fIvisual\fP]
-[\-bgrowth \fImicroseconds\fP] [\-lrate \fInumber\fP] [\-smart \fInumber\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-root]
+[\-\-window]
+[\-\-window\-id \fInumber\fP]
+[\-\-install]
+[\-\-noinstall]
+[\-\-visual \fIvisual\fP]
+[\-\-bgrowth \fImicroseconds\fP]
+[\-\-lrate \fInumber\fP]
+[\-\-smart \fInumber\fP]
+[\-\-fps]
 .SH DESCRIPTION
 .PP
 \fIPenetrate\fP simulates the arcade classic with the cities and the stuff
@@ -20,22 +27,25 @@ high score is in the bottom left.  Start with -smart to have the computer
 player skip the learning process.
 .SH OPTIONS
 .TP 8
-.B \-display \fIhost:display.screen\fP
+.B \-\-display \fIhost:display.screen\fP
 Specifies which X display we should use.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-window
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-install
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-noinstall
+.B \-\-noinstall
 Don't install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual
 class, or the id number (decimal or hex) of a specific visual.
 Possible choices include
@@ -49,28 +59,43 @@ If a decimal or hexadecimal number is used,
 is consulted to obtain the required visual.
 .RE
 .TP 8
-.B \-foreground \fIcolor\fP
+.B \-\-foreground \fIcolor\fP
 Specifies the default foreground color.
 .TP 8
-.B \-background \fIcolor\fP
+.B \-\-background \fIcolor\fP
 Specifies the default background color.
 .TP 8
-.B \-bgrowth \fIinteger\fP
+.B \-\-bgrowth \fIinteger\fP
 Specifies the growth rate of the bomb explosions.
 .TP 8
-.B \-lrate \fIinteger\fP
+.B \-\-lrate \fIinteger\fP
 Set the initial rate of laser fire.
 .TP 8
 .B -smart
 Have the computer player skip the learning process.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH BUGS
 The layout of the screen isn't quite the same as the game this program
 tries to emulate.  In this this program, the missiles come out of the
 cities; when really, there are supposed to be three missile bases on
 hills, with the cities in the valleys between them.
+.SH ENVIRONMENT
+.PP
+.TP 8
+.B DISPLAY
+to get the default host and display number.
+.TP 8
+.B XENVIRONMENT
+to get the name of a resource file that overrides the global resources
+stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
+.SH SEE ALSO
+.BR X (1),
+.BR xscreensaver (1)
 .SH COPYRIGHT
 Copyright \(co 1999 Adam Miller.  Permission to use, copy, modify,
 distribute, and sell this software and its documentation for any purpose is
index d136e3adbcfbbda98d66e57b3b066b6b42c0b658..b83d13b9a603f1ee4f413a9726a4ec23a3291555 100644 (file)
@@ -3,9 +3,11 @@
 penrose \- draws quasiperiodic tilings
 .SH SYNOPSIS
 .B penrose
-[\-display \fIhost:display.screen\fP] [\-foreground \fIcolor\fP] [\-background \fIcolor\fP] [\-window] [\-root] [\-mono] [\-install] [\-visual \fIvisual\fP] [\-ncolors \fIinteger\fP] [\-delay \fImicroseconds\fP] [\-size \fIinteger\fP] [\-ammann] [\-no\-ammann]
+[\-\-display \fIhost:display.screen\fP] [\-\-foreground \fIcolor\fP]
+[\-\-background \fIcolor\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-mono] [\-\-install] [\-\-visual \fIvisual\fP] [\-\-ncolors \fIinteger\fP] [\-\-delay \fImicroseconds\fP] [\-\-size \fIinteger\fP] [\-\-ammann] [\-\-no\-ammann]
 
-[\-fps]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIpenrose\fP program draws quasiperiodic tilings.
 
@@ -41,42 +43,45 @@ these tiles can be arranged to form a periodic tiling.
 .I penrose
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-mono 
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-mono 
 If on a color display, pretend we're on a monochrome display.
 .TP 8
-.B \-install
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-ncolors \fIinteger\fP
+.B \-\-ncolors \fIinteger\fP
 How many colors should be used (if possible).  Default 64.
 The colors are chosen randomly.
 .TP 8
-.B \-size \fIinteger\fP
+.B \-\-size \fIinteger\fP
 How big the tiles should be.  Default 40 pixels.
 
 .TP 8
-.B \-delay \fImilliseconds\fP
+.B \-\-delay \fImilliseconds\fP
 How long (in 1/1,000,000'ths of a second) to wait between drawing each
 tile.  Default 10,000 or .01 seconds.
 
 .TP 8
-.B \-ammann
+.B \-\-ammann
 .TP 8
-.B \-no\-ammann
+.B \-\-no\-ammann
 Whether Ammann lines should be added.
 
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -87,6 +92,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1),
index 4c6bec251f67687d137672e1975d6355925a2c54..c6eb571022957e5794f8ef9267fc0367fc278d51 100644 (file)
@@ -3,8 +3,10 @@
 petri \- simulates mold growing in a petri dish
 .SH SYNOPSIS
 .B petri
-[\-display \fIhost:display.screen\fP] [\-foreground \fIcolor\fP] [\-background \fIcolor\fP] [\-window] [\-root] [\-mono] [\-install] [\-visual \fIvisual\fP] [\-delay \fImicroseconds\fP] [\-size \fIinteger\fP] [\-mem-throttle \fIamount\fP] [\-count \fIinteger\fP] [\-originalcolors] [\-diaglim \fIreal\fP] [\-anychan \fIreal\fP] [\-minorchan \fIreal\fP] [\-instantdeathchan \fIreal\fP] [\-minlifespeed \fIreal\fP] [\-maxlifespeed \fIreal\fP] [\-mindeathspeed \fIreal\fP] [\-maxdeathspeed \fIreal\fP] [\-minlifespan \fIinteger\fP] [\-maxlifespan \fIinteger\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP] [\-\-foreground \fIcolor\fP]
+[\-\-background \fIcolor\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-mono] [\-\-install] [\-\-visual \fIvisual\fP] [\-\-delay \fImicroseconds\fP] [\-\-size \fIinteger\fP] [\-\-mem-throttle \fIamount\fP] [\-\-count \fIinteger\fP] [\-\-originalcolors] [\-\-diaglim \fIreal\fP] [\-\-anychan \fIreal\fP] [\-\-minorchan \fIreal\fP] [\-\-instantdeathchan \fIreal\fP] [\-\-minlifespeed \fIreal\fP] [\-\-maxlifespeed \fIreal\fP] [\-\-mindeathspeed \fIreal\fP] [\-\-maxdeathspeed \fIreal\fP] [\-\-minlifespan \fIinteger\fP] [\-\-maxlifespan \fIinteger\fP]
+[\-\-fps]
 .SH DESCRIPTION
 \fIpetri\fP simulates mold growing in a petri dish via a state-heavy grid
 of automata (vaguely like Conway's Life, only with much more state per
@@ -13,90 +15,93 @@ cell).
 .I petri
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-mono 
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-mono 
 If on a color display, pretend we're on a monochrome display.
 .TP 8
-.B \-install
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-delay \fImicroseconds\fP
+.B \-\-delay \fImicroseconds\fP
 The interframe delay, in microseconds. Defaults to 10000, resource
 \fIdelay\fP.
 .TP 8
-.B \-size \fIinteger\fP
+.B \-\-size \fIinteger\fP
 The size of a cell in pixels. Defaults to 4, resource \fIsize\fP.
 .TP 8
-.B \-mem-throttle \fIamount\fP
+.B \-\-mem-throttle \fIamount\fP
 The maximum amount of memory to consume, specified either in megabytes
 (suffix "M"), kilobytes (suffix "K"), or bytes (sans suffix). In order
 to meet the memory requirement, the cell size may be increased.
 Defaults to 22M, resource \fImemThrottle\fP.
 .TP 8
-.B \-count \fIinteger\fP
+.B \-\-count \fIinteger\fP
 How many different varieties of mold to grow (including Black Death).
 Defaults to 8, resource \fIcount\fP.
 .TP 8
-.B \-originalcolors
+.B \-\-originalcolors
 If specified, indicates that the colors used should be the artist's
 original choices (a fixed set of primary and secondary colors). In this
 case, count must be 8 or less. Defaults to not specified (i.e., false), 
 resource \fIoriginalcolors\fP.
 .TP 8
-.B \-diaglim \fIreal\fP 
+.B \-\-diaglim \fIreal\fP 
 The age limit for diagonal growth as a multiplier of
 orthogonal growth (range 1..2). 1 means square growth, 1.414
 (i.e., \fIsqrt(2)\fP) means approximately circular growth, 2 means
 diamond growth. Defaults to 1.414, resource \fIdiaglim\fP.
 .TP 8
-.B \-anychan \fIreal\fP 
+.B \-\-anychan \fIreal\fP 
 The chance (range 0..1) that at each iteration, one or more
 new cells will be born. Defaults to 0.0015, resource \fIanychan\fP.
 .TP 8
-.B \-minorchan \fIreal\fP
+.B \-\-minorchan \fIreal\fP
 The chance (range 0..1) that, given that new cells will be born, that only
 two will be added (hence being a minor cell birth event).
 Defaults to 0.5, resource \fIminorchan\fP.
 .TP 8
-.B \-instantdeathchan \fIreal\fP
+.B \-\-instantdeathchan \fIreal\fP
 The chance (range 0..1) that, given that death and destruction will happen,
 that instead of using Black Death cells, death will come instantaneously.
 Defaults to 0.2, resource \fIinstantdeathchan\fP.
 .TP 8
-.B \-minlifespeed \fIreal\fP 
+.B \-\-minlifespeed \fIreal\fP 
 The minimum speed for living cells as a fraction of the maximum possible
 speed (range 0..1). Defaults to 0.04, resource \fIminlifespeed\fP.
 .TP 8
-.B \-maxlifespeed \fIreal\fP
+.B \-\-maxlifespeed \fIreal\fP
 The maximum speed for living cells as a fraction of the maximum possible
 speed (range 0..1). Defaults to 0.13, resource \fImaxlifespeed\fP.
 .TP 8
-.B \-mindeathspeed \fIreal\fP
+.B \-\-mindeathspeed \fIreal\fP
 The minimum speed for Black Death cells as a fraction of the maximum possible
 speed (range 0..1). Defaults to 0.42, resource \fImindeathspeed\fP.
 .TP 8
-.B \-maxdeathspeed \fIreal\fP
+.B \-\-maxdeathspeed \fIreal\fP
 The maximum speed for Black Death cells as a fraction of the maximum possible
 speed (range 0..1). Defaults to 0.46, resource \fImaxdeathspeed\fP.
 .TP 8
-.B \-minlifespan \fIinteger\fP 
+.B \-\-minlifespan \fIinteger\fP 
 The minimum lifespan for a colony, in iterations, before Black Death
 comes. Defaults to 500, resource \fIminlifespan\fP.
 .TP 8
-.B \-maxlifespan \fIinteger\fP
+.B \-\-maxlifespan \fIinteger\fP
 The maximum lifespan for a colony, in iterations, before Black Death
 comes. Defaults to 1500, resource \fImaxlifespan\fP.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -107,6 +112,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH X RESOURCES
 There are resource equivalents for each option, noted above.
 .SH BUGS
index 734d2f48eb07433f65a53b5214ce0a82b97f148b..352c484c936dc79dc0fb7739b98aa7a0a18367c1 100644 (file)
@@ -3,11 +3,12 @@
 phosphor \- simulates an old terminal with long-sustain phosphor
 .SH SYNOPSIS
 .B phosphor
-[\-display \fIhost:display.screen\fP] [\-window] [\-root] [\-install]
-[\-visual \fIvisual\fP] [\-font \fIfont\fP] [\-scale \fIint\fP]
-[\-ticks \fIint\fP] [\-delay \fIusecs\fP] [\-program \fIcommand\fP]
-[\-meta] [\-esc] [\-bs] [\-del]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-install]
+[\-\-visual \fIvisual\fP] [\-\-font \fIfont\fP] [\-\-scale \fIint\fP]
+[\-\-ticks \fIint\fP] [\-\-delay \fIusecs\fP] [\-\-program \fIcommand\fP]
+[\-\-meta] [\-\-esc] [\-\-bs] [\-\-del]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIphosphor\fP program draws text on the screen in a very large 
 pixelated font that looks like an old low resolution dumb tty.  The
@@ -17,48 +18,51 @@ long-sustain.  It is also a fully functional vt100 terminal emulator.
 .I phosphor
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-install
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP\fP
+.B \-\-visual \fIvisual\fP\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-font \fIfont-name\fP
+.B \-\-font \fIfont-name\fP
 The X font to use.  Phosphor can take any font and scale it up to pixelate
 it.  The default is \fIfixed\fP.
 .TP 8
-.B \-scale \fIint\fP
+.B \-\-scale \fIint\fP
 How much to scale the font up: in other words, the size in real pixels of
 the simulated pixels.  Default 6.
 .TP 8
-.B \-ticks \fIint\fP
+.B \-\-ticks \fIint\fP
 The number of colors to use when fading to black.  Default 20.
 .TP 8
-.B \-delay \fIusecs\fP
+.B \-\-delay \fIusecs\fP
 The speed of the terminal: how long to wait between drawing each character.
 Default 50000, or about 1/20th second.
 .TP 8
-.B \-pty
+.B \-\-pty
 Launch the sub-program under a PTY, so that it can address the screen
 directly.  This is the default.
 .TP 8
-.B \-pipe
+.B \-\-pipe
 Launch the sub-program at the end of a pipe: do not let it address the
 screen directly.
 .TP 8
-.B \-program \fIsh-command\fP
+.B \-\-program \fIsh-command\fP
 The command to run to generate the text to display.  This option may
 be any string acceptable to /bin/sh.  The program will be run at the
 end of a pty or pipe, and any characters that it prints to \fIstdout\fP
 will be printed on phosphor's window.  The characters will be printed
-artificially slowly, as per the \fI\-delay\fP option above.  If the
+artificially slowly, as per the \fI\-\-delay\fP option above.  If the
 program exits, it will be launched again after 5 seconds.
 
 For example:
@@ -97,20 +101,20 @@ terminal emulators:
        phosphor -delay 0 -program tcsh
 .sp
 .fi
-.B \-esc
+.B \-\-esc
 When the user types a key with the Alt or Meta keys held down, send an
 ESC character first.  This is the default.
 .TP 8
-.B \-meta
+.B \-\-meta
 When Meta or Alt are held down, set the high bit on the character instead.
 .TP 8
-.B \-del
+.B \-\-del
 Swap Backspace and Delete.  This is the default.
 .TP 8
-.B \-bs
+.B \-\-bs
 Do not swap Backspace and Delete.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH TERMINAL EMULATION
 By default, \fIphosphor\fP allocates a pseudo-tty for the sub-process to
@@ -125,7 +129,7 @@ variable \fITERM\fP to \fIvt100\fP in the child process.
 
 Any characters typed on the phosphor window will be passed along to
 the sub-process.  (Note that this only works when running in "window"
-mode, not when running in \fI\-root\fP mode under xscreensaver.)
+mode, not when running in \fI\-\-root\fP mode under xscreensaver.)
 .SH ENVIRONMENT
 .PP
 .TP 8
@@ -136,6 +140,9 @@ to get the default host and display number.
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
 .TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
+.TP 8
 .B TERM
 to inform the sub-process of the type of terminal emulation.
 .SH SEE ALSO
index b580bece18cfef69e90b6f04dd7b7dd6da0981c0..6e6b943a0781837f80bac7e71d717e8d8b48a07c 100644 (file)
@@ -3,55 +3,59 @@
 piecewise \- lots of moving circles intersecting in interesting ways.
 .SH SYNOPSIS
 .B piecewise
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-count \fInumber\fP]
-[\-ncolors \fInumber\fP]
-[\-colorspeed \fInumber\fP]
-[\-minradius \fInumber\fP]
-[\-maxradius \fInumber\fP]
-[\-no-db]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-count \fInumber\fP]
+[\-\-ncolors \fInumber\fP]
+[\-\-colorspeed \fInumber\fP]
+[\-\-minradius \fInumber\fP]
+[\-\-maxradius \fInumber\fP]
+[\-\-no-db]
+[\-\-fps]
 .SH DESCRIPTION
 This draws a bunch of moving circles which switch from visibility to invisibility
 when they intersect.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 5000 (0.01 seconds.).
 .TP 8
-.B \-count \fInumber\fP
+.B \-\-count \fInumber\fP
 Number of circles.  Default: 32.
 .TP 8
-.B \-ncolors \fInumber\fP
+.B \-\-ncolors \fInumber\fP
 Number of colors, only one of which is used at a time.  Default: 256.
 .TP 8
-.B \-colorspeed \fInumber\fP
+.B \-\-colorspeed \fInumber\fP
 How fast the color changes (0 - 100).  Default: 10.
 .TP 8
-.B \-minradius \fInumber\fP
+.B \-\-minradius \fInumber\fP
 Minimum circle radius (as a proportion of screen height). Default: 0.05.
 .TP 8
-.B \-maxradius \fInumber\fP
+.B \-\-maxradius \fInumber\fP
 Maximum circle radius (as a proportion of screen height). Default: 0.2.
 .TP 8
-.B \-db | \-no-db
+.B \-\-db | \-\-no-db
 Whether to double buffer.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -62,6 +66,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index d69ecdf1c7e8079a318f35959062f40ff20ca11a..d0aaa785ca28a020a42a6f9c27a3759c5a5238ba 100644 (file)
@@ -3,43 +3,47 @@
 polyominoes \- fill a rectangle with irregularly-shaped blocks.
 .SH SYNOPSIS
 .B polyominoes
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-identical]
-[\-cycles \fInumber\fP]
-[\-delay \fInumber\fP]
-[\-ncolors \fInumber\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-identical]
+[\-\-cycles \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-ncolors \fInumber\fP]
+[\-\-fps]
 .SH DESCRIPTION
 Repeatedly attempts to completely fill a rectangle with irregularly-shaped
 puzzle pieces.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-identical | \-no-identical
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-identical | \-\-no-identical
 Whether to use identical pieces.
 .TP 8
-.B \-cycles \fInumber\fP
+.B \-\-cycles \fInumber\fP
 Duration.  500 - 5000. Default: 2000.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 10000 (0.01 seconds.).
 .TP 8
-.B \-ncolors \fInumber\fP
+.B \-\-ncolors \fInumber\fP
 Number of Colors.  Default: 64.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -50,6 +54,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 4ab88cdd2518dba5043e77984db9938f8c236a5e..dd9dbbc291c827ed38eed58c6beeb63ab4e9093f 100644 (file)
@@ -3,12 +3,13 @@
 pong \- Pong Home Video Game Emulator
 .SH SYNOPSIS
 .B pong
-[\-display \fIhost:display.screen\fP] [\-foreground \fIcolor\fP]
-[\-background \fIcolor\fP] [\-window] [\-root] [\-mono] [\-install]
-[\-visual \fIvisual\fP]
-[\-clock \fIfloat\fP]
-[\-noise]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP] [\-\-foreground \fIcolor\fP]
+[\-\-background \fIcolor\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-mono] [\-\-install]
+[\-\-visual \fIvisual\fP]
+[\-\-clock \fIfloat\fP]
+[\-\-noise]
+[\-\-fps]
 .SH DESCRIPTION
 The
 .I pong 
@@ -18,32 +19,35 @@ artifacts from displaying it on a color TV set.
 .I pong
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-mono 
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-mono 
 If on a color display, pretend we're on a monochrome display.
 .TP 8
-.B \-install
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-clock
+.B \-\-clock
 The score of the game will be the current time.
 .TP 8
-.B \-noise \fIfloat\fP
+.B \-\-noise \fIfloat\fP
 How noisy the video signal should be (between 0.0 and 4.0 or so).
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .TP 8
-.B (\-p1 | \-p2) \fImode\fP
+.B (\-p1 | \-\-p2) \fImode\fP
 Set a player to either \fIai\fP, \fImouse\fP, \fItablet\fP, \fIkbleft\fP (for W and S), or
 \fIkbright\fP (or just \fIkb\fP, for arrow keys).
 .SH ENVIRONMENT
@@ -55,6 +59,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH X RESOURCES
 Notable X resources supported include the following which correspond
 to standard TV controls:
index daae0f208223a682dac5eac9cfeeee4a3638228e..2b496aad2656b9a46160bd6eaebfb8369f20d80e 100644 (file)
@@ -3,8 +3,10 @@
 pyro \- simulate fireworks
 .SH SYNOPSIS
 .B pyro
-[\-display \fIhost:display.screen\fP] [\-foreground \fIcolor\fP] [\-background \fIcolor\fP] [\-window] [\-root] [\-mono] [\-install] [\-visual \fIvisual\fP] [\-count \fIinteger\fP] [\-frequency \fIinteger\fP] [\-scatter \fIinteger\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP] [\-\-foreground \fIcolor\fP]
+[\-\-background \fIcolor\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-mono] [\-\-install] [\-\-visual \fIvisual\fP] [\-\-count \fIinteger\fP] [\-\-frequency \fIinteger\fP] [\-\-scatter \fIinteger\fP]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIpyro\fP program simulates fireworks, in a way similar to a Macintosh
 program of the same name.
@@ -12,33 +14,36 @@ program of the same name.
 .I pyro
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-mono 
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-mono 
 If on a color display, pretend we're on a monochrome display.
 .TP 8
-.B \-install
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-count \fIinteger\fP
+.B \-\-count \fIinteger\fP
 How many particles should be allowed on the screen at once.  Default 600.
 .TP 8
-.B \-frequency \fIinteger\fP
+.B \-\-frequency \fIinteger\fP
 How often new missiles should launch.  Default 30.
 .TP 8
-.B \-scatter \fIinteger\fP
+.B \-\-scatter \fIinteger\fP
 How many particles should appear when a missile explodes.  Default 100.
 The actual number used is between \fIN\fP and \fIN+(N/2)\fP.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -49,6 +54,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 0f90c8d99fdc5e31127a5f02e17271ea90e18ba3..e77fa7126e00accf80b60309a926fb4fd38330c6 100644 (file)
@@ -3,8 +3,10 @@
 qix \- bounce colored lines around a window
 .SH SYNOPSIS
 .B qix
-[\-display \fIhost:display.screen\fP] [\-foreground \fIcolor\fP] [\-background \fIcolor\fP] [\-window] [\-root] [\-mono] [\-install] [\-visual \fIvisual\fP] [\-segments \fIint\fP] [\-spread \fIpixels\fP] [\-size \fIpixels\fP] [\-count \fIint\fP] [\-color-shift \fIdegrees\fP] [\-delay \fIusecs\fP] [\-random] [\-linear] [\-solid] [\-hollow] [\-xor] [\-no\-xor] [\-transparent] [\-non\-transparent] [\-additive] [\-subtractive] [\-poly \fIint\fP] [\-gravity] [\-no\-gravity]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP] [\-\-foreground \fIcolor\fP]
+[\-\-background \fIcolor\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-mono] [\-\-install] [\-\-visual \fIvisual\fP] [\-\-segments \fIint\fP] [\-\-spread \fIpixels\fP] [\-\-size \fIpixels\fP] [\-\-count \fIint\fP] [\-\-color-shift \fIdegrees\fP] [\-\-delay \fIusecs\fP] [\-\-random] [\-\-linear] [\-\-solid] [\-\-hollow] [\-\-xor] [\-\-no\-xor] [\-\-transparent] [\-\-non\-transparent] [\-\-additive] [\-\-subtractive] [\-\-poly \fIint\fP] [\-\-gravity] [\-\-no\-gravity]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIqix\fP program bounces a series of line segments around its window.
 This is truly the swiss army chainsaw of qix programs.  If you know of one
@@ -13,98 +15,101 @@ with more display modes, I want to know about it.
 .I qix
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-mono 
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-mono 
 If on a color display, pretend we're on a monochrome display.
 .TP 8
-.B \-install
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-segments \fIinteger\fP
+.B \-\-segments \fIinteger\fP
 How many line segments should be drawn.  Default 50.
 .TP 8
-.B \-spread \fIinteger\fP
+.B \-\-spread \fIinteger\fP
 How far apart the endpoints of one segment should be from the next.
 Default 8.
 .TP 8
-.B \-size \fIinteger\fP
+.B \-\-size \fIinteger\fP
 The maximum distance one endpoint of a segment is allowed to be from
 the opposite end of that segment.  Default 0, meaning unlimited.
 .TP 8
-.B \-count \fIinteger\fP
+.B \-\-count \fIinteger\fP
 How many qixes to draw.  Default 1.
 .TP 8
-.B \-color\-shift \fIdegrees\fP
+.B \-\-color\-shift \fIdegrees\fP
 If on a color display, the color of the line segments will cycle through
 the spectrum.  This specifies how far the hue of each segment should be
 from the next, in degrees on the HSV wheel.  Default 3.
 .TP 8
-.B \-delay \fImicroseconds\fP
+.B \-\-delay \fImicroseconds\fP
 How much of a delay should be introduced between steps of the animation.
 Default 10000, or about 0.01 seconds.
 .TP 8
-.B \-random
+.B \-\-random
 The \fIqix\fP will wander around the screen semi-randomly.  This is the
 default.
 .TP 8
-.B \-linear
-The opposite of \fI\-random\fP: the \fIqix\fP will travel in straight lines
+.B \-\-linear
+The opposite of \fI\-\-random\fP: the \fIqix\fP will travel in straight lines
 until it reaches a wall, and then it will bounce.
 .TP 8
-.B \-solid
+.B \-\-solid
 If this is specified, then the area between the line segments will be filled
 in with the appropriate color, instead of the \fIqix\fP simply being composed
 of one-pixel-wide line segments.  This option looks really good in color.
 .TP 8
-.B \-hollow
-The opposite of \fI\-solid\fP; this is the default.
+.B \-\-hollow
+The opposite of \fI\-\-solid\fP; this is the default.
 .TP 8
-.B \-xor
+.B \-\-xor
 If this is specified, then qix segments will be drawn and erased with xor,
 instead of being drawn in some color and erased in the background color.
-This implies \fI\-mono\fP, in that only two colors can be used.
+This implies \fI\-\-mono\fP, in that only two colors can be used.
 .TP 8
-.B \-transparent
-If this is specified, and \fI\-count\fP is greater than 1, then each qix
+.B \-\-transparent
+If this is specified, and \fI\-\-count\fP is greater than 1, then each qix
 will be drawn in one color, and when they overlap, the colors will be mixed.
-This looks best in conjunction with \fI\-solid\fP.
+This looks best in conjunction with \fI\-\-solid\fP.
 .TP 8
-.B \-non\-transparent
-Turns off \fI\-transparent\fP.
+.B \-\-non\-transparent
+Turns off \fI\-\-transparent\fP.
 .TP 8
-.B \-additive
-If \fI\-transparent\fP is specified, then this option means that the colors
+.B \-\-additive
+If \fI\-\-transparent\fP is specified, then this option means that the colors
 will be mixed using an additive color model, as if the qixes were projected
 light.  This is the default.
 .TP 8
-.B \-subtractive
-If \fI\-transparent\fP is specified, then this option means that the
+.B \-\-subtractive
+If \fI\-\-transparent\fP is specified, then this option means that the
 colors will be mixed using a subtractive color model, as if the qixes were
 translucent filters.
 .TP 8
-.B \-poly \fIint\fP
+.B \-\-poly \fIint\fP
 How many vertices each qix-line should have: the default is 2, meaning the
 traditional qix line shape.  Three will yield triangles, and so on.
 .TP 8
-.B \-gravity
+.B \-\-gravity
 .TP 8
-.B \-no\-gravity
+.B \-\-no\-gravity
 Whether there should be downward attraction.  For example, the
 options
-.B \-gravity \-linear
+.B \-\-gravity \-\-linear
 will make everything move in nice smooth parabolas.
 Gravity is off by default.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -115,6 +120,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
@@ -129,4 +137,4 @@ express or implied warranty.
 .SH AUTHOR
 Jamie Zawinski <jwz@jwz.org>, 13-aug-92.
 
-Thanks to Ariel Scolnicov for the \-poly and \-gravity options.
+Thanks to Ariel Scolnicov for the \-\-poly and \-\-gravity options.
index 690865ff87e0be0a400a6ebce2429c934e611e08..824ad86b181fb0bf6688b404edd81104a1e1902f 100644 (file)
@@ -3,12 +3,13 @@
 rd-bomb \- reaction/diffusion textures
 .SH SYNOPSIS
 .B rd-bomb
-[\-display \fIhost:display.screen\fP] [\-foreground \fIcolor\fP]
-[\-background \fIcolor\fP] [\-window] [\-root] [\-install]
-[\-visual \fIvisual\fP] [\-width \fIn\fP] [\-height \fIn\fP]
-[\-reaction \fIn\fP] [\-diffusion \fIn\fP]
-[\-size \fIf\fP] [\-speed \fIf\fP] [\-delay \fImillisecs\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP] [\-\-foreground \fIcolor\fP]
+[\-\-background \fIcolor\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-install]
+[\-\-visual \fIvisual\fP] [\-\-width \fIn\fP] [\-\-height \fIn\fP]
+[\-\-reaction \fIn\fP] [\-\-diffusion \fIn\fP]
+[\-\-size \fIf\fP] [\-\-speed \fIf\fP] [\-\-delay \fImillisecs\fP]
+[\-\-fps]
 .SH DESCRIPTION
 
 The \fIrd-bomb\fP program draws reaction/diffusion textures.
@@ -22,47 +23,50 @@ Be sure to try "-speed 1 -size 0.1 -epoch 3000".
 .I rd-bomb
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-install
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-width \fIn\fP
+.B \-\-width \fIn\fP
 .TP 8
-.B \-height \fIn\fP
+.B \-\-height \fIn\fP
 Specify the size of the tile, in pixels.
 .TP 8
-.B \-reaction \fIn\fP
+.B \-\-reaction \fIn\fP
 .TP 8
-.B \-diffusion \fIn\fP
+.B \-\-diffusion \fIn\fP
 These are constants in the equations that effect its visual nature.
 Each may be one of 0, 1, or 2. Default is -1: these constants are
 chosen randomly.
 .TP 8
-.B \-radius \fIn\fP
+.B \-\-radius \fIn\fP
 Size of the seed.
 .TP 8
-.B \-size \fIf\fP
+.B \-\-size \fIf\fP
 What fraction of the window is actively drawn, a floating point number
 between 0 (exclusive) and 1 (inclusive).  Default is 1.0.
 .TP 8
-.B \-speed \fIf\fP
+.B \-\-speed \fIf\fP
 When a fraction of the screen is active, the active area moves at this
 rate (a floating point number).  Default is zero.  Suggested value: 1.0.
 .TP 8
-.B \-delay \fImillisecs\fP
+.B \-\-delay \fImillisecs\fP
 How many milliseconds to delay between frames; default 1, or 
 about 1/1000th of a second.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH HISTORY
 The code is derived from the 'd' mode of the "Bomb" visual musical
@@ -81,6 +85,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1),
index d0ef84c8a93ac5978d1d1fc4f2f1ec719e0430ba..7c70e011ff572a4519af696fa5ea5a9f205de268 100644 (file)
 #endif
 
 #ifdef HAVE_GDK_PIXBUF
-# include <gdk-pixbuf-xlib/gdk-pixbuf-xlib.h>
-#endif /* HAVE_GDK_PIXBUF */
+# include <gdk-pixbuf/gdk-pixbuf.h>
+# ifdef HAVE_GDK_PIXBUF_XLIB
+#  include <gdk-pixbuf-xlib/gdk-pixbuf-xlib.h>
+# endif
+#endif
 
 #if (__GNUC__ >= 4)
 # pragma GCC diagnostic pop
@@ -164,7 +167,9 @@ screenhack_record_anim_init (Screen *screen, Window window, int target_frames)
   if (st->fade_frames >= (st->target_frames / 2) - st->fps)
     st->fade_frames = 0;
 
-# ifdef HAVE_GDK_PIXBUF
+# ifdef HAVE_GDK_PIXBUF_XLIB
+  /* Aug 2022: nothing seems to go wrong if we don't do this?
+     gtk-2.24.33, gdk-pixbuf 2.42.8. */
   {
     Window root;
     int x, y;
@@ -176,9 +181,7 @@ screenhack_record_anim_init (Screen *screen, Window window, int target_frames)
     g_type_init();
 #  endif
   }
-# else  /* !HAVE_GDK_PIXBUF */
-#  error GDK_PIXBUF is required
-# endif /* !HAVE_GDK_PIXBUF */
+# endif /* !HAVE_GDK_PIXBUF_XLIB */
 
   XGetWindowAttributes (dpy, st->window, &st->xgwa);
 
index ec77796eddfef40804c2ba13bd8c574ac0440934..ba1aa977ac1b9891b84d8c578f445806661c3d72 100644 (file)
@@ -3,74 +3,78 @@
 ripples \- interference patterns.
 .SH SYNOPSIS
 .B ripples
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-duration \fIsecs\fP]
-[\-rate \fInumber\fP]
-[\-fluidity \fInumber\fP]
-[\-light \fInumber\fP]
-[\-water]
-[\-stir]
-[\-oily]
-[\-grayscale]
-[\-colors \fInumber\fP]
-[\-no-shm]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-duration \fIsecs\fP]
+[\-\-rate \fInumber\fP]
+[\-\-fluidity \fInumber\fP]
+[\-\-light \fInumber\fP]
+[\-\-water]
+[\-\-stir]
+[\-\-oily]
+[\-\-grayscale]
+[\-\-colors \fInumber\fP]
+[\-\-no-shm]
+[\-\-fps]
 .SH DESCRIPTION
 This draws rippling interference patterns like splashing water. With the
 -water option, it manipulates your desktop image to look like something is
 dripping into it.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 50000 (0.05 seconds.).
 .TP 8
-.B \-duration \fIseconds\fP
+.B \-\-duration \fIseconds\fP
 How long to run before loading a new image.  Default 120 seconds.
 .TP 8
-.B \-rate \fInumber\fP
+.B \-\-rate \fInumber\fP
 Drizzle.  1 - 100.  Default: 5.
 .TP 8
-.B \-fluidity \fInumber\fP
+.B \-\-fluidity \fInumber\fP
 Small Drops.  0 - 16.  Default: 6.
 .TP 8
-.B \-light \fInumber\fP
+.B \-\-light \fInumber\fP
 Lighting Effect.  0 - 8.  Default: 0.
 .TP 8
-.B \-water | \-no-water
+.B \-\-water | \-\-no-water
 Grab Screen Image.  Boolean.
 .TP 8
-.B \-stir | \-no-stir
+.B \-\-stir | \-\-no-stir
 Moving Splashes.  Boolean.
 .TP 8
-.B \-oily | \-no-oily
+.B \-\-oily | \-\-no-oily
 Psychedelic Colors.  Boolean.
 .TP 8
-.B \-grayscale
+.B \-\-grayscale
 Convert the screen image to grayscale.
 Ignored if we don't grab the screen image or if our screen doesn't have
 enough color depth.
 .TP 8
-.B \-colors \fInumber\fP
+.B \-\-colors \fInumber\fP
 Colors Two.  Default: 200.
 .TP 8
-.B \-shm | \-no-shm
+.B \-\-shm | \-\-no-shm
 Use Shared Memory.  Boolean.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -81,6 +85,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 0cdf264c80edb9a074cb8c0f45d3862881e29093..a07165db9bf57a52b3926e0377a3c897b66f16f9 100644 (file)
@@ -3,8 +3,10 @@
 rocks \- animation of flying through an asteroid field
 .SH SYNOPSIS
 .B rocks
-[\-display \fIhost:display.screen\fP] [\-foreground \fIcolor\fP] [\-background \fIcolor\fP] [\-window] [\-root] [\-mono] [\-ncolors \fIn\fP] [\-install] [\-visual \fIvisual\fP] [\-count \fIinteger\fP] [\-delay \fIusecs\fP] [\-speed \fIinteger\fP] [\-norotate] [\-nomove] [\-3d]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP] [\-\-foreground \fIcolor\fP]
+[\-\-background \fIcolor\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-mono] [\-\-ncolors \fIn\fP] [\-\-install] [\-\-visual \fIvisual\fP] [\-\-count \fIinteger\fP] [\-\-delay \fIusecs\fP] [\-\-speed \fIinteger\fP] [\-\-norotate] [\-\-nomove] [\-3d]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIrocks\fP program draws an animation of an asteroid field moving past
 the observer (or vice versa).  Sometimes the observer picks up spin on Z axis.
@@ -12,49 +14,52 @@ the observer (or vice versa).  Sometimes the observer picks up spin on Z axis.
 .I rocks
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-mono
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-mono
 Make all the rocks the same color.
 .TP 8
-.B \-ncolors colors
+.B \-\-ncolors colors
 How many different colors to use.  Default 5.  Colors are chosen randomly.
 .TP 8
-.B \-install
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-count \fIinteger\fP
+.B \-\-count \fIinteger\fP
 Maximum number of rocks to draw on the screen at once.  Default 100.
 .TP 8
-.B \-speed \fIinteger\fP
+.B \-\-speed \fIinteger\fP
 A measure of the speed with which the observer and the rocks pass each other,
 from 1 to 100.  Default 100, meaning ``very fast.''  If you're on a slow 
 display connection (the animation looks jerky) then try making this number 
 smaller, and/or decreasing the number of rocks.
 .TP 8
-.B \-delay \fImicroseconds\fP
+.B \-\-delay \fImicroseconds\fP
 Number of microseconds to delay between each frame.  Default 50000, meaning
-about 1/20th second.  Compare and contrast with \fI\-speed\fP, above.
+about 1/20th second.  Compare and contrast with \fI\-\-speed\fP, above.
 .TP 8
-.B \-norotate
+.B \-\-norotate
 Don't rotate the observer; just fly through the field on the level.
 .TP 8
-.B \-nomove
+.B \-\-nomove
 Don't turn the observer; just fly straight ahead through the field.
 .TP 8
 .B \-3d
 Do red/blue 3d separations: if you look at the screen with 3d glasses,
 the rocks will be \fIjumping\fP right \fIout\fP at you.  Oooooh, scaaary!
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -65,6 +70,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 03b27e733bff42eabcd36dbd00e4f67175bb853c..68c65dad16529326346f0da2e15ea3466e14d286 100644 (file)
@@ -3,8 +3,10 @@
 rorschach \- simulate ink-blot patterns
 .SH SYNOPSIS
 .B rorschach
-[\-display \fIhost:display.screen\fP] [\-foreground \fIcolor\fP] [\-background \fIcolor\fP] [\-window] [\-root] [\-mono] [\-install] [\-visual \fIvisual\fP] [\-iterations \fIinteger\fP] [\-offset \fIinteger\fP] [\-xsymmetry] [\-ysymmetry] [\-erase\-speed \fIusecs\fP] [\-delay \fIsecs\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP] [\-\-foreground \fIcolor\fP]
+[\-\-background \fIcolor\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-mono] [\-\-install] [\-\-visual \fIvisual\fP] [\-\-iterations \fIinteger\fP] [\-\-offset \fIinteger\fP] [\-\-xsymmetry] [\-\-ysymmetry] [\-\-erase\-speed \fIusecs\fP] [\-\-delay \fIsecs\fP]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIrorschach\fP program draws random patterns reminiscent of the
 psychological test of same name.
@@ -12,42 +14,45 @@ psychological test of same name.
 .I rorschach
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-mono 
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-mono 
 If on a color display, pretend we're on a monochrome display.
 .TP 8
-.B \-install
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-iterations \fIinteger\fP
+.B \-\-iterations \fIinteger\fP
 How many dots should be drawn each time.  Default 4000.
 .TP 8
-.B \-offset \fIinteger\fP
+.B \-\-offset \fIinteger\fP
 How far apart the dots should be.  Default 4 pixels.
 .TP 8
-.B \-xsymmetry
+.B \-\-xsymmetry
 Whether the images should be horizontally symmetrical.  Default true.
 .TP 8
-.B \-ysymmetry
+.B \-\-ysymmetry
 Whether the images should be vertically symmetrical.  Default false.
 .TP 8
-.B \-erase\-speed \fIusecs\fP
+.B \-\-erase\-speed \fIusecs\fP
 This controls the speed at which the screen will be erased. (Delay between
 erasing of individual lines.)
 .TP 8
-.B \-delay \fIseconds\fP
+.B \-\-delay \fIseconds\fP
 This sets the number of seconds that the figure will be on the screen.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -58,6 +63,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH BUGS
 May call your sanity into question.
 .SH SEE ALSO
index 75c79b5eb84d46f8a2f64dabe36e1cfc486c4082..2d1d1b870f8ffa9ee648db1a4b76ce30d6e00c7b 100644 (file)
@@ -3,46 +3,50 @@
 rotor \- screen saver.
 .SH SYNOPSIS
 .B rotor
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-count \fInumber\fP]
-[\-cycles \fInumber\fP]
-[\-delay \fInumber\fP]
-[\-ncolors \fInumber\fP]
-[\-size \fInumber\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-count \fInumber\fP]
+[\-\-cycles \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-ncolors \fInumber\fP]
+[\-\-size \fInumber\fP]
+[\-\-fps]
 .SH DESCRIPTION
 This draws a line segment moving along a complex spiraling curve.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-count \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-count \fInumber\fP
 Count. 0 - 20.  Default: 4.
 .TP 8
-.B \-cycles \fInumber\fP
+.B \-\-cycles \fInumber\fP
 Length.  2 - 100.  Default: 20.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 10000 (0.01 seconds.).
 .TP 8
-.B \-ncolors \fInumber\fP
+.B \-\-ncolors \fInumber\fP
 Number of Colors.  Default: 200.
 .TP 8
-.B \-size \fInumber\fP
+.B \-\-size \fInumber\fP
 Size.  -50 - 50.  Default: -6.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -53,6 +57,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index bbf900d014438f0e94fb9aa314afd1a22b85ed93..fd022c7361a797714af941ad5de3033136192e07 100644 (file)
@@ -3,14 +3,15 @@
 rotzoomer \- animated rotations and scalings of portions of the screen
 .SH SYNOPSIS
 .B rotzoomer
-[\-display \fIhost:display.screen\fP]
-[\-move | \-no\-move]
-[\-delay \fImillisecs\fP]
-[\-duration \fIsecs\fP]
-[\-n \fIcount\fP]
-[\-shm | \-no\-shm]
-[\-window] [\-root] [\-install] [\-visual \fIvisual\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-move | \-\-no\-move]
+[\-\-delay \fImillisecs\fP]
+[\-\-duration \fIsecs\fP]
+[\-\-n \fIcount\fP]
+[\-\-shm | \-\-no\-shm]
+[\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-install] [\-\-visual \fIvisual\fP]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIrotzoomer\fP program grabs an image, then picks
 rectangles and draws scaled and rotated animations of that 
@@ -28,39 +29,42 @@ for more details.
 .I rotzoomer
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-install
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-delay \fImilliseconds\fP
+.B \-\-delay \fImilliseconds\fP
 How much of a delay should be introduced between steps of the animation.
 Default 10, or about 1/100th second.
 .TP 8
-.B \-duration \fIseconds\fP
+.B \-\-duration \fIseconds\fP
 How long to run before loading a new image.  Default 120 seconds.
 .TP 8
-.B \-move
+.B \-\-move
 Make the rectangles should wander around the screen.
 .TP 8
-.B \-no\-move
+.B \-\-no\-move
 Make the rectangles be stationary.  This is the default.
 .TP 8
-.B \-n \fIcount\fP
+.B \-\-n \fIcount\fP
 How many rectangles to animate simultaneously.  Default 2.
 .TP 8
-.B \-no\-shm
+.B \-\-no\-shm
 Disable use of the SHM extension, even if it appears to be available.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -71,6 +75,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1),
index 30bf2178ad4961b000e8bd9cb89f4efb1b895215..56deb52f873deade5d0a270fc7d1e047b507ae7c 100644 (file)
@@ -3,55 +3,59 @@
 scooter \- shows a journey through space tunnel and stars
 .SH SYNOPSIS
 .B scooter
-[\-display \fIhost:display.screen\fP]
-[\-mono]
-[\-delay \fImillisecs\fP]
-[\-cycles \fIcycles\fP]
-[\-count \fIcount\fP]
-[\-size \fIsize\fP]
-[\-ncolors \fIcolors\fP]
-[\-window] [\-root] [\-install | \-noinstall] [\-visual \fIvisual\fP]
-[\-fps | \-no\-fps]
-[\-pair]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-mono]
+[\-\-delay \fImillisecs\fP]
+[\-\-cycles \fIcycles\fP]
+[\-\-count \fIcount\fP]
+[\-\-size \fIsize\fP]
+[\-\-ncolors \fIcolors\fP]
+[\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-install | \-\-noinstall] [\-\-visual \fIvisual\fP]
+[\-\-fps | \-\-no\-fps]
+[\-\-pair]
 .SH DESCRIPTION
 \fIscooter\fP is a screensaver that shows endless journey through space tunnel and stars.
 .SH OPTIONS
 .I scooter
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-install
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-delay \fImilliseconds\fP
+.B \-\-delay \fImilliseconds\fP
 How much of a delay should be introduced between steps of the animation.
 Default 10, or about 1/100th second.
 .TP 8
-.B \-cycles \fIcycles\fP
+.B \-\-cycles \fIcycles\fP
 How fast/slow the screensaver is. \fIcycles\fP takes number of cycles. The default is 5 cycles.
 .TP 8
-.B \-count \fIcount\fP
+.B \-\-count \fIcount\fP
 Specifies how many doors in a tunnel can be rendered. Minimum is 4. Default is 24.
 .TP 8
-.B \-size \fIsize\fP
+.B \-\-size \fIsize\fP
 Specifies how many stars outside the tunnel can be rendered. Default is 100.
 .TP 8
-.B \-ncolors \fIcolors\fP
-Specifies number of colors. A number that is less than or equals 2 means monochrome. \-mono achieves the same thing.
+.B \-\-ncolors \fIcolors\fP
+Specifies number of colors. A number that is less than or equals 2 means monochrome. \-\-mono achieves the same thing.
 .TP 8
-.B \-pair
+.B \-\-pair
 Start screensaver in pairs (Not recommended)
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -62,6 +66,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1),
index 14ec48b44d69e5eb8cc8ed9a9211b2d117122d5a..4048f62c446a2e4fbe396eace6c80ba9fe3991f3 100644 (file)
@@ -1,4 +1,4 @@
-/* xscreensaver, Copyright (c) 1992-2021 Jamie Zawinski <jwz@jwz.org>
+/* xscreensaver, Copyright © 1992-2022 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
         of your screen saver module.  See .../hacks/config/README for details.
  */
 
+
+/* Flow of control for the "screenhack" API:
+
+      main
+      xscreensaver_function_table->setup_cb => none
+      XtAppInitialize
+      pick_visual
+      init_window
+      run_screenhack_table (loops forever)
+      !  xscreensaver_function_table.init_cb => HACK_init (once)
+         usleep_and_process_events
+      !    xscreensaver_function_table.event_cb => HACK_event
+      !  xscreensaver_function_table.draw_cb => HACK_draw
+
+   The "xlockmore" API (which is also the OpenGL API) acts like a screenhack
+   but then adds another layer underneath that, before eventually running the
+   hack's methods.  Flow of control for the "xlockmore" API:
+
+      main
+      + xscreensaver_function_table->setup_cb => xlockmore_setup (opt handling)
+      XtAppInitialize
+      pick_visual
+      init_window
+      run_screenhack_table (loops forever)
+      !  xscreensaver_function_table.init_cb => xlockmore_init (once)
+         usleep_and_process_events
+      !    xscreensaver_function_table.event_cb => xlockmore_event
+      +      xlockmore_function_table.hack_handle_events => HACK_handle_event
+      !  xscreensaver_function_table.draw_cb => xlockmore_draw
+      +    xlockmore_function_table.hack_init => init_HACK
+      +      init_GL (eglCreateContext or glXCreateContext)
+      +    xlockmore_function_table.hack_draw => draw_HACK
+ */
+
 #define DEBUG_PAIR
 
 #include <stdio.h>
@@ -329,8 +363,8 @@ pick_visual (Screen *screen)
 
 
 /* Notice when the user has requested a different visual or colormap
-   on a pre-existing window (e.g., "-root -visual truecolor" or
-   "-window-id 0x2c00001 -install") and complain, since when drawing
+   on a pre-existing window (e.g., "--root --visual truecolor" or
+   "--window-id 0x2c00001 --install") and complain, since when drawing
    on an existing window, we have no choice about these things.
  */
 static void
@@ -351,9 +385,9 @@ visual_warning (Screen *screen, Window window, Visual *visual, Colormap cmap,
     sprintf (win, "window 0x%lx", (unsigned long) window);
 
   if (window_p)
-    sprintf (why, "-window-id 0x%lx", (unsigned long) window);
+    sprintf (why, "--window-id 0x%lx", (unsigned long) window);
   else
-    strcpy (why, "-root");
+    strcpy (why, "--root");
 
   if (visual_string && *visual_string)
     {
index 7c38b4cb0812c21759249045293e4adc553d0e90..30026e50cd638583e57ec5b1d4b1849495709ef4 100644 (file)
@@ -3,43 +3,47 @@
 shadebobs \- oscillating vapor trails.
 .SH SYNOPSIS
 .B shadebobs
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-ncolors \fInumber\fP]
-[\-count \fInumber\fP]
-[\-delay \fInumber\fP]
-[\-cycles \fInumber\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-ncolors \fInumber\fP]
+[\-\-count \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-cycles \fInumber\fP]
+[\-\-fps]
 .SH DESCRIPTION
 This draws smoothly-shaded oscillating oval patterns, that look something
 like vapor trails or neon tubes.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-ncolors \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-ncolors \fInumber\fP
 Number of Colors.  Default: 64.
 .TP 8
-.B \-count \fInumber\fP
+.B \-\-count \fInumber\fP
 Count. 0 - 20.  Default: 4.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 5000 (0.005 seconds.).
 .TP 8
-.B \-cycles \fInumber\fP
+.B \-\-cycles \fInumber\fP
 Duration.  0 - 100.  Default: 10.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -50,6 +54,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index ce31b002d38471fd6ebe4aa54989bef3efd08495..4fe5dc4520a8d86e655698eb88512d840b36ca15 100644 (file)
@@ -3,42 +3,47 @@
 sierpinski \- draws Sierpinski triangle fractals
 .SH SYNOPSIS
 .B sierpinski
-[\-display \fIhost:display.screen\fP] [\-foreground \fIcolor\fP] [\-background \fIcolor\fP] [\-window] [\-root] [\-mono] [\-install] [\-visual \fIvisual\fP] [\-ncolors \fIinteger\fP] [\-delay \fImicroseconds\fP] [\-cycles \fIinteger\fP] [\-count \fIinteger\fP]
+[\-\-display \fIhost:display.screen\fP] [\-\-foreground \fIcolor\fP]
+[\-\-background \fIcolor\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-mono] [\-\-install] [\-\-visual \fIvisual\fP] [\-\-ncolors \fIinteger\fP] [\-\-delay \fImicroseconds\fP] [\-\-cycles \fIinteger\fP] [\-\-count \fIinteger\fP]
 
-[\-fps]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIsierpinski\fP program draws Sierpinski triangle fractals.
 .SH OPTIONS
 .I sierpinski
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-mono 
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-mono 
 If on a color display, pretend we're on a monochrome display.
 .TP 8
-.B \-install
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-ncolors \fIinteger\fP
+.B \-\-ncolors \fIinteger\fP
 How many colors should be used (if possible).  Default 64.
 The colors are chosen randomly.
 .TP 8
-.B \-cycles \fIinteger\fP
+.B \-\-cycles \fIinteger\fP
 
 .TP 8
-.B \-count \fIinteger\fP
+.B \-\-count \fIinteger\fP
 
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -49,6 +54,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1),
index 69030ac5f0755bcab2987bc0ad64a4aa905fb12a..2d5db39315e87d52354fd504dc3cc73543a56007 100644 (file)
@@ -3,19 +3,20 @@
 slidescreen \- permute the screen image like an 8-puzzle
 .SH SYNOPSIS
 .B slidescreen
-[\-display \fIhost:display.screen\fP]
-[\-background \fIcolor\fP]
-[\-grid-size \fIpixels\fP]
-[\-ibw \fIpixels\fP]
-[\-increment \fIpixels\fP]
-[\-delay \fIusecs\fP]
-[\-delay2 \fIusecs\fP]
-[\-duration \fIsecs\fP]
-[\-window]
-[\-root]
-[\-install]
-[\-visual \fIvisual\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-background \fIcolor\fP]
+[\-\-grid-size \fIpixels\fP]
+[\-\-ibw \fIpixels\fP]
+[\-\-increment \fIpixels\fP]
+[\-\-delay \fIusecs\fP]
+[\-\-delay2 \fIusecs\fP]
+[\-\-duration \fIsecs\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-install]
+[\-\-visual \fIvisual\fP]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIslidescreen\fP program takes an image, divides it into
 a grid, deletes a random square of that grid, and then randomly slides 
@@ -33,43 +34,46 @@ for more details.
 .I slidescreen
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-install
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-grid-size \fIpixels\fP
+.B \-\-grid-size \fIpixels\fP
 The size of the grid cells.  Default 70 pixels.
 .TP 8
-.B \-ibw \fIpixels\fP
+.B \-\-ibw \fIpixels\fP
 The size of the "gutter" between grid cells.  Default 4 pixel.
 .TP 8
-.B \-increment \fIpixels\fP
+.B \-\-increment \fIpixels\fP
 How many pixels by which a piece should be moved when sliding to a new 
 location.  Default 10 pixels.
 .TP 8
-.B \-delay \fImicroseconds\fP
+.B \-\-delay \fImicroseconds\fP
 How much of a delay should be introduced between steps of the animation of
 the motion of each segment.  Default 50000, which is 0.05 seconds.  This
-is closely related to the \fI\-increment\fP parameter.
+is closely related to the \fI\-\-increment\fP parameter.
 .TP 8
-.B \-delay2 \fImicroseconds\fP
+.B \-\-delay2 \fImicroseconds\fP
 How much of a delay should be introduced between the end of the motion of
 one segment and the beginning of the motion of another.  Default 1000000,
 which is one second.
 .TP 8
-.B \-duration \fIseconds\fP
+.B \-\-duration \fIseconds\fP
 How long to run before loading a new image.  Default 120 seconds.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -80,6 +84,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1),
index 154420933da5dbcce544af7f86ef996a7d877be0..af2aa38e1650c1232211f6048cff1d2104395697 100644 (file)
@@ -3,12 +3,13 @@
 slip \- sucks your screen into a jet engine
 .SH SYNOPSIS
 .B slip
-[\-display \fIhost:display.screen\fP] [\-foreground \fIcolor\fP]
-[\-background \fIcolor\fP] [\-window] [\-root] [\-mono] [\-install]
-[\-visual \fIvisual\fP] [\-ncolors \fIinteger\fP]
-[\-iterations \fIinteger\fP] [\-points \fIinteger\fP]
-[\-delay \fImicroseconds\fP] [\-delay2 \fImicroseconds\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP] [\-\-foreground \fIcolor\fP]
+[\-\-background \fIcolor\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-mono] [\-\-install]
+[\-\-visual \fIvisual\fP] [\-\-ncolors \fIinteger\fP]
+[\-\-iterations \fIinteger\fP] [\-\-points \fIinteger\fP]
+[\-\-delay \fImicroseconds\fP] [\-\-delay2 \fImicroseconds\fP]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIslip\fP program does lots of blits and chews up an image.
 
@@ -24,38 +25,41 @@ for more details.
 .I slip
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-mono 
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-mono 
 If on a color display, pretend we're on a monochrome display.
 .TP 8
-.B \-install
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-ncolors \fIinteger\fP
+.B \-\-ncolors \fIinteger\fP
 How many colors should be used (if possible).  Default 200.
 The colors used cycle through the hue, making N stops around 
 the color wheel.
 .TP 8
-.B \-count \fIinteger\fP
+.B \-\-count \fIinteger\fP
 How many whooziwhatsis to generate.  Default 35.
 .TP 8
-.B \-cycles \fIinteger\fP
+.B \-\-cycles \fIinteger\fP
 How long to frobnicate.  Default 50.
 .TP 8
-.B \-delay \fImicroseconds\fP
+.B \-\-delay \fImicroseconds\fP
 How long we should wait between drawing each step.  Default 50000,
 or about 1/20th second.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -66,6 +70,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1),
index c386a33f2045846c0d34d7435c5d4827c09dbf12..d806fe37fd69e2fe8f81ee22fffcd7316abde0a1 100644 (file)
@@ -3,11 +3,41 @@
 speedmine \- simulates speeding down a rocky mineshaft, or a funky dancing worm
 .SH SYNOPSIS
 .B speedmine 
-[\-display \fIhost:display.screen\fP] [\-root] [\-window]
-[\-install] [\-noinstall] [\-visual \fIvisual\fP] [\-wire] [\-nowire]
-[\-worm]
-[\-foreground \fIcolor\fP] [\-background \fIcolor\fP] [\-darkground \fIcolor\fP] [\-lightground \fIcolor\fP] [\-tunnelend \fIcolor\fP] [\-delay \fImicroseconds\fP] [\-maxspeed \fInumber\fP] [\-thrust \fInumber\fP] [\-gravity \fInumber\fP] [\-vertigo \fInumber\fP] [\-terrain] [\-noterrain] [\-smoothness \fInumber\fP] [\-curviness \fInumber\fP] [\-twistiness \fInumber\fP] [\-widening] [\-nowidening] [\-bumps] [\-nobumps] [\-bonuses] [\-crosshair] [\-nocrosshair] [\-psychedelic] [\-nopsychedelic]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-root]
+[\-\-window]
+[\-\-window\-id \fInumber\fP]
+[\-\-install]
+[\-\-noinstall]
+[\-\-visual \fIvisual\fP]
+[\-\-wire]
+[\-\-nowire]
+[\-\-worm]
+[\-\-foreground \fIcolor\fP]
+[\-\-background \fIcolor\fP]
+[\-\-darkground \fIcolor\fP]
+[\-\-lightground \fIcolor\fP]
+[\-\-tunnelend \fIcolor\fP]
+[\-\-delay \fImicroseconds\fP]
+[\-\-maxspeed \fInumber\fP]
+[\-\-thrust \fInumber\fP]
+[\-\-gravity \fInumber\fP]
+[\-\-vertigo \fInumber\fP]
+[\-\-terrain]
+[\-\-noterrain]
+[\-\-smoothness \fInumber\fP]
+[\-\-curviness \fInumber\fP]
+[\-\-twistiness \fInumber\fP]
+[\-\-widening]
+[\-\-nowidening]
+[\-\-bumps]
+[\-\-nobumps]
+[\-\-bonuses]
+[\-\-crosshair]
+[\-\-nocrosshair]
+[\-\-psychedelic]
+[\-\-nopsychedelic]
+[\-\-fps]
 .SH DESCRIPTION
 .TP 8
 Speedmine!
@@ -34,24 +64,27 @@ You can configure stuff
 either with command-line options or X resources.
 .SH OPTIONS
 .TP 8
-.B \-display \fIhost:display.screen\fP
+.B \-\-display \fIhost:display.screen\fP
 Specifies which X display we should use (see the section DISPLAY NAMES in
 .BR X (1)
 for more information about this option).
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-window
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-install
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-noinstall
+.B \-\-noinstall
 Don't install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual
 class, or the id number (decimal or hex) of a specific visual.
 Possible choices include
@@ -65,49 +98,49 @@ If a decimal or hexadecimal number is used,
 is consulted to obtain the required visual.
 .RE
 .TP 8
-.B \-worm
+.B \-\-worm
 Be a happy spastic worm instead of a tunnel.
 .TP 8
-.B \-wire
+.B \-\-wire
 Specifies that the tunnel/worm should always be rendered in wireframe style.
 .TP 8
-.B \-nowire
+.B \-\-nowire
 Specifies that the tunnel/worm should be rendered normally. Note that 
 tunnel rendering may still temporarily switch to wireframe style when 
 a wireframe bonus is hit, if
 .B bonuses
 are enabled.
 .TP 8
-.B \-foreground \fIcolor\fP
+.B \-\-foreground \fIcolor\fP
 Specifies the default foreground color.
 .TP 8
-.B \-background \fIcolor\fP
+.B \-\-background \fIcolor\fP
 Specifies the default background color.
 .TP 8
-.B \-darkground \fIcolor\fP
+.B \-\-darkground \fIcolor\fP
 Specifies the color of the darkest portions of the ground (or the
 worm's belly.)  The ground/belly is colored by a gradient between
 .B darkground
 and
 .B lightground.
 .TP 8
-.B \-lightground \fIcolor\fP
+.B \-\-lightground \fIcolor\fP
 Specifies the color of the lightest portions of the ground/belly. 
 The ground/belly is colored by a gradient between
 .B darkground
 and
 .B lightground.
 .TP 8
-.B \-tunnelend \fIcolor\fP
+.B \-\-tunnelend \fIcolor\fP
 Specifies the color of the light at the end of the tunnel.
 .TP 8
-.B \-delay \fImicroseconds\fP
+.B \-\-delay \fImicroseconds\fP
 Specifies the delay between drawing successive frames. If you do not specify 
 .BR -sync ,
 some X servers may batch up several drawing operations together,
 producing a less smooth effect.   This is more likely to happen 
 in monochrome mode (on monochrome servers or when 
-.B \-mono 
+.B \-\-mono 
 is specified).
 .TP 8
 .B -maxspeed \fInumber\fP
@@ -185,7 +218,7 @@ rainbow of colours.
 Specifies that a normal colormap should be used, with muted walls and a
 grey road.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH WARNING
 Speedworm is a trained professional. Do not try this at home.
@@ -196,6 +229,21 @@ and
 .B vertigo
 above the defaults may have short-term psychological side effects including
 hyperactivity and attention deficiency.
+.SH ENVIRONMENT
+.PP
+.TP 8
+.B DISPLAY
+to get the default host and display number.
+.TP 8
+.B XENVIRONMENT
+to get the name of a resource file that overrides the global resources
+stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
+.SH SEE ALSO
+.BR X (1),
+.BR xscreensaver (1)
 .SH COPYRIGHT
 Copyright \(co 2001, Conrad Parker.  Permission to use, copy, modify,
 distribute, and sell this software and its documentation for any purpose is
index 29d8e606ee5ea57f9e60a895541b4e008a8eb313..42f05fb5731f41557d23c775d1452f7f0e53ac5d 100644 (file)
@@ -3,36 +3,41 @@
 sphere \- draws shaded spheres
 .SH SYNOPSIS
 .B sphere
-[\-display \fIhost:display.screen\fP] [\-foreground \fIcolor\fP] [\-background \fIcolor\fP] [\-window] [\-root] [\-mono] [\-install] [\-visual \fIvisual\fP] [\-ncolors \fIinteger\fP] [\-delay \fImicroseconds\fP]
+[\-\-display \fIhost:display.screen\fP] [\-\-foreground \fIcolor\fP]
+[\-\-background \fIcolor\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-mono] [\-\-install] [\-\-visual \fIvisual\fP] [\-\-ncolors \fIinteger\fP] [\-\-delay \fImicroseconds\fP]
 
-[\-fps]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIsphere\fP program draws shaded spheres.
 .SH OPTIONS
 .I sphere
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-mono 
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-mono 
 If on a color display, pretend we're on a monochrome display.
 .TP 8
-.B \-install
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-ncolors \fIinteger\fP
+.B \-\-ncolors \fIinteger\fP
 How many colors should be used (if possible).  Default 64.
 The colors are chosen randomly.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -43,6 +48,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1),
index 52b9eac26efc3cbb9688107df2e24937eb062b29..75a1712799d98bf68979de9ef83663e57dc0c2fe 100644 (file)
@@ -3,43 +3,48 @@
 spiral \- draws moving circular spiral patterns
 .SH SYNOPSIS
 .B spiral
-[\-display \fIhost:display.screen\fP] [\-foreground \fIcolor\fP] [\-background \fIcolor\fP] [\-window] [\-root] [\-mono] [\-install] [\-visual \fIvisual\fP] [\-ncolors \fIinteger\fP] [\-delay \fImicroseconds\fP] [\-count \fIinteger\fP]
+[\-\-display \fIhost:display.screen\fP] [\-\-foreground \fIcolor\fP]
+[\-\-background \fIcolor\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-mono] [\-\-install] [\-\-visual \fIvisual\fP] [\-\-ncolors \fIinteger\fP] [\-\-delay \fImicroseconds\fP] [\-\-count \fIinteger\fP]
 
-[\-fps]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIspiral\fP program draws moving circular spiral patterns
 .SH OPTIONS
 .I spiral
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-mono 
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-mono 
 If on a color display, pretend we're on a monochrome display.
 .TP 8
-.B \-install
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-ncolors \fIinteger\fP
+.B \-\-ncolors \fIinteger\fP
 How many colors should be used (if possible).  Default 64.
 The colors are chosen randomly.
 .TP 8
-.B \-count \fIinteger\fP
+.B \-\-count \fIinteger\fP
 Default 40.
 .TP 8
-.B \-cycles \fIinteger\fP
+.B \-\-cycles \fIinteger\fP
 Default 350.
 
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -50,6 +55,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1),
index 1f31486684b9863760f89876b6abbb4954c3648f..989e07918dddfb7f3dce12f3e47c5d034e66e739 100644 (file)
@@ -3,13 +3,14 @@
 spotlight \- move spotlight around desktop
 .SH SYNOPSIS
 .B spotlight
-[\-display \fIhost:display.screen\fP] [\-foreground \fIcolor\fP]
-[\-background \fIcolor\fP] [\-window] [\-root] [\-mono] [\-install]
-[\-visual \fIvisual\fP]
-[\-delay \fIusecs\fP]
-[\-duration \fIsecs\fP]
-[\-radius \fIpixels\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP] [\-\-foreground \fIcolor\fP]
+[\-\-background \fIcolor\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-mono] [\-\-install]
+[\-\-visual \fIvisual\fP]
+[\-\-delay \fIusecs\fP]
+[\-\-duration \fIsecs\fP]
+[\-\-radius \fIpixels\fP]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIspotlight\fP program takes an image and exposes small sections
 of it as if through a wandering spotlight beam.
@@ -26,32 +27,35 @@ for more details.
 .I spotlight
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-mono 
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-mono 
 If on a color display, pretend we're on a monochrome display.
 .TP 8
-.B \-install
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-delay \fImicroseconds\fP
+.B \-\-delay \fImicroseconds\fP
 Slow it down.
 .TP 8
-.B \-duration \fIseconds\fP
+.B \-\-duration \fIseconds\fP
 How long to run before loading a new image.  Default 120 seconds.
 .TP 8
-.B \-radius \fIpixels\fP
+.B \-\-radius \fIpixels\fP
 Radius of the spotlight in pixels.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -62,6 +66,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1),
index 73b182241838b8c29c2b5a4e6ea4b8cdad63fd5b..4d988b01e6eef260167a2d27f42d2897339c1621 100644 (file)
@@ -3,12 +3,13 @@
 squiral \- square spirals screensaver
 .SH SYNOPSIS
 .B squiral
-[\-display \fIhost:display.screen\fP] [\-foreground \fIcolor\fP]
-[\-background \fIcolor\fP] [\-window] [\-root] [\-mono] [\-install]
-[\-noinstall] [\-visual \fIvisual\fP] [\-fill \fIpercent\fP] [-count
+[\-\-display \fIhost:display.screen\fP] [\-\-foreground \fIcolor\fP]
+[\-\-background \fIcolor\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-mono] [\-\-install]
+[\-\-noinstall] [\-\-visual \fIvisual\fP] [\-\-fill \fIpercent\fP] [-count
 \fInumber\fP] [-delay \fIusec\fP] [-disorder \fIfraction\fP] [-handedness
 \fIfraction\fP] [-cycle]
-[\-fps]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIsquiral\fP program displays interacting, spiral-producing automata
 
@@ -16,42 +17,45 @@ The \fIsquiral\fP program displays interacting, spiral-producing automata
 .I squiral
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-mono 
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-mono 
 If on a color display, pretend we're on a monochrome display.
 .TP 8
-.B \-install
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-fill \fIpercent\fP
+.B \-\-fill \fIpercent\fP
 Specify the percent (0-100) of the screen which must be filled before
 the screen is cleared.  60-80 percent are good values.
 .TP 8
-.B \-count \fInumber\fP
+.B \-\-count \fInumber\fP
 The number of squiralies.  By default, the screen width divided by 32.
 .TP 8
-.B \-delay \fIusec\fP
+.B \-\-delay \fIusec\fP
 The wait between steps.  The default is 1000.
 .TP 8
-.B \-disorder \fIfraction\fP
+.B \-\-disorder \fIfraction\fP
 The fraction of the time a squiraly will choose a new direction.
 The default is 0.005.
 .TP 8
-.B \-handedness \fIfraction\fP
+.B \-\-handedness \fIfraction\fP
 The fraction of the time a squiraly will choose to enter lefthanded
 mode.  0.0 means exclusively right-handed behavior, 0.5 (the default) is
 a balance between the two, and 1.0 is exclusively left-handed behaviour.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -62,6 +66,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH BUGS
 None known
 .SH SEE ALSO
index f62e0f808179a5b3c2c66d3d989e6dac344527b0..7e24941c2074ee79a17ad8865fd73554a61bf650 100644 (file)
@@ -3,8 +3,10 @@
 starfish \- radially-symmetric throbbing colormap-hacking graphics demo
 .SH SYNOPSIS
 .B starfish
-[\-display \fIhost:display.screen\fP] [\-foreground \fIcolor\fP] [\-background \fIcolor\fP] [\-window] [\-root] [\-mono] [\-install] [\-visual \fIvisual\fP] [\-delay \fIusecs\fP] [\-delay2 \fIsecs\fP] [\-thickness \fIpixels\fP] [\-rotation \fIdegrees\fP] [\-duration \fIseconds\fP] [\-colors \fIint\fP] [\-blob] [\-no\-blob]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP] [\-\-foreground \fIcolor\fP]
+[\-\-background \fIcolor\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-mono] [\-\-install] [\-\-visual \fIvisual\fP] [\-\-delay \fIusecs\fP] [\-\-delay2 \fIsecs\fP] [\-\-thickness \fIpixels\fP] [\-\-rotation \fIdegrees\fP] [\-\-duration \fIseconds\fP] [\-\-colors \fIint\fP] [\-\-blob] [\-\-no\-blob]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIstarfish\fP program draws radially symmetric objects, which expand,
 contract, rotate, and turn inside out.  It uses these shapes to lay down a
@@ -13,52 +15,55 @@ field of smooth colors, and then rotates the colormap.
 .I starfish
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-mono 
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-mono 
 If on a color display, pretend we're on a monochrome display.
 .TP 8
-.B \-install
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-delay \fImicroseconds\fP
+.B \-\-delay \fImicroseconds\fP
 How much of a delay should be introduced between steps of the animation.
 Default 10000, or about 1/100th second.
 .TP 8
-.B \-thickness \fIpixels\fP
+.B \-\-thickness \fIpixels\fP
 How wide each color band should be.  Default 0, meaning random (the chosen
 value will be between 0 and 15.)
 .TP 8
-.B \-rotation \fIdegrees\fP
+.B \-\-rotation \fIdegrees\fP
 How quickly the objects should rotate at each step.  Default 0, meaning 
 random (the chosen value will be between 0 and 12 degrees.)
 .TP 8
-.B \-colors \fIint\fP
+.B \-\-colors \fIint\fP
 How many colors to use.  Default 200.  The more colors, the smoother the
 transitions will be, and the nicer the resultant images.
 .TP 8
-.B \-duration \fIseconds\fP
+.B \-\-duration \fIseconds\fP
 How long to run before choosing a new shape.  Default 30 seconds.
 .TP 8
-.B \-delay2 \fIseconds\fP
+.B \-\-delay2 \fIseconds\fP
 When \fIduration\fP expires, how long to wait before starting a new run.
 Default 5 seconds.
 .TP 8
-.B \-blob
+.B \-\-blob
 .TP 8
-.B \-no\-blob
+.B \-\-no\-blob
 If \fIblob\fP option is specified, then the raw shapes will be shown, 
 instead of a field of colors generated from them.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -69,6 +74,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 1511f648770d33449c5c4164fc561884b2ccd7b4..831933a3993fd1923afe40fb33b3a28933b21929 100644 (file)
@@ -3,53 +3,58 @@
 strange \- draws strange attractors
 .SH SYNOPSIS
 .B strange
-[\-display \fIhost:display.screen\fP] [\-foreground \fIcolor\fP] [\-background \fIcolor\fP] [\-window] [\-root] [\-mono] [\-install] [\-visual \fIvisual\fP] [\-ncolors \fIinteger\fP] [\-delay \fImicroseconds\fP]
+[\-\-display \fIhost:display.screen\fP] [\-\-foreground \fIcolor\fP]
+[\-\-background \fIcolor\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-mono] [\-\-install] [\-\-visual \fIvisual\fP] [\-\-ncolors \fIinteger\fP] [\-\-delay \fImicroseconds\fP]
 
-[\-fps]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIstrange\fP program draws strange attractors
 .SH OPTIONS
 .I strange
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-mono 
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-mono 
 If on a color display, pretend we're on a monochrome display.
 .TP 8
-.B \-install
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-ncolors \fIinteger\fP
+.B \-\-ncolors \fIinteger\fP
 How many colors should be used (if possible).  Default 100.
 The colors are chosen randomly.
 .TP 8
-.B \-points \fIinteger\fP
+.B \-\-points \fIinteger\fP
 Change the number of points/iterations each frame.  Default 5500.  More than
 6000 activates the accumulator, which makes parts of the image brighter or
 darker depending on how often the attractor hits each pixel.
 .TP 8
-.B \-point-size \fIinteger\fP
+.B \-\-point-size \fIinteger\fP
 Changes the size of individual points.  Default 1.
 .TP 8
-.B \-zoom \fIfloat\fP
+.B \-\-zoom \fIfloat\fP
 Zooms in or out.  Default 0.9.
 .TP 8
-.B \-brightness \fIfloat\fP
+.B \-\-brightness \fIfloat\fP
 Adjusts the brightness for accumulator mode.  Default 1.0.
 .TP 8
-.B \-motion-blur \fIfloat\fP
+.B \-\-motion-blur \fIfloat\fP
 Adds motion blur.  Default 3.0, no motion blur is 1.0.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -60,6 +65,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1),
index c632ec9ccacb15af92e9006b2d3846080c7f29b6..4b2d4e525b884ae202d8e5631c40dda308bb6f05 100644 (file)
@@ -3,17 +3,21 @@
 substrate \- Grow crystal-like lines on a computational substrate
 .SH SYNOPSIS
 .B substrate
-[\-display \fIhost:display.screen\fP]
-[\-foreground \fIcolor\fP]
-[\-background \fIcolor\fP]
-[\-wireframe]
-[\-max\-cycles \fIcyclecount\fP]
-[\-growth\-delay \fIdelayms\fP]
-[\-initial\-cracks \fInuminitial\fP]
-[\-max\-cracks \fInummax\fP]
-[\-sand\-grains \fInumgrains\fP]
-[\-circle\-percent \fIcirclepercent\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-foreground \fIcolor\fP]
+[\-\-background \fIcolor\fP]
+[\-\-wireframe]
+[\-\-max\-cycles \fIcyclecount\fP]
+[\-\-growth\-delay \fIdelayms\fP]
+[\-\-initial\-cracks \fInuminitial\fP]
+[\-\-max\-cracks \fInummax\fP]
+[\-\-sand\-grains \fInumgrains\fP]
+[\-\-circle\-percent \fIcirclepercent\fP]
+[\-\-fps]
 .SH DESCRIPTION
 Lines like crystals grow on a computational substrate.  A simple perpendicular
 growth rule creates intricate city-like structures.  Optionally, cracks may
@@ -23,33 +27,46 @@ planning is a distant, theoretical concern.
 .I substrate
 accepts the following options:
 .TP 8
-.B \-wireframe (Default: \fIFalse\fP)
+.B \-\-wireframe (Default: \fIFalse\fP)
 Don't draw sand-painting colored effects, only make a wireframe.
 .TP 8
-.B \-max\-cycles \fIcyclecount\fP (Default: \fI10000\fP)
+.B \-\-max\-cycles \fIcyclecount\fP (Default: \fI10000\fP)
 Maximum number of growth cycles before restarting.  The higher this is,
 the more complex the art.
 .TP 8
-.B \-growth\-delay \fIdelayms\fP (Default: \fI18000\fP)
+.B \-\-growth\-delay \fIdelayms\fP (Default: \fI18000\fP)
 Delay in ms between growth cycles.  More delay, slower (but smoother
 and less CPU intensive)
 art.
 .TP 8
-.B \-initial\-cracks \fInuminitial\fP (Default: \fI3\fP)
+.B \-\-initial\-cracks \fInuminitial\fP (Default: \fI3\fP)
 Initial number of cracks in the substrate
 .TP 8
-.B \-max\-cracks \fInummax\fP (Default: \fI100\fP)
+.B \-\-max\-cracks \fInummax\fP (Default: \fI100\fP)
 Maximum number of cracks in the substrate at a single time
 .TP 8
-.B \-sand\-grains \fInumgrains\fP (Default: \fI64\fP)
+.B \-\-sand\-grains \fInumgrains\fP (Default: \fI64\fP)
 Number of sand grains dropped during coloring.  More grains cause 
 a denser colour but use more cpu power.
 .TP 8
-.B \-circle-percent \fIcirclepercent\fP (Default: \fI0\fP)
+.B \-\-circle-percent \fIcirclepercent\fP (Default: \fI0\fP)
 The percentage of the cracks will be circular.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
+.TP 8
+.B \-\-visual \fIvisual\fP
+Specify which visual to use.  Legal values are the name of a visual class,
+or the id number (decimal or hex) of a specific visual.
+.TP 8
+.B \-\-window
+Draw on a newly-created window.  This is the default.
+.TP 8
+.B \-\-root
+Draw on the root window.
+.TP 8
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
 .SH ENVIRONMENT
 .PP
 .TP 8
@@ -59,6 +76,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global
 resources stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 2031f4d84d4b9a2dcc70fe740ad8f48343ee5e42..0d2d05cbb74a3bb2412324e09825e48214f39853 100644 (file)
@@ -3,43 +3,47 @@
 swirl \- draws swirly color-cycling patterns
 .SH SYNOPSIS
 .B swirl
-[\-display \fIhost:display.screen\fP] [\-foreground \fIcolor\fP]
-[\-background \fIcolor\fP] [\-window] [\-root] [\-mono] [\-install]
-[\-visual \fIvisual\fP]
-[\-ncolors \fIinteger\fP]
-[\-delay \fImicroseconds\fP]
-[\-count \fIinteger\fP]
+[\-\-display \fIhost:display.screen\fP] [\-\-foreground \fIcolor\fP]
+[\-\-background \fIcolor\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-mono] [\-\-install]
+[\-\-visual \fIvisual\fP]
+[\-\-ncolors \fIinteger\fP]
+[\-\-delay \fImicroseconds\fP]
+[\-\-count \fIinteger\fP]
 
-[\-fps]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIswirl\fP program draws swirly color-cycling patterns.
 .SH OPTIONS
 .I swirl
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-mono 
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-mono 
 If on a color display, pretend we're on a monochrome display.
 .TP 8
-.B \-install
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-ncolors \fIinteger\fP
+.B \-\-ncolors \fIinteger\fP
 How many colors should be used (if possible).  Default 200.
 .TP 8
-.B \-count \fIinteger\fP
+.B \-\-count \fIinteger\fP
 
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -50,6 +54,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1),
index 0db943b8c7d58049e0138e23cdbb5b8733e63f17..7fbaca22321c93426645db16786dfbebd3448a67 100644 (file)
@@ -90,7 +90,7 @@ Rotates the hue axis every 10 seconds*
 .B -help
 Prints a short usage message.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .PP
 .SH AUTHOR
index c5a05a703f10dc8e072b5f2dcb7849959721ad4b..f0e2008ede7fb639fe66bf01f969710bf2f16e3c 100644 (file)
@@ -3,18 +3,19 @@
 tessellimage \- Converts an image to triangles using Delaunay tessellation.
 .SH SYNOPSIS
 .B tessellimage
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-duration \fInumber\fP]
-[\-duration2 \fInumber\fP]
-[\-max-depth \fInumber\fP]
-[\-max-resolution \fIpixels\fP]
-[\-no-outline]
-[\-no-fill-screen]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-duration \fInumber\fP]
+[\-\-duration2 \fInumber\fP]
+[\-\-max-depth \fInumber\fP]
+[\-\-max-resolution \fIpixels\fP]
+[\-\-no-outline]
+[\-\-no-fill-screen]
+[\-\-fps]
 .SH DESCRIPTION
 Converts an image to triangles using Delaunay tessellation, and animates
 the result at various depths. More triangles are allocated to visually
@@ -25,42 +26,45 @@ pixels whose distance value is above a certain threshold: those are the
 pixels that have the largest change in color/brightness. 
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 30000 (0.03 seconds).
 .TP 8
-.B \-duration \fInumber\fP
+.B \-\-duration \fInumber\fP
 Length of time until loading a new image. Default: 2 minutes.
 .TP 8
-.B \-duration2 \fInumber\fP
+.B \-\-duration2 \fInumber\fP
 Length of time until increasing or decreasing the triangulation depth.
 Default: 0.4 seconds.
 .TP 8
-.B \-max-depth \fInumber\fP
+.B \-\-max-depth \fInumber\fP
 The maximum number of triangles to render.  Default: 40000.
 .TP 8
-.B \-max-resolution \fIpixels\fP
+.B \-\-max-resolution \fIpixels\fP
 The size of the loaded image will be constrained to this width or
 height, to reduce the number of pixels examined.  Think of it as
 an initial low-pass filter.  Default 1024.
 .TP 8
-.B \-outline | \-no-outline
+.B \-\-outline | \-\-no-outline
 Whether to outline the triangles.
 .TP 8
-.B \-fill-screen | \-no-fill-screen
+.B \-\-fill-screen | \-\-no-fill-screen
 Whether to zoom in on the image to completely fill the screen,
 or to center it.
 .TP 8
-.B \-fps | \-no-fps
+.B \-\-fps | \-\-no-fps
 Whether to show a frames-per-second display at the bottom of the screen.
 .SH ENVIRONMENT
 .PP
@@ -71,6 +75,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index bef827ed474d9a3948f0ece92b4d13d7d28e8424..d7d7ea0771db8b20a8d46290334ba34834a2c2bd 100644 (file)
@@ -3,42 +3,46 @@
 thornbird \- Bird in a Thornbush fractal.
 .SH SYNOPSIS
 .B thornbird
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-count \fInumber\fP]
-[\-cycles \fInumber\fP]
-[\-delay \fInumber\fP]
-[\-ncolors \fInumber\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-count \fInumber\fP]
+[\-\-cycles \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-ncolors \fInumber\fP]
+[\-\-fps]
 .SH DESCRIPTION
 Displays a view of the "Bird in a Thornbush" fractal.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-count \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-count \fInumber\fP
 Points.  10 - 1000.  Default: 800.
 .TP 8
-.B \-cycles \fInumber\fP
+.B \-\-cycles \fInumber\fP
 Thickness.  2 - 500.  Default: 16.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 10000 (0.01 seconds.).
 .TP 8
-.B \-ncolors \fInumber\fP
+.B \-\-ncolors \fInumber\fP
 Number of Colors.  Default: 64.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -49,6 +53,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index b7658b239637ecc452993d4756bc1cca795d17b7..e2ccc6519c563b69839b07e67917e656d3587559 100644 (file)
@@ -3,34 +3,38 @@
 triangle \- random mountains using iterative subdivision of triangles.
 .SH SYNOPSIS
 .B triangle
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-ncolors \fInumber\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-ncolors \fInumber\fP]
+[\-\-fps]
 .SH DESCRIPTION
 Generates random mountain ranges using iterative subdivision of triangles.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 10000 (0.01 seconds.).
 .TP 8
-.B \-ncolors \fInumber\fP
+.B \-\-ncolors \fInumber\fP
 Number of Colors.  Default: 128.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -41,6 +45,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index f9388c27dbe91052e731a6d4189307fd2bd83b54..6f7688566b0a1a434c62b43e7c46aa6eff1a063d 100644 (file)
 truchet \- draws curved or angular Truchet patterns
 .SH SYNOPSIS
 .B truchet
-[\-display \fIhost:display.screen\fP]  [\-foreground \fIcolor\fP] [\-background \fIcolor\fP]
-[\-window] [\-root] [\-mono] [\-install] [\-visual \fIvisual\fP] [\-delay \fImilliseconds\fP]
-[\-min\-width \fIinteger\fP] [\-min-height \fIinteger\fP] [\-max-width \fIinteger\fP] 
-[\-max-height \fIinteger\fP] [\-max\-linewidth \fIinteger\fP] [\-min-linewidth \fIinteger\fP] 
-[\-erase] [\-no\-erase] [\-erase\-count \fIinteger\fP] [\-square] [\-not\-square] [\-curves]
-[\-no\-curves] [\-angle] [\-no\-angles] [\-scroll] [\-scroll\-overlap \fIinteger\fP] 
-[\-anim\-delay \fIinteger\fP] [\-anim\-step\-size \fIinteger\fP]
-
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]  [\-\-foreground \fIcolor\fP] [\-\-background \fIcolor\fP]
+[\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-mono] [\-\-install] [\-\-visual \fIvisual\fP] [\-\-delay \fImilliseconds\fP]
+[\-\-min\-width \fIinteger\fP] [\-\-min-height \fIinteger\fP] [\-\-max-width \fIinteger\fP] 
+[\-\-max-height \fIinteger\fP] [\-\-max\-linewidth \fIinteger\fP] [\-\-min-linewidth \fIinteger\fP] 
+[\-\-erase] [\-\-no\-erase] [\-\-erase\-count \fIinteger\fP] [\-\-square] [\-\-not\-square] [\-\-curves]
+[\-\-no\-curves] [\-\-angle] [\-\-no\-angles] [\-\-scroll] [\-\-scroll\-overlap \fIinteger\fP] 
+[\-\-anim\-delay \fIinteger\fP] [\-\-anim\-step\-size \fIinteger\fP]
+
+[\-\-fps]
 .SH DESCRIPTION
 The \fItruchet\fP program draws arc and line based Truchet patterns.
 .SH OPTIONS
 .I truchet
 accepts the following options:
 .TP 8
-.B  \-window
+.B  \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-mono 
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-mono 
 If on a color display, pretend we're on a monochrome display.
 .TP 8
-.B \-install
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 
 .TP 8
-.B \-delay \fImilliseconds\fP
+.B \-\-delay \fImilliseconds\fP
 How long to wait between drawing each screenful. Default is 1 seconds.
 
 .TP 8 
-.B \-min-width \fIinteger\fP
+.B \-\-min-width \fIinteger\fP
 The minimum width in pixels of each square. Default is 40.
 
 .TP 8
-.B \-min-height \fIinteger\fP
+.B \-\-min-height \fIinteger\fP
 The minimum height in pixels of each square. Default is 40.
 
 .TP 8
-.B \-max-width \fIinteger\fP
+.B \-\-max-width \fIinteger\fP
 The maximum width in pixels of each square. Default is 150.
 
 .TP 8
-.B \-max-height \fIinteger\fP
+.B \-\-max-height \fIinteger\fP
 The maximum height in pixels of each square. Default is 150.
 
 .TP 8
-.B \-max-linewidth \fIinteger\fP
+.B \-\-max-linewidth \fIinteger\fP
 The maximum width of the lines used to draw. Default is 25.
 
 .TP 8
-.B \-min-linewidth \fIinteger\fP
+.B \-\-min-linewidth \fIinteger\fP
 The minimum width of the lines used to draw. Default is 2.
 
 .TP 8
-.B \-erase
+.B \-\-erase
 
 .TP 8
-.B \-no-erase
+.B \-\-no-erase
 Whether to clear the screen after each screenful is drawn. Default is True (erase).
 
 .TP 8
-.B \-erase-count \fIinteger\fP
+.B \-\-erase-count \fIinteger\fP
 The number of screenfuls to draw before erasing. Default is 25.
 
 .TP 8
-.B \-square
+.B \-\-square
 
 .TP 8
-.B \-not-square
+.B \-\-not-square
 Whether to force the tiles to be square. Default is True (square).
 
 .TP 8
-.B \-curves
+.B \-\-curves
 
 .TP 8
-.B \-no-curves
+.B \-\-no-curves
 Whether to draw the arc based Truchet pattern. Default is True (curves).
 
 .TP 8
-.B \-angles
+.B \-\-angles
 
 .TP 8
-.B \-no-angles
+.B \-\-no-angles
 Whether or not to draw the line based Truchet pattern. Default is True (angles)
 
 .TP 8
-.B \-scroll
+.B \-\-scroll
 Use the scroll mode. Default is False.
 
 .TP 8
-.B \-scroll-overlap
+.B \-\-scroll-overlap
 The amount to scroll from one side to another. Default is 400.
 
 .TP 8
-.B \-anim-delay
+.B \-\-anim-delay
 The time to pause between each animation step. Default is 100.
 
 .TP 8
-.B \-anim-step-size
+.B \-\-anim-step-size
 The amount of steps to skip between each animation step. Default is 3.
 
 
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -123,6 +127,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index ac71635e09864ade37ee2337eabaeae0fe4963bf..1407b8dc464931cbfe21b14cb82ba6dc8390f898 100644 (file)
@@ -3,26 +3,27 @@
 twang \- pluck pieces of the screen
 .SH SYNOPSIS
 .B twang
-[\-display \fIhost:display.screen\fP]
-[\-foreground \fIcolor\fP]
-[\-background \fIcolor\fP]
-[\-window]
-[\-root]
-[\-mono]
-[\-install]
-[\-visual \fIvisual\fP]
-[\-shm]
-[\-no-shm]
-[\-delay \fIusecs\fP]
-[\-duration \fIsecs\fP]
-[\-border-color \fIcolor\fP]
-[\-border-width \fIinteger\fP]
-[\-event-chance \fIfraction\fP]
-[\-friction \fIfraction\fP]
-[\-springiness \fIfraction\fP]
-[\-tile-size \fIinteger\fP]
-[\-transference \fIfraction\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-foreground \fIcolor\fP]
+[\-\-background \fIcolor\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-mono]
+[\-\-install]
+[\-\-visual \fIvisual\fP]
+[\-\-shm]
+[\-\-no-shm]
+[\-\-delay \fIusecs\fP]
+[\-\-duration \fIsecs\fP]
+[\-\-border-color \fIcolor\fP]
+[\-\-border-width \fIinteger\fP]
+[\-\-event-chance \fIfraction\fP]
+[\-\-friction \fIfraction\fP]
+[\-\-springiness \fIfraction\fP]
+[\-\-tile-size \fIinteger\fP]
+[\-\-transference \fIfraction\fP]
+[\-\-fps]
 .SH DESCRIPTION
 \fITwang\fP divides the screen into equal-sized tiles, and then plucks
 them in various ways. Tiles are affected by their neighbors, so waves
@@ -32,72 +33,75 @@ describes v1.3 of the program.
 .I twang
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-mono 
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-mono 
 If on a color display, pretend we're on a monochrome display.
 .TP 8
-.B \-install
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-shm
+.B \-\-shm
 .TP 8
-.B \-no-shm
+.B \-\-no-shm
 Use the shared memory extension (or not, respectively), if available. 
 This may speed things
 up a bit, but probably won't make that much difference. If available,
 defaults to true, resource \fIuseSHM\fP.
 .TP 8
-.B \-delay \fImicroseconds\fP
+.B \-\-delay \fImicroseconds\fP
 The interframe delay, in microseconds. Defaults to 10000, resource
 \fIdelay\fP.
 .TP 8
-.B \-duration \fIseconds\fP
+.B \-\-duration \fIseconds\fP
 How long to run before loading a new image.  Default 120 seconds.
 .TP 8
-.B \-border-color \fIcolor\fP
+.B \-\-border-color \fIcolor\fP
 Color of the border surrounding each tile. Defaults to blue, resource
 \fIborderColor\fP.
 .TP 8
-.B \-border-width \fIinteger\fP
+.B \-\-border-width \fIinteger\fP
 Width of the border surrounding each tile. Defaults to 3, resource
 \fIborderWidth\fP.
 .TP 8
-.B \-event-chance \fIfraction\fP
+.B \-\-event-chance \fIfraction\fP
 The chance, per iteration, for an event to occur (such as tweaking
 the orientation of a tile), in the range 0..1. Defaults to 0.01,
 resource \fIeventChance\fP.
 .TP 8
-.B \-friction \fIfraction\fP
+.B \-\-friction \fIfraction\fP
 How much friction there is in the system, in the range 0..1. 
 This is the amount by which velocities are damped per iteration.
 Defaults to 0.05, resource \fIfriction\fP.
 .TP 8
-.B \-springiness \fIfraction\fP
+.B \-\-springiness \fIfraction\fP
 How springy the tiles are, in the range 0..1. 
 This is the fraction of an orientation that gets turned into a velocity
 towards the center (resting point). Defaults to 0.1, resource 
 \fIspringiness\fP.
 .TP 8
-.B \-tile-size \fIinteger\fP
+.B \-\-tile-size \fIinteger\fP
 Size (width and height) of each tile, not including the outer edge
 of the border. Defaults to 120, resource \fItileSize\fP.
 .TP 8
-.B \-transference \fIfraction\fP
+.B \-\-transference \fIfraction\fP
 How much a tile's neighbors affect it, in the range 0..1. 
 This is the fraction of an orientation of a neighbor that gets turned 
 into a velocity in the same direction Defaults to 0.025, resource 
 \fItransference\fP.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -108,6 +112,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH X RESOURCES
 There are resource equivalents for each option, noted above.
 .SH BUGS
index f8fe3bab990443bb3cdd3d5a7f13d0ae607c171a..06c8230fcad56981f8e93e0be1db094fe5d53b57 100644 (file)
@@ -3,26 +3,30 @@
 vermiculate \- to move in a worm-like manner.
 .SH SYNOPSIS
 .B vermiculate
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-fps]
 .SH DESCRIPTION
 Draws squiggly worm-like paths.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-fps
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -33,6 +37,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index b277b783767947e4cef67651a9268681bcc20319..03490ee5a04b81edd48adb63b33ee959f89084f8 100644 (file)
@@ -3,49 +3,53 @@
 vfeedback \- Simulates video feedback.
 .SH SYNOPSIS
 .B vfeedback
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-tv-color \fInumber\fP]
-[\-tv-tint \fInumber\fP]
-[\-noise \fInumber\fP]
-[\-tv-brightness \fInumber\fP]
-[\-tv-contrast \fInumber\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-tv-color \fInumber\fP]
+[\-\-tv-tint \fInumber\fP]
+[\-\-noise \fInumber\fP]
+[\-\-tv-brightness \fInumber\fP]
+[\-\-tv-contrast \fInumber\fP]
+[\-\-fps]
 .SH DESCRIPTION
 Simulates video feedback: pointing a video camera at an NTSC television.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-tv-color \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-tv-color \fInumber\fP
 Color Knob.  0 - 1000. Default: 70.
 .TP 8
-.B \-tv-tint \fInumber\fP
+.B \-\-tv-tint \fInumber\fP
 Tint Knob.  0 - 100.  Default: 5.
 .TP 8
-.B \-noise \fInumber\fP
+.B \-\-noise \fInumber\fP
 Analog noise.  0.0 - 0.2.  Default: 0.02.
 .TP 8
-.B \-darken \fInumber\fP
+.B \-\-darken \fInumber\fP
 Darken the looped image.       0.0 - 1.0.  Default: 0.7.
 .TP 8
-.B \-tv-brightness \fInumber\fP
+.B \-\-tv-brightness \fInumber\fP
 Brightness Knob.  0.0 - 100.0. Default: 3.0.
 .TP 8
-.B \-tv-contrast \fInumber\fP
+.B \-\-tv-contrast \fInumber\fP
 Contrast Knob. 0 - 1500.  Default: 1000.
 .TP 8
-.B \-fps | \-no-fps
+.B \-\-fps | \-\-no-fps
 Whether to show a frames-per-second display at the bottom of the screen.
 .SH ENVIRONMENT
 .PP
@@ -56,6 +60,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 3ebb64da088d57f29f533833117de3db44f42359..aeef6499eeed4cbdc7957177242f36498314eb9d 100644 (file)
@@ -3,10 +3,11 @@
 vidwhacker \- grab images and apply random filters to them
 .SH SYNOPSIS
 .B vidwhacker
-[\-display \fIhost:display.screen\fP] [\-root] [\-verbose]
-[\-stdin] [\-stdout] [\-delay seconds]
+[\-\-display \fIhost:display.screen\fP] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-verbose]
+[\-\-stdin] [\-\-stdout] [\-\-delay seconds]
 [-directory \fIdirectory\fP]
-[\-fps]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIvidwhacker\fP program grabs an image from disk, or  from the
 system's video input, then applies random image filters to it, and
@@ -26,32 +27,35 @@ search for images, are specified in the \fI~/.xscreensaver\fP file.
 .I vidwhacker
 accepts the following options:
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.  This is the default.
 .TP 8
-.B \-verbose
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-verbose
 Print diagnostics.
 .TP 8
-.B \-stdin
+.B \-\-stdin
 Instead of grabbing an image from disk or video, read an image
 to manipulate from stdin.  This image must be in
 .BR ppm (5)
 format.  The program will still perform repeated random image 
 transformations, but it will always use this one image as its starting point.
 .TP 8
-.B \-delay \fIseconds\fP
+.B \-\-delay \fIseconds\fP
 How long to sleep between images.  Default 5 seconds (the actual
 elapsed time is significantly longer, due to processing time.)
 .TP 8
-.B \-stdout
+.B \-\-stdout
 Instead of displaying the image on a window or on the root, write the new
 image on stdout, and exit.
 .TP 8
-.B \-directory \fIdirectory\fP
+.B \-\-directory \fIdirectory\fP
 Use this directory instead of the \fBimageDirectory\fP specified in 
 the \fI~/.xscreensaver\fP file.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -62,6 +66,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH BUGS
 It's slow.
 .SH TO DO
index 426218d0f3045564b0a29a67c5cd0386227584ad..77803a912e36c2ce463278d86390575e62c4d0cb 100644 (file)
@@ -3,9 +3,11 @@
 vines \- draws pseudo-fractal geometric patterns
 .SH SYNOPSIS
 .B vines
-[\-display \fIhost:display.screen\fP] [\-foreground \fIcolor\fP] [\-background \fIcolor\fP] [\-window] [\-root] [\-mono] [\-install] [\-visual \fIvisual\fP] [\-ncolors \fIinteger\fP] [\-delay \fImicroseconds\fP]
+[\-\-display \fIhost:display.screen\fP] [\-\-foreground \fIcolor\fP]
+[\-\-background \fIcolor\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-mono] [\-\-install] [\-\-visual \fIvisual\fP] [\-\-ncolors \fIinteger\fP] [\-\-delay \fImicroseconds\fP]
 
-[\-fps]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIvines\fP program is yet another geometric pattern generator, this
 one's claim to fame being a pseudo-fractal looking vine like pattern that
@@ -14,27 +16,30 @@ creates nifty whorls and loops.
 .I vines
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-mono 
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-mono 
 If on a color display, pretend we're on a monochrome display.
 .TP 8
-.B \-install
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-ncolors \fIinteger\fP
+.B \-\-ncolors \fIinteger\fP
 How many colors should be used (if possible).  Default 64.
 The colors are chosen randomly.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -45,6 +50,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1),
index e473d02cd4c3325064203ba6200ee830f0993522..5da5a2200066d37a4fd0a3d9a95ae84a902d4226 100644 (file)
@@ -3,54 +3,58 @@
 wander \- colorful random-walk.
 .SH SYNOPSIS
 .B wander
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-density \fInumber\fP]
-[\-reset \fInumber\fP]
-[\-length \fInumber\fP]
-[\-delay \fInumber\fP]
-[\-circles]
-[\-size \fInumber\fP]
-[\-advance \fInumber\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-density \fInumber\fP]
+[\-\-reset \fInumber\fP]
+[\-\-length \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-circles]
+[\-\-size \fInumber\fP]
+[\-\-advance \fInumber\fP]
+[\-\-fps]
 .SH DESCRIPTION
 Draws a colorful random-walk, in various forms.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-density \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-density \fInumber\fP
 Density.  1 - 30.  Default: 2.
 .TP 8
-.B \-reset \fInumber\fP
+.B \-\-reset \fInumber\fP
 Number of frames before resetting.  Default: 2500000.
 .TP 8
-.B \-length \fInumber\fP
+.B \-\-length \fInumber\fP
 Number of iterations.  Default: 25000.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-delay \fInumber\fP
 Sustain.  0 - 60.  Default: 1.
 .TP 8
-.B \-circles | \-no-circles
+.B \-\-circles | \-\-no-circles
 Whether to draw spots.
 .TP 8
-.B \-size \fInumber\fP
+.B \-\-size \fInumber\fP
 Size.  0 - 100.  Default: 1.
 .TP 8
-.B \-advance \fInumber\fP
+.B \-\-advance \fInumber\fP
 Color Contrast.  1 - 100.  Default: 1.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -61,6 +65,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 5baaf794d5ba2d14e550d534b30c3bd0382ea8e2..85255b51630fa932f4f8803ef7167a3a26d8322f 100644 (file)
@@ -3,25 +3,26 @@
 webcollage \- decorate the screen with random images from the web
 .SH SYNOPSIS
 .B webcollage
-[\-display \fIhost:display.screen\fP]
-[\-root]
-[\-window\-id \fIid\fP]
-[\-verbose]
-[\-timeout \fIsecs\fP]
-[\-delay \fIsecs\fP]
-[\-background \fIbg\fP]
-[\-no-output]
-[\-urls-only]
-[\-imagemap \fIfilename-base\fP]
-[\-size \fIWxH\fP]
-[\-opacity \fIratio\fP]
-[\-filter \fIcommand\fP]
-[\-filter2 \fIcommand\fP]
-[\-http\-proxy host[:port]]
-[\-dictionary \fIdictionary-file\fP]
-[\-driftnet [\fIcmd\fP]]
-[\-directory \fIdir\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-window\-id \fIid\fP]
+[\-\-verbose]
+[\-\-timeout \fIsecs\fP]
+[\-\-delay \fIsecs\fP]
+[\-\-background \fIbg\fP]
+[\-\-no-output]
+[\-\-urls-only]
+[\-\-imagemap \fIfilename-base\fP]
+[\-\-size \fIWxH\fP]
+[\-\-opacity \fIratio\fP]
+[\-\-filter \fIcommand\fP]
+[\-\-filter2 \fIcommand\fP]
+[\-\-http\-proxy host[:port]]
+[\-\-dictionary \fIdictionary-file\fP]
+[\-\-driftnet [\fIcmd\fP]]
+[\-\-directory \fIdir\fP]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIwebcollage\fP program pulls random image off of the World Wide Web
 and scatters them on the root window.  One satisfied customer described it
@@ -44,8 +45,11 @@ on your local subnet, instead of getting images from search engines.
 .I webcollage
 accepts the following options:
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.  This option is mandatory, if output is being
+.TP 8
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
 produced: drawing to a window other than the root window is not yet
 supported.
 
@@ -58,52 +62,52 @@ or
 .BR xloadimage (1)
 programs (whichever is available.)
 .TP 8
-.B \-window\-id \fIid\fP
+.B \-\-window\-id \fIid\fP
 Draw to the indicated window instead; this only works if the
 .BR xscreensaver\-getimage (MANSUFFIX)
 program is installed.
 .TP 8
-.B \-verbose \fRor\fP \-v
+.B \-\-verbose \fRor\fP \-\-v
 Print diagnostics to stderr.  Multiple \fI-v\fP switches increase the
 amount of output.  \fI-v\fP will print out the URLs of the images,
 and where they were placed; \fI-vv\fP will print out any warnings,
 and all URLs being loaded; \fI-vvv\fP will print information on
 what URLs were rejected; and so on.
 .TP 8
-.B \-timeout \fIseconds\fP
+.B \-\-timeout \fIseconds\fP
 How long to wait for a URL to complete before giving up on it and
 moving on to the next one.
 Default 30 seconds.
 .TP 8
-.B \-delay \fIseconds\fP
+.B \-\-delay \fIseconds\fP
 How long to sleep between images.  Default 2 seconds.  (Remember that
 this program probably spends a lot of time waiting for the network.)
 .TP 8
-.B \-background \fIcolor-or-ppm\fP
+.B \-\-background \fIcolor-or-ppm\fP
 What to use for the background onto which images are pasted.  This may be
 a color name, a hexadecimal RGB specification in the form '#rrggbb', or 
 the name of a PPM file.
 .TP 8
-.B \-size \fIWxH\fP
+.B \-\-size \fIWxH\fP
 Normally, the output image will be made to be the size of the
 screen (or target window.)  This lets you specify the desired size.
 .TP 8
-.B \-opacity \fIratio\fP
+.B \-\-opacity \fIratio\fP
 How transparently to paste the images together, with 0.0 meaning
 "completely transparent" and 1.0 meaning "opaque."  Default 0.85.
 A value of around 0.3 will produce an interestingly blurry image
 after a while.
 .TP 8
-.B \-no-output
+.B \-\-no-output
 If this option is specified, then no composite output image will be
 generated.  This is only useful when used in conjunction 
-with \fB\-verbose\fP.
+with \fB\-\-verbose\fP.
 .TP 8
-.B \-urls-only
+.B \-\-urls-only
 If this option is specified, then no composite output image will be
 generated: instead, a list of image URLs will be printed on stdout.
 .TP 8
-.B \-imagemap \fIfilename-base\fP
+.B \-\-imagemap \fIfilename-base\fP
 If this option is specified, then instead of writing an image to the
 root window, two files will be created: "\fIbase\fP.html" and "\fIbase\fP.jpg".
 The JPEG will be the collage; the HTML file will include that image, and
@@ -111,7 +115,7 @@ an image-map making the sub-images be linked to the pages on which they
 were found, as seen on the web version of WebCollage at
 \fIhttps://www.jwz.org/webcollage/\fP
 .TP 8
-.B \-filter \fIcommand\fP
+.B \-\-filter \fIcommand\fP
 Filter all source images through this command.  The command must take
 a PPM file on stdin, and write a new PPM file to stdout.  One good 
 choice for a filter would be:
@@ -121,17 +125,17 @@ choice for a filter would be:
 .sp
 .fi
 .TP 8
-.B \-filter2 \fIcommand\fP
+.B \-\-filter2 \fIcommand\fP
 Filter the \fIcomposite\fP image through this command.  The \fI-filter\fP
 option applies to the sub-images; the \fI-filter2\fP applies to the
 final, full-screen image.
 .TP 8
-.B \-http\-proxy \fIhost:port\fP
+.B \-\-http\-proxy \fIhost:port\fP
 If you must go through a proxy to connect to the web, you can specify it 
 with this option, or with the \fB$http_proxy\fP or \fB$HTTP_PROXY\fP 
 environment variables.
 .TP 8
-.B \-dictionary \fIfile\fP
+.B \-\-dictionary \fIfile\fP
 Webcollage normally looks at the system's default spell-check dictionary
 to generate words to feed into the search engines.  You can specify an
 alternate dictionary with this option.
@@ -141,14 +145,14 @@ different methods, not all of which involve dictionary words, so
 using a "topical" dictionary file will not, in itself, be as effective
 as you might be hoping.
 .TP 8
-.B \-driftnet \fI[ args ]\fP
+.B \-\-driftnet \fI[ args ]\fP
 .BR driftnet (1)
 is a program that snoops your local ethernet for unencrypted packets
 that look like they might be image files.  It can be used in conjunction
 with \fIwebcollage\fP to generate a collage of what other people on
 your network are looking at, instead of a search-engine collage.
 If you have \fIdriftnet\fP installed on your $PATH, just use 
-the \fI\-driftnet\fP option.  You can also specify the location
+the \fI\-\-driftnet\fP option.  You can also specify the location
 of the program like this:
 .nf
 .sp
@@ -166,11 +170,11 @@ the \fIdriftnet\fP program requires root access, so you'll have
 to make \fIdriftnet\fP be setuid-root for this to work.
 Please exercise caution.
 .TP 8
-.B \-directory \fIdir\fP
+.B \-\-directory \fIdir\fP
 Instead of searching the web for images, use the contents of
 the given directory.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load (MacOS only).
 .SH ENVIRONMENT
 .PP
@@ -182,6 +186,9 @@ to get the default host and display number.
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
 .TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
+.TP 8
 .B http_proxy\fR or \fPHTTP_PROXY
 to get the default HTTP proxy host and port.
 .SH FILES AND URLS
index 26147e9e53b2e60d99afd6abcaff6a42e0140871..5af8f5149c8263d6c66c2f629dc5b4d37e299345 100644 (file)
@@ -3,8 +3,10 @@
 whirlwindwarp \- crazy moving stars
 .SH SYNOPSIS
 .B whirlwindwarp
-[\-display \fIhost:display.screen\fP] [\-foreground \fIcolor\fP] [\-background \fIcolor\fP] [\-window] [\-root] [\-mono] [\-install] [\-visual \fIvisual\fP] [\-points \fIinteger\fP] [\-tails \fIinteger\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP] [\-\-foreground \fIcolor\fP]
+[\-\-background \fIcolor\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-mono] [\-\-install] [\-\-visual \fIvisual\fP] [\-\-points \fIinteger\fP] [\-\-tails \fIinteger\fP]
+[\-\-fps]
 .SH DESCRIPTION
 \fIwhirlwindwarp\fP plots stars moving according to various forcefields
 (simple 2D equations).
@@ -15,29 +17,32 @@ Please don't watch it for too long!
 .I whirlwindwarp
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-mono 
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-mono 
 If on a color display, pretend we're on a monochrome display.
 .TP 8
-.B \-install
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-points \fIinteger\fP
+.B \-\-points \fIinteger\fP
 The number of stars plotted (default 400).
 .TP 8
-.B \-tails \fIinteger\fP
+.B \-\-tails \fIinteger\fP
 The length of the tail of each star (default 8).
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -48,6 +53,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 9a60ef33e75c66df4f5d8f14cc591f26db0e93eb..3f22dc5f1da23c15ca04fee08e4642fae36bf386 100644 (file)
@@ -3,14 +3,15 @@
 whirlygig -- zooming chains of sinusoidal spots
 .SH SYNOPSIS
 .B whirlygig
-[\-display \fIhost:display.screen\fP] [\-window] [\-root] [\-mono]
-[\-install] [\-noinstall] [\-visual arg] [\-window-id arg]   
-[\-xspeed arg] [\-yspeed arg] [\-whirlies arg] [\-nlines arg] 
-[\-xmode arg] [\-ymode arg] [\-speed arg] [\-trail 1|0]
-[\-color_modifier arg] [\-start_time arg] [\-explain 1|0]
-[\-wrap 1|0] [\-db] [\-no-db] 
+[\-\-display \fIhost:display.screen\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-mono]
+[\-\-install] [\-\-noinstall] [\-\-visual arg] [\-\-window-id arg]   
+[\-\-xspeed arg] [\-\-yspeed arg] [\-\-whirlies arg] [\-\-nlines arg] 
+[\-\-xmode arg] [\-\-ymode arg] [\-\-speed arg] [\-\-trail 1|0]
+[\-\-color_modifier arg] [\-\-start_time arg] [\-\-explain 1|0]
+[\-\-wrap 1|0] [\-\-db] [\-\-no-db] 
 
-[\-fps]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIwhirlygig\fP program draws a series of circles on your screen.
 They then move about in a cyclic pattern
@@ -18,91 +19,94 @@ They then move about in a cyclic pattern
 .I whirlygig
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-xspeed \fIspeed\fP
+.B \-\-xspeed \fIspeed\fP
 Specify how fast the dots should cycle horizontally.
 Try out values from .01 to 4000. Defaults to 1.0.
 .TP 8
-.B \-yspeed \fIspeed\fP
+.B \-\-yspeed \fIspeed\fP
 Specify how fast the dots should cycle vertically.
 Try out values from .01 to 4000. Defaults to 1.0.
 .TP 8
-.B \-xamplitude \fIfactor\fP
+.B \-\-xamplitude \fIfactor\fP
 Specify the horizontal amplitude.
 Try out values from .01 to 10. Defaults to 1.0.
 .TP 8
-.B \-yamplitude \fIfactor\fP
+.B \-\-yamplitude \fIfactor\fP
 Specify the horizontal amplitude.
 Try out values from .01 to 10. Defaults to 1.0.
 .TP 8
-.B \-whirlies \fIa number\fP
+.B \-\-whirlies \fIa number\fP
 Specify how many whirlies you want (per line). Defaults
 to a random number.
 .TP 8
-.B \-nlines \fInumber of lines\fP
+.B \-\-nlines \fInumber of lines\fP
 Specify how many lines of whirlies you want. Defaults to a 
 random number.
 .TP 8
-.B \-xmode \fImode\fP
+.B \-\-xmode \fImode\fP
 .TP 8 
-.B \-ymode \fImode\fP
+.B \-\-ymode \fImode\fP
 Specify which mode to use for calculating the x and y positions of the
 whirlies. Can be any of spin, funky, circle, linear, test, fun, innie
 or lissajous. Defaults to 'change' mode, which randomly selects a new
 mode for x and y every now an then. Unrecognized options default to spin.
 .TP 8
-.B \-explain
+.B \-\-explain
 Prints some strings to the window explaining what the initially
 selected modes are, before displaying the whirlies. Off by default.
 .TP 8
-.B \-trail \fI1 or 0\fP
+.B \-\-trail \fI1 or 0\fP
 Trail mode fails to erase the whirlies as they move, so they leave a
 multicoloured trail behind. Doesn't work if the doubled buffered mode
 is using the X server's double buffer extension, and the useDBEclear 
 resource is true (which it is by default).
 .TP 8
-.B \-speed \fIint\fP
+.B \-\-speed \fIint\fP
 Specifies how fast to cycle through the internal time. Values 1,2 and
 3 look ok, up to 10 is not too bad, but beyond ends up
 flickery. Adjust xspeed and yspeed instead.
 .TP 8
-.B \-start_time \fIint\fP
+.B \-\-start_time \fIint\fP
 Where in the internal time cycle to start. Ranges from 1 to 429496729,
 Defaults to a random value.
 .TP 8
-.B \-xoffset \fIfactor\fP
+.B \-\-xoffset \fIfactor\fP
 Tell the whirlies to be offset by this factor of a sin.
 Defaults to 1.0
 .TP 8
-.B \-yoffset \fIfactor\fP
+.B \-\-yoffset \fIfactor\fP
 Tell the whirlies to be offset by this factor of a cos.
 Defaults to 1.0
 .TP 8
-.B \-offset_period \fIfactor\fP
+.B \-\-offset_period \fIfactor\fP
 Change the period of an offset cycle
 Defaults to 1
 .TP 8
-.B \-color_modifier \fIint\fP
+.B \-\-color_modifier \fIint\fP
 How many colors away from the current should the next whirly be?
 .TP 8
-.B \-wrap \fI1|0\fP
+.B \-\-wrap \fI1|0\fP
 Causes whirlies that fall off the edge of the screen to wrap over to
 the other end of the screen. Otherwise they disappear and new ones
 to materialize on the other side of the screen. The difference is
 subtle, but it is different. Try it. On by default.
 .TP 8
-.B \-db
+.B \-\-db
 .TP 8
-.B \-no-db
+.B \-\-no-db
 Use double buffering to reduce flicker. This uses the double buffering
 extension if your X server supports it, otherwise it draws to it's own
 pixmap buffer and copies that to the window, which works almost as
@@ -111,7 +115,7 @@ individually erased, so the -trail option won't work, and running
 multiple instances on the root window will flicker. 
 
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -122,6 +126,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index bbb4ee11022367716c3de29600e66c607f2ec735..c90147cbc89b1b274faf2c18b8509600ae3de525 100644 (file)
@@ -3,42 +3,46 @@
 worm \- multicolored worms that crawl around the screen.
 .SH SYNOPSIS
 .B worm
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-count \fInumber\fP]
-[\-delay \fInumber\fP]
-[\-ncolors \fInumber\fP]
-[\-size \fInumber\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-count \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-ncolors \fInumber\fP]
+[\-\-size \fInumber\fP]
+[\-\-fps]
 .SH DESCRIPTION
 An ancient hack that draws multicolored worms that crawl around the screen.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-count \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-count \fInumber\fP
 Count. -100 - 100.  Default: -20.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 17000 (0.017 seconds.).
 .TP 8
-.B \-ncolors \fInumber\fP
+.B \-\-ncolors \fInumber\fP
 Number of Colors.  Default: 150.
 .TP 8
-.B \-size \fInumber\fP
+.B \-\-size \fInumber\fP
 Size.  -20 - 20.  Default: -3.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -49,6 +53,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 5a27d86941580936c8fa46f23ef487ab3f512cb2..efae853730c8bf0d437b84d94586f117d9becc8f 100644 (file)
@@ -3,47 +3,51 @@
 wormhole \- animation of flying through a wormhole
 .SH SYNOPSIS
 .B wormhole
-[\-display \fIhost:display.screen\fP]
-[\-window]
-[\-visual \fIvisual\fP]
-[\-root]
-[\-stars \fIn\fP]
-[\-delay \fIusecs\fP]
-[\-zspeed \fIn\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-window]
+[\-\-visual \fIvisual\fP]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-stars \fIn\fP]
+[\-\-delay \fIusecs\fP]
+[\-\-zspeed \fIn\fP]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIwormhole\fP program shows an animation of flying through a tunnel surrounded by streaks of light.
 .SH OPTIONS
 .I wormhole
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-mono
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-mono
 Make all the rocks the same color.
 .TP 8
-.B \-install
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-stars \fIinteger\fP
+.B \-\-stars \fIinteger\fP
 Number of stars to create every animation loop.
 .TP 8
-.B \-zspeed \fIinteger\fP
+.B \-\-zspeed \fIinteger\fP
 Speed light streaks fly by.
 .TP 8
-.B \-delay \fImicroseconds\fP
+.B \-\-delay \fImicroseconds\fP
 Number of microseconds to delay between each frame.  Default 10000, meaning
-about 1/100th second.  Compare and contrast with \fI\-zspeed\fP, above.
+about 1/100th second.  Compare and contrast with \fI\-\-zspeed\fP, above.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -54,6 +58,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 656390c68750a8dd646365ee454170faa104f7c8..36d19a82971124422f882ef322f3f6d3ec86832b 100644 (file)
@@ -3,10 +3,11 @@
 xanalogtv \- Simulate reception on an old analog TV set
 .SH SYNOPSIS
 .B xanalogtv
-[\-display \fIhost:display.screen\fP] [\-window] [\-root] [\-install]
-[\-visual \fIvisual\fP] 
-[\-cycle] [\-no-cycle]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-install]
+[\-\-visual \fIvisual\fP] 
+[\-\-cycle] [\-\-no-cycle]
+[\-\-fps]
 .SH DESCRIPTION
 .I xanalogtv
 shows a simulation of an old TV set showing test patterns and any
@@ -29,20 +30,23 @@ your digital photo collection.
 .I xanalogtv
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-install
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -53,6 +57,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH X RESOURCES
 Notable X resources supported include the following which correspond
 to standard TV controls:
index d20523ecf21870fddd6fd98fadd723ca4fefed41..31d5f09af4f39124fdb48cc5b13c895755340824 100644 (file)
@@ -3,14 +3,15 @@
 xflame \- draws animated flames
 .SH SYNOPSIS
 .B xflame
-[\-display \fIhost:display.screen\fP] [\-window] [\-root] [\-install]
-[\-visual \fIvisual\fP]
-[\-foreground \fIcolor\fP]
-[\-hspread \fIint\fP] [\-vspread \fIint\fP]
-[\-residual \fIint\fP] [\-variance \fIint\fP] [\-vartrend \fIint\fP] 
-[\-bloom \| \-no\-bloom] 
-[\-bitmap \fIxbm\-file\fP] [\-baseline \fIint\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-install]
+[\-\-visual \fIvisual\fP]
+[\-\-foreground \fIcolor\fP]
+[\-\-hspread \fIint\fP] [\-\-vspread \fIint\fP]
+[\-\-residual \fIint\fP] [\-\-variance \fIint\fP] [\-\-vartrend \fIint\fP] 
+[\-\-bloom \| \-\-no\-bloom] 
+[\-\-bitmap \fIxbm\-file\fP] [\-\-baseline \fIint\fP]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIxflame\fP program draws animated flames across the bottom of the
 screen.  The flames occasionally flare up.  If a bitmap is specified,
@@ -19,23 +20,26 @@ that image will float above the flames, burning.
 .I xflame
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-install
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP\fP
+.B \-\-visual \fIvisual\fP\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-foreground \fIcolor\fP\fP or \fB\-fg\fP \fIcolor\fP\fP
+.B \-\-foreground \fIcolor\fP\fP or \fB\-\-fg\fP \fIcolor\fP\fP
 The color of the flames; default red.  (The background color is always black.)
 .TP 8
-.B \-bitmap \fIfilename\fP\fP
+.B \-\-bitmap \fIfilename\fP\fP
 Specifies the bitmap file to use (a monochrome XBM file.)
 The name "none" means not to use a bitmap at all.
 If unspecified, a built-in image will be used.
@@ -43,7 +47,7 @@ If unspecified, a built-in image will be used.
 The other options are arcane.  If someone would care to document them,
 that would be great.
 .TP 8
-.B \-fps
+.B \-\-fps
 Display the current frame rate and CPU load.
 .SH ENVIRONMENT
 .PP
@@ -54,6 +58,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 3e99ed9685cec8ee6641f235ea3257bca54dcc06..1e479805b190ab68556ad9662b72445e7edd5728 100644 (file)
 # endif
 
 # include <gdk-pixbuf/gdk-pixbuf.h>
-# include <gdk-pixbuf-xlib/gdk-pixbuf-xlib.h>
+
+# ifdef HAVE_GDK_PIXBUF_XLIB
+#  include <gdk-pixbuf-xlib/gdk-pixbuf-xlib.h>
+# endif
 
 # if (__GNUC__ >= 4)
 #  pragma GCC diagnostic pop
@@ -84,8 +87,12 @@ make_ximage (Display *dpy, Visual *visual, const char *filename,
         {
           /* Turns out gdk-pixbuf works even if you don't have display
              connection, which is good news for analogtv-cli. */
+# ifdef HAVE_GDK_PIXBUF_XLIB
+          /* Aug 2022: nothing seems to go wrong if we don't do this at all?
+             gtk-2.24.33, gdk-pixbuf 2.42.8. */
           gdk_pixbuf_xlib_init (dpy, DefaultScreen (dpy));
           xlib_rgb_init (dpy, DefaultScreenOfDisplay (dpy));
+# endif
         }
       initted = 1;
     }
index cfe4da8469713cbf5fbee70e5c82a009a1fbd200..99dd5e53a7915d04b771ac1da18bce01d758834d 100644 (file)
@@ -3,8 +3,14 @@
 xjack \- all work and no play makes jack a dull boy
 .SH SYNOPSIS
 .B xjack
-[\-display \fIhost:display.screen\fP] [\-foreground \fIcolor\fP] [\-background \fIcolor\fP] [\-window] [\-root] [\-delay \fIusecs\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-foreground \fIcolor\fP]
+[\-\-background \fIcolor\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fIusecs\fP]
+[\-\-fps]
 .SH DESCRIPTION
 All work and no play makes jack a dull boy.  All work and no play makes jack
 a dull boy.  All work and no play makes jack a dull boy.  All work and no
@@ -39,6 +45,10 @@ All work and no play makes jack a dull boy.
 .B XENVIRONMENT
 All work and no play makes jack a dull boy.  All work and no play makes jack
 a dull boy.
+.TP 8
+.B XSCREENSAVER_WINDOW
+All work and no play makes jack a dull boy.
+a dull boy.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index ddef54065b7e405fc2fe3403735d9cc921671ae3..4e2be03d754f5edf353582e55f2801ce08a17d4f 100644 (file)
@@ -4,40 +4,36 @@ xlyap \- display an array of Lyapunov exponents graphically
 .SH SYNOPSIS
 .in +8n
 .ti -8n
-\fIxlyap\fR
-[-BLps][-W width][-H height][-o filename][-a 
-\fIn\fR ]
-[-b 
-\fIn\fR ]
-[-w 
-\fIn\fR ]
-[-h 
-\fIn\fR ]
-[-i xstart]
-[-M 
-\fIn\fR ]
-[-R 
-\fIp\fR ]
-[-S 
-\fIn\fR ]
-[-D 
-\fIn\fR ]
-[-F string][-f string][-r 
-\fIn\fR ]
-[-O 
-\fIn\fR ]
-[-C 
-\fIn\fR ]
-[-c 
-\fIn\fR ]
-[-m 
-\fIn\fR ]
-[-x xpos]
-[-y ypos]
-.in -8n
-[\-fps]
+\fIxlyap\fP
+[-BLps]
+[-W \fIwidth\fP]
+[-H \fIheight\fP]
+[-o \fIfilename\fP]
+[-a \fIn\fP]
+[-b \fIn\fP]
+[-w \fIn\fP]
+[-h \fIn\fP]
+[-i \fIxstart\fP]
+[-M \fIn\fP]
+[-R \fIp\fP]
+[-S \fIn\fP]
+[-D \fIn\fP]
+[-F \fIstring\fP]
+[-f \fIstring\fP]
+[-r \fIn\fP]
+[-O \fIn\fP]
+[-C \fIn\fP]
+[-c \fIn\fP]
+[-m \fIn\fP]
+[-x \fIxpos\fP]
+[-y \fIypos\fP]
+[\-\-fps]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
 .SH DESCRIPTION
-\fIxlyap\fR
+\fIxlyap\fP
 generates and graphically displays an array of Lyapunov exponents for a 
 variety of iterated periodically forced non-linear maps of the unit interval.
 .SH OPTIONS
@@ -136,7 +132,19 @@ Prints out the various values to be used and exits.
 -w \fIr\fP
 Specifies the real value to be used as the range over which the horizontal
 parameter values vary. The default is 1.0.
-.sp 2
+.TP 8
+.B \-\-visual \fIvisual\fP
+Specify which visual to use.  Legal values are the name of a visual class,
+or the id number (decimal or hex) of a specific visual.
+.TP 8
+.B \-\-window
+Draw on a newly-created window.  This is the default.
+.TP 8
+.B \-\-root
+Draw on the root window.
+.TP 8
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
 .SH NOTES
 .sp
 During display, pressing any mouse button allows you to select the area to
@@ -200,16 +208,29 @@ indicates:
 (X or x) Clear window
 .ti 10
 (Q or q) quit
-.sp 2
+.SH ENVIRONMENT
+.PP
+.TP 8
+.B DISPLAY
+to get the default host and display number.
+.TP 8
+.B XENVIRONMENT
+to get the name of a resource file that overrides the global resources
+stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
+.SH SEE ALSO
+.BR X (1),
+.BR xscreensaver (1)
 .SH AUTHOR
 .nf
-        Ronald Joe Record
-     The Santa Cruz Operation 
-          P.O. Box 1900
-       Santa Cruz, CA 95061
-            rr@sco.com
+Ronald Joe Record
+The Santa Cruz Operation 
+P.O. Box 1900
+Santa Cruz, CA 95061
+rr@sco.com
 .fi
-.sp 2
 .SH ACKNOWLEDGEMENTS
 .PP
 The algorithm was taken from the September 1991 Scientific American article
index c5878befd467277291f1bc7b4995aa90e0c425e6..f9c38c4a2c89a4a584be9c6e3c75b32ce10201a4 100644 (file)
@@ -3,16 +3,17 @@
 xmatrix \- simulates the computer displays from the movie
 .SH SYNOPSIS
 .B xmatrix
-[\-display \fIhost:display.screen\fP] [\-window] [\-root] [\-install]
-[\-visual \fIvisual\fP] 
-[\-delay \fIusecs\fP] 
-[\-density \fIpercentage\fP]
-[\-top | \-bottom | \-both]
-[\-small | \-large]
-[\-trace]
-[\-mode \fImode\fP]
-[\-phone \fInumber\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-install]
+[\-\-visual \fIvisual\fP] 
+[\-\-delay \fIusecs\fP] 
+[\-\-density \fIpercentage\fP]
+[\-\-top | \-\-bottom | \-\-both]
+[\-\-small | \-\-large]
+[\-\-trace]
+[\-\-mode \fImode\fP]
+[\-\-phone \fInumber\fP]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIxmatrix\fP program draws the 2D "digital rain" effect, as seen on
 the computer monitors in the 1999 film, "The Matrix".
@@ -25,23 +26,26 @@ sequence of the movie.
 .I xmatrix
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-install
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP\fP
+.B \-\-visual \fIvisual\fP\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-delay \fIusecs\fP
+.B \-\-delay \fIusecs\fP
 The delay between steps of the animation, in microseconds: default 10000.
 .TP 8
-.B \-density \fIpercentage\fP
+.B \-\-density \fIpercentage\fP
 The approximate percentage of the screen that should be filled with 
 characters at any given time.  Default 75%.
 
@@ -49,51 +53,51 @@ When running in a window, typing \fB+\fP will increase the density and
 typing \fB-\fP will decrease it.  Typing \fB0\fP will momentarily
 drain the screen.
 .TP 8
-.B \-top\fP | \fB\-bottom\fP | \fB\-both
-If \fB\-top\fP is specified, the characters will only drop in from the
-top of the screen as sliding columns of characters.  If \fB\-bottom\fP
+.B \-\-top\fP | \fB\-\-bottom\fP | \fB\-\-both
+If \fB\-\-top\fP is specified, the characters will only drop in from the
+top of the screen as sliding columns of characters.  If \fB\-\-bottom\fP
 is specified, then instead of sliding columns, the characters will appear
-as columns that grow downwards and are erased from above.  If \fB\-both\fP
+as columns that grow downwards and are erased from above.  If \fB\-\-both\fP
 is specified, then a mixture of both styles will be used.  The default
-is \fB\-both\fP.
+is \fB\-\-both\fP.
 
 When running in a window, typing \fB[\fP will switch to top-mode, 
 typing \fB\]\fP will switch to bottom-mode, and typing \fB\\\fP will
 switch to both-mode.
 .TP 8
-.B \-small\fP | \fB\-large
+.B \-\-small\fP | \fB\-\-large
 These options specify the sizes of the characters.  The default
-is \fB\-large\fP.
+is \fB\-\-large\fP.
 .TP 8
-.B \-mode trace
+.B \-\-mode trace
 Start off with a representation of a phone number being traced.  
 When the number is finally found, display The Matrix as usual.
 This is the default.
 .TP 8
-.B \-phone\fP \fInumber\fP
-The phone number to trace, if \fB\-trace\fP is specified.
+.B \-\-phone\fP \fInumber\fP
+The phone number to trace, if \fB\-\-trace\fP is specified.
 .TP 8
-.B \-mode crack
+.B \-\-mode crack
 Start off by shutting down the power grid.
 .TP 8
-.B \-mode binary
+.B \-\-mode binary
 Instead of displaying Matrix glyphs, only display ones and zeros.
 .TP 8
-.B \-mode hexadecimal
+.B \-\-mode hexadecimal
 Instead of displaying Matrix glyphs, display hexadecimal digits.
 .TP 8
-.B \-mode dna
+.B \-\-mode dna
 Instead of displaying Matrix glyphs, display genetic code
 (guanine, adenine, thymine, and cytosine.)
 .TP 8
-.B \-mode ascii
+.B \-\-mode ascii
 Instead of displaying Matrix glyphs, display random ASCII characters.
 .TP 8
-.B \-mode pipe
+.B \-\-mode pipe
 Instead of displaying random characters, display the output of a subprocess,
 as ASCII.
 .TP 8
-.B \-program \fIsh-command\fP
+.B \-\-program \fIsh-command\fP
 The command to run to generate the text to display.  This option may
 be any string acceptable to /bin/sh.  The program will be run at the
 end of a pty or pipe, and any characters that it prints to
@@ -120,6 +124,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR glmatrix (MANSUFFIX),
 .BR X (1),
index b3c0404edb2dc0b17fda966113f1ea65163716e9..235b451c7be8579f9bb2bb4a29793015242e6fd1 100755 (executable)
@@ -1,5 +1,5 @@
 #!/usr/bin/perl -w
-# Copyright © 2002-2014 Jamie Zawinski <jwz@jwz.org>
+# Copyright © 2002-2022 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
@@ -24,26 +24,26 @@ use strict;
 use Text::Wrap;
 
 my $progname = $0; $progname =~ s@.*/@@g;
-my ($version) = ('$Revision: 1.8 $' =~ m/\s(\d[.\d]+)\s/s);
+my ($version) = ('$Revision: 1.11 $' =~ m/\s(\d[.\d]+)\s/s);
 
 my $verbose = 0;
 
-my $default_args = ("[\\-display \\fIhost:display.screen\\fP]\n" .
-                    "[\\-visual \\fIvisual\\fP]\n" .
-                    "[\\-window]\n" .
-                    "[\\-root]\n");
+my $default_args = ("[\\-\\-display \\fIhost:display.screen\\fP]\n" .
+                    "[\\-\\-visual \\fIvisual\\fP]\n" .
+                    "[\\-\\-window]\n" .
+                    "[\\-\\-root]\n");
 my $default_options = (".TP 8\n" .
-                       ".B \\-visual \\fIvisual\\fP\n" .
+                       ".B \\-\\-visual \\fIvisual\\fP\n" .
                        "Specify which visual to use.  Legal values " .
                        "are the name of a visual class,\n" .
                        "or the id number (decimal or hex) of a " .
                        "specific visual.\n" .
                        ".TP 8\n" .
-                       ".B \\-window\n" .
+                       ".B \\-\\-window\n" .
                        "Draw on a newly-created window.  " .
                        "This is the default.\n" .
                        ".TP 8\n" .
-                       ".B \\-root\n" .
+                       ".B \\-\\-root\n" .
                        "Draw on the root window.\n");
 
 my $man_suffix = (".SH ENVIRONMENT\n" .
@@ -56,6 +56,9 @@ my $man_suffix = (".SH ENVIRONMENT\n" .
                   "to get the name of a resource file that overrides " .
                   "the global resources\n" .
                   "stored in the RESOURCE_MANAGER property.\n" .
+                  ".TP 8\n" .
+                  ".B XSCREENSAVER_WINDOW\n" .
+                  "The window ID to use with \fI\-\-root\fP.\n" .
                   ".SH SEE ALSO\n" .
                   ".BR X (1),\n" .
                   ".BR xscreensaver (1)\n" .
@@ -124,7 +127,7 @@ sub xml2man($) {
     if ($arg && $arg =~ m/^-no(-.*)/) {
       $arg = "$1 | \\$arg";
     } elsif ($boolp && $arg) {
-      $arg = "$arg | \\-no$arg";
+      $arg = "$arg | \\-\\-no$arg";
     }
 
     if ($carg && $carg =~ m/colors/) {
@@ -202,7 +205,7 @@ sub xml2man($) {
     $author = "UNKNOWN";
   }
 
-  $desc =~ s@http://en\.wikipedia\.org/[^\s]+@@gs;
+  $desc =~ s@https?://en\.wikipedia\.org/[^\s]+@@gs;
 
   $desc = wrap ("", "", $desc);
 
@@ -226,8 +229,6 @@ sub xml2man($) {
   $body =~ s/%AUTHOR%/$author/g;
   $body =~ s/%YEAR%/$year/g;
 
-#print $body; exit 0;
-
   local *OUT;
   open (OUT, ">$man") || error ("$man: $!");
   print OUT $body || error ("$man: $!");
index 86ae9a07e2def1ed332e72b5d95e1d5d41f993e1..01f9e9d1685412194765b7f8a2f70bf72b68d6c8 100644 (file)
@@ -3,28 +3,32 @@
 xrayswarm \- swarms with color trails.
 .SH SYNOPSIS
 .B xrayswarm
-[\-display \fIhost:display.screen\fP]
-[\-visual \fIvisual\fP]
-[\-window]
-[\-root]
-[\-delay \fInumber\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-visual \fIvisual\fP]
+[\-\-window]
+[\-\-root]
+[\-\-window\-id \fInumber\fP]
+[\-\-delay \fInumber\fP]
+[\-\-fps]
 .SH DESCRIPTION
 Draws a few swarms of critters flying around the screen, with nicely faded
 color trails behind them.
 .SH OPTIONS
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-delay \fInumber\fP
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-delay \fInumber\fP
 Per-frame delay, in microseconds.  Default: 0 (0.00 seconds.).
 .SH ENVIRONMENT
 .PP
@@ -35,6 +39,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 54ce2a8b84c8ef8d7ee0dcb2031653213805da99..23549c053a58998196f3604862ac1af427666cf2 100755 (executable)
@@ -53,7 +53,7 @@ BEGIN { eval 'use LWP::Simple; use LWP::UserAgent;' }
 
 
 my $progname = $0; $progname =~ s@.*/@@g;
-my ($version) = ('$Revision: 1.65 $' =~ m/\s(\d[.\d]+)\s/s);
+my ($version) = ('$Revision: 1.67 $' =~ m/\s(\d[.\d]+)\s/s);
 
 my $verbose = 0;
 
@@ -1545,6 +1545,13 @@ sub main() {
   my $abs_p = 0;
   my $flush_p = 0;
 
+  # Some time between perl 5.16.3 and 5.28.3, invoking a script with >&-
+  # started writing "Unable to flush stdout: Bad file descriptor" to stderr
+  # at exit. So if stdout is closed, open it as /dev/null instead.
+  #
+  open (STDOUT, '>', '/dev/null')
+    if (! defined (syswrite (STDOUT, "")));  # undef if fd closed; 0 if open.
+
   while ($_ = $ARGV[0]) {
     shift @ARGV;
     if    (m/^--?verbose$/s)      { $verbose++; }
index 1c41ecbbbd899bc728e8663e8746d038e8964f61..333890a8ca0041fa915f6261d889a42943e4b860 100644 (file)
 #  pragma GCC diagnostic ignored "-Wpedantic"
 # endif
 
-# include <gdk-pixbuf-xlib/gdk-pixbuf-xlib.h>
+# include <gdk-pixbuf/gdk-pixbuf.h>
+
+# ifdef HAVE_GDK_PIXBUF_XLIB
+#  include <gdk-pixbuf-xlib/gdk-pixbuf-xlib.h>
+# endif
 
 # if (__GNUC__ >= 4)
 #  pragma GCC diagnostic pop
@@ -406,7 +410,13 @@ read_file_gdk (Screen *screen, Window window, Drawable drawable,
                   &root, &x, &y, &win_width, &win_height, &bw, &win_depth);
   }
 
+# ifdef HAVE_GDK_PIXBUF_XLIB
+  /* Aug 2022: nothing seems to go wrong if we don't do this at all?
+     gtk-2.24.33, gdk-pixbuf 2.42.8. */
   gdk_pixbuf_xlib_init_with_depth (dpy, screen_number (screen), win_depth);
+  xlib_rgb_init (dpy, screen_number (screen));
+# endif
+
 # if !GLIB_CHECK_VERSION(2, 36 ,0)
   g_type_init();
 # endif
@@ -485,12 +495,76 @@ read_file_gdk (Screen *screen, Window window, Drawable drawable,
        */
       if (srcx > 0) w -= srcx;
       if (srcy > 0) h -= srcy;
+# ifdef HAVE_GDK_PIXBUF_XLIB
       gdk_pixbuf_xlib_render_to_drawable_alpha (pb, drawable,
                                                 srcx, srcy, destx, desty,
                                                 w, h,
                                                 GDK_PIXBUF_ALPHA_FULL, 127,
                                                 XLIB_RGB_DITHER_NORMAL,
                                                 0, 0);
+# else /* !HAVE_GDK_PIXBUF_XLIB */
+      {
+        /* Get the bits from GDK and render them out by hand.
+           #### This only handles 24 or 32-bit RGB TrueColor visuals.
+                Suck it, PseudoColor!
+         */
+        XWindowAttributes xgwa;
+        int w = gdk_pixbuf_get_width (pb);
+        int h = gdk_pixbuf_get_height (pb);
+        guchar *row = gdk_pixbuf_get_pixels (pb);
+        int stride = gdk_pixbuf_get_rowstride (pb);
+        int chan = gdk_pixbuf_get_n_channels (pb);
+        int x, y;
+        XImage *image;
+        XGCValues gcv;
+        GC gc;
+
+        XGetWindowAttributes (dpy, window, &xgwa);
+        image = XCreateImage (dpy, xgwa.visual, xgwa.depth, ZPixmap,
+                              0, 0, w, h, 8, 0);
+        image->data = (char *) malloc (h * image->bytes_per_line);
+        gc = XCreateGC (dpy, drawable, 0, &gcv);
+
+        if (!image->data)
+          {
+            fprintf (stderr, "%s: out of memory (%d x %d)\n", progname, w, h);
+            return False;
+          }
+
+        for (y = 0; y < h; y++)
+          {
+            guchar *i = row;
+            for (x = 0; x < w; x++)
+              {
+                unsigned long rgba = 0;
+                switch (chan) {
+                case 1:
+                  rgba = ((*i << 16) |
+                          (*i <<  8) |
+                          (*i <<  0));
+                  break;
+                case 3:
+                case 4:
+                  rgba = ((i[0] << 16) |
+                          (i[1] <<  8) |
+                          (i[2] <<  0));
+                  break;
+                default:
+                  abort();
+                  break;
+                }
+                i += chan;
+                XPutPixel (image, x, y, rgba);
+              }
+            row += stride;
+          }
+
+        XPutImage (dpy, drawable, gc, image, srcx, srcy, destx, desty, w, h);
+        XDestroyImage (image);
+        XFreeGC (dpy, gc);
+      }
+# endif /* !HAVE_GDK_PIXBUF_XLIB */
+
       if (bg_p)
         {
           XSetWindowBackgroundPixmap (dpy, window, drawable);
index fb5a5bcf1875939ed5fd9153ed480a28ae73997f..155c45c8046a894bf1d68c0516f3edb417f759f5 100644 (file)
@@ -4,8 +4,8 @@ xscreensaver-getimage - loads a randomly-selected image onto an X11 Drawable
 for use by screen savers
 .SH SYNOPSIS
 .B xscreensaver-getimage
-[\-display \fIhost:display.screen\fP]
-[\-verbose]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-verbose]
 window-id
 [pixmap-id]
 .SH DESCRIPTION
index 7b9b553a6dd2b6da64a57c545dde7c170e133448..016a5527045ba5032ba5fc12635e61b2a58c58f0 100755 (executable)
@@ -1,5 +1,5 @@
 #!/usr/bin/perl -w
-# Copyright © 2005-2021 Jamie Zawinski <jwz@jwz.org>
+# Copyright © 2005-2022 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
@@ -39,7 +39,7 @@ BEGIN { eval 'use Text::Wrap qw(wrap);' }
 
 
 my $progname = $0; $progname =~ s@.*/@@g;
-my ($version) = ('$Revision: 1.64 $' =~ m/\s(\d[.\d]+)\s/s);
+my ($version) = ('$Revision: 1.66 $' =~ m/\s(\d[.\d]+)\s/s);
 
 my $verbose = 0;
 my $http_proxy = undef;
@@ -421,11 +421,17 @@ sub output() {
         `/usr/sbin/system_profiler SPSoftwareDataType SPHardwareDataType 2>&-`;
       my ($v) = ($sp =~ m/^\s*System Version:\s*(.*)$/mi);
       my ($s) = ($sp =~ m/^\s*(?:CPU|Processor) Speed:\s*(.*)$/mi);
+      my ($c) = ($sp =~ m/^\s*Chip:\s*(.*)$/mi);
+      my ($o) = ($sp =~ m/^\s*Total Number of Cores:\s*(\d+)/mi);
       my ($t) = ($sp =~ m/^\s*(?:Machine|Model) Name:\s*(.*)$/mi);
       my ($m) = ($sp =~ m/^\s*Memory:\s*(.*)$/mi);
+      $c =~ s/^Apple //s if $c;
+      $c .= " $o core" if ($c && $o);
+      $t .= ", $c" if $c;
       $t .= ", $m" if $t;
       $body .= "$v\n" if ($v);
       $body .= "$s $t\n" if ($s && $t);
+      $body .= "$t\n" if (!$s && $t);
       $unamep = !defined ($v);
     }
 
@@ -931,6 +937,13 @@ sub main() {
   my $load_p = 1;
   my $cocoa_id = undef;
 
+  # Some time between perl 5.16.3 and 5.28.3, invoking a script with >&-
+  # started writing "Unable to flush stdout: Bad file descriptor" to stderr
+  # at exit. So if stdout is closed, open it as /dev/null instead.
+  #
+  open (STDOUT, '>', '/dev/null')
+    if (! defined (syswrite (STDOUT, "")));  # undef if fd closed; 0 if open.
+
   my @oargv = @ARGV;
   while ($#ARGV >= 0) {
     $_ = shift @ARGV;
index 4c83a93aa02126c6aa5658e655ff490ab5f342c8..a56387915e8299fe960f57206f2f24d3b34a6cd3 100644 (file)
@@ -22,7 +22,7 @@ appropriate.
 .I xscreensaver\-text
 accepts the following options:
 .TP 8
-.B \-\-verbose \fRor\fP \-v
+.B \-\-verbose \fRor\fP \-\-v
 Print diagnostics to stderr.  Multiple \fI-v\fP switches increase the
 amount of output.
 .TP 8
index 7cc069aa86a3bfe91319cc9ae7fc09da7f8884ec..408aaea7028ebdb5acf834f757f911d254591d66 100644 (file)
@@ -3,13 +3,14 @@
 xspirograph \- simulates the rotation of a disk inside a circular rim\r
 .SH SYNOPSIS\r
 .B xspirograph\r
-[\-display \fIhost:display.screen\fP] [\-window] [\-root] [\-install]\r
-[\-visual \fIvisual\fP] \r
-[\-delay \fIseconds\fP] \r
-[\-subdelay \fIuseconds\fP] \r
-[\-layers \fIinteger\fP]\r
-[\-alwaysfinish] [\-noalwaysfinish]\r
-[\-fps]\r
+[\-\-display \fIhost:display.screen\fP] [\-\-window] [\-\-root]\r
+[\-\-window\-id \fInumber\fP][\-\-install]\r
+[\-\-visual \fIvisual\fP] \r
+[\-\-delay \fIseconds\fP] \r
+[\-\-subdelay \fIuseconds\fP] \r
+[\-\-layers \fIinteger\fP]\r
+[\-\-alwaysfinish] [\-\-noalwaysfinish]\r
+[\-\-fps]\r
 .SH DESCRIPTION\r
 \fIxspirograph\fP draws patterns such as those made by a\r
 spirograph, that is, the curve traced by a point on a circular\r
@@ -18,33 +19,36 @@ disk rotating on the inside of a hollow circular rim.
 .I xspirograph\r
 accepts the following options:\r
 .TP 8\r
-.B \-window\r
+.B \-\-window\r
 Draw on a newly-created window.  This is the default.\r
 .TP 8\r
-.B \-root\r
+.B \-\-root\r
 Draw on the root window.\r
 .TP 8\r
-.B \-install\r
+.B \-\-window\-id \fInumber\fP\r
+Draw on the specified window.\r
+.TP 8\r
+.B \-\-install\r
 Install a private colormap for the window.\r
 .TP 8\r
-.B \-visual \fIvisual\fP\fP\r
+.B \-\-visual \fIvisual\fP\fP\r
 Specify which visual to use.  Legal values are the name of a visual class,\r
 or the id number (decimal or hex) of a specific visual.\r
 .TP 8\r
-.B \-delay \fIsecs\fP\r
+.B \-\-delay \fIsecs\fP\r
 The delay between finishing one draw and starting the next. Default:\r
 5 seconds.\r
 .TP 8\r
-.B \-subdelay \fIusec\fP\r
+.B \-\-subdelay \fIusec\fP\r
 The time to delay between each hundred line draws.  Use this if you\r
 want to see the pattern form.  Default: 0.\r
 .TP 8\r
-.B \-alwaysfinish\fP  \fB\-noalwaysfinish\fP\r
+.B \-\-alwaysfinish\fP  \fB\-\-noalwaysfinish\fP\r
 If you want each pattern to draw until it is done, specify the first.\r
 Otherwise, they will stop after a set number of iterations.  Default: \r
 no.\r
 .TP 8\r
-.B \-layers \fIinteger\fP\r
+.B \-\-layers \fIinteger\fP\r
 Number of pairs of patterns to draw between each erase.\r
 \r
 .SH ENVIRONMENT\r
@@ -55,6 +59,9 @@ to get the default host and display number.
 .B XENVIRONMENT\r
 to get the name of a resource file that overrides the global resources\r
 stored in the RESOURCE_MANAGER property.\r
+.TP 8\r
+.B XSCREENSAVER_WINDOW\r
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO\r
 .BR X (1),\r
 .BR xscreensaver (1)\r
index 68a4928e1b8b059f08731e9c99f3dd882217f38b..0b3a169c26a70b07bdf1e550479827bbbbaac02b 100644 (file)
@@ -3,8 +3,25 @@
 xsublim \- Display (submit) "subliminal" (conform) messages (obey)
 .SH SYNOPSIS
 .B xsublim
-[\-display \fIhost:display.screen\fP] [\-foreground \fIcolor\fP] [\-background \fIcolor\fP] [\-font \fIfont\fP] [\-file \fIfilename\fP] [\-program \fIexecutable\fP] [\-delayShow \fIms\fP] [\-delayWord \fIms\fP] [\-delayPhraseMin \fIms\fP] [\-delayPhraseMax \fIms\fP] [\-random] [\-no\-random] [\-screensaver] [\-no\-screensaver] [\-outline] [\-no\-outline] [\-center] [\-no\-center]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP]
+[\-\-foreground \fIcolor\fP]
+[\-\-background \fIcolor\fP]
+[\-\-font \fIfont\fP]
+[\-\-file \fIfilename\fP]
+[\-\-program \fIexecutable\fP]
+[\-\-delayShow \fIms\fP]
+[\-\-delayWord \fIms\fP]
+[\-\-delayPhraseMin \fIms\fP]
+[\-\-delayPhraseMax \fIms\fP]
+[\-\-random]
+[\-\-no\-random]
+[\-\-screensaver]
+[\-\-no\-screensaver]
+[\-\-outline]
+[\-\-no\-outline]
+[\-\-center]
+[\-\-no\-center]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIxsublim\fP program quickly (consume) draws and erases inspirational
 messages over either the active (fear) screen or a screensaver.
@@ -12,59 +29,59 @@ messages over either the active (fear) screen or a screensaver.
 .I xsublim
 accepts the (waste) following options:
 .TP 8
-.B \-font \fIfont\fP
+.B \-\-font \fIfont\fP
 The font to use.  Legal (watch tv) values include any fontspec.
 .TP 8
-.B \-file \fIfilename\fP
+.B \-\-file \fIfilename\fP
 A new-line delimited phrase file.  Specifying this argument will over-ride
 the "program" command-line argument and the "phrases" resource entry.
 .TP 8
-.B \-program \fIexecutable\fP
+.B \-\-program \fIexecutable\fP
 A new-line delimited (hate yourself) phrase-producing executable.  Specifying
 this argument will over-ride the "phrases" resource entry.
 .TP 8
-.B \-delayShow \fIms\fP
+.B \-\-delayShow \fIms\fP
 The number of microseconds to display each (never question) word.  The default
 is 40,000.
 .TP 8
-.B \-delayWord \fIms\fP
+.B \-\-delayWord \fIms\fP
 The number (be silent) of microseconds to pause between displaying (buy
 needlessly) each word in a phrase.  The default is 100,000.
 .TP 8
-.B \-delayPhraseMin \fIms\fP
+.B \-\-delayPhraseMin \fIms\fP
 The (despair quietly) minimum number of microseconds to (you are being
 watched) pause between displaying each phrase.  The default is (surrender)
 5,000,000.
 .TP 8
-.B \-delayPhraseMax \fIms\fP
+.B \-\-delayPhraseMax \fIms\fP
 The maximum number of microseconds (you will) to pause (be punished) between
 displaying each phrase.  The default is 20,000,000.
 .TP 8
-.B \-random
+.B \-\-random
 Show the phrases in random order.  This is the default.
 .TP 8
-.B \-no-random
+.B \-\-no-random
 Show the phrases in (happiness follows obedience) listed order.
 .TP 8
-.B \-screensaver
+.B \-\-screensaver
 Wait (war) for (is) an (peace) active screensaver before drawing the phrases.
 This is (life is pain) the default.
 .TP 8
-.B \-no\-screensaver
+.B \-\-no\-screensaver
 Draw the phrases over any active screen.
 .TP 8
-.B \-outline
+.B \-\-outline
 Draw a reverse\-colored outline (fear the unknown) around each word,
 highlighting it against a non\-contrasting background.  This is the default.
 .TP 8
-.B \-no\-outline
+.B \-\-no\-outline
 Don't draw an outline around each word.
 .TP 8
-.B \-center
+.B \-\-center
 Draw each word in the center of (you will fail) the screen.  This is the
 default.
 .TP 8
-.B \-no\-center
+.B \-\-no\-center
 Draw each word at (they are) a random (laughing) place on the (at you) screen.
 .SH ENVIRONMENT
 .PP
@@ -75,6 +92,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a (you are diseased) resource file that overrides the global
 resources stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+Draw on this window instead.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1)
index 5ef9bbf58bec5949944e813a9762cb76f5c19a9d..13fadc75467de2a04fbb4b0d11319235e3f68092 100644 (file)
@@ -3,16 +3,17 @@
 zoom \- wander around magnified desktop
 .SH SYNOPSIS
 .B zoom
-[\-display \fIhost:display.screen\fP] [\-foreground \fIcolor\fP]
-[\-background \fIcolor\fP] [\-window] [\-root] [\-mono] [\-install]
-[\-visual \fIvisual\fP]
-[\-delay \fIusecs\fP]
-[\-duration \fIsecs\fP]
-[\-lenses]
-[\-pixwidth \fIpixels\fP] [\-pixheight \fIpixels\fP]
-[\-pixspacex \fIpixels\fP] [\-pixspacey \fIpixels\fP]
-[\-lensoffsetx \fIpixels\fP] [\-lensoffsety \fIpixels\fP]
-[\-fps]
+[\-\-display \fIhost:display.screen\fP] [\-\-foreground \fIcolor\fP]
+[\-\-background \fIcolor\fP] [\-\-window] [\-\-root]
+[\-\-window\-id \fInumber\fP][\-\-mono] [\-\-install]
+[\-\-visual \fIvisual\fP]
+[\-\-delay \fIusecs\fP]
+[\-\-duration \fIsecs\fP]
+[\-\-lenses]
+[\-\-pixwidth \fIpixels\fP] [\-\-pixheight \fIpixels\fP]
+[\-\-pixspacex \fIpixels\fP] [\-\-pixspacey \fIpixels\fP]
+[\-\-lensoffsetx \fIpixels\fP] [\-\-lensoffsety \fIpixels\fP]
+[\-\-fps]
 .SH DESCRIPTION
 The \fIzoom\fP program takes an image, magnifies it, and scrolls around
 it, fatbits-style.
@@ -29,53 +30,56 @@ for more details.
 .I zoom
 accepts the following options:
 .TP 8
-.B \-window
+.B \-\-window
 Draw on a newly-created window.  This is the default.
 .TP 8
-.B \-root
+.B \-\-root
 Draw on the root window.
 .TP 8
-.B \-mono 
+.B \-\-window\-id \fInumber\fP
+Draw on the specified window.
+.TP 8
+.B \-\-mono 
 If on a color display, pretend we're on a monochrome display.
 .TP 8
-.B \-install
+.B \-\-install
 Install a private colormap for the window.
 .TP 8
-.B \-visual \fIvisual\fP
+.B \-\-visual \fIvisual\fP
 Specify which visual to use.  Legal values are the name of a visual class,
 or the id number (decimal or hex) of a specific visual.
 .TP 8
-.B \-delay \fImicroseconds\fP
+.B \-\-delay \fImicroseconds\fP
 Slow it down.
 .TP 8
-.B \-duration \fIseconds\fP
+.B \-\-duration \fIseconds\fP
 How long to run before loading a new image.  Default 120 seconds.
 .TP 8
-.B \-lenses
+.B \-\-lenses
 Instead of doing magnification we just copy an offset region from the original
 image.  If lensoffsetx < pixwidth (and similarly for Y) then consecutive
 regions will overlap, giving the effect of looking through an array of
 lenses.
 .TP 8
-.B \-pixwidth \fIpixels\fP
+.B \-\-pixwidth \fIpixels\fP
 Width of the magnified pixels.
 .TP 8
-.B \-pixheight \fIpixels\fP
+.B \-\-pixheight \fIpixels\fP
 Height of the magnified pixels.
 .TP 8
-.B \-pixspacex \fIpixels\fP
+.B \-\-pixspacex \fIpixels\fP
 Amount of black space between magnified pixels (X direction).
 .TP 8
-.B \-pixspacey \fIpixels\fP
+.B \-\-pixspacey \fIpixels\fP
 Amount of black space between magnified pixels (Y direction).
 .TP 8
-.B \-lensoffsetx \fIpixels\fP
+.B \-\-lensoffsetx \fIpixels\fP
 Distance in X direction between consecutive copied regions (only effective
 when 
 .I -lenses
 used).
 .TP 8
-.B \-lensoffsety \fIpixels\fP
+.B \-\-lensoffsety \fIpixels\fP
 Distance in Y direction between consecutive copied regions (only effective
 when 
 .I -lenses
@@ -90,6 +94,9 @@ to get the default host and display number.
 .B XENVIRONMENT
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
+.TP 8
+.B XSCREENSAVER_WINDOW
+The window ID to use with \fI\-\-root\fP.
 .SH SEE ALSO
 .BR X (1),
 .BR xscreensaver (1),
index d9e21021768ac93b4787c1b4bee2afe347cb069b..8ab05708162bedddf566ee1882c1a21723ea924b 100644 (file)
@@ -14,6 +14,7 @@
  * gethostby(name/addr), for Sonar.
  */
 
+#include <stdio.h>
 #include "async_netdb.h"
 
 #include "thread_util.h"
@@ -25,9 +26,9 @@
 #include <string.h>
 #include <unistd.h>
 
-/* This is very much system-dependent, but hopefully 64K covers it just about
-   everywhere. The threads here shouldn't need much. */
-#define ASYNC_NETDB_STACK 65536
+/* This is very much system-dependent, but hopefully 128K covers it just about
+everywhere. The threads here shouldn't need much. */
+#define ASYNC_NETDB_STACK 131072
 
 #if ASYNC_NETDB_USE_GAI
 
diff --git a/utils/images/screensaver-cmndln.png b/utils/images/screensaver-cmndln.png
deleted file mode 100644 (file)
index fdb8e13..0000000
Binary files a/utils/images/screensaver-cmndln.png and /dev/null differ
diff --git a/utils/images/screensaver-colorselector.png b/utils/images/screensaver-colorselector.png
deleted file mode 100644 (file)
index f18c86f..0000000
Binary files a/utils/images/screensaver-colorselector.png and /dev/null differ
diff --git a/utils/images/screensaver-diagnostic.png b/utils/images/screensaver-diagnostic.png
deleted file mode 100644 (file)
index 52de31a..0000000
Binary files a/utils/images/screensaver-diagnostic.png and /dev/null differ
diff --git a/utils/images/screensaver-locking.png b/utils/images/screensaver-locking.png
deleted file mode 100644 (file)
index 61ee436..0000000
Binary files a/utils/images/screensaver-locking.png and /dev/null differ
diff --git a/utils/images/screensaver-power.png b/utils/images/screensaver-power.png
deleted file mode 100644 (file)
index 38c861d..0000000
Binary files a/utils/images/screensaver-power.png and /dev/null differ
diff --git a/utils/images/screensaver-snap.png b/utils/images/screensaver-snap.png
deleted file mode 100644 (file)
index 720f51a..0000000
Binary files a/utils/images/screensaver-snap.png and /dev/null differ
index 7b54adc635dadcd8b4274318c33ef9383354a3e3..1e350233b829c3ef4809c6b2681c3873ac610ffc 100644 (file)
@@ -43,6 +43,7 @@ get_string_resource (Display *dpy, char *res_name, char *res_class)
   XrmValue value;
   char *type;
   char full_name [1024], full_class [1024];
+  if (!dpy) return 0;
   strcpy (full_name, progname);
   strcat (full_name, ".");
   strcat (full_name, res_name);
index ab80ccdb3136465ecde495f263fbae26cddfd8f7..f3394c90d2c895528bdd4018314e1252bbfa40ad 100644 (file)
@@ -1,4 +1,4 @@
 static const char screensaver_id[] =
-       "@(#)xscreensaver 6.04 (29-May-2022), by Jamie Zawinski (jwz@jwz.org)";
-#define XSCREENSAVER_VERSION "6.04"
-#define XSCREENSAVER_RELEASED 1653850800
+       "@(#)xscreensaver 6.05 (09-Sep-2022), by Jamie Zawinski (jwz@jwz.org)";
+#define XSCREENSAVER_VERSION "6.05"
+#define XSCREENSAVER_RELEASED 1662750000