function __preloadedmenu_menuitem(href, image, overImage, selectedImage)
{
	this.href = href;
	this.alt = "";
	this.target = "";
	this.mouseover = "";
	this.mouseout = "";
	this.mouseclick = "";

	this.image = new Image();
	this.image.src = image;

	this.overImage = new Image();
	this.overImage.src = overImage;

	this.selectedImage = new Image();
	this.selectedImage.src = selectedImage;
}


function preloadedMenu()
{
	this.menuitems = new Array();
	this.selectedId = -1;

	this.createMenuitem = __createMenuitem;
	this.setSelected = __setSelected;
	this.printItem = __printItem;
	this.size = __size;

	this.setAlt = function(index, newAlt) { this.menuitems[index].alt = newAlt; }
	this.setTarget = function(index, newTarget) { this.menuitems[index].target = newTarget; }
	this.setMouseover = function(index, newMouseover) { this.menuitems[index].mouseover = newMouseover; }
	this.setMouseout = function(index, newMouseout) { this.menuitems[index].mouseout = newMouseoutr; }
	this.setMouseclick = function(index, newMouseclick) { this.menuitems[index].mouseclick = newMouseclick; }

	this.suffix = Math.round(Math.random()*1000000);
}

function __createMenuitem(href, image, overImage, selectedImage)
{
	this.menuitems[this.menuitems.length] = new __preloadedmenu_menuitem(href, image, overImage, selectedImage);
	return(this.menuitems.length-1);
}

function __setSelected(id)
{
	if (id >= 0 && id < this.menuitems.length) this.selectedId = id;
}

function __printItem(id)
{
	if (id >= 0 && id < this.menuitems.length)
	{
		// tulostetaan linkki, kuva ja over- ja out -eventit

		var str = '<a href="' + this.menuitems[id].href + '"';

		if (this.menuitems[id].target != "")
		{
			str += ' target="' + this.menuitems[id].target + '"';
		}

		if (this.menuitems[id].mouseclick != "")
		{
			str += ' onClick=\'' + this.menuitems[id].mouseclick + '\'';
		}

		str += ' onMouseover=\'document.__preloadedMenu' + this.suffix + id + '.src = "' +
		this.menuitems[id].overImage.src + '"; ' + this.menuitems[id].mouseover + '\' onMouseout=\'document.__preloadedMenu' + this.suffix + id + '.src = "';

		// jos kyseessä valittu valikkokohta, laitetaan oikea kuva
		if (id == this.selectedId)
		{
			str += this.menuitems[id].selectedImage.src +
			'";' + this.menuitems[id].mouseout + '\'>' +
			'<img src="' + this.menuitems[id].selectedImage.src;
		}
		else
		{
			str += this.menuitems[id].image.src + 
			'"; ' + this.menuitems[id].mouseout + '\'>' + 
			'<img src="' + this.menuitems[id].image.src;
		}

		str += '"';

		if (this.menuitems[id].alt != "")
		{
			str += ' alt="' + this.menuitems[id].alt + '"';
		}

		str += ' border=0 name="__preloadedMenu' + this.suffix + id + '"></a>';

		document.write(str);
//		alert(str);
	}
}

function __size()
{
	return (this.menuitems.length);
}
