Tree file format

To start with, let's look at example tree file from SiteBrowser navigation window on the left at SiteBrowser homepages:

+About|about.htm
.What's new|about.htm
.Features|features.htm
.Old version 1.0|old/index.htm|_top
Documentation|docs/index.htm
.Overall concept|docs/index.htm
.Browsing|docs/browsing.htm
.Applet parameters|docs/parameters.htm
.Tree file structure|docs/treefile.htm
.Custom items|docs/custom.htm
Examples|examples/index.htm
Download|download.htm
.Latest version
..Applet only|SiteBrowser.zip
..Applet + docs + examples |SB_all.zip
.Download documentation|docs.zip
Registering|whyreg.htm
.Why register?|whyreg.htm
.How to register|register.htm
.License terms|license.htm
Support|support.htm
.FAQ|faq.htm
.Contact me|contact.htm

As you see, each line define an item. Items follow in the same order as if they are already placed as a tree with all items expanded. Number of dots at start of the line define item's level of depth in the tree structure. So far each line have following format:

<dots>[+]<item text>|<item link>|<item target>

Components are separated with "|". You may or may not specify each of the component.".Latest version" item from example above just has <item text> specified and nothing else.
<item text> is the text, displayed in the applet as content visual component of an item (see overall concepts for more detail). If you don't   specify it, the item is actually a blank separator (exceptions are custom items). New in version 2.1.0: You may have multiline items. "$$" in item text  acts like a newline within the item. Up to four lines per item are allowed.
<item link> is the link, associated with this item.
<item target> is the target frame/window to display the document specified in the <item link>.
By putting '+' right after dots you may tell the applet that this item will be shown expanded initially.

So far, so good, but what about custom items? The overall format for custom item is

<dots>[+]&<custom item specification>|<item text>|<item link>|<item target>

<custom item specification>  is in the form of: Xnm|<image list>, where X is s or p.
s
means "scroll custom item" (it drops down it's children exactly under itself, ignoring ADVANCE parameter). New in version 2.1.0: s(advance)instead of just s will place subitems of this item at horizontal offset advance, overruling the ADVANCE parameter. advance must be a positive integer number.
p means "normal custom item" (drops children using ADVANCE).
n,m are numbers of stages for icon/shape and content visual components of the item accordingly, and their values can be 0,1,2,4. The four stages are: collapsed normal, collapsed highlighted, expanded normal, expanded highlighted (highlighted items are those which mouse currently stands over)

<image list> is just list of images each separated with "|". First go n images for icon/shape, then m images for content.

Specifying n with 0 means, that internally rendered shapes/icons are taken for this item, according to SHAPEn and ICONn parameters. You may also specify n with _ which means, that this item don't have icon/shape visual component.

Specifying m with 0 means, that <item text> is taken for item content visual component. Don't specify <item text> for custom components, except the case when you set m with 0

Example of a custom item with 4 stages for a shape and 4 stages for content and overruled ADVANCE parameter (children of this item will be placed at offset of 35 pixels):

..&s(35)44|img/icon1.gif|img/icon2.gif|img/icon3.gif|img/icon4.gif|img/text1.gif|img/text2.gif|img/text3.gif|img/text4.gif|free.html|frame_a

Example of a custom item with 2 stages for a shape(icon) and default <item text> content (can be used as a template for items with custom icons and default text, as for explorer-like view):

..&p20|img/icon1.gif|img/icon2.gif|About|free.html|frame_a

Look here for more information about designing custom items.

Last modified 22 September 2000  (c) by Mark Novozhilov <lordmark@lordmark.de>