/*
<input type="button" onClick="chk(0, true);" value="<<" /><input type="button" onClick="walkchk(-1);" value="<" /><input type="text" id="chkdisp" value="00" readonly="readonly" size="10"/><input type="button" onClick="walkchk(1);" value=">" /><input type="button" onClick="chk(res, true);" value=">>" /><br /><input type="button" onClick="chk('all', false);" value="select all" /><input type="button" onClick="chk('none', false);" value="select none" /><br />
<input type="checkbox" id="only_one" onClick="chk(-1, this.checked);" />Only select one point at a time.<br />
*/
var last_chk = 0;
//var res = 32;

function chk( choose, only_one )
{
	if (choose == "all")
	{
		for(n=0; n<=res;n++)		{			if (n <= 9)				cur = '0'+n;			else				cur = n;
			
			document.getElementById('chk'+cur).checked = true;		}
		document.getElementById('chkdisp').value = "all";
		document.getElementById('only_one').checked = false;
		last_chk = "all";
	}
	else if (choose == "none")
	{
		for(n=0; n<=res;n++)		{			if (n <= 9)				cur = '0'+n;			else				cur = n;
			
			document.getElementById('chk'+cur).checked = false;		}
		document.getElementById('chkdisp').value = "none";
//		document.getElementById('only_one').checked = false;
		last_chk = "none";
	}
	else if (choose == "n/a") // we're not altering any checkboxes in this instance, just reporting on one being unchecked
	{
		var checked_boxes = "";
		for(n=0; n<=res;n++)		{			if (n <= 9)				cur = '0'+n;			else				cur = n;
			
			if (document.getElementById('chk'+cur).checked)
				checked_boxes = checked_boxes + cur + ", ";		}
		if (checked_boxes != "")
			document.getElementById('chkdisp').value = checked_boxes;
		else
			document.getElementById('chkdisp').value = "none";
	}
	else if ( (choose>=0) && (choose<=res) ) //what about res+1?
	{
		if (only_one) // we're picking only one checkbox.
		{
			for(n=0; n<=res;n++)			{				if (n <= 9)					cur = '0'+n;				else					cur = n;
				
				if (n != choose)
					document.getElementById('chk'+cur).checked = false;
				else
					document.getElementById('chk'+cur).checked = true;			}
			document.getElementById('chkdisp').value = choose + " ";
			last_chk = choose;
		}
		else // we're allowing multiple checkboxes to be selected. 
		{
			var checked_boxes = "";
			for(n=0; n<=res;n++)			{				if (n <= 9)					cur = '0'+n;				else					cur = n;
				
				if (n == choose)
				{
					document.getElementById('chk'+cur).checked = true;
					checked_boxes = checked_boxes + cur + ", ";
				}
				else if (document.getElementById('chk'+cur).checked)
					checked_boxes = checked_boxes + cur + ", ";			}
			document.getElementById('chkdisp').value = checked_boxes;
			last_chk = choose;
		}
	}
	else
	{
		// Say WHAT!!!
	}	redraw();
}

function chk_toggle( choose )
{
	if (choose <= 9)		cur = '0'+choose;	else		cur = choose;
	if (document.getElementById('chk'+cur).checked)
	{
		last_chk = choose;
		chk(choose, document.getElementById('only_one').checked);
	}
	else
		chk("n/a", document.getElementById('only_one').checked);
}

function walkchk( direction )
{
	if ((last_chk != "all") && (last_chk != "none"))
	{
		last_chk = last_chk + direction;
		if (last_chk < 0)
			last_chk = 0;
		else if (last_chk > res)
			last_chk = res;
		else
			chk(last_chk, document.getElementById('only_one').checked);
	}
	else 
	{
		if (direction = -1)
			last_chk = res;
		else
			last_chk = 0;
		chk(last_chk, document.getElementById('only_one').checked);
	// else do nothing, how do we find the next or the previous when all or none were selected?
	}
}


var zrlast_chk = 0;
//var res = 32;

function zrchk( choose, only_one )
{
	if (choose == "all")
	{
		for(n=0; n<=resv;n++)		{			if (n <= 9)				cur = '0'+n;			else				cur = n;
			
			document.getElementById('zrchk'+cur).checked = true;		}
		document.getElementById('zrchkdisp').value = "all";
		document.getElementById('zronly_one').checked = false;
		zrlast_chk = "all";
	}
	else if (choose == "none")
	{
		for(n=0; n<=resv;n++)		{			if (n <= 9)				cur = '0'+n;			else				cur = n;
			
			document.getElementById('zrchk'+cur).checked = false;		}
		document.getElementById('zrchkdisp').value = "none";
//		document.getElementById('only_one').checked = false;
		last_chk = "none";
	}
	else if (choose == "n/a") // we're not altering any checkboxes in this instance, just reporting on one being unchecked
	{
		var checked_boxes = "";
		for(n=0; n<=resv;n++)		{			if (n <= 9)				cur = '0'+n;			else				cur = n;
			
			if (document.getElementById('zrchk'+cur).checked)
				checked_boxes = checked_boxes + cur + ", ";		}
		if (checked_boxes != "")
			document.getElementById('zrchkdisp').value = checked_boxes;
		else
			document.getElementById('zrchkdisp').value = "none";
	}
	else if ( (choose>=0) && (choose<=resv) ) //what about res+1?
	{
		if (only_one) // we're picking only one checkbox.
		{
			for(n=0; n<=resv;n++)			{				if (n <= 9)					cur = '0'+n;				else					cur = n;
				
				if (n != choose)
					document.getElementById('zrchk'+cur).checked = false;
				else
					document.getElementById('zrchk'+cur).checked = true;			}
			document.getElementById('zrchkdisp').value = choose + " ";
			zrlast_chk = choose;
		}
		else // we're allowing multiple checkboxes to be selected. 
		{
			var checked_boxes = "";
			for(n=0; n<=resv;n++)			{				if (n <= 9)					cur = '0'+n;				else					cur = n;
				
				if (n == choose)
				{
					document.getElementById('zrchk'+cur).checked = true;
					checked_boxes = checked_boxes + cur + ", ";
				}
				else if (document.getElementById('zrchk'+cur).checked)
					checked_boxes = checked_boxes + cur + ", ";			}
			document.getElementById('zrchkdisp').value = checked_boxes;
			zrlast_chk = choose;
		}
	}
	else
	{
		// Say WHAT!!!
	}	zrredraw();
}

function zrchk_toggle( choose )
{
	if (choose <= 9)		cur = '0'+choose;	else		cur = choose;
	if (document.getElementById('zrchk'+cur).checked)
	{
		zrlast_chk = choose;
		zrchk(choose, document.getElementById('zronly_one').checked);
	}
	else
		zrchk("n/a", document.getElementById('zronly_one').checked);
}

function zrwalkchk( direction )
{
	if ((zrlast_chk != "all") && (zrlast_chk != "none"))
	{
		zrlast_chk = zrlast_chk + direction;
		if (zrlast_chk < 0)
			zrlast_chk = 0;
		else if (zrlast_chk > resv)
			zrlast_chk = resv;
		else
			zrchk(zrlast_chk, document.getElementById('zronly_one').checked);
	}
	else 
	{
		if (direction = -1)
			zrlast_chk = resv;
		else
			zrlast_chk = 0;
		chk(zrlast_chk, document.getElementById('zronly_one').checked);
	// else do nothing, how do we find the next or the previous when all or none were selected?
	}
}