X-Git-Url: http://git.ithinksw.org/extjs.git/blobdiff_plain/25ef3491bd9ae007ff1fc2b0d7943e6eaaccf775..6e39d509471fe9b4e2660e0d1631b350d0c66f40:/docs/source/ListView.html diff --git a/docs/source/ListView.html b/docs/source/ListView.html index 3f3ba1fa..449be7a9 100644 --- a/docs/source/ListView.html +++ b/docs/source/ListView.html @@ -1,20 +1,15 @@ - - - The source code - - - - -
/*!
- * Ext JS Library 3.0.3
- * Copyright(c) 2006-2009 Ext JS, LLC
- * licensing@extjs.com
- * http://www.extjs.com/license
- */
-
/** - * @class Ext.ListView + + + + The source code + + + + +
/** + * @class Ext.list.ListView * @extends Ext.DataView - *

Ext.ListView is a fast and light-weight implentation of a + *

Ext.list.ListView is a fast and light-weight implentation of a * {@link Ext.grid.GridPanel Grid} like view with the following characteristics:

*
    *
  • resizable columns
  • @@ -55,7 +50,7 @@ var store = new Ext.data.JsonStore({ }); store.load(); -var listView = new Ext.ListView({ +var listView = new Ext.list.ListView({ store: store, multiSelect: true, emptyText: 'No images to display', @@ -100,26 +95,26 @@ listView.on('selectionchange', function(view, nodes){ * @param {Object} config * @xtype listview */ -Ext.ListView = Ext.extend(Ext.DataView, { -
    /** +Ext.list.ListView = Ext.extend(Ext.DataView, { +
    /** * Set this property to true to disable the header click handler disabling sort * (defaults to false). * @type Boolean * @property disableHeaders */ -
    /** +
    /** * @cfg {Boolean} hideHeaders * true to hide the {@link #internalTpl header row} (defaults to false so * the {@link #internalTpl header row} will be shown). */ -
    /** +
    /** * @cfg {String} itemSelector * Defaults to 'dl' to work with the preconfigured {@link Ext.DataView#tpl tpl}. * This setting specifies the CSS selector (e.g. div.some-class or span:first-child) * that will be used to determine what nodes the ListView will be working with. */ itemSelector: 'dl', -
    /** +
    /** * @cfg {String} selectedClass The CSS class applied to a selected row (defaults to * 'x-list-selected'). An example overriding the default styling:
    
    @@ -128,7 +123,7 @@ Ext.ListView = Ext.extend(Ext.DataView, {
          * @type String
          */
         selectedClass:'x-list-selected',
    -    
    /** +
    /** * @cfg {String} overClass The CSS class applied when over a row (defaults to * 'x-list-over'). An example overriding the default styling:
    
    @@ -137,25 +132,25 @@ Ext.ListView = Ext.extend(Ext.DataView, {
          * @type String
          */
         overClass:'x-list-over',
    -    
    /** +
    /** * @cfg {Boolean} reserveScrollOffset * By default will defer accounting for the configured {@link #scrollOffset} * for 10 milliseconds. Specify true to account for the configured * {@link #scrollOffset} immediately. */ -
    /** +
    /** * @cfg {Number} scrollOffset The amount of space to reserve for the scrollbar (defaults to * undefined). If an explicit value isn't specified, this will be automatically * calculated. */ scrollOffset : undefined, -
    /** +
    /** * @cfg {Boolean/Object} columnResize - * Specify true or specify a configuration object for {@link Ext.ListView.ColumnResizer} + * Specify true or specify a configuration object for {@link Ext.list.ListView.ColumnResizer} * to enable the columns to be resizable (defaults to true). */ columnResize: true, -
    /** +
    /** * @cfg {Array} columns An array of column configuration objects, for example: *
    
     {
    @@ -185,13 +180,13 @@ Ext.ListView = Ext.extend(Ext.DataView, {
          * every column needs to be explicitly defined.
* */ -
/** +
/** * @cfg {Boolean/Object} columnSort - * Specify true or specify a configuration object for {@link Ext.ListView.Sorter} + * Specify true or specify a configuration object for {@link Ext.list.ListView.Sorter} * to enable the columns to be sortable (defaults to true). */ columnSort: true, -
/** +
/** * @cfg {String/Array} internalTpl * The template to be used for the header row. See {@link #tpl} for more details. */ @@ -203,18 +198,18 @@ Ext.ListView = Ext.extend(Ext.DataView, { initComponent : function(){ if(this.columnResize){ - this.colResizer = new Ext.ListView.ColumnResizer(this.colResizer); + this.colResizer = new Ext.list.ColumnResizer(this.colResizer); this.colResizer.init(this); } if(this.columnSort){ - this.colSorter = new Ext.ListView.Sorter(this.columnSort); + this.colSorter = new Ext.list.Sorter(this.columnSort); this.colSorter.init(this); } if(!this.internalTpl){ this.internalTpl = new Ext.XTemplate( '
', '', - '
', + '
', '{header}', '
', '', @@ -229,7 +224,8 @@ Ext.ListView = Ext.extend(Ext.DataView, { '', '
', '', - '
', + '
', + ' class="{cls}">', '{[values.tpl.apply(parent)]}', '
', '
', @@ -238,48 +234,49 @@ Ext.ListView = Ext.extend(Ext.DataView, { '' ); }; + var cs = this.columns, allocatedWidth = 0, colsWithWidth = 0, len = cs.length, columns = []; + for(var i = 0; i < len; i++){ - var c = Ext.apply({}, cs[i]); - if(!c.tpl){ - c.tpl = new Ext.XTemplate('{' + c.dataIndex + '}'); - }else if(Ext.isString(c.tpl)){ - c.tpl = new Ext.XTemplate(c.tpl); + var c = cs[i]; + if(!c.isColumn) { + c.xtype = c.xtype ? (/^lv/.test(c.xtype) ? c.xtype : 'lv' + c.xtype) : 'lvcolumn'; + c = Ext.create(c); } - c.align = c.align || 'left'; - if(Ext.isNumber(c.width)){ - c.width *= 100; - allocatedWidth += c.width; + if(c.width) { + allocatedWidth += c.width*100; colsWithWidth++; } columns.push(c); } + cs = this.columns = columns; + // auto calculate missing column widths if(colsWithWidth < len){ var remaining = len - colsWithWidth; if(allocatedWidth < this.maxWidth){ - var perCol = ((this.maxWidth-allocatedWidth) / remaining); + var perCol = ((this.maxWidth-allocatedWidth) / remaining)/100; for(var j = 0; j < len; j++){ var c = cs[j]; - if(!Ext.isNumber(c.width)){ + if(!c.width){ c.width = perCol; } } } } - Ext.ListView.superclass.initComponent.call(this); + Ext.list.ListView.superclass.initComponent.call(this); }, onRender : function(){ this.autoEl = { cls: 'x-list-wrap' }; - Ext.ListView.superclass.onRender.apply(this, arguments); + Ext.list.ListView.superclass.onRender.apply(this, arguments); this.internalTpl.overwrite(this.el, {columns: this.columns}); @@ -295,7 +292,7 @@ Ext.ListView = Ext.extend(Ext.DataView, { return this.innerBody; }, -
/** +
/** *

Function which can be overridden which returns the data object passed to this * view's {@link #tpl template} to render the whole ListView. The returned object * shall contain the following properties:

@@ -310,7 +307,7 @@ Ext.ListView = Ext.extend(Ext.DataView, { * XTemplate as described above. */ collectData : function(){ - var rs = Ext.ListView.superclass.collectData.apply(this, arguments); + var rs = Ext.list.ListView.superclass.collectData.apply(this, arguments); return { columns: this.columns, rows: rs @@ -353,7 +350,7 @@ Ext.ListView = Ext.extend(Ext.DataView, { }, updateIndexes : function(){ - Ext.ListView.superclass.updateIndexes.apply(this, arguments); + Ext.list.ListView.superclass.updateIndexes.apply(this, arguments); this.verifyInternalSize(); }, @@ -371,11 +368,14 @@ Ext.ListView = Ext.extend(Ext.DataView, { setHdWidths : function(){ var els = this.innerHd.dom.getElementsByTagName('div'); for(var i = 0, cs = this.columns, len = cs.length; i < len; i++){ - els[i].style.width = cs[i].width + '%'; + els[i].style.width = (cs[i].width*100) + '%'; } } }); -Ext.reg('listview', Ext.ListView);
- +Ext.reg('listview', Ext.list.ListView); + +// Backwards compatibility alias +Ext.ListView = Ext.list.ListView;
+ \ No newline at end of file