cabbageTOC is a Table of Contents applet. It enables organizing a site's contents in a hierarchical folder structure for easy navigation. An interesting feature of the applet is that when a folder is opened only the folder name and its contents are displayed. This feature enables browsing a large site with minimal or no scrolling. The applet can be used either in a pop-up mode or in frames.
1. When you access popupsmhome.html the sitemap applet will popup in an independent frame. The applet reads data from a text file . It might take a minute or so for the popup frame to show-up. You can navigate all pages in this site through this applet.
2. Use single-click to open/close the folders and to access the pages. When a page is accessed the
applet will "remember" the location with a change in color. Use "PageUp/PageDown" or arrow keys to scroll the contents of the applet vertically. Use "Ctrl+PageUp/Ctrl+PageDown" keys to reach the top/bottom of the list. Use the "End" key to open all folders. Use "Home" key to close all folders and to reset the applet.
3. The applet displays only the opened folders and their contents at any given time. This "peeling"
action enables the optimization of the paint performance of the applet. I have tested the applet with 4000+ content lines and found no significant decrease in the response speed of mouse actions like opening/closing folders, mouseover change in colors, scrolling etc.
4. The popup feature can be optionally turned off to enable frames-based navigation. The applet also has an option to search-enable the content lines. Here is a demo illustrating these two options, cabbageTOC in frames.
5. More options like background image, font size/style, highlight colors, popupframe size, popup
frame title, etc. are also available.
6. Data File Format: Each content line of the applet is represented by two lines of data in the datafile cabbagetoc_try.txt. For example,nnnn:"aedoc1":"right frame" url:"aedoc1.html"First line: The first field(nnnn) specifies the level of the hierarchy with the top level content lines specified as (n), next level content lines as (nn) etc. The second field("aedoc1") is the actual content string that appears in the applet. The third field("right frame") specifies the name of the target in which the document should be displayed. Other legal values for the target frame names are "_top", "_self", "_parent" and "_blank". Please note that the options "_top" and "_parent" seem to produce the desired effect only in NC4.05 but not in IE4.72. To target all documents to one non-framed browser window use the target name "new-frame". This seem to work in both browsers. If the content line is a folder use a zero-length string("") in the third field. Double quotes must be used for the second and
Second Line: The first field(url) is the title of this line and suggests that the second field("aedoc1.html") is a URL. The second field can also be specified as a fully qualified URL like: "http://.../.../aedoc1.html". If the content line is a folder line use a zero-length string("") in the second field. Double quotes must be used for the second field.
This applet was a "Featured Resource" in developer.com during May 24-26, 1998.
If you would like to test this applet locally, here is the zip file, cabbagetoc_try.zip
These files can display upto 999 content lines with upto 4 tails per head. The registered version has no limit to the number of content lines. The registered version can also be obtained here.