| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596 | <!DOCTYPE html><html><head>  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />  <title>The source code</title>  <link href="../resources/prettify/prettify.css" type="text/css" rel="stylesheet" />  <script type="text/javascript" src="../resources/prettify/prettify.js"></script>  <style type="text/css">    .highlight { display: block; background-color: #ddd; }  </style>  <script type="text/javascript">    function highlight() {      document.getElementById(location.hash.replace(/#/, "")).className = "highlight";    }  </script></head><body onload="prettyPrint(); highlight();">  <pre class="prettyprint lang-js"><span id='Ext-grid-RowNumberer'>/**</span> * This is a utility class that can be passed into a {@link Ext.grid.column.Column} as a column config that provides * an automatic row numbering column. *  * Usage: * *     columns: [ *         {xtype: 'rownumberer'}, *         {text: "Company", flex: 1, sortable: true, dataIndex: 'company'}, *         {text: "Price", width: 120, sortable: true, renderer: Ext.util.Format.usMoney, dataIndex: 'price'}, *         {text: "Change", width: 120, sortable: true, dataIndex: 'change'}, *         {text: "% Change", width: 120, sortable: true, dataIndex: 'pctChange'}, *         {text: "Last Updated", width: 120, sortable: true, renderer: Ext.util.Format.dateRenderer('m/d/Y'), dataIndex: 'lastChange'} *     ] * */Ext.define('Ext.grid.RowNumberer', {    extend: 'Ext.grid.column.Column',    alias: 'widget.rownumberer',<span id='Ext-grid-RowNumberer-cfg-text'>    /**</span>     * @cfg {String} text     * Any valid text or HTML fragment to display in the header cell for the row number column.     */    text: "&#160",<span id='Ext-grid-RowNumberer-cfg-width'>    /**</span>     * @cfg {Number} width     * The default width in pixels of the row number column.     */    width: 23,<span id='Ext-grid-RowNumberer-cfg-sortable'>    /**</span>     * @cfg {Boolean} sortable     * @hide     */    sortable: false,    <span id='Ext-grid-RowNumberer-cfg-draggable'>    /**</span>     * @cfg {Boolean} [draggable=false]     * False to disable drag-drop reordering of this column.     */    draggable: false,    align: 'right',    constructor : function(config){        // Copy the prototype's default width setting into an instance property to provide        // a default width which will not be overridden by AbstractContainer.applyDefaults use of Ext.applyIf        this.width = this.width;        this.callParent(arguments);        if (this.rowspan) {            this.renderer = Ext.Function.bind(this.renderer, this);        }    },    // private    resizable: false,    hideable: false,    menuDisabled: true,    dataIndex: '',    cls: Ext.baseCSSPrefix + 'row-numberer',    rowspan: undefined,    // private    renderer: function(value, metaData, record, rowIdx, colIdx, store) {        if (this.rowspan){            metaData.cellAttr = 'rowspan="'+this.rowspan+'"';        }        metaData.tdCls = Ext.baseCSSPrefix + 'grid-cell-special';        return store.indexOfTotal(record) + 1;    }});</pre></body></html>
 |