This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program (as the file COPYING in the main directory of the distribution); if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
Here is the source code.
Here are zip and tar.gz files, each of which contains all of the files on this page.
Wiper is an advertising billboard that cycles through a list of images by applying user-defined special effects. When the user clicks on an advertisement, Wiper takes her to the advertiser's home page.
Wiper is unique in its ability to use images themselves as transition effects. See if you can tell when the following images are used as transition effects in the example above:
Dark parts appear early, and bright parts appear last.
Therefore, no programming is required to generate new transition effects. In fact, if no transition effect is specified for an image, it becomes its own transition effect.
Most billboard applets display advertisers' URLs in the status bar, and Wiper is no exception. However, Wiper updates this URL at the moment that the mouse pointer gets overtaken by a new advertisement. Give it a try! Leave your mouse in Wiper's window and watch. See how long you can keep the mouse away from a new advertisement.
Note: Wiper puts Java's garbage collector through a real workout. This should not be a problem for a correct implementation of Java. However, on my computer (P166 32MB RAM Win95), Netscape 3.0 thrashes and leaks memory while attempting to run Wiper. Microsoft Internet Explorer 3.0 seems to run without a hitch.
Here is a list of Wiper's parameters, all of which assume reasonable default values if left unspecified:
name | type | description | default |
---|---|---|---|
src | URL | location of play list | play.txt |
secondsBetweenSleeps | double | seconds between sleeps | 0.1 |
secondsBetweenWipes | double | seconds between wipe effects | 3.0 |
secondsBetweenFrames | double | seconds between display frames | 0.1 |
wipeBits | int | frame count is two to this power | 5 |
The play list is text with one advertisement per line as follows:
<url of advertiser's home page> <url of advertisement> [url of fade effect]
Here is the play list used to drive the example above:
http://www.bigpanda.com/ image/bigpanda.gif wipe/webbing.gif http://www.fsgames.com/ image/fsgames.gif wipe/magneto.gif http://www.intrasteve.com/ image/intrasteve.gif wipe/chunkle.gif http://www.cyberwar.org/ image/cyberwar.gif wipe/spinkle.gif
Due to the security restrictions imposed upon applets, the applet code, advertisement, and fade effect URLs must refer to the same hostname.
All images loaded by Wiper must be the same size: namely, the size described by the APPLET tag's WIDTH and HEIGHT parameters.