function VirtualRadioGroup(master, children, allowEmpty, onClick)
{
	var master = master;
	var children = children;
	var allowEmpty = allowEmpty;
	var onClick = onClick;

	var observeChildren = function()
	{
		for (var i = 0; i < children.length; i++)
		{
			$(children[i]).click(childClick);
		}
	}

	var childClick = function()
	{
		var child = this;

		for (var i = 0; i < children.length; i++)
		{
			if (children[i].name != child.name)
			{
				children[i].checked = false;
			}
		}

		if (child.checked || !allowEmpty)
		{
			child.checked = true;
			master.value = child.value;
		}
		else
		{
			child.checked = false;
			master.value = '';
		}


		if (typeof(onClick) == 'function')
		{
			onClick();
		}
	}

	observeChildren();
}
