1 <!DOCTYPE html><html><head><title>Sencha Documentation Project</title><link rel="stylesheet" href="../reset.css" type="text/css"><link rel="stylesheet" href="../prettify.css" type="text/css"><link rel="stylesheet" href="../prettify_sa.css" type="text/css"><script type="text/javascript" src="../prettify.js"></script></head><body onload="prettyPrint()"><pre class="prettyprint"><pre><span id='Ext-grid.property.HeaderContainer-method-constructor'><span id='Ext-grid.property.HeaderContainer'>/**
2 </span></span> * @class Ext.grid.property.HeaderContainer
3 * @extends Ext.grid.header.Container
4 * A custom HeaderContainer for the {@link Ext.grid.property.Grid}. Generally it should not need to be used directly.
6 * @param {Ext.grid.property.Grid} grid The grid this store will be bound to
7 * @param {Object} source The source data config object
9 Ext.define('Ext.grid.property.HeaderContainer', {
11 extend: 'Ext.grid.header.Container',
13 alternateClassName: 'Ext.grid.PropertyColumnModel',
15 // private - strings used for locale support
23 nameColumnCls: Ext.baseCSSPrefix + 'grid-property-name',
25 constructor : function(grid, store) {
31 header: this.nameText,
34 dataIndex: grid.nameField,
35 renderer: Ext.Function.bind(this.renderProp, this),
36 itemId: grid.nameField,
38 tdCls: this.nameColumnCls
40 header: this.valueText,
41 renderer: Ext.Function.bind(this.renderCell, this),
42 getEditor: function(record) {
43 return grid.getCellEditor(record, this);
47 dataIndex: grid.valueField,
48 itemId: grid.valueField,
55 // Render a property name cell
56 renderProp : function(v) {
57 return this.getPropertyName(v);
61 // Render a property value cell
62 renderCell : function(val, meta, rec) {
64 renderer = this.grid.customRenderers[rec.get(me.grid.nameField)],
68 return renderer.apply(this, arguments);
70 if (Ext.isDate(val)) {
71 result = this.renderDate(val);
72 } else if (Ext.isBoolean(val)) {
73 result = this.renderBool(val);
75 return Ext.util.Format.htmlEncode(result);
79 renderDate : Ext.util.Format.date,
82 renderBool : function(bVal) {
83 return this[bVal ? 'trueText' : 'falseText'];
87 // Renders custom property names instead of raw names if defined in the Grid
88 getPropertyName : function(name) {
89 var pn = this.grid.propertyNames;
90 return pn && pn[name] ? pn[name] : name;
92 });</pre></pre></body></html>