/* this function changes a length value to "px" if it can't
   find a percent sign or alphabetic character already there */
function checkLength( val )
{
	var hasLengthExp = /[\w%]/;
	if (!hasLengthExp.test(val))
	{
		val += "px";
	}
	return val;
}

function changeFloat( button )
{
	setIdProperty( "floatTest", "cssFloat",
		button.value );
}

function changeClear ( button )
{
	setIdProperty( "clearTest", "clear",
		button.value );
}

function changeFontSize( n )
{
	var	choice;
	if (n == 0)
	{
		document.fontForm.fontSize[0].checked = true;
		choice = document.fontForm.fontSizeMenu.selectedIndex;
		choice = document.fontForm.fontSizeMenu.options[choice].value;
		if (choice != "")
		{
			setIdProperty( "reports2003", "fontSize", choice );
		}
	}
	else
	{
		document.fontForm.fontSize[1].checked = true;
		setIdProperty( "reports2003", "fontSize",
			document.fontForm.fontSizeNum.value );
	}
}

function changeFontFamily( n )
{
	var	choice;
	if (n == 0)
	{
		document.fontForm.fontFamily[0].checked = true;
		choice = document.fontForm.fontFamilyMenu.selectedIndex;
		setIdProperty( "reports2003", "fontFamily", 
			document.fontForm.fontFamilyMenu.options[choice].value );
	}
	else
	{
		document.fontForm.fontFamily[1].checked = true;
		setIdProperty( "reports2003", "fontFamily",
			document.fontForm.fontFamilyName.value );
	}
}

function changeFontProp( menuObj )
{
	var	choice = menuObj.selectedIndex;
	var propName = menuObj.name;
	var pos = propName.indexOf("Menu");
	propName = propName.substring( 0, pos );
	setIdProperty( "reports2003", propName,
		menuObj.options[choice].value );
}

function changeLineInfo( inputObj )
{
	setIdProperty( "lineTest", inputObj.name, inputObj.value );
}

function changeLineMenu( menuObj )
{
	var choice = menuObj.selectedIndex;
	var whichDiv = (menuObj.name.indexOf("vertical") < 0) ?
		"lineTest" : "vertTest";
	setIdProperty( whichDiv, menuObj.name,
		menuObj.options[choice].value );
}

function changeListStyle( menuObj )
{
	var choice = menuObj.selectedIndex;
	var val = menuObj.options[choice].value;
	if (val == "")
	{
		setIdProperty( "listTest", "listStyleType", "none");
		setIdProperty( "listTest", "listStyleImage",
			"url(\"r_arrow.gif\")" );
	}
	else
	{
		setIdProperty( "listTest", "listStyleImage", "none");
		setIdProperty( "listTest", "listStyleType", val );
	}
}

function changeListPos( menuObj )
{
	var	choice = menuObj.selectedIndex;
	setIdProperty( "listTest", "listStylePosition",
		menuObj.options[choice].value );
}

function changeDeco( menuObj )
{
	var	choice = menuObj.selectedIndex;
	setIdProperty( "effectsTest", menuObj.name,
		menuObj.options[choice].value );
}

function changeShadow()
{
	var str = document.effectsForm.shadowColor.value;
	str = str + " " +
		document.effectsForm.shadowX.value + " " +
		document.effectsForm.shadowY.value + " " +
		document.effectsForm.shadowBlur.value;
	setIdProperty( "effectsTest", "textShadow", str );
}

setBrowser();
