//ListItem Class light
function ListItem(text,value,leaf,selected) {
	this.DynLayer = DynLayer;
	this.DynLayer(null,0,0,175,23);
	this.value = value;
	this.leaf = leaf;
	this.font = {};
	this.font.color = '#FFFFFF';
	this.isMouseOver = false;
	this.setText(text,selected);
	this.addEventListener(ListItem.listevents);
	//this.styled = 'border-left:1px solid #9B9897;';
	this.deselectable = true; // otettu mktk:sta
	this.selected = selected || false;	// otettu mktk:sta
	//this.kuva = 'dynapi/images/paavalikko_lapinak_nelio_f2.gif';
};
ListItem.prototype = new DynLayer();

ListItem.prototype.pack = function() {
	var h = this.getContentHeight();
	if (is.opera) {
		var h =  document.all[this.id + 'C'].style.pixelHeight;
	}
	//if (this.created)
	this.setHeight(h,false);
};

ListItem.prototype.setText = function(text,selected) {
	if (selected) {
		kuva = 'dynapi/images/paavalikko_lapinak_nelio_f2.gif';
	}	
	else kuva = 'dynapi/images/paavalikko_lapinak_nelio.gif';
	shim = 'dynapi/images/shim.gif';
	this.text = text || '';
	if (is.def || is.opera) {		
		sisalto = ''+
		'<span id="'+this.id+'C" style="position:absolute; padding: 0px; width: 175px;">'+
		'<table width="175" border="0" cellspacing="0" cellpadding="0">'+
  		'<tr>';		
		if (!selected) {
			sisalto += '<td width="1" bgcolor="#9B9897"><img src="'+DynAPI.librarypath+''+shim+'" width="1" height="1" alt=""></td>'+
			'<td width="8" height="23"><img src="'+DynAPI.librarypath+''+kuva+'" name="paavalikkoKolmio'+this.id+'" width="5" height="9" alt=""></td>';
    	}
		else {
			sisalto += '<td width="9" height="23"><img src="'+DynAPI.librarypath+''+kuva+'" name="paavalikkoKolmio'+this.id+'" width="5" height="9" alt=""></td>';
		}
		sisalto += '<td width="166" background="'+DynAPI.librarypath+''+shim+'"><font face="Verdana, Arial, Helvetica, sans-serif" size="1" color="#FFFFFF">'+text+'</font></td>'+
  		'</tr>'+
		'</table>'+
		'</span>';
		this.setHTML(sisalto);
	}
	else {
		this.setHTML('<table width="175" border="0" cellspacing="0" cellpadding="0"><tr><td width="1" bgcolor="#9B9897"><img src="'+DynAPI.librarypath+''+shim+'" width="1" height="1" alt=""></td><td width="8" height="23"><img src="'+DynAPI.librarypath+''+kuva+'" name="paavalikkoKolmio'+this.id+'" width="5" height="9" alt=""></td><td width="166" background="'+DynAPI.librarypath+''+shim+'"><font face="Verdana, Arial, Helvetica, sans-serif" size="1" color="#FFFFFF">'+text+'</font></td></tr></table>');
	}
}
ListItem.prototype.setFontColor = function(c) {
	this.font.color = c;
	if (is.def || is.opera)
		this.style.color = c;
	else if (is.ns4)
		this.setText(this.text);
};
ListItem.listevents = new EventListener();
ListItem.listevents.oncreate = function(e) {
	var o = e.getSource()
	if (is.def && !is.ie4) {
		o.style = document.getElementById(o.id + 'C').style;
		o.css.cursor = 'hand';
	 } else if (is.opera || is.ie4) {
		o.style = document.all[o.id + 'C'].style;
		o.css.cursor = 'hand';
	};
	if (!is.ns5) {
		o.pack();
		o.list.arrangeItems();
	}	
};
ListItem.listevents.onmousedown = function(e) {
	var o = e.getSource();
	DynAPI.document.load(o.value);
	//DynAPI.document.load("/D:\\visualway\\Asiakkaat%20-%20active\\Merikosken%20ammattioppilaitos%20-%200016\\projektit\\WWW_talvi_2003\\www\\peruskoulutus"+o.value);
};
var talletus = "";

ListItem.listevents.onmouseover = function(e) {
	stoptime();
	var o = e.getSource();
	if (talletus != "" && talletus != o) talletus.setBgColor('#A41C1C');
	talletus = e.getSource();
	//!o.selected && 
	if (!o.isMouseOver) {
		o.setBgColor('#999999');
		if (is.opera) {
			o.setFontColor('#999999');
		}	
		else {
			o.setFontColor('#FFFFFF');
		}	
		for (var i = 0; i < o.list.items.length; i++) {
			if (o.list.items[i] != o && o.list.items[i].leaf)
				eval(o.list.items[i].leaf + '.setVisible(false);');
			if (o.list.items[i] != o && o.list.items[i].isMouseOver) {
				o.list.items[i].setBgColor('#999999');
				o.list.items[i].setFontColor('#FFFFFF');
				o.list.items[i].isMouseOver = false;
			};
		};
	};
	if (o.leaf) {
		eval(o.leaf + '.setVisible(true);');
	}
	o.isMouseOver = true;
};

ListItem.listevents.onmouseout = function(e) {
	var o = e.getSource();
	//!o.selected && 
	if (o.isMouseOver) {
		o.setBgColor('#A41C1C');
		o.setFontColor('#FFFFFF');
	}
	timedrestore();
	o.isMouseOver = false;
};
ListItem.prototype.setSelected = function(b) {
	if (!this.deselectable)
		return;
	this.selected = b;
	/*
	if (b) {
		//this.setBgColor("#999999");
		//this.styled = 'border-left:0px;';
	} 
	*/
	if (!b) {
		this.setBgColor(this.isMouseOver ? "#999999" : "#FFFFFF");
		if (is.opera) this.setFontColor(this.isMouseOver ? "#616161" : "#CE0005");
	};

};

//List Class light
function List() {
	this.DynLayer = DynLayer;
	this.DynLayer();
	this.items = [];
	this.listStyle = {};
	this.listStyle.borders = 0;
	this.listStyle.spacing = 0;
	this.addEventListener(List.listener);
	this.totalHeight = this.listStyle.borders;
};
List.prototype = new DynLayer();
List.prototype.add = function(text,value,leaf,selected) {
	var i = new ListItem(text,value,leaf,selected);
	i.list = this;
	i.setBgColor('#A41C1C'); // tummanpunainen
	this.items[this.items.length] = i;
	this.addChild(i);
};
List.prototype.addListContent = function(object){ // MKTK:sta
	object.list = this;
	object.setText();
	object.setBgColor("#DDDDDD");
	this.items[this.items.length] = object;
	this.addChild(object);
};

List.prototype.arrangeItems = function() {
	this.totalHeight = this.listStyle.borders;
	for (var i = 0; i < this.items.length; i++) {
		this.items[i].moveTo(this.listStyle.borders,this.totalHeight);
		this.items[i].setWidth(this.w-this.listStyle.borders*2);
		this.totalHeight = this.totalHeight+this.items[i].h+this.listStyle.spacing;
	};
	this.setWidth(this.w);
	this.setHeight(this.totalHeight-this.listStyle.spacing+this.listStyle.borders);
};

List.listener = new EventListener();
List.listener.oncreate = function(e) {
	var o = e.getSource();
	o.arrangeItems();
};
