There is yet much to do!  Please see the TODO file for known bugs and lacking
features...

Changellog
==========

2004-02-23 version 2.5.0
* bugfix: correct rendering in strict DOCTYPEs
* bugfix: menu behaviour improved in mouseover-menus (no inexpected collapsing
  any more; due to incoherent mouseout mouseover sequence on different browsers)
* bugfix: menu generated 2 requests in servlet servers, removed image preloading
* bugfix: width and height were set wrong for XlayerParent
* bugfix: text-borders fixed (table instead of css, because of broken box model
  in IE5.x)
* new: renders on Konqueror 3.x and Opera 6 now! (7 browsers supported now)

2004-01-25 version 2.4.1
* bugfix: small bug on Communicator 4.03 fixed (reported by JCBaillie)

2004-01-25 version 2.4.0
* new: top, right, bottom and left border for the text in menu-layers
-> former configs not compatible: add '0,0,0,0,' right after the text-align-
setting (4th position) for each style in the style section

2004-01-24 version 2.3.1
* bugfix: different bugs in the positioning of the menu-nodes corrected
* bugfix: menu did not close correctly if there were more than 1 level-0
  menu-items

2004-01-23 version 2.3.0
* bugfix: root-node of highlighting menus did not flash on mouseovers after 
  menu closed once.
* bugfix: onmouseover-menus do not react to clicks on non clickable menu-nodes
  in Gecko any more. Better menu behaviour on all v.5 browsers: Xlayer.js
  changed, that html-entities inside the layer do not fire onmouseover-/on-
  mouseout-events any more (tested on IE 5, 6, Gecko, yet).
* bugfix: font-size in menu nodes decreased for Nescape 4.7
* bugfix: fixed spacer-url in code replaced by configuration option
* new: target support for menu-links (links open in frame, iframe, same window,
  new window)
-> former configs not compatible any more! Change links in content-entries

2004-01-15 version 2.2.0
* cleanups
* new: menu can be set to appear to the right or below the root node
-> former configs not compatible! insert 'true' at the 4th position in the globals section!!

2004-01-12 version 2.1.0
* cleanups
* new: support for opera7 implemented! (works on 6 different browsers now!!)

2004-01-08 version 2.0.8
* bugfix: fading fixed in Xlayer.js, activated for Gecko again

2004-01-07 Version 2.0.7
* public release of final 2.0
* bugfix 2.0.4: text-decoration on links in menu nodes on Internet Explorer
* bugfix 2.0.5: menu nodes clickable in netscape 4
* bugfix 2.0.6: link cursor over menu node in Internet Explorer 5
* bugfix 2.0.7: now renders on Safari, too

2003-01-01 Version 2.03
* release of Beta 2.0

2003-11-25 Version 1.4.5
* first public release on sourceforge
* 2.0 is still work in progress

2003-04-29 Version 1.4.5
* first release that renders on Internet Explorer Macintosh >= 5

2002-05-16 Version 1.0
* first release used in a page in the www
* works on Internet Explorer Windows >= 5, Netscape >= 4.7, Gecko

2001-12-20 xlayer Version 0.5
* first version of the crossbrowser DHTML component Xlayer


Configuration Changes
===================

*2004-02-23 version 2.5.0:
-------------------------------------
No change in the configurations occoured here.

*2004-01-25 version 2.4.0:
--------------------------------------
2.4.0 has a small new feature that allows you to add a top, right, bottom and
left border to the text in the menu nodes. Before it was very ugly to have 
left-/right-aligned texts in the layers as they just stuck to the border of the 
layer. I inserted those settings into the style section after the text-
alignement, you'll have to update your configuration entries (add '0,0,0,0,'
right after text-align - 4th position - to each former style entry of the style
section). A style entry looks like this now:

// style for level0 entries ---
[ 
  // style for node onmouseout ---
  20, 20, // xOffset, yOffset
  100, 30, // width, height
  [ 0, 100, 10, 100 ], // fading: start, stop, steps, delay in ms
  [ 
    "#ff6a00", // bgcolor
    "white", // text-color
    "center", // text-align
    0, 0, 0, 10 // top, right, bottom, left text-border
    true, // bold
    "Arial, Helvetica, sans serif", // font-face
    12, // font-size
    false, // always display icon, even if there's no child to this node
    "img/arrow_vert.gif", // icon url
    5, 3, // icon width, height
    10 // icon border
  ],
  // style for node onmouseover ---
  [
    ...
  ]
],
// style for level1 entries ---
[ 
  ...
]
...

*2004-01-18 version 2.3.0:
--------------------------------------
The latest feature implemented in 2.3 is the support for targets in the menu-
links. You can choose between opening the url in the same window, in a new one,
in a frame or an iframe. The configuration had to be changed so that you'll have to 
adapt older config-files in the content section. The target format is:

opening in the same window (parameters: url);
new WinTarget( "http://www.agnesi.it" )

opeing in a new window (url, top, left, width, height):
new NewWinTarget( "http://www.puzzle.ch", 300, 300, 400, 400 )

in a frame (parameters: url, frameId):
new FrameTarget( "http://www.barilla.it", "content" )

or in a iframe (parameters: url, frameId):
new IframeTarget( "http://www.barilla.it", "content" ) // url, frameId

or null, if there's no link

A conent entry looks like this now:

	[ "formaggio", // node text
	new NewWinTarget( "http://www.puzzle.ch", 300, 300, 400, 400 ), // link target
	3 ] // menu node level (determines the branch and style)

You'll have to load the new configuration-class in your page, of course:

  <script language="JavaScript1.2" src="lib/js/XmenuConfig.js"></script>


I changed the entry for the XparentLayer. It's array now only holds an entry
for its width and height:

	[ 20, 1 ] (before: [ "img/spacer.gif", 20, 1 ])

I moved the url for the spacer gif to the follwing position, because I need that
spacer for the menu-nodes, too. The new global configuration structure looks
like this now:

[  
  Xmenu.prototype.VERTICAL,
  1, // delay in sec. before closing menu
  false, // onclick / onmouseover
  true, // horiz. & vertical menu: menu appears below/right of the root-node
  false, // horizontal menu: each hierarchy starts on same X
  false, // keep expansion state
  true, // highlight clicked nodes
  [ 20, 1 ],	// XlayerParent width, height
  "img/spacer.gif" // spacer url
],

You need to include the js-file for the target classes of course:
<script language="JavaScript1.2" src="lib/js/XmenuConfig.js"></script>

* 2004-01-15 version 2.2.0
---------------------------------------
I implemented a new feature that allows you to have your menu appearing below
or to the right of the root-node. I inserted the switch into the global section
of the configuration array. It is in the 4th position. 'true' sets the menu to
appear below, 'false' to the right of the root-node. The new globals section
looks like this:

		[	Xmenu.prototype.HORIZONTAL,
			1, // delay in sec. before closing menu
			false, // classic menu: onclick / onmouseover
			true, // horiz. & vertical menu: menu appears below/right of the root-node
			false, // horizontal menu: each hierarchy starts on same X
			false, // keep expansion state
			true,	// highlight clicked nodes
			[ 'img/spacer.gif', 20, 1 ]	// XlayerParent img
		],
