ThePoolMenuApplet
LICENSE
This license ("License") contains rights and restrictions associated with use
of the accompanying software. Read the License carefully before utilizing the
software. By using the software you agree to be bound by the terms and
conditions of this license.
- Limited License Grant. David Griffiths ("The author") grants to you
("Licensee") a nonexclusive, nontransferable, worldwide, royalty-free license
to use this The PoolMenu Applet software (the "Software"). Licensee agrees
that it shall not use the Software for computer operations of any critical
nature.
- Source Code Whilst the author may occasionally make source code available,
it is NOT in the public domain and the author retains full copyright over it.
UNDER NO CIRCUMSTANCES may software be sold containing code derived from this
source code without David Griffiths giving his explicit permission.
- Restrictions. The Software is copyrighted and title to all copies is
retained by the author. Licensee shall not make copies of Software, other than
a single copy of Software in machine-readable format for back-up or archival
purposes and, if applicable, Licensee may print one copy of on-line
documentation, in which event all proprietary rights notices on Software and
on-line documentation shall be reproduced and applied to all copies. Unless
enforcement of this provision is prohibited by applicable law, Licensee shall
not modify, decompile, disassemble, decrypt, extract, or otherwise reverse
engineer Software. Software may not be transferred, leased, assigned, or
sublicensed, in whole or in part.
- Disclaimer of Warranty. The Software is provided "AS IS," without a
warranty of any kind. ALL EXPRESS OR IMPLIED REPRESENTATIONS AND WARRANTIES,
INCLUDING ANY IMPLIED WARRANTY OF MERCHANT-ABILITY, FITNESS FOR A PARTICULAR
PURPOSE OR NON-INFRINGEMENT, ARE HEREBY EXCLUDED.
- Limitation of Liability. IN NO EVENT WILL THE AUTHOR BE LIABLE FOR ANY
LOST REVENUE, PROFIT OR DATA, OR FOR DIRECT, INDIRECT, SPECIAL, CONSEQUENTIAL,
INCIDENTAL OR PUNITIVE DAMAGES HOWEVER CAUSED AND REGARDLESS OF THEORY OF
LIABILITY ARISING OUT OF THE USE OF OR INABILITY TO USE SOFTWARE, EVEN IF THE
AUTHOR HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
- Termination. Licensee may terminate this License at any time by destroying
all copies of Software including any documentation. This License will
terminate immediately without notice from David Griffiths if Licensee fails to
comply with any provision of this License. Upon termination, Licensee must
destroy all copies of Software.
- Severability. If any of the above provisions are held to be in violation
of applicable law, void, or unenforceable in any jurisdiction, then such
provisions are herewith waived to the extent necessary for the License to be
otherwise enforceable in such jurisdiction, However, if in the author's
opinion deletion of any provisions of the License by operation of this
paragraph unreasonably compromises the rights or liabilities of the author,
David Griffiths reserves the right to terminate the License and refund the fee
paid by Licensee as Licensee's sole and exclusive remedy.
- Integration. This Agreement is the entire agreement between Licensee and
David Griffiths relating to Software and: (i) supersedes all prior or
contemporaneous oral or written communications, proposals and representations
with respect to its subject matter; and (ii) prevails over any conflicting or
additional terms of any quote, order, acknowledgment, or similar communication
between the parties during the term of this Agreement. No modification to the
Agreement will be binding, unless in writing and signed by a duly authorized
representative of each party.
Congratulations...
...upon choosing this product. Not only will it improve your health, and
enhance your general spirituality, it will also clean the bath, cook you
breakfast, take care of the children, end armed conflict and invigorate the look
of your web page.
Introduction
You should be careful to check that your unzipping program has named the
files correctly. Some DOS programs will name according to the old 8.3 format,
rename .class files "*.cla".
The Gallery Example
NB: If you
cannot see an applet above, then you may need to extract more files from the
.ZIP archive before reading this page.
The code which produces the above is:
<applet code="PoolMenu" width=226 height=125>
<param name=image value=poolmenu.gif>
</applet> |
Paying for the Applet
There is NOTHING to pay. The applet is completely free. However, if you make
a donation ($5 - $10?) to Ty Hafan, Children's
Hospice of Wales, which is a charitable appeal formed to build, equip and
run a Children's Hospice in Wales to provide care for terminally ill children,
you can consider your applet well-and-truly registered. Click here for details on how to make a
donation. They now have an excellent new OnLine donation page. In
just a few minutes you can change a few old, crinkly, dirty little bank notes
into a nice warm glow...
Using PoolMenu in a web page...
To include PoolMenu in a web page, you should copy the PoolMenu.class
Pool.class ImageMap.class file into the same directory as the web page and then
insert an <APPLET...> tag into the page, e.g.
<APPLET CODE="PoolMenu" WIDTH=226 HEIGHT=125>
<PARAM NAME=image VALUE="poolmenu.gif">
Put something here for browsers that don't use Java.
</APPLET>
|
Parameters that can be passed to PoolMenu
The following parameters can be passed to PoolMenu:
The IMAGE
parameter
JPG or GIF file that you want to reflect.
<applet code="PoolMenu" width=226 height=125>
<param name=image value=poolmenu.gif>
</applet>
|
The HREF
parameter
The URL to link to when the applet is clicked.
<applet code="PoolMenu" width=226 height=125>
<param name=image value=poolmenu.gif>
<param name=href value=http://www.demon.co.uk/davidg/spigots.htm>
</applet>
|
The TARGET
parameter
This is the name of the frame you want any linked page to appear in.
<applet code="PoolMenu" width=226 height=125>
<param name=image value=poolmenu.gif>
<param name=href value="http://www.microsoft.com">
<param name=target value="newframe">
</applet>
|
The MAP
parameter
The allows the applet to use an imagemap from the current page.
<applet code="PoolMenu" width=226 height=125>
<param name=image value=poolmenu.gif>
<param name=map value="MenuMap">
<param name=target value="newframe">
</applet>
<MAP NAME="MenuMap">
<AREA SHAPE="RECT" COORDS="0, 0, 100, 129"
href="http://www.demon.co.uk/davidg/spigots.htm"
alt="Clicking on the left will open up the spigots page">
<AREA SHAPE="RECT" COORDS="101, 0, 250, 129"
href="http://127.0.0.1/davidg/lake.htm"
alt="Clicking on the right will open up the lake page">
</MAP>
|
I'd suggest you put the class file in the same directory as the page on which
it will appear. If you want to move it elsewhere then use the "CODEBASE" option
to point to the appropriate directory.
Some implementations of Java will not allow you to put the .class file in one
subdirectory and the image file in another. If the try it might cause a security
exception.
Troubleshooting
Why won't the applet work off my hard disk?
Some web browsers have trouble opening applets straight from a hard disk. I
have noticed this happen with Internet Explorer 3 and Netscape 4. Once you have
loaded the class file and the web page onto your web site you should find it
works OK.
Why does my web page say "Class Format Error"?
Class files are binary files, just like image files are. Binary files contain
more information than text (also known as ASCII) files do. If you transfer class
files as if they were ASCII files then they will lose this extra information and
will become corrupted. How do you transfer class files as binary files? You
should transfer them in the same way that you transfer image files.
Why does my web page say "Class Not Found"?
This is a very common problem. It may be because of one of the following:
- You have not put the class file onto the web site
- You are not calling the file with the correct name (rename to use the same
combination of upper- and lower-case letters as your class file)
- Your transfer program has changed the name. This does happen. Some
programs will shorten the ".class" extension to ".cla". Other will change the
case of the letters to either all uppercase or all lowercase. See if you can
change the options on the transfer program to stop it doing this.
- You have include a "codebase=…" clause inside your <applet…> code in
your web page. "codebase=…" tells the browser to look some place else for the
class file.
- Some other reason I haven't thought of :-)
Examples from the Web
I got the idea for PoolMenu after seeing the quite startling "AnWater" by Fabio Ciucci. Fabio has done a lot of
extremely interesting applets over the last few months, including a version of
the lake applet and an extremely quick 3d texture-mapped renderer. If you are
interested in graphical Java then Fabio's site is well worth a visit.
Linking to my site
If you use this applet then it would be nice if you gave me a link by copying
the image:
(this is the file "dglogo.gif" in the .zip archive) into the same directory
as your web page and then pasting the following into your page.
<a href="http://www.spigots.com/spigots.htm" target="_top">
<img src="dglogo.gif"
width=88 height=31 border=0></a>
|
It will put a little button on your page that will link through to my Java
Spigots page.
It is only a request: feel free to omit it.
Transferring files
Remember that if you are transferring the .class file to another machine
with FTP, you should set the 'binary' mode on. Failure to do so will corrupt the
file and give rise to a "Class Format" error.
Contacting Me
If you still have trouble getting the applet to work and you have tried all
of the possible solutions listed above, then feel to contact me, remembering to include:
- A precise description of the problem (do you just get a grey rectangle, or
an error message etc. etc.)
- The URL of the page containing the applet (that's the actual page - not
just the front page on your site)
These two pieces of information will make it a lot easier for me to solve the
problem. I cannot guarantee that I will be able to respond to all
messages (there's only so many hours in the day...) but sending the URL of a
page that doesn't work will greatly increase the chances of getting an answer.
Remember to keep a look out at my web site for new applets.
David Griffiths,
24/09/2000
Privacy Statement
Created
in Glorious Polyphonic HPL
Last updated: Sunday 24 September
2000