Description of version 4.50 enhancements
----------------------------------------
Released 21 October 1999

Version 4.50 is a major release.

It includes:

- various bug fixes

- frameless menus

- checkboxes

- other functional improvement

As ever, please install this new version into a new directory, and then copy in
any files you have previously created or modified. Test fully before
deleting previous implementation.

The way the overall html file is set up is a little different
compared with previous releases. Please examine the examples or 
refer to the documentation. There is an additional file ftblank.htm.

Bug fixes
---------

Change to ftexampl7.js to correct links to other documents.

Fix of problems with back/forward buttons with IE4 and IE5.

Fix of problems when no cache used with IE4 and IE5

setLinkType now correctly implemented.

IE for Mac - problem in positioning tables has been overcome.

IE Access Denied messages - this has been overcome by removing the 
Javascript URL for the initial load, and replacing with an actual 
html file.

style='position:block' has been changed to style='position:static' 
(although this 'bug' did not seem to cause any problems).

mouseOverIconMode set to 1 behaved incorrectly. This now 
correctly only opens closed folders. It does not close open folders.

Enhancements
------------

Extra functions to collapse or expand all nodes. 
These functions are called collapseAll and expandAll. 
Their usage is shown in ftexampl11.htm

Possible to have checkboxes for each foldertree node. 
The overall form is defined within the header and footer options, 
where the form actions would also normally be defined. 
There is an additional option inForm (default false) which 
must be set to true for this capability. An example is given 
in ftexampl12.htm. Note that for NN, forms cannot contain 
layers, so a non-dynamic HTML behaviour is forced. 

The checkbox identifier (for use by the form action) is the node suid.

Possible to place the foldertree within a table structure. 
The table structure is defined using the header and footer options. 
There is an additional option inTable (default false) which 
must be set to true for this behaviour. An example is given 
in ftexampl14.htm. Note that for NN, a non-dynamic HTML 
behaviour is forced, as NN cannot handle layers within forms.

Possible to position foldertree in both x and y directions. 
This is specified using the existing option topGap, and 
an additional option leftGap. An example is given in 
ftexampl15.htm This capability does not at present 
work in version 3 (non-DHTML) browsers, but there may be 
future workarounds for this.

Possible to name a frame as a node target, for individual nodes.
See ftexampl16.htm.

Major enhancements - foldertree without frames
----------------------------------------------

This can be seen in ftexampl13.htm

Possible to run foldertree without frames. This 
only works with version 4 browsers. In addition, for IE a 
workaround was needed to compensate for the fact that 
there is no element in IE which both allows (a) setting of z-index 
(b) changing the src attribute to a different URL.

It is possible to specify that the menu collapses to the 
initial layout when a link is selected. This is specified 
using the option collapseOnSelect (default false) to true. 
This option does not currently work in the frames version - 
it is questionable whether it is needed for the frames version.

At present, this non-frames capability must be considered a 
beta test version, as there may be various limitations which 
have not yet been discovered. Clearly improvements to the 
look and feel could be added. However, for simple linked pages 
NN seems to work surprisingly well.

An obvious future (and not too difficult) modification is to 
allow the menu to appear along the top of the window.

Another future modification is to make the appearance better, 
for example by defining suitable backgrounds, and placing each 
menu level on a different z-index, avoiding the need to 
reposition the remaining menu nodes.

Other
-----

There has been some other redesign, which does not affect use. 
The distinction between folders and items has been removed in 
the foldertree object structure, which reduces some code duplication. 
This is part of a continuous effort to simplify and reduce code size.

There has been extensive investigation into the use of <ILAYER> 
instead of <LAYER>. According to normally reliable documentation, 
this should help in positioning for Netscape, and remove the need 
for the lengthy foldertree repositioning code. However, it appears 
that the implementation of ILAYER in Netscape is very weak 
(especially prior to version 4.5). The tree is rendered incorrectly 
if the ilayer contains a table with no border (although this 
can be alleviated if an extra layer is created within the ilayer, 
and the ilayer is replaced with an equivalent div). More 
importantly, the layer constructor cannot be used to create 
ilayers, and the layer.document.write capability does not 
reposition existing ilayers correctly.