Finally It's HERE! The JSPMenu Page DOWNLOAD JSPMenu Version 1.2 NOW



Applet Overview:
JspMenu is a side based Menuing Applet. It allows you to have a Two Tier Menuing Structure (i.e. One Main Level and One SubLevel for each Item). It does not impose restrictions on having Submenu's for each item. It's Features include:

  1. Animated Fade Bar (Eye Candy) on the Side of Variable Width and Height
  2. Nice Fade From Main to Sub Menu Transition
  3. Default Frame targets and Explicit Frame Targets
  4. MANY configurable Parameters (including the ever popular fps param so you can completely Bog down your CPU heh)
  5. Some other Stuff, I cant remember now. (Not enough Coffee I guess)



Deficiencies of JspMenu


This Applet is about the Biggest CPU Hog, of all the ones I've written. If I had the Time or the Patience, I'd scrap the entire thing and start over. I have, however, begun Optimizing the code, and Latter Releases (Post 1.0) should be greatly improved, as I am in the process of determining where all the time has gone. JspMenu also doesn't allow any levels of submenu's Deeper than 1 Layer. I would like to improve upon this and make it more of a ID based system that would allow Endless Levels of SubMenu's... Again, Time is short, and I may not get to this for a while, as I like to play Quake more.



Legal Specifications:


The Java Source, and Class Binaries are Property of Jeremy C. Witt and I reserve Copyrights. You are granted free use of this applet and the associated source code for whatever you wish with the following Provisions:

  1. I am not Responsible for any Damages that may be caused by the use of this applet or damages that result from completly unrelated events while this applet is in the posession of the user.
  2. I am informed via Email by any Businesses that use this applet on their Internal (NON Internet Viewable) WebSites.
  3. Businesses who wish to use this applet on an External (Internet Viewable) Website, must first acquire Explicit Written Consent from the Author (Jeremy C. Witt)
  4. This applet may be used for personal Web Pages without restriction (Except those that may apply here [ see item 1.]) I would however love to hear from anyone using my applet so drop me a line at the EMail link above!
  5. I Reserve rights to the Java Source and Class Binaries, I reserve the right to revoke any and all liscenses granted at any time I see fit.
  6. I also reserve the right to impose a registration fee on any current or past liscenses where the applet is still in use for any reason I see fit.
  7. Finally I reserve the right to come to your house anytime I want and eat all the potato Chips that I find there.... and Cokes too.
  8. By Downloading this applet, you are agreeing to abide by these Provisions.



Ok Now for the Fun part... How to Configure this applet.

PARAM DEFAULT Description
font "HELVETICA" String The Font type (Helvetica, Times,Courier)
style "PLAIN" String Font Style (Underline, Bold, Plain)
size 10 integer Font Size
fps 15 integer Frames Per Second (CPU usage)
bgcolor "000000" String Background Color
tfcolor "909090" String Standard Text Color
thcolor "FFFFFF" String Highlighted Text Color
flarecolor "00FF00" String Color of the Side Bar (Flare)
rectcolor "FFFFFF" String Color of the Highlight Rectangle
numitems 1 integer Number of Items in Main Menu
sub<x> 0 integer <x>= MenuItem and Value = Number of SubItems in that Menu Item (ex: sub0=2 indicates that MenuItem 0 (First Item) has a Submenu with 2 Items in it.. GotIt?) use sub<x> = 0 for no Submenu
spacing 20 integer Spacing between menu Entries
deftarget "_top" String Target to use if none is specified (For Frames)
*location* "LEFT" I don't think I've implemented this so don't use it.
*astyle* 1 This isn't implemented either
drawrect "NO" String (Yes or No) do you want a Rectangle around highlighted item?
chopfade "YES" String (Yes or No) do you want the Flare to be truncated at the last menu item?
barthick 40 integer This is the Height of the bar
correction 2 integer A Fixup parameter that puts the text in the right place.. Mess with it if you don't believe me.
item<x>-0 none String This is the MAIN Menu Items where <x> = number of that item
item<x>-<y> none String this is the SUB Menu Items <x> indicates main Menu item number and <y> = submenu item number (NOTE Main Menu Item 1 = 0 and SubMenu Item 1 = 1.. that is First Submenu Item of Main Menu Item 1 = item0-1 GOT IT?)
url<x>-<y> none String This is the same as the Item specifies the URL to change to
target<x>-<y> none String Same as item<x>-<y>, indicates explicit target, if empty, deftarget is used.



NOTES:


NOTE 1: The Menuing Structure may seem a little funky, but it's not to bad when you've looked at it.

Each Item on the MAIN Menu has a zero Level. That is for the following Menu:
Item1
Item2
Item3
The Structure of the HTML would be.. Item1 = item0-0, Item2 = item1-0, Item3=item2-0

Now for Submenu of Item1 we need to start our Level at 1 (Because otherwise it would be a main menu item right... so Under Item1 the Submenu:
SubItem1
SubItem2
SubItem3
Is gonna be made up of Params with the following names: SubItem1 = item0-1 SubItem2 = item0-2 SubItem3 = item0-3.. No Problem Right? Well this is why I cant go more than One Level into Submenu's (But that is a different story). If I've not done an adequate bit of explaining, (Which is entirely Possible after having re-read this) Just look at the html that I've included with the release package and It should be easy to understand. (Or do a view source on the frame to yer left)

NOTE 2: I've found that a Correction factor of 3 is needed to make everything Super Hunky Dorey in Netscape.. I don't know why this looks worse in Netscape and Not IE.. probably Microsoft's Fault.