</span><span class="jsdoc-var">Roo.extend</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.grid.GridView</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">Roo.grid.AbstractGridView</span><span class="jsdoc-syntax">, {
- </span><span class="jsdoc-comment">/**
- * Override this function to apply custom css classes to rows during rendering
- * @param {Record} record The record
- * @param {Number} index
- * @method getRowClass
- */
+ </span><span class="jsdoc-var">unselectable </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'unselectable="on"'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">unselectableCls </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'x-unselectable'</span><span class="jsdoc-syntax">,
+
+
</span><span class="jsdoc-var">rowClass </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">"x-grid-row"</span><span class="jsdoc-syntax">,
</span><span class="jsdoc-var">cellClass </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">"x-grid-col"</span><span class="jsdoc-syntax">,
</span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">tpls.hcell</span><span class="jsdoc-syntax">){
</span><span class="jsdoc-var">tpls.hcell </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">new </span><span class="jsdoc-var">Roo.Template</span><span class="jsdoc-syntax">(
</span><span class="jsdoc-string">'<td class="x-grid-hd x-grid-td-{id} {cellId}"><div title="{title}" class="x-grid-hd-inner x-grid-hd-{id}">'</span><span class="jsdoc-syntax">,
- </span><span class="jsdoc-string">'<div class="x-grid-hd-text" unselectable="on">{value}<img class="x-grid-sort-icon" src="'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">Roo.BLANK_IMAGE_URL</span><span class="jsdoc-syntax">, </span><span class="jsdoc-string">'" /></div>'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-string">'<div class="x-grid-hd-text ' </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-var">this.unselectableCls </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-string">'" ' </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-var">this.unselectable </span><span class="jsdoc-syntax">+</span><span class="jsdoc-string">'>{value}<img class="x-grid-sort-icon" src="'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">Roo.BLANK_IMAGE_URL</span><span class="jsdoc-syntax">, </span><span class="jsdoc-string">'" /></div>'</span><span class="jsdoc-syntax">,
</span><span class="jsdoc-string">"</div></td>"
</span><span class="jsdoc-syntax">);
</span><span class="jsdoc-var">tpls.hcell.disableFormats </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">;
</span><span class="jsdoc-var">tpls.hcell.compile</span><span class="jsdoc-syntax">();
</span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">tpls.hsplit</span><span class="jsdoc-syntax">){
- </span><span class="jsdoc-var">tpls.hsplit </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">new </span><span class="jsdoc-var">Roo.Template</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'<div class="x-grid-split {splitId} x-grid-split-{id}" style="{style}" unselectable="on">&#160;</div>'</span><span class="jsdoc-syntax">);
+ </span><span class="jsdoc-var">tpls.hsplit </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">new </span><span class="jsdoc-var">Roo.Template</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'<div class="x-grid-split {splitId} x-grid-split-{id}" style="{style} ' </span><span class="jsdoc-syntax">+
+ </span><span class="jsdoc-var">this.unselectableCls </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-string">'" ' </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-var">this.unselectable </span><span class="jsdoc-syntax">+</span><span class="jsdoc-string">'>&#160;</div>'</span><span class="jsdoc-syntax">);
</span><span class="jsdoc-var">tpls.hsplit.disableFormats </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">;
}
</span><span class="jsdoc-var">tpls.hsplit.compile</span><span class="jsdoc-syntax">();
</span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">tpls.cell</span><span class="jsdoc-syntax">){
</span><span class="jsdoc-var">tpls.cell </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">new </span><span class="jsdoc-var">Roo.Template</span><span class="jsdoc-syntax">(
</span><span class="jsdoc-string">'<td class="x-grid-col x-grid-td-{id} {cellId} {css}" tabIndex="0">'</span><span class="jsdoc-syntax">,
- </span><span class="jsdoc-string">'<div class="x-grid-col-{id} x-grid-cell-inner"><div class="x-grid-cell-text" unselectable="on" {attr}>{value}</div></div>'</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-string">'<div class="x-grid-col-{id} x-grid-cell-inner"><div class="x-grid-cell-text ' </span><span class="jsdoc-syntax">+
+ </span><span class="jsdoc-var">this.unselectableCls </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-string">'" ' </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-var">this.unselectable </span><span class="jsdoc-syntax">+</span><span class="jsdoc-string">'" {attr}>{value}</div></div>'</span><span class="jsdoc-syntax">,
</span><span class="jsdoc-string">"</td>"
</span><span class="jsdoc-syntax">);
</span><span class="jsdoc-var">tpls.cell.disableFormats </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">;
</span><span class="jsdoc-var">record</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">r</span><span class="jsdoc-syntax">,
</span><span class="jsdoc-var">rowIndex </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">rowIndex</span><span class="jsdoc-syntax">,
</span><span class="jsdoc-var">rowClass </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">''
- </span><span class="jsdoc-syntax">}
+ </span><span class="jsdoc-syntax">};
</span><span class="jsdoc-var">this.grid.fireEvent</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'rowclass'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">rowcfg</span><span class="jsdoc-syntax">);
</span><span class="jsdoc-var">alt.push</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">rowcfg.rowClass</span><span class="jsdoc-syntax">);
}
</span><span class="jsdoc-comment">// buffers
</span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">buf </span><span class="jsdoc-syntax">= [], </span><span class="jsdoc-var">lbuf </span><span class="jsdoc-syntax">= [], </span><span class="jsdoc-var">cb</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">lcb</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">c</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">p </span><span class="jsdoc-syntax">= {}, </span><span class="jsdoc-var">rp </span><span class="jsdoc-syntax">= {}, </span><span class="jsdoc-var">r</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">rowIndex</span><span class="jsdoc-syntax">;
</span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">hasListener </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.grid.hasListener</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'rowclass'</span><span class="jsdoc-syntax">);
+
</span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">rowcfg </span><span class="jsdoc-syntax">= {};
</span><span class="jsdoc-keyword">for</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">j </span><span class="jsdoc-syntax">= 0, </span><span class="jsdoc-var">len </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">rs.length</span><span class="jsdoc-syntax">; </span><span class="jsdoc-var">j </span><span class="jsdoc-syntax">< </span><span class="jsdoc-var">len</span><span class="jsdoc-syntax">; </span><span class="jsdoc-var">j</span><span class="jsdoc-syntax">++){
</span><span class="jsdoc-var">r </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">rs</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">j</span><span class="jsdoc-syntax">]; </span><span class="jsdoc-var">cb </span><span class="jsdoc-syntax">= []; </span><span class="jsdoc-var">lcb </span><span class="jsdoc-syntax">= []; </span><span class="jsdoc-var">rowIndex </span><span class="jsdoc-syntax">= (</span><span class="jsdoc-var">j</span><span class="jsdoc-syntax">+</span><span class="jsdoc-var">startRow</span><span class="jsdoc-syntax">);
</span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">r.dirty </span><span class="jsdoc-syntax">&& </span><span class="jsdoc-keyword">typeof </span><span class="jsdoc-var">r.modified</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">c.name</span><span class="jsdoc-syntax">] !== </span><span class="jsdoc-string">'undefined'</span><span class="jsdoc-syntax">){
</span><span class="jsdoc-var">p.css </span><span class="jsdoc-syntax">+= </span><span class="jsdoc-var">p.css </span><span class="jsdoc-syntax">? </span><span class="jsdoc-string">' x-grid-dirty-cell' </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'x-grid-dirty-cell'</span><span class="jsdoc-syntax">;
}
+
</span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">markup </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">ct.apply</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">p</span><span class="jsdoc-syntax">);
</span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">c.locked</span><span class="jsdoc-syntax">){
</span><span class="jsdoc-var">cb</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">cb.length</span><span class="jsdoc-syntax">] = </span><span class="jsdoc-var">markup</span><span class="jsdoc-syntax">;
</span><span class="jsdoc-var">record</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">r</span><span class="jsdoc-syntax">,
</span><span class="jsdoc-var">rowIndex </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">rowIndex</span><span class="jsdoc-syntax">,
</span><span class="jsdoc-var">rowClass </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">''
- </span><span class="jsdoc-syntax">}
+ </span><span class="jsdoc-syntax">};
</span><span class="jsdoc-var">this.grid.fireEvent</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'rowclass'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">rowcfg</span><span class="jsdoc-syntax">);
</span><span class="jsdoc-var">alt.push</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">rowcfg.rowClass</span><span class="jsdoc-syntax">);
}
},
- </span><span class="jsdoc-var">handleHeaderClick </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">g</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">index</span><span class="jsdoc-syntax">){
+ </span><span class="jsdoc-var">handleHeaderClick </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">g</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">index</span><span class="jsdoc-syntax">,</span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">){
+
+ </span><span class="jsdoc-var">Roo.log</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">"header click"</span><span class="jsdoc-syntax">);
+
+ </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.isTouch</span><span class="jsdoc-syntax">) {
+ </span><span class="jsdoc-comment">// touch events on header are handled by context
+ </span><span class="jsdoc-var">this.handleHdCtx</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">g</span><span class="jsdoc-syntax">,</span><span class="jsdoc-var">index</span><span class="jsdoc-syntax">,</span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">);
+ </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
+ }
+
+
</span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.headersDisabled</span><span class="jsdoc-syntax">){
</span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
}
</span><span class="jsdoc-var">cm.setLocked</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">index</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">);
}
</span><span class="jsdoc-keyword">break</span><span class="jsdoc-syntax">;
+ </span><span class="jsdoc-keyword">case </span><span class="jsdoc-string">'wider'</span><span class="jsdoc-syntax">: </span><span class="jsdoc-comment">// used to expand cols on touch..
+ </span><span class="jsdoc-keyword">case </span><span class="jsdoc-string">'narrow'</span><span class="jsdoc-syntax">:
+ </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">cw </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">cm.getColumnWidth</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">index</span><span class="jsdoc-syntax">);
+ </span><span class="jsdoc-var">cw </span><span class="jsdoc-syntax">+= (</span><span class="jsdoc-var">item.id </span><span class="jsdoc-syntax">== </span><span class="jsdoc-string">'wider' </span><span class="jsdoc-syntax">? 1 : -1) * 50;
+ </span><span class="jsdoc-var">cw </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Math.max</span><span class="jsdoc-syntax">(0, </span><span class="jsdoc-var">cw</span><span class="jsdoc-syntax">);
+ </span><span class="jsdoc-var">cw </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Math.min</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">cw</span><span class="jsdoc-syntax">,4000);
+ </span><span class="jsdoc-var">cm.setColumnWidth</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">index</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">cw</span><span class="jsdoc-syntax">);
+ </span><span class="jsdoc-keyword">break</span><span class="jsdoc-syntax">;
+
</span><span class="jsdoc-keyword">default</span><span class="jsdoc-syntax">:
</span><span class="jsdoc-var">index </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">cm.getIndexById</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">item.id.substr</span><span class="jsdoc-syntax">(4));
</span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">index </span><span class="jsdoc-syntax">!= -1){
{</span><span class="jsdoc-var">id</span><span class="jsdoc-syntax">:</span><span class="jsdoc-string">"unlock"</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">text</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.unlockText</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">"xg-hmenu-unlock"</span><span class="jsdoc-syntax">}
);
}
+ </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.isTouch</span><span class="jsdoc-syntax">) {
+ </span><span class="jsdoc-var">this.hmenu.add</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'-'</span><span class="jsdoc-syntax">,
+ {</span><span class="jsdoc-var">id</span><span class="jsdoc-syntax">:</span><span class="jsdoc-string">"wider"</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">text</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.columnsWiderText</span><span class="jsdoc-syntax">},
+ {</span><span class="jsdoc-var">id</span><span class="jsdoc-syntax">:</span><span class="jsdoc-string">"narrow"</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">text</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.columnsNarrowText </span><span class="jsdoc-syntax">}
+ );
+
+
+ }
+
</span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.grid.enableColumnHide </span><span class="jsdoc-syntax">!== </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">){
</span><span class="jsdoc-var">this.colMenu </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">new </span><span class="jsdoc-var">Roo.menu.Menu</span><span class="jsdoc-syntax">({</span><span class="jsdoc-var">id</span><span class="jsdoc-syntax">:</span><span class="jsdoc-var">this.grid.id </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-string">"-hcols-menu"</span><span class="jsdoc-syntax">});
</span><span class="jsdoc-var">this.dd </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">new </span><span class="jsdoc-var">Roo.grid.GridDragZone</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.grid</span><span class="jsdoc-syntax">, {
</span><span class="jsdoc-var">ddGroup </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.grid.ddGroup </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-string">'GridDD'
</span><span class="jsdoc-syntax">});
+
}
</span><span class="jsdoc-comment">/*
</span><span class="jsdoc-var">sortDescText </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">"Sort Descending"</span><span class="jsdoc-syntax">,
</span><span class="jsdoc-var">lockText </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">"Lock Column"</span><span class="jsdoc-syntax">,
</span><span class="jsdoc-var">unlockText </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">"Unlock Column"</span><span class="jsdoc-syntax">,
- </span><span class="jsdoc-var">columnsText </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">"Columns"
+ </span><span class="jsdoc-var">columnsText </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">"Columns"</span><span class="jsdoc-syntax">,
+
+ </span><span class="jsdoc-var">columnsWiderText </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">"Wider"</span><span class="jsdoc-syntax">,
+ </span><span class="jsdoc-var">columnsNarrowText </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">"Thinner"
</span><span class="jsdoc-syntax">});