65 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			65 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| /*
 | |
| Product Name: dhtmlxSuite 
 | |
| Version: 5.2.0 
 | |
| Edition: Professional 
 | |
| License: content of this file is covered by DHTMLX Commercial or Enterprise license. Usage without proper license is prohibited. To obtain it contact sales@dhtmlx.com
 | |
| Copyright UAB Dinamenta http://www.dhtmlx.com
 | |
| */
 | |
| 
 | |
| function eXcell_context(cell){
 | |
| 	if (cell){
 | |
| 		this.cell = cell;
 | |
|     	this.grid = this.cell.parentNode.grid;
 | |
|     
 | |
|     	if (!this.grid._sub_context) return;
 | |
|     	this._sub=this.grid._sub_context[cell._cellIndex];
 | |
|     	if (!this._sub) return;
 | |
|     	this._sindex=this._sub[1];
 | |
|     	this._sub=this._sub[0];
 | |
|     }
 | |
| 	
 | |
| 	this.getValue = function(){
 | |
| 		return _isIE?this.cell.innerText:this.cell.textContent;
 | |
| 	}
 | |
| 	this.setValue = function(val){
 | |
| 		this.cell._val=val;
 | |
| 		var item  = this._sub.itemPull[this._sub.idPrefix+this.cell._val];
 | |
| 		val = item?item.title:val;
 | |
| 		this.setCValue((val||" "),val);
 | |
| 	}
 | |
| 	this.edit = function(){
 | |
| 		var arPos = this.grid.getPosition(this.cell);//,this.grid.objBox
 | |
| 		
 | |
| 		this._sub.showContextMenu(arPos[0]+this.cell.offsetWidth,arPos[1]);
 | |
| 		var a=this.grid.editStop;
 | |
| 		this.grid.editStop=function(){};
 | |
| 		this.grid.editStop=a;
 | |
| 	}
 | |
| 	this.detach=function(){
 | |
| 		if (this.grid._sub_id != null) {
 | |
| 			var old=this.cell._val;
 | |
| 			this.setValue(this.grid._sub_id);
 | |
| 			this.grid._sub_id = null;
 | |
| 			return this.cell._val!=old;
 | |
| 		}
 | |
| 		this._sub.hideContextMenu();
 | |
| 	}
 | |
| }
 | |
| eXcell_context.prototype = new eXcell;
 | |
| 
 | |
| 
 | |
| dhtmlXGridObject.prototype.setSubContext=function(ctx,s_index,t_index){
 | |
| 	var that=this;
 | |
| 	ctx.attachEvent("onClick",function(id,value){
 | |
| 		that._sub_id = id;
 | |
| 		that.editStop();
 | |
| 		ctx.hideContextMenu();
 | |
| 		return true;
 | |
| 	});
 | |
| 	if (!this._sub_context) 
 | |
| 		this._sub_context=[];
 | |
| 	this._sub_context[s_index]=[ctx,t_index];
 | |
| 	ctx.hideContextMenu();
 | |
| };
 | |
| //(c)dhtmlx ltd. www.dhtmlx.com
 |