/*--------------------------------------------------------------------------*
 *  
 *  heightLine JavaScript Library beta4
 *  
 *  MIT-style license. 
 *  
 *  2007 Kazuma Nishihata 
 *  http://www.webcreativepark.net
 *  
 *--------------------------------------------------------------------------*/

new function(){
	function bpHeight(){
		this.className = "BPgroup"
		reg = new RegExp(this.className+"-([a-zA-Z0-9-_]+)", "i");
		objCN = new Array();
		var heightArray = new Array();
		var objAll = document.getElementsByTagName ? document.getElementsByTagName("*") : document.all;
		for(var i = 0; i < objAll.length; i++) {
			if(objAll[i].className.match(reg)){
				var trg = objAll[i].className;
				if(!objCN[trg]) objCN[trg]=new Array();
				if(!heightArray[trg]) heightArray[trg]=new Array();
				var brws=(objAll[i].childNodes[0].style) ? 0:1;
				heightArray[trg].push(objAll[i].childNodes[brws].offsetHeight);
				objCN[trg].push(objAll[i].childNodes[brws]);

			}
		}
		for(var key in heightArray){
			var compNum = heightArray[key][0];
			for(var i = 1;i<heightArray[key].length;i++){
				compNum = Math.max(compNum,heightArray[key][i]);
			}
			for(var i=0;i<objCN[key].length;i++){
				var defHeight = objCN[key][i].offsetHeight;
				objCN[key][i].style.paddingTop = Math.floor((compNum-defHeight)/2)+"px";
				objCN[key][i].style.paddingBottom = Math.ceil((compNum-defHeight)/2)+"px";
			}
		}
	}
	function addEvent(elm,listener,fn){
		try{
			elm.addEventListener(listener,fn,false);
		}catch(e){
			elm.attachEvent("on"+listener,fn);
		}
	}
	addEvent(window,"load",bpHeight);
}

