module.exports = new Class({ Extends: Htk.Column ,Tag: 'htk-column-text' ,Properties: { /** * Format that applies to the value. */ format:{ type: String ,set: function(x) { this._format = _(x); } ,get: function() { return this._format; } } } ,_format: null ,initialize: function(props) { this._cssClass = 'cell-text'; Htk.Column.prototype.initialize.call(this, props); } ,render: function(tr) { var node; if (this.editable) { var value = this.value ? this.value : ''; node = this.createElement('input'); node.type = 'text'; node.value = value; node.addEventListener('changed', this.inputChanged.bind(this, tr, node)); } else node = this.createTextNode( Vn.Value.format(this.value, this._format)); var td = Htk.Column.prototype.render.call(this, tr); td.appendChild(node); return td; } ,inputChanged: function(tr, node) { this.changed(tr, node.value); } });