~cdparra/gelee/trunk

« back to all changes in this revision

Viewing changes to webui/web/extjs/build/widgets/grid/ColumnModel-min.js

  • Committer: parra
  • Date: 2010-03-15 15:56:56 UTC
  • Revision ID: svn-v4:ac5bba68-f036-4e09-846e-8f32731cc928:trunk/gelee:1448
merged gelee at svn

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/*
 
2
 * Ext JS Library 3.0 RC2
 
3
 * Copyright(c) 2006-2009, Ext JS, LLC.
 
4
 * licensing@extjs.com
 
5
 * 
 
6
 * http://extjs.com/license
 
7
 */
 
8
 
 
9
 
 
10
Ext.grid.ColumnModel=function(config){if(config.columns){Ext.apply(this,config);this.setConfig(config.columns,true);}else{this.setConfig(config,true);}
 
11
this.addEvents("widthchange","headerchange","hiddenchange","columnmoved","configchange");Ext.grid.ColumnModel.superclass.constructor.call(this);};Ext.extend(Ext.grid.ColumnModel,Ext.util.Observable,{defaultWidth:100,defaultSortable:false,getColumnId:function(index){return this.config[index].id;},getColumnAt:function(index){return this.config[index];},setConfig:function(config,initial){if(!initial){delete this.totalWidth;for(var i=0,len=this.config.length;i<len;i++){var c=this.config[i];if(c.editor){c.editor.destroy();}}}
 
12
this.defaults=Ext.apply({width:this.defaultWidth,sortable:this.defaultSortable},this.defaults);this.config=config;this.lookup={};for(var i=0,len=config.length;i<len;i++){var c=Ext.applyIf(config[i],this.defaults);if(!c.isColumn){var cls=Ext.grid.Column.types[c.xtype||'gridcolumn'];c=new cls(c);config[i]=c;}
 
13
this.lookup[c.id]=c;}
 
14
if(!initial){this.fireEvent('configchange',this);}},getColumnById:function(id){return this.lookup[id];},getIndexById:function(id){for(var i=0,len=this.config.length;i<len;i++){if(this.config[i].id==id){return i;}}
 
15
return-1;},moveColumn:function(oldIndex,newIndex){var c=this.config[oldIndex];this.config.splice(oldIndex,1);this.config.splice(newIndex,0,c);this.dataMap=null;this.fireEvent("columnmoved",this,oldIndex,newIndex);},getColumnCount:function(visibleOnly){if(visibleOnly===true){var c=0;for(var i=0,len=this.config.length;i<len;i++){if(!this.isHidden(i)){c++;}}
 
16
return c;}
 
17
return this.config.length;},getColumnsBy:function(fn,scope){var r=[];for(var i=0,len=this.config.length;i<len;i++){var c=this.config[i];if(fn.call(scope||this,c,i)===true){r[r.length]=c;}}
 
18
return r;},isSortable:function(col){return this.config[col].sortable;},isMenuDisabled:function(col){return!!this.config[col].menuDisabled;},getRenderer:function(col){if(!this.config[col].renderer){return Ext.grid.ColumnModel.defaultRenderer;}
 
19
return this.config[col].renderer;},setRenderer:function(col,fn){this.config[col].renderer=fn;},getColumnWidth:function(col){return this.config[col].width;},setColumnWidth:function(col,width,suppressEvent){this.config[col].width=width;this.totalWidth=null;if(!suppressEvent){this.fireEvent("widthchange",this,col,width);}},getTotalWidth:function(includeHidden){if(!this.totalWidth){this.totalWidth=0;for(var i=0,len=this.config.length;i<len;i++){if(includeHidden||!this.isHidden(i)){this.totalWidth+=this.getColumnWidth(i);}}}
 
20
return this.totalWidth;},getColumnHeader:function(col){return this.config[col].header;},setColumnHeader:function(col,header){this.config[col].header=header;this.fireEvent("headerchange",this,col,header);},getColumnTooltip:function(col){return this.config[col].tooltip;},setColumnTooltip:function(col,tooltip){this.config[col].tooltip=tooltip;},getDataIndex:function(col){return this.config[col].dataIndex;},setDataIndex:function(col,dataIndex){this.config[col].dataIndex=dataIndex;},findColumnIndex:function(dataIndex){var c=this.config;for(var i=0,len=c.length;i<len;i++){if(c[i].dataIndex==dataIndex){return i;}}
 
21
return-1;},isCellEditable:function(colIndex,rowIndex){return(this.config[colIndex].editable||(typeof this.config[colIndex].editable=="undefined"&&this.config[colIndex].editor))?true:false;},getCellEditor:function(colIndex,rowIndex){return this.config[colIndex].getCellEditor(rowIndex);},setEditable:function(col,editable){this.config[col].editable=editable;},isHidden:function(colIndex){return this.config[colIndex].hidden;},isFixed:function(colIndex){return this.config[colIndex].fixed;},isResizable:function(colIndex){return colIndex>=0&&this.config[colIndex].resizable!==false&&this.config[colIndex].fixed!==true;},setHidden:function(colIndex,hidden){var c=this.config[colIndex];if(c.hidden!==hidden){c.hidden=hidden;this.totalWidth=null;this.fireEvent("hiddenchange",this,colIndex,hidden);}},setEditor:function(col,editor){Ext.destroy(this.config[col].editor);this.config[col].editor=editor;},destroy:function(){var c=this.config;for(var i=0,c=this.config,len=c.length;i<len;i++){Ext.destroy(c[i].editor);}
 
22
this.purgeListeners();}});Ext.grid.ColumnModel.defaultRenderer=function(value){if(typeof value=="string"&&value.length<1){return"&#160;";}
 
23
return value;};
 
 
b'\\ No newline at end of file'