var CToolTip = Class.create();
CToolTip.prototype = {
	initialize : function(_msgVect){
		this.messages = _msgVect;
		this.box = null;
	},
	show : function(_id, _elem){
		if(this.box == null){
			this.box = new AlbumYapBox(4, 'tooltip_holder', false, false);
		}
		var posXY = Element.cumulativeOffset(_elem);
		this.box.setContent('html', this.messages.get(_id));
		this.box.showPositioned(posXY[0], posXY[1]+15); //posXY[1] + _elem.getHeight()
	},
	hide : function(){this.box.hide();},
	setWidth:function(_w){/*this.box.setWidth(_w);*/}
}

var AlbumYapToolTip = {
	wrap : function(cssname, s_text){return new StringBuffer().append('<div class="').append(cssname).append('">').append(s_text).append('</div>').toString();},
	getToolTip : function(cssname, strVector, config){
		var tooltipItems = new Vector();
		var ItemsArr = strVector.getAsArray();
		var len = ItemsArr.length; 
		for(i=0; i<len; i++){
			tooltipItems.add(this.wrap(cssname, ItemsArr[i]));
		}
		return new CToolTip(tooltipItems);
	},
	getInfoToolTip : function(itemsVector){
		return this.getToolTip('tooltip_info', itemsVector, null);
	},
	getWarnToolTip : function(itemsVector){
		return this.getToolTip('tooltip_warn', itemsVector, null);
	},
	getWhiteInfoTip : function(itemsVector){
		return this.getToolTip('tooltip_white_info', itemsVector, null);
	},
	getCustomTip : function(cssname, itemsVector){
		return this.getToolTip(cssname, itemsVector, null);
	},
	getCustomTipWConf : function(cssname, itemsVector, config){
		return this.getToolTip(cssname, itemsVector, config);    
	}
}