Ext.ns('Ext.ux.form');Ext.ux.form.FileUploadField=Ext.extend(Ext.form.TextField,{buttonText:'Browse...',buttonOnly:false,buttonOffset:3,multiple:false,readOnly:true,autoSize:Ext.emptyFn,initComponent:function(){Ext.ux.form.FileUploadField.superclass.initComponent.call(this);this.addEvents('fileselected');},onRender:function(ct,position){Ext.ux.form.FileUploadField.superclass.onRender.call(this,ct,position);this.wrap=this.el.wrap({cls:'x-form-field-wrap x-form-file-wrap'});this.el.addClass('x-form-file-text');this.el.dom.removeAttribute('name');this.createFileInput();var btnCfg=Ext.applyIf(this.buttonCfg||{},{text:this.buttonText,});this.button=new Ext.Button(Ext.apply(btnCfg,{renderTo:this.wrap,cls:'x-form-file-btn'+(btnCfg.iconCls?' x-btn-icon':''),}));if(this.buttonOnly){this.el.hide();this.wrap.setWidth(this.button.getEl().getWidth());}
this.bindListeners();this.resizeEl=this.positionEl=this.wrap;},bindListeners:function(){this.fileInput.on({scope:this,mouseenter:function(){this.button.addClass(['x-btn-over','x-btn-focus']);},mouseleave:function(){this.button.removeClass(['x-btn-over','x-btn-focus','x-btn-click',]);},mousedown:function(){this.button.addClass('x-btn-click');},mouseup:function(){this.button.removeClass(['x-btn-over','x-btn-focus','x-btn-click',]);},change:function(){var value=this.fileInput.dom.files;if(!value)value=this.fileInput.dom.value;this.setValue(value);this.fireEvent('fileselected',this,value);},});},createFileInput:function(){this.fileInput=this.wrap.createChild({id:this.getFileInputId(),name:this.name||this.getId(),cls:'x-form-file',tag:'input',type:'file',size:1,});this.fileInput.dom.multiple=this.multiple;},reset:function(){if(this.rendered){this.fileInput.remove();this.createFileInput();this.bindListeners();}
Ext.ux.form.FileUploadField.superclass.reset.call(this);},getFileInputId:function(){return this.id+'-file';},onResize:function(w,h){Ext.ux.form.FileUploadField.superclass.onResize.call(this,w,h);this.wrap.setWidth(w);if(!this.buttonOnly){var w=this.wrap.getWidth()-
this.button.getEl().getWidth()-
this.buttonOffset;this.el.setWidth(w);}},onDestroy:function(){Ext.ux.form.FileUploadField.superclass.onDestroy.call(this);Ext.destroy(this.fileInput,this.button,this.wrap);},onDisable:function(){Ext.ux.form.FileUploadField.superclass.onDisable.call(this);this.doDisable(true);},onEnable:function(){Ext.ux.form.FileUploadField.superclass.onEnable.call(this);this.doDisable(false);},doDisable:function(disabled){this.fileInput.dom.disabled=disabled;this.button.setDisabled(disabled);},preFocus:Ext.emptyFn,alignErrorIcon:function(){this.errorIcon.alignTo(this.wrap,'tl-tr',[2,0]);},});Ext.reg('fileuploadfield',Ext.ux.form.FileUploadField);Ext.form.FileUploadField=Ext.ux.form.FileUploadField;Ext.override(Ext.form.RadioGroup,{afterRender:function(){this.items.each(function(i){this.relayEvents(i,['check']);},this);if(this.lazyValue){this.setValue(this.value);delete this.value;delete this.lazyValue;}
Ext.form.RadioGroup.superclass.afterRender.call(this);},getName:function(){return this.items.first().getName();},getValue:function(){return this.items.first().getGroupValue();},setValue:function(v){if(!this.items.each){this.value=v;this.lazyValue=true;return;}
this.items.each(function(item){if(item.rendered){var checked=item.el.getValue()==String(v);item.el.dom.checked=checked;item.el.dom.defaultChecked=checked;item.wrap[checked?'addClass':'removeClass'](item.checkedCls);}});},});Ext.ns('Ext.ux.form');Ext.ux.form.SpinnerField=Ext.extend(Ext.form.NumberField,{actionMode:'wrap',deferHeight:true,autoSize:Ext.emptyFn,onBlur:Ext.emptyFn,adjustSize:Ext.BoxComponent.prototype.adjustSize,constructor:function(config){var spinnerConfig=Ext.copyTo({},config,'incrementValue,alternateIncrementValue,accelerate,defaultValue,triggerClass,splitterClass');var spl=(this.spinner=new Ext.ux.Spinner(spinnerConfig));var plugins=config.plugins?Ext.isArray(config.plugins)?config.plugins.push(spl):[config.plugins,spl]:spl;Ext.ux.form.SpinnerField.superclass.constructor.call(this,Ext.apply(config,{plugins:plugins}));},getResizeEl:function(){return this.wrap;},getPositionEl:function(){return this.wrap;},alignErrorIcon:function(){if(this.wrap){this.errorIcon.alignTo(this.wrap,'tl-tr',[2,0]);}},validateBlur:function(){return true;},});Ext.reg('spinnerfield',Ext.ux.form.SpinnerField);Ext.form.SpinnerField=Ext.ux.form.SpinnerField;Ext.override(Ext.ux.form.SpinnerField,{onBlur:Ext.form.Field.prototype.onBlur,});Ext.ns('Ext.ux.form');Ext.ux.form.SpinnerGroup=Ext.extend(Ext.form.CheckboxGroup,{defaultType:'spinnerfield',anchor:'98%',groupCls:'x-form-spinner-group',colCfg:{},onRender:function(ct,position){if(!this.el){var panelCfg={cls:this.groupCls,layout:'column',border:false,renderTo:ct,};var colCfg=Ext.apply({defaultType:this.defaultType,layout:'form',border:false,labelWidth:60,defaults:{hideLabel:true,anchor:'60%',},},this.colCfg);if(this.items[0].items){Ext.apply(panelCfg,{layoutConfig:{columns:this.items.length},defaults:this.defaults,items:this.items,});for(var i=0,len=this.items.length;i<len;i++){Ext.applyIf(this.items[i],colCfg);}}else{var numCols,cols=[];if(typeof this.columns=='string'){this.columns=this.items.length;}
if(!Ext.isArray(this.columns)){var cs=[];for(var i=0;i<this.columns;i++){cs.push((100/this.columns)*0.01);}
this.columns=cs;}
numCols=this.columns.length;for(var i=0;i<numCols;i++){var cc=Ext.apply({items:[]},colCfg);cc[this.columns[i]<=1?'columnWidth':'width']=this.columns[i];if(this.defaults){cc.defaults=Ext.apply(cc.defaults||{},this.defaults);}
cols.push(cc);}
if(this.vertical){var rows=Math.ceil(this.items.length/numCols),ri=0;for(var i=0,len=this.items.length;i<len;i++){if(i>0&&i%rows==0){ri++;}
if(this.items[i].fieldLabel){this.items[i].hideLabel=false;}
cols[ri].items.push(this.items[i]);}}else{for(var i=0,len=this.items.length;i<len;i++){var ci=i%numCols;if(this.items[i].fieldLabel){this.items[i].hideLabel=false;}
cols[ci].items.push(this.items[i]);}}
Ext.apply(panelCfg,{layoutConfig:{columns:numCols},items:cols,});}
this.panel=new Ext.Panel(panelCfg);this.el=this.panel.getEl();if(this.forId&&this.itemCls){var l=this.el.up(this.itemCls).child('label',true);if(l){l.setAttribute('htmlFor',this.forId);}}
var fields=this.panel.findBy(function(c){return c.isFormField;},this);this.items=new Ext.util.MixedCollection();this.items.addAll(fields);this.items.each(function(field){field.on('spin',this.onFieldChange,this);field.on('change',this.onFieldChange,this);},this);if(this.lazyValueSet){this.setValue(this.value);delete this.value;delete this.lazyValueSet;}
if(this.lazyRawValueSet){this.setRawValue(this.rawValue);delete this.rawValue;delete this.lazyRawValueSet;}}
Ext.ux.form.SpinnerGroup.superclass.onRender.call(this,ct,position);},onFieldChange:function(spinner){this.fireEvent('change',this,this.getValue());},initValue:Ext.emptyFn,getValue:function(){var value=[this.items.getCount()];this.items.each(function(item,i){value[i]=Number(item.getValue());});return value;},getRawValue:function(){var value=[this.items.getCount()];this.items.each(function(item,i){value[i]=Number(item.getRawValue());});return value;},setValue:function(value){if(!this.rendered){this.value=value;this.lazyValueSet=true;}else{this.items.each(function(item,i){item.setValue(value[i]);});}},setRawValue:function(value){if(!this.rendered){this.rawValue=value;this.lazyRawValueSet=true;}else{this.items.each(function(item,i){item.setRawValue(value[i]);});}},});Ext.reg('spinnergroup',Ext.ux.form.SpinnerGroup);Ext.namespace('Ext.ux.form');Ext.ux.form.ToggleField=Ext.extend(Ext.form.Field,{cls:'x-toggle-field',initComponent:function(){Ext.ux.form.ToggleField.superclass.initComponent.call(this);this.toggle=new Ext.form.Checkbox();this.toggle.on('check',this.onToggleCheck,this);this.input=new Ext.form.TextField({disabled:true,});},onRender:function(ct,position){if(!this.el){this.panel=new Ext.Panel({cls:this.groupCls,layout:'table',layoutConfig:{columns:2,},border:false,renderTo:ct,});this.panel.ownerCt=this;this.el=this.panel.getEl();this.panel.add(this.toggle);this.panel.add(this.input);this.panel.doLayout();this.toggle.getEl().parent().setStyle('padding-right','10px');}
Ext.ux.form.ToggleField.superclass.onRender.call(this,ct,position);},onResize:function(w,h){this.panel.setSize(w,h);this.panel.doLayout();var inputWidth=w-this.toggle.getSize().width-25;this.input.setSize(inputWidth,h);},onToggleCheck:function(toggle,checked){this.input.setDisabled(!checked);},});Ext.reg('togglefield',Ext.ux.form.ToggleField);Ext.ns('Ext.ux.grid');Ext.ux.grid.BufferView=Ext.extend(Ext.grid.GridView,{rowHeight:19,borderHeight:2,scrollDelay:100,cacheSize:20,cleanDelay:500,initTemplates:function(){Ext.ux.grid.BufferView.superclass.initTemplates.call(this);var ts=this.templates;ts.rowHolder=new Ext.Template('<div class="x-grid3-row {alt}" style="{tstyle}"></div>');ts.rowHolder.disableFormats=true;ts.rowHolder.compile();ts.rowBody=new Ext.Template('<table class="x-grid3-row-table" border="0" cellspacing="0" cellpadding="0" style="{tstyle}">','<tbody><tr>{cells}</tr>',this.enableRowBody?'<tr class="x-grid3-row-body-tr" style="{bodyStyle}"><td colspan="{cols}" class="x-grid3-body-cell" tabIndex="0" hidefocus="on"><div class="x-grid3-row-body">{body}</div></td></tr>':'','</tbody></table>');ts.rowBody.disableFormats=true;ts.rowBody.compile();},getStyleRowHeight:function(){return Ext.isBorderBox?this.rowHeight+this.borderHeight:this.rowHeight;},getCalculatedRowHeight:function(){return this.rowHeight+this.borderHeight;},getVisibleRowCount:function(){var rh=this.getCalculatedRowHeight(),visibleHeight=this.scroller.dom.clientHeight;return visibleHeight<1?0:Math.ceil(visibleHeight/rh);},getVisibleRows:function(){var count=this.getVisibleRowCount(),sc=this.scroller.dom.scrollTop,start=sc===0?0:Math.floor(sc/this.getCalculatedRowHeight())-1;return{first:Math.max(start,0),last:Math.min(start+count+2,this.ds.getCount()-1),};},doRender:function(cs,rs,ds,startRow,colCount,stripe,onlyBody){var ts=this.templates,ct=ts.cell,rt=ts.row,rb=ts.rowBody,last=colCount-1,rh=this.getStyleRowHeight(),vr=this.getVisibleRows(),tstyle='width:'+this.getTotalWidth()+';height:'+rh+'px;',buf=[],cb,c,p={},rp={tstyle:tstyle},r;for(var j=0,len=rs.length;j<len;j++){r=rs[j];cb=[];var rowIndex=j+startRow,visible=rowIndex>=vr.first&&rowIndex<=vr.last;if(visible){for(var i=0;i<colCount;i++){c=cs[i];p.id=c.id;p.css=i===0?'x-grid3-cell-first ':i==last?'x-grid3-cell-last ':'';p.attr=p.cellAttr='';p.value=c.renderer(r.data[c.name],p,r,rowIndex,i,ds);p.style=c.style;if(p.value===undefined||p.value===''){p.value='&#160;';}
if(r.dirty&&typeof r.modified[c.name]!=='undefined'){p.css+=' x-grid3-dirty-cell';}
cb[cb.length]=ct.apply(p);}}
var alt=[];if(stripe&&(rowIndex+1)%2===0){alt[0]='x-grid3-row-alt';}
if(r.dirty){alt[1]=' x-grid3-dirty-row';}
rp.cols=colCount;if(this.getRowClass){alt[2]=this.getRowClass(r,rowIndex,rp,ds);}
rp.alt=alt.join(' ');rp.cells=cb.join('');buf[buf.length]=!visible?ts.rowHolder.apply(rp):onlyBody?rb.apply(rp):rt.apply(rp);}
return buf.join('');},isRowRendered:function(index){var row=this.getRow(index);return row&&row.childNodes.length>0;},syncScroll:function(){Ext.ux.grid.BufferView.superclass.syncScroll.apply(this,arguments);this.update();},update:function(){if(this.scrollDelay){if(!this.renderTask){this.renderTask=new Ext.util.DelayedTask(this.doUpdate,this);}
this.renderTask.delay(this.scrollDelay);}else{this.doUpdate();}},onRemove:function(ds,record,index,isUpdate){Ext.ux.grid.BufferView.superclass.onRemove.apply(this,arguments);if(isUpdate!==true){this.update();}},doUpdate:function(){if(this.getVisibleRowCount()>0){var g=this.grid,cm=g.colModel,ds=g.store,cs=this.getColumnData(),vr=this.getVisibleRows(),row;for(var i=vr.first;i<=vr.last;i++){if(!this.isRowRendered(i)&&(row=this.getRow(i))){var html=this.doRender(cs,[ds.getAt(i)],ds,i,cm.getColumnCount(),g.stripeRows,true);row.innerHTML=html;}}
this.clean();}},clean:function(){if(!this.cleanTask){this.cleanTask=new Ext.util.DelayedTask(this.doClean,this);}
this.cleanTask.delay(this.cleanDelay);},doClean:function(){if(this.getVisibleRowCount()>0){var vr=this.getVisibleRows();vr.first-=this.cacheSize;vr.last+=this.cacheSize;var i=0,rows=this.getRows();if(vr.first<=0){i=vr.last+1;}
for(var len=this.ds.getCount();i<len;i++){if((i<vr.first||i>vr.last)&&rows[i].innerHTML){rows[i].innerHTML='';}}}},removeTask:function(name){var task=this[name];if(task&&task.cancel){task.cancel();this[name]=null;}},destroy:function(){this.removeTask('cleanTask');this.removeTask('renderTask');Ext.ux.grid.BufferView.superclass.destroy.call(this);},layout:function(){Ext.ux.grid.BufferView.superclass.layout.call(this);this.update();},});Ext.override(Ext.layout.FormLayout,{renderItem:function(c,position,target){if(c&&!c.rendered&&(c.isFormField||c.fieldLabel)&&c.inputType!='hidden'){var args=this.getTemplateArgs(c);if(typeof position=='number'){position=target.dom.childNodes[position]||null;}
if(position){c.formItem=this.fieldTpl.insertBefore(position,args,true);}else{c.formItem=this.fieldTpl.append(target,args,true);}
c.actionMode='formItem';c.render('x-form-el-'+c.id);c.container=c.formItem;c.actionMode='container';}else{Ext.layout.FormLayout.superclass.renderItem.apply(this,arguments);}},});Ext.override(Ext.tree.MultiSelectionModel,{onNodeClick:function(node,e){if(e.ctrlKey&&this.isSelected(node)){this.unselect(node);}else if(e.shiftKey&&!this.isSelected(node)){var parentNode=node.parentNode;if(this.lastSelNode.parentNode.id!=parentNode.id)return;var fi=parentNode.indexOf(node),li=parentNode.indexOf(this.lastSelNode);this.select(this.lastSelNode,e,false,true);if(fi>li){(fi=fi+li),(li=fi-li),(fi=fi-li);}
parentNode.eachChild(function(n){var i=parentNode.indexOf(n);if(fi<i&&i<li){this.select(n,e,true,true);}},this);this.select(node,e,true);}else{this.select(node,e,e.ctrlKey);}},select:function(node,e,keepExisting,suppressEvent){if(keepExisting!==true){this.clearSelections(true);}
if(this.isSelected(node)){this.lastSelNode=node;return node;}
this.selNodes.push(node);this.selMap[node.id]=node;this.lastSelNode=node;node.ui.onSelectedChange(true);if(suppressEvent!==true){this.fireEvent('selectionchange',this,this.selNodes);}
return node;},});Ext.ns('Ext.ux.tree');Ext.ux.tree.TreeGrid=Ext.extend(Ext.tree.TreePanel,{rootVisible:false,useArrows:true,lines:false,borderWidth:Ext.isBorderBox?0:2,cls:'x-treegrid',columnResize:true,enableSort:true,reserveScrollOffset:true,enableHdMenu:true,columnsText:'Columns',initComponent:function(){if(!this.root){this.root=new Ext.tree.AsyncTreeNode({text:'Root'});}
var l=this.loader;if(!l){l=new Ext.ux.tree.TreeGridLoader({dataUrl:this.dataUrl,requestMethod:this.requestMethod,store:this.store,});}else if(Ext.isObject(l)&&!l.load){l=new Ext.ux.tree.TreeGridLoader(l);}
this.loader=l;Ext.ux.tree.TreeGrid.superclass.initComponent.call(this);this.initColumns();if(this.enableSort){this.treeGridSorter=new Ext.ux.tree.TreeGridSorter(this,this.enableSort);}
if(this.columnResize){this.colResizer=new Ext.tree.ColumnResizer(this.columnResize);this.colResizer.init(this);}
var c=this.columns;if(!this.internalTpl){this.internalTpl=new Ext.XTemplate('<div class="x-grid3-header">','<div class="x-treegrid-header-inner">','<div class="x-grid3-header-offset">','<table style="table-layout: fixed;" cellspacing="0" cellpadding="0" border="0"><colgroup><tpl for="columns"><col /></tpl></colgroup>','<thead><tr class="x-grid3-hd-row">','<tpl for="columns">','<td class="x-grid3-hd x-grid3-cell x-treegrid-hd" style="text-align: {align};" id="',this.id,'-xlhd-{#}">','<div class="x-grid3-hd-inner x-treegrid-hd-inner" unselectable="on">',this.enableHdMenu?'<a class="x-grid3-hd-btn" href="#"></a>':'','{header}<img class="x-grid3-sort-icon" src="',Ext.BLANK_IMAGE_URL,'" />','</div>','</td></tpl>','</tr></thead>','</table>','</div></div>','</div>','<div class="x-treegrid-root-node">','<table class="x-treegrid-root-table" cellpadding="0" cellspacing="0" style="table-layout: fixed;"></table>','</div>');}
if(!this.colgroupTpl){this.colgroupTpl=new Ext.XTemplate('<colgroup><tpl for="columns"><col style="width: {width}px"/></tpl></colgroup>');}},initColumns:function(){var cs=this.columns,len=cs.length,columns=[],i,c;for(i=0;i<len;i++){c=cs[i];if(!c.isColumn){c.xtype=c.xtype?/^tg/.test(c.xtype)?c.xtype:'tg'+c.xtype:'tgcolumn';c=Ext.create(c);}
c.init(this);columns.push(c);if(this.enableSort!==false&&c.sortable!==false){c.sortable=true;this.enableSort=true;}}
this.columns=columns;},onRender:function(){Ext.tree.TreePanel.superclass.onRender.apply(this,arguments);this.el.addClass('x-treegrid');this.outerCt=this.body.createChild({cls:'x-tree-root-ct x-treegrid-ct '+
(this.useArrows?'x-tree-arrows':this.lines?'x-tree-lines':'x-tree-no-lines'),});this.internalTpl.overwrite(this.outerCt,{columns:this.columns});this.mainHd=Ext.get(this.outerCt.dom.firstChild);this.innerHd=Ext.get(this.mainHd.dom.firstChild);this.innerBody=Ext.get(this.outerCt.dom.lastChild);this.innerCt=Ext.get(this.innerBody.dom.firstChild);this.colgroupTpl.insertFirst(this.innerCt,{columns:this.columns});if(this.hideHeaders){this.el.child('.x-grid3-header').setDisplayed('none');}else if(this.enableHdMenu!==false){this.hmenu=new Ext.menu.Menu({id:this.id+'-hctx'});if(this.enableColumnHide!==false){this.colMenu=new Ext.menu.Menu({id:this.id+'-hcols-menu',});this.colMenu.on({scope:this,beforeshow:this.beforeColMenuShow,itemclick:this.handleHdMenuClick,});this.hmenu.add({itemId:'columns',hideOnClick:false,text:this.columnsText,menu:this.colMenu,iconCls:'x-cols-icon',});}
this.hmenu.on('itemclick',this.handleHdMenuClick,this);}},setRootNode:function(node){node.attributes.uiProvider=Ext.ux.tree.TreeGridRootNodeUI;node=Ext.ux.tree.TreeGrid.superclass.setRootNode.call(this,node);if(this.innerCt){this.colgroupTpl.insertFirst(this.innerCt,{columns:this.columns,});}
return node;},clearInnerCt:function(){if(Ext.isIE){var dom=this.innerCt.dom;while(dom.firstChild){dom.removeChild(dom.firstChild);}}else{Ext.ux.tree.TreeGrid.superclass.clearInnerCt.call(this);}},initEvents:function(){Ext.ux.tree.TreeGrid.superclass.initEvents.apply(this,arguments);this.mon(this.innerBody,'scroll',this.syncScroll,this);this.mon(this.innerHd,'click',this.handleHdDown,this);this.mon(this.mainHd,{scope:this,mouseover:this.handleHdOver,mouseout:this.handleHdOut,});},onResize:function(w,h){Ext.ux.tree.TreeGrid.superclass.onResize.apply(this,arguments);var bd=this.innerBody.dom;var hd=this.innerHd.dom;if(!bd){return;}
if(Ext.isNumber(h)){bd.style.height=this.body.getHeight(true)-hd.offsetHeight+'px';}
if(Ext.isNumber(w)){var sw=Ext.num(this.scrollOffset,Ext.getScrollBarWidth());if(this.reserveScrollOffset||bd.offsetWidth-bd.clientWidth>10){this.setScrollOffset(sw);}else{var me=this;setTimeout(function(){me.setScrollOffset(bd.offsetWidth-bd.clientWidth>10?sw:0);},10);}}},updateColumnWidths:function(){var cols=this.columns,colCount=cols.length,groups=this.outerCt.query('colgroup'),groupCount=groups.length,c,g,i,j;for(i=0;i<colCount;i++){c=cols[i];for(j=0;j<groupCount;j++){g=groups[j];g.childNodes[i].style.width=(c.hidden?0:c.width)+'px';}}
for(i=0,groups=this.innerHd.query('td'),len=groups.length;i<len;i++){c=Ext.fly(groups[i]);if(cols[i]&&cols[i].hidden){c.addClass('x-treegrid-hd-hidden');}else{c.removeClass('x-treegrid-hd-hidden');}}
var tcw=this.getTotalColumnWidth();Ext.fly(this.innerHd.dom.firstChild).setWidth(tcw+(this.scrollOffset||0));this.outerCt.select('table').setWidth(tcw);this.syncHeaderScroll();},getVisibleColumns:function(){var columns=[],cs=this.columns,len=cs.length,i;for(i=0;i<len;i++){if(!cs[i].hidden){columns.push(cs[i]);}}
return columns;},getTotalColumnWidth:function(){var total=0;for(var i=0,cs=this.getVisibleColumns(),len=cs.length;i<len;i++){total+=cs[i].width;}
return total;},setScrollOffset:function(scrollOffset){this.scrollOffset=scrollOffset;this.updateColumnWidths();},handleHdDown:function(e,t){var hd=e.getTarget('.x-treegrid-hd');if(hd&&Ext.fly(t).hasClass('x-grid3-hd-btn')){var ms=this.hmenu.items,cs=this.columns,index=this.findHeaderIndex(hd),c=cs[index],sort=c.sortable;e.stopEvent();Ext.fly(hd).addClass('x-grid3-hd-menu-open');this.hdCtxIndex=index;this.fireEvent('headerbuttonclick',ms,c,hd,index);this.hmenu.on('hide',function(){Ext.fly(hd).removeClass('x-grid3-hd-menu-open');},this,{single:true});this.hmenu.show(t,'tl-bl?');}else if(hd){var index=this.findHeaderIndex(hd);this.fireEvent('headerclick',this.columns[index],hd,index);}},handleHdOver:function(e,t){var hd=e.getTarget('.x-treegrid-hd');if(hd&&!this.headersDisabled){index=this.findHeaderIndex(hd);this.activeHdRef=t;this.activeHdIndex=index;var el=Ext.get(hd);this.activeHdRegion=el.getRegion();el.addClass('x-grid3-hd-over');this.activeHdBtn=el.child('.x-grid3-hd-btn');if(this.activeHdBtn){this.activeHdBtn.dom.style.height=hd.firstChild.offsetHeight-1+'px';}}},handleHdOut:function(e,t){var hd=e.getTarget('.x-treegrid-hd');if(hd&&(!Ext.isIE||!e.within(hd,true))){this.activeHdRef=null;Ext.fly(hd).removeClass('x-grid3-hd-over');hd.style.cursor='';}},findHeaderIndex:function(hd){hd=hd.dom||hd;var cs=hd.parentNode.childNodes;for(var i=0,c;(c=cs[i]);i++){if(c==hd){return i;}}
return-1;},beforeColMenuShow:function(){var cols=this.columns,colCount=cols.length,i,c;this.colMenu.removeAll();for(i=1;i<colCount;i++){c=cols[i];if(c.hideable!==false){this.colMenu.add(new Ext.menu.CheckItem({itemId:'col-'+i,text:c.header,checked:!c.hidden,hideOnClick:false,disabled:c.hideable===false,}));}}},handleHdMenuClick:function(item){var index=this.hdCtxIndex,id=item.getItemId();if(this.fireEvent('headermenuclick',this.columns[index],id,index)!==false){index=id.substr(4);if(index>0&&this.columns[index]){this.setColumnVisible(index,!item.checked);}}
return true;},setColumnVisible:function(index,visible){this.columns[index].hidden=!visible;this.updateColumnWidths();},scrollToTop:function(){this.innerBody.dom.scrollTop=0;this.innerBody.dom.scrollLeft=0;},syncScroll:function(){this.syncHeaderScroll();var mb=this.innerBody.dom;this.fireEvent('bodyscroll',mb.scrollLeft,mb.scrollTop);},syncHeaderScroll:function(){var mb=this.innerBody.dom;this.innerHd.dom.scrollLeft=mb.scrollLeft;this.innerHd.dom.scrollLeft=mb.scrollLeft;},registerNode:function(n){Ext.ux.tree.TreeGrid.superclass.registerNode.call(this,n);if(!n.uiProvider&&!n.isRoot&&!n.ui.isTreeGridNodeUI){n.ui=new Ext.ux.tree.TreeGridNodeUI(n);}},});Ext.reg('treegrid',Ext.ux.tree.TreeGrid);Ext.tree.ColumnResizer=Ext.extend(Ext.util.Observable,{minWidth:14,constructor:function(config){Ext.apply(this,config);Ext.tree.ColumnResizer.superclass.constructor.call(this);},init:function(tree){this.tree=tree;tree.on('render',this.initEvents,this);},initEvents:function(tree){tree.mon(tree.innerHd,'mousemove',this.handleHdMove,this);this.tracker=new Ext.dd.DragTracker({onBeforeStart:this.onBeforeStart.createDelegate(this),onStart:this.onStart.createDelegate(this),onDrag:this.onDrag.createDelegate(this),onEnd:this.onEnd.createDelegate(this),tolerance:3,autoStart:300,});this.tracker.initEl(tree.innerHd);tree.on('beforedestroy',this.tracker.destroy,this.tracker);},handleHdMove:function(e,t){var hw=5,x=e.getPageX(),hd=e.getTarget('.x-treegrid-hd',3,true);if(hd){var r=hd.getRegion(),ss=hd.dom.style,pn=hd.dom.parentNode;if(x-r.left<=hw&&hd.dom!==pn.firstChild){var ps=hd.dom.previousSibling;while(ps&&Ext.fly(ps).hasClass('x-treegrid-hd-hidden')){ps=ps.previousSibling;}
if(ps){this.activeHd=Ext.get(ps);ss.cursor=Ext.isWebKit?'e-resize':'col-resize';}}else if(r.right-x<=hw){var ns=hd.dom;while(ns&&Ext.fly(ns).hasClass('x-treegrid-hd-hidden')){ns=ns.previousSibling;}
if(ns){this.activeHd=Ext.get(ns);ss.cursor=Ext.isWebKit?'w-resize':'col-resize';}}else{delete this.activeHd;ss.cursor='';}}},onBeforeStart:function(e){this.dragHd=this.activeHd;return!!this.dragHd;},onStart:function(e){this.dragHeadersDisabled=this.tree.headersDisabled;this.tree.headersDisabled=true;this.proxy=this.tree.body.createChild({cls:'x-treegrid-resizer'});this.proxy.setHeight(this.tree.body.getHeight());var x=this.tracker.getXY()[0];this.hdX=this.dragHd.getX();this.hdIndex=this.tree.findHeaderIndex(this.dragHd);this.proxy.setX(this.hdX);this.proxy.setWidth(x-this.hdX);this.maxWidth=this.tree.outerCt.getWidth()-
this.tree.innerBody.translatePoints(this.hdX).left;},onDrag:function(e){var cursorX=this.tracker.getXY()[0];this.proxy.setWidth((cursorX-this.hdX).constrain(this.minWidth,this.maxWidth));},onEnd:function(e){var nw=this.proxy.getWidth(),tree=this.tree,disabled=this.dragHeadersDisabled;this.proxy.remove();delete this.dragHd;tree.columns[this.hdIndex].width=nw;tree.updateColumnWidths();setTimeout(function(){tree.headersDisabled=disabled;},100);},});(function(){Ext.override(Ext.list.Column,{init:function(){var types=Ext.data.Types,st=this.sortType;if(this.type){if(Ext.isString(this.type)){this.type=Ext.data.Types[this.type.toUpperCase()]||types.AUTO;}}else{this.type=types.AUTO;}
if(Ext.isString(st)){this.sortType=Ext.data.SortTypes[st];}else if(Ext.isEmpty(st)){this.sortType=this.type.sortType;}},});Ext.tree.Column=Ext.extend(Ext.list.Column,{});Ext.tree.NumberColumn=Ext.extend(Ext.list.NumberColumn,{});Ext.tree.DateColumn=Ext.extend(Ext.list.DateColumn,{});Ext.tree.BooleanColumn=Ext.extend(Ext.list.BooleanColumn,{});Ext.reg('tgcolumn',Ext.tree.Column);Ext.reg('tgnumbercolumn',Ext.tree.NumberColumn);Ext.reg('tgdatecolumn',Ext.tree.DateColumn);Ext.reg('tgbooleancolumn',Ext.tree.BooleanColumn);})();Ext.ux.tree.TreeGridLoader=Ext.extend(Ext.tree.TreeLoader,{createNode:function(attr){if(!attr.uiProvider){attr.uiProvider=Ext.ux.tree.TreeGridNodeUI;}
return Ext.tree.TreeLoader.prototype.createNode.call(this,attr);},});Ext.ux.tree.TreeGridNodeUI=Ext.extend(Ext.tree.TreeNodeUI,{isTreeGridNodeUI:true,renderElements:function(n,a,targetNode,bulkRender){var t=n.getOwnerTree(),cols=t.columns,c=cols[0],i,buf,len;this.indentMarkup=n.parentNode?n.parentNode.ui.getChildIndent():'';buf=['<tbody class="x-tree-node">','<tr ext:tree-node-id="',n.id,'" class="x-tree-node-el x-tree-node-leaf ',a.cls,'">','<td class="x-treegrid-col">','<span class="x-tree-node-indent">',this.indentMarkup,'</span>','<img src="',this.emptyIcon,'" class="x-tree-ec-icon x-tree-elbow" />','<img src="',a.icon||this.emptyIcon,'" class="x-tree-node-icon',a.icon?' x-tree-node-inline-icon':'',a.iconCls?' '+a.iconCls:'','" unselectable="on" />','<a hidefocus="on" class="x-tree-node-anchor" href="',a.href?a.href:'#','" tabIndex="1" ',a.hrefTarget?' target="'+a.hrefTarget+'"':'','>','<span unselectable="on">',c.tpl?c.tpl.apply(a):a[c.dataIndex]||c.text,'</span></a>','</td>',];for(i=1,len=cols.length;i<len;i++){c=cols[i];buf.push('<td class="x-treegrid-col ',c.cls?c.cls:'','">','<div unselectable="on" class="x-treegrid-text"',c.align?' style="text-align: '+c.align+';"':'','>',c.tpl?c.tpl.apply(a):a[c.dataIndex],'</div>','</td>');}
buf.push('</tr><tr class="x-tree-node-ct"><td colspan="',cols.length,'">','<table class="x-treegrid-node-ct-table" cellpadding="0" cellspacing="0" style="table-layout: fixed; display: none; width: ',t.innerCt.getWidth(),'px;"><colgroup>');for(i=0,len=cols.length;i<len;i++){buf.push('<col style="width: ',cols[i].hidden?0:cols[i].width,'px;" />');}
buf.push('</colgroup></table></td></tr></tbody>');if(bulkRender!==true&&n.nextSibling&&n.nextSibling.ui.getEl()){this.wrap=Ext.DomHelper.insertHtml('beforeBegin',n.nextSibling.ui.getEl(),buf.join(''));}else{this.wrap=Ext.DomHelper.insertHtml('beforeEnd',targetNode,buf.join(''));}
this.elNode=this.wrap.childNodes[0];this.ctNode=this.wrap.childNodes[1].firstChild.firstChild;var cs=this.elNode.firstChild.childNodes;this.indentNode=cs[0];this.ecNode=cs[1];this.iconNode=cs[2];this.anchor=cs[3];this.textNode=cs[3].firstChild;},animExpand:function(cb){this.ctNode.style.display='';Ext.ux.tree.TreeGridNodeUI.superclass.animExpand.call(this,cb);},});Ext.ux.tree.TreeGridRootNodeUI=Ext.extend(Ext.tree.TreeNodeUI,{isTreeGridNodeUI:true,render:function(){if(!this.rendered){this.wrap=this.ctNode=this.node.ownerTree.innerCt.dom;this.node.expanded=true;}
if(Ext.isWebKit){var ct=this.ctNode;ct.style.tableLayout=null;(function(){ct.style.tableLayout='fixed';}.defer(1));}},destroy:function(){if(this.elNode){Ext.dd.Registry.unregister(this.elNode.id);}
delete this.node;},collapse:Ext.emptyFn,expand:Ext.emptyFn,});Ext.override(Ext.ux.tree.TreeGridNodeUI,{updateColumns:function(){if(!this.rendered)return;var a=this.node.attributes,t=this.node.getOwnerTree(),cols=t.columns,c=cols[0];this.anchor.firstChild.innerHTML=c.tpl?c.tpl.apply(a):a[c.dataIndex]||c.text;for(i=1,len=cols.length;i<len;i++){c=cols[i];this.elNode.childNodes[i].firstChild.innerHTML=c.tpl?c.tpl.apply(a):a[c.dataIndex]||c.text;}},});Ext.tree.RenderColumn=Ext.extend(Ext.tree.Column,{constructor:function(c){c.tpl=c.tpl||new Ext.XTemplate('{'+c.dataIndex+':this.format}');c.tpl.format=c.renderer;c.tpl.col=this;Ext.tree.RenderColumn.superclass.constructor.call(this,c);},});Ext.reg('tgrendercolumn',Ext.tree.RenderColumn);Ext.ns('Ext.ux.tree');Ext.ux.tree.TreeGridSorter=Ext.extend(Ext.tree.TreeSorter,{sortClasses:['sort-asc','sort-desc'],sortAscText:'Sort Ascending',sortDescText:'Sort Descending',constructor:function(tree,config){if(!Ext.isObject(config)){config={property:tree.columns[0].dataIndex||'text',folderSort:true,};}
Ext.ux.tree.TreeGridSorter.superclass.constructor.apply(this,arguments);this.tree=tree;tree.on('headerclick',this.onHeaderClick,this);tree.ddAppendOnly=true;var me=this;this.defaultSortFn=function(n1,n2){var desc=me.dir&&me.dir.toLowerCase()=='desc',prop=me.property||'text',sortType=me.sortType,caseSensitive=me.caseSensitive===true,leafAttr=me.leafAttr||'leaf',attr1=n1.attributes,attr2=n2.attributes;if(me.folderSort){if(attr1[leafAttr]&&!attr2[leafAttr]){return 1;}
if(!attr1[leafAttr]&&attr2[leafAttr]){return-1;}}
var prop1=attr1[prop],prop2=attr2[prop],v1=sortType?sortType(prop1):caseSensitive?prop1:prop1.toUpperCase();v2=sortType?sortType(prop2):caseSensitive?prop2:prop2.toUpperCase();if(v1<v2){return desc?+1:-1;}else if(v1>v2){return desc?-1:+1;}else{return 0;}};tree.on('afterrender',this.onAfterTreeRender,this,{single:true});tree.on('headermenuclick',this.onHeaderMenuClick,this);},onAfterTreeRender:function(){if(this.tree.hmenu){this.tree.hmenu.insert(0,{itemId:'asc',text:this.sortAscText,cls:'xg-hmenu-sort-asc',},{itemId:'desc',text:this.sortDescText,cls:'xg-hmenu-sort-desc',});}
this.updateSortIcon(0,'asc');},onHeaderMenuClick:function(c,id,index){if(id==='asc'||id==='desc'){this.onHeaderClick(c,null,index);return false;}},onHeaderClick:function(c,el,i){if(c&&!this.tree.headersDisabled){var me=this;me.property=c.dataIndex;me.dir=c.dir=c.dir==='desc'?'asc':'desc';me.sortType=c.sortType;me.caseSensitive===Ext.isBoolean(c.caseSensitive)?c.caseSensitive:this.caseSensitive;me.sortFn=c.sortFn||this.defaultSortFn;this.tree.root.cascade(function(n){if(!n.isLeaf()){me.updateSort(me.tree,n);}});this.updateSortIcon(i,c.dir);}},updateSortIcon:function(col,dir){var sc=this.sortClasses,hds=this.tree.innerHd.select('td').removeClass(sc);hds.item(col).addClass(sc[dir=='desc'?1:0]);},});Ext.ux.JSLoader=function(options){Ext.ux.JSLoader.scripts[++Ext.ux.JSLoader.index]={url:options.url,success:true,jsLoadObj:null,options:options,onLoad:options.onLoad||Ext.emptyFn,onError:options.onError||Ext.ux.JSLoader.stdError,scope:options.scope||this,};Ext.Ajax.request({url:options.url,scriptIndex:Ext.ux.JSLoader.index,success:function(response,options){var script=Ext.ux.JSLoader.scripts[options.scriptIndex];try{eval(response.responseText);}catch(e){script.success=false;script.onError(script.options,e);}
if(script.success){script.onLoad.call(script.scope,script.options);}},failure:function(response,options){var script=Ext.ux.JSLoader.scripts[options.scriptIndex];script.success=false;script.onError(script.options,response.status);},});};Ext.ux.JSLoader.index=0;Ext.ux.JSLoader.scripts=[];Ext.ux.JSLoader.stdError=function(options,e){window.alert('Error loading script:\n\n'+options.url+'\n\nstatus: '+e);};Ext.ux.Spinner=Ext.extend(Ext.util.Observable,{incrementValue:1,alternateIncrementValue:5,triggerClass:'x-form-spinner-trigger',splitterClass:'x-form-spinner-splitter',alternateKey:Ext.EventObject.shiftKey,defaultValue:0,accelerate:false,constructor:function(config){Ext.ux.Spinner.superclass.constructor.call(this,config);Ext.apply(this,config);this.mimicing=false;},init:function(field){this.field=field;field.afterMethod('onRender',this.doRender,this);field.afterMethod('onEnable',this.doEnable,this);field.afterMethod('onDisable',this.doDisable,this);field.afterMethod('afterRender',this.doAfterRender,this);field.afterMethod('onResize',this.doResize,this);field.afterMethod('onFocus',this.doFocus,this);field.beforeMethod('onDestroy',this.doDestroy,this);},doRender:function(ct,position){var el=(this.el=this.field.getEl());var f=this.field;if(!f.wrap){f.wrap=this.wrap=el.wrap({cls:'x-form-field-wrap',});}else{this.wrap=f.wrap.addClass('x-form-field-wrap');}
this.trigger=this.wrap.createChild({tag:'img',src:Ext.BLANK_IMAGE_URL,cls:'x-form-trigger '+this.triggerClass,});if(!f.width){this.wrap.setWidth(el.getWidth()+this.trigger.getWidth());}
this.splitter=this.wrap.createChild({tag:'div',cls:this.splitterClass,style:'width:13px; height:2px;',});this.splitter.setRight(Ext.isIE?1:2).setTop(10).show();this.proxy=this.trigger.createProxy('',this.splitter,true);this.proxy.addClass('x-form-spinner-proxy');this.proxy.setStyle('left','0px');this.proxy.setSize(14,1);this.proxy.hide();this.dd=new Ext.dd.DDProxy(this.splitter.dom.id,'SpinnerDrag',{dragElId:this.proxy.id,});this.initTrigger();this.initSpinner();},doAfterRender:function(){var y;if(Ext.isIE&&this.el.getY()!=(y=this.trigger.getY())){this.el.position();this.el.setY(y);}},doEnable:function(){if(this.wrap){this.disabled=false;this.wrap.removeClass(this.field.disabledClass);}},doDisable:function(){if(this.wrap){this.disabled=true;this.wrap.addClass(this.field.disabledClass);this.el.removeClass(this.field.disabledClass);}},doResize:function(w,h){if(typeof w=='number'){this.el.setWidth(w-this.trigger.getWidth());}
this.wrap.setWidth(this.el.getWidth()+this.trigger.getWidth());},doFocus:function(){if(!this.mimicing){this.wrap.addClass('x-trigger-wrap-focus');this.mimicing=true;Ext.get(Ext.isIE?document.body:document).on('mousedown',this.mimicBlur,this,{delay:10,});this.el.on('keydown',this.checkTab,this);}},checkTab:function(e){if(e.getKey()==e.TAB){this.triggerBlur();}},mimicBlur:function(e){if(!this.wrap.contains(e.target)&&this.field.validateBlur(e)){this.triggerBlur();}},triggerBlur:function(){this.mimicing=false;Ext.get(Ext.isIE?document.body:document).un('mousedown',this.mimicBlur,this);this.el.un('keydown',this.checkTab,this);this.field.beforeBlur();this.wrap.removeClass('x-trigger-wrap-focus');this.field.onBlur.call(this.field);},initTrigger:function(){this.trigger.addClassOnOver('x-form-trigger-over');this.trigger.addClassOnClick('x-form-trigger-click');},initSpinner:function(){this.field.addEvents({spin:true,spinup:true,spindown:true,});this.keyNav=new Ext.KeyNav(this.el,{up:function(e){e.preventDefault();this.onSpinUp();},down:function(e){e.preventDefault();this.onSpinDown();},pageUp:function(e){e.preventDefault();this.onSpinUpAlternate();},pageDown:function(e){e.preventDefault();this.onSpinDownAlternate();},scope:this,});this.repeater=new Ext.util.ClickRepeater(this.trigger,{accelerate:this.accelerate,});this.field.mon(this.repeater,'click',this.onTriggerClick,this,{preventDefault:true,});this.field.mon(this.trigger,{mouseover:this.onMouseOver,mouseout:this.onMouseOut,mousemove:this.onMouseMove,mousedown:this.onMouseDown,mouseup:this.onMouseUp,scope:this,preventDefault:true,});this.field.mon(this.wrap,'mousewheel',this.handleMouseWheel,this);this.dd.setXConstraint(0,0,10);this.dd.setYConstraint(1500,1500,10);this.dd.endDrag=this.endDrag.createDelegate(this);this.dd.startDrag=this.startDrag.createDelegate(this);this.dd.onDrag=this.onDrag.createDelegate(this);},onMouseOver:function(){if(this.disabled){return;}
var middle=this.getMiddle();this.tmpHoverClass=Ext.EventObject.getPageY()<middle?'x-form-spinner-overup':'x-form-spinner-overdown';this.trigger.addClass(this.tmpHoverClass);},onMouseOut:function(){this.trigger.removeClass(this.tmpHoverClass);},onMouseMove:function(){if(this.disabled){return;}
var middle=this.getMiddle();if((Ext.EventObject.getPageY()>middle&&this.tmpHoverClass=='x-form-spinner-overup')||(Ext.EventObject.getPageY()<middle&&this.tmpHoverClass=='x-form-spinner-overdown')){}},onMouseDown:function(){if(this.disabled){return;}
var middle=this.getMiddle();this.tmpClickClass=Ext.EventObject.getPageY()<middle?'x-form-spinner-clickup':'x-form-spinner-clickdown';this.trigger.addClass(this.tmpClickClass);},onMouseUp:function(){this.trigger.removeClass(this.tmpClickClass);},onTriggerClick:function(){if(this.disabled||this.el.dom.readOnly){return;}
var middle=this.getMiddle();var ud=Ext.EventObject.getPageY()<middle?'Up':'Down';this['onSpin'+ud]();},getMiddle:function(){var t=this.trigger.getTop();var h=this.trigger.getHeight();var middle=t+h/2;return middle;},isSpinnable:function(){if(this.disabled||this.el.dom.readOnly){Ext.EventObject.preventDefault();return false;}
return true;},handleMouseWheel:function(e){if(this.wrap.hasClass('x-trigger-wrap-focus')==false){return;}
var delta=e.getWheelDelta();if(delta>0){this.onSpinUp();e.stopEvent();}else if(delta<0){this.onSpinDown();e.stopEvent();}},startDrag:function(){this.proxy.show();this._previousY=Ext.fly(this.dd.getDragEl()).getTop();},endDrag:function(){this.proxy.hide();},onDrag:function(){if(this.disabled){return;}
var y=Ext.fly(this.dd.getDragEl()).getTop();var ud='';if(this._previousY>y){ud='Up';}
if(this._previousY<y){ud='Down';}
if(ud!=''){this['onSpin'+ud]();}
this._previousY=y;},onSpinUp:function(){if(this.isSpinnable()==false){return;}
if(Ext.EventObject.shiftKey==true){this.onSpinUpAlternate();return;}else{this.spin(false,false);}
this.field.fireEvent('spin',this);this.field.fireEvent('spinup',this);},onSpinDown:function(){if(this.isSpinnable()==false){return;}
if(Ext.EventObject.shiftKey==true){this.onSpinDownAlternate();return;}else{this.spin(true,false);}
this.field.fireEvent('spin',this);this.field.fireEvent('spindown',this);},onSpinUpAlternate:function(){if(this.isSpinnable()==false){return;}
this.spin(false,true);this.field.fireEvent('spin',this);this.field.fireEvent('spinup',this);},onSpinDownAlternate:function(){if(this.isSpinnable()==false){return;}
this.spin(true,true);this.field.fireEvent('spin',this);this.field.fireEvent('spindown',this);},spin:function(down,alternate){var v=parseFloat(this.field.getValue());var incr=alternate==true?this.alternateIncrementValue:this.incrementValue;down==true?(v-=incr):(v+=incr);v=isNaN(v)?this.defaultValue:v;v=this.fixBoundries(v);this.field.setRawValue(v);},fixBoundries:function(value){var v=value;if(this.field.minValue!=undefined&&v<this.field.minValue){v=this.field.minValue;}
if(this.field.maxValue!=undefined&&v>this.field.maxValue){v=this.field.maxValue;}
return this.fixPrecision(v);},fixPrecision:function(value){var nan=isNaN(value);if(!this.field.allowDecimals||this.field.decimalPrecision==-1||nan||!value){return nan?'':value;}
return parseFloat(parseFloat(value).toFixed(this.field.decimalPrecision));},doDestroy:function(){if(this.trigger){this.trigger.remove();}
if(this.wrap){this.wrap.remove();delete this.field.wrap;}
if(this.splitter){this.splitter.remove();}
if(this.dd){this.dd.unreg();this.dd=null;}
if(this.proxy){this.proxy.remove();}
if(this.repeater){this.repeater.purgeListeners();}
if(this.mimicing){Ext.get(Ext.isIE?document.body:document).un('mousedown',this.mimicBlur,this);}},});Ext.form.Spinner=Ext.ux.Spinner;Ext.ux.StatusBar=Ext.extend(Ext.Toolbar,{cls:'x-statusbar',busyIconCls:'x-status-busy',busyText:'Loading...',autoClear:5000,emptyText:'&nbsp;',activeThreadId:0,initComponent:function(){if(this.statusAlign=='right'){this.cls+=' x-status-right';}
Ext.ux.StatusBar.superclass.initComponent.call(this);},afterRender:function(){Ext.ux.StatusBar.superclass.afterRender.call(this);var right=this.statusAlign=='right';this.currIconCls=this.iconCls||this.defaultIconCls;this.statusEl=new Ext.Toolbar.TextItem({cls:'x-status-text '+(this.currIconCls||''),text:this.text||this.defaultText||'',});if(right){this.add('->');this.add(this.statusEl);}else{this.insert(0,this.statusEl);this.insert(1,'->');}
this.doLayout();},setStatus:function(o){o=o||{};if(typeof o=='string'){o={text:o};}
if(o.text!==undefined){this.setText(o.text);}
if(o.iconCls!==undefined){this.setIcon(o.iconCls);}
if(o.clear){var c=o.clear,wait=this.autoClear,defaults={useDefaults:true,anim:true};if(typeof c=='object'){c=Ext.applyIf(c,defaults);if(c.wait){wait=c.wait;}}else if(typeof c=='number'){wait=c;c=defaults;}else if(typeof c=='boolean'){c=defaults;}
c.threadId=this.activeThreadId;this.clearStatus.defer(wait,this,[c]);}
return this;},clearStatus:function(o){o=o||{};if(o.threadId&&o.threadId!==this.activeThreadId){return this;}
var text=o.useDefaults?this.defaultText:this.emptyText,iconCls=o.useDefaults?this.defaultIconCls?this.defaultIconCls:'':'';if(o.anim){this.statusEl.el.fadeOut({remove:false,useDisplay:true,scope:this,callback:function(){this.setStatus({text:text,iconCls:iconCls,});this.statusEl.el.show();},});}else{this.statusEl.hide();this.setStatus({text:text,iconCls:iconCls,});this.statusEl.show();}
return this;},setText:function(text){this.activeThreadId++;this.text=text||'';if(this.rendered){this.statusEl.setText(this.text);}
return this;},getText:function(){return this.text;},setIcon:function(cls){this.activeThreadId++;cls=cls||'';if(this.rendered){if(this.currIconCls){this.statusEl.removeClass(this.currIconCls);this.currIconCls=null;}
if(cls.length>0){this.statusEl.addClass(cls);this.currIconCls=cls;}}else{this.currIconCls=cls;}
return this;},showBusy:function(o){if(typeof o=='string'){o={text:o};}
o=Ext.applyIf(o||{},{text:this.busyText,iconCls:this.busyIconCls,});return this.setStatus(o);},});Ext.reg('statusbar',Ext.ux.StatusBar);