if (typeof Cactuslab=="undefined") {
	var Cactuslab = {};
}
Cactuslab.Layout = function() {

	var actions = [];
	
	function _getMaxWidth(clients) {
		var maxWidth = -1;
		for (var i = 0; i < clients.length; i++) {
			var region = YAHOO.util.Dom.getRegion(clients[i]);
			var width = region.right - region.left;
			if (width > maxWidth) maxWidth = width;
		}
		return maxWidth;
	};
	
	return {
		init: function() {
			for (var i = 0; i < actions.length; i++) {
				var action = actions[i];
				var clients = YAHOO.util.Selector.query(action.selector);
				//alert("className " + className + " has " + classNameClients.length + " clients");
				action.callback(clients);
			}
		},
		
		on: function(selector, callback) {
			actions.push({selector:selector, callback:callback});
		},
		
		getMaxWidth: function(clients) {
			return _getMaxWidth(clients);
		},
		
		alignWidths: function(clients, width) {
			if (!width) {
				width = _getMaxWidth(clients);
			}
			for (var i = 0; i < clients.length; i++) {
				YAHOO.util.Dom.setStyle(clients[i], "width", "" + width + "px");
			}
		},
		
		setStyles: function(clients, style, value) {
			for (var i = 0; i < clients.length; i++) {
				YAHOO.util.Dom.setStyle(clients[i], style, value);
			}
		}
	};
}();

YAHOO.util.Event.onDOMReady(Cactuslab.Layout.init, null, Cactuslab.Layout);
