
// 单选、 复选
function UICtrlCheck(UIName/*,InputType*/)
{
	// 被继承 而非实例化
	if(!arguments.length)
		return ;

	this.UICtrlCheckConstruct(UIName/*,InputType*/) ;
	
	this.bCanFocus = false ;
}

UICtrlCheck.prototype = new UICtrlBase() ;

UICtrlCheck.prototype.UICtrlCheckConstruct = function(UIName/*,InputType*/)
{
	this.UICtrlBaseConstruct(null,UIName) ;	
	
	this.$bVDIgnoreEmpty = false ;
	
	//this.InputType = InputType ;
	
	this.arrOpts = new Array() ;
}

UICtrlCheck.prototype.AddOpt = function(Opt)
{
	if( typeof(Opt)=='string' )
		Opt = document.getElementById(Opt) ;
	if( typeof(Opt)!='object' )
		return false ;
	this.arrOpts.push(Opt) ;
	return true ;
}

UICtrlCheck.prototype.GetOpt = function(Idx)
{
	if(Idx>=this.arrOpts.length)
		return null ;

	return this.arrOpts[Idx] ;
}


UICtrlCheck.prototype.SetValue = function(ValueStr)
{
	while(1)
	{
		idx = ValueStr.indexOf(',') ;
		if(idx<0)
		{
			Value = ValueStr ;
			ValueStr = '' ;
		}
		else
		{
			Value = ValueStr.slice (idx) ;
			ValueStr = ValueStr.slice (idx+1) ;
		}
		
		for(var idx=0;idx<this.arrOpts.length;idx++)			
			this.arrOpts[idx].checked = (this.arrOpts[idx].value==Value) ;
		
		if(ValueStr.length==0)
			break ;
	}
}

UICtrlCheck.prototype.GetValue = function()
{
	Ret = '' ;
	for(var idx=0;idx<this.arrOpts.length;idx++)
	{
		if(this.arrOpts[idx].checked)
		{
			if(Ret.length)
				Ret+="," ;
			Ret+= this.arrOpts[idx].value ;
		}
	}
	
	return Ret ;
}

UICtrlCheck.prototype.GetValueLen = function()
{
	len = 0 ;
	for(var idx=0;idx<this.arrOpts.length;idx++)
	{
		// 忽略空值选项
		if( this.bVDIgnoreEmpty && this.arrOpts[idx].value=='' )
			continue ;

		if(this.arrOpts[idx].checked)
			len ++ ;
	}
	return len ;
}

UICtrlCheck.prototype.VerifyData = function()
{
	if( !this.VerifyDataAdv() )
		return false ;

	return this.VerifyDataLen() ;
}


// --- 校验数据 事件 ---

// 太短
UICtrlCheck.prototype.OnVDTooShort = function( Len, VDMin )
{
	if(this.Ctrl.multiple)
	{
		alert( this.UIName + '栏位最少只能选择' + VDMin + '项, 已选：'+ Len ) ;	
		return false ;
	}
	else
		return this.OnVDNotNull() ;
}

// 太长
UICtrlCheck.prototype.OnVDTooLong = function( Len, VDMax )
{
	alert( this.UIName + '栏位最多只能选择' + VDMax + '项, 已选：'+ Len ) ;	
	return false ;
}

// 不能为空
UICtrlCheck.prototype.OnVDNotNull = function()
{
	alert( '请选择' + this.UIName + '，此栏位不允许为空' ) ;
	return false ;
}