123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128 |
- <!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-property-HeaderContainer'>/**
- </span> * A custom HeaderContainer for the {@link Ext.grid.property.Grid}.
- * Generally it should not need to be used directly.
- */
- Ext.define('Ext.grid.property.HeaderContainer', {
- extend: 'Ext.grid.header.Container',
- alternateClassName: 'Ext.grid.PropertyColumnModel',
-
- nameWidth: 115,
- // private - strings used for locale support
- //<locale>
- nameText : 'Name',
- //</locale>
- //<locale>
- valueText : 'Value',
- //</locale>
- //<locale>
- dateFormat : 'm/j/Y',
- //</locale>
- //<locale>
- trueText: 'true',
- //</locale>
- //<locale>
- falseText: 'false',
- //</locale>
- // private
- nameColumnCls: Ext.baseCSSPrefix + 'grid-property-name',
- <span id='Ext-grid-property-HeaderContainer-method-constructor'> /**
- </span> * Creates new HeaderContainer.
- * @param {Ext.grid.property.Grid} grid The grid this store will be bound to
- * @param {Object} source The source data config object
- */
- constructor : function(grid, store) {
- var me = this;
-
- me.grid = grid;
- me.store = store;
- me.callParent([{
- items: [{
- header: me.nameText,
- width: grid.nameColumnWidth || me.nameWidth,
- sortable: grid.sortableColumns,
- dataIndex: grid.nameField,
- renderer: Ext.Function.bind(me.renderProp, me),
- itemId: grid.nameField,
- menuDisabled :true,
- tdCls: me.nameColumnCls
- }, {
- header: me.valueText,
- renderer: Ext.Function.bind(me.renderCell, me),
- getEditor: Ext.Function.bind(me.getCellEditor, me),
- sortable: grid.sortableColumns,
- flex: 1,
- fixed: true,
- dataIndex: grid.valueField,
- itemId: grid.valueField,
- menuDisabled: true
- }]
- }]);
- },
-
- getCellEditor: function(record){
- return this.grid.getCellEditor(record, this);
- },
- // private
- // Render a property name cell
- renderProp : function(v) {
- return this.getPropertyName(v);
- },
- // private
- // Render a property value cell
- renderCell : function(val, meta, rec) {
- var me = this,
- renderer = me.grid.customRenderers[rec.get(me.grid.nameField)],
- result = val;
- if (renderer) {
- return renderer.apply(me, arguments);
- }
- if (Ext.isDate(val)) {
- result = me.renderDate(val);
- } else if (Ext.isBoolean(val)) {
- result = me.renderBool(val);
- }
- return Ext.util.Format.htmlEncode(result);
- },
- // private
- renderDate : Ext.util.Format.date,
- // private
- renderBool : function(bVal) {
- return this[bVal ? 'trueText' : 'falseText'];
- },
- // private
- // Renders custom property names instead of raw names if defined in the Grid
- getPropertyName : function(name) {
- var pn = this.grid.propertyNames;
- return pn && pn[name] ? pn[name] : name;
- }
- });</pre>
- </body>
- </html>
|