X-Git-Url: http://git.ithinksw.org/extjs.git/blobdiff_plain/ee06f37b0f6f6d94cd05a6ffae556660f7c4a2bc..c930e9176a5a85509c5b0230e2bff5c22a591432:/src/widgets/form/DisplayField.js diff --git a/src/widgets/form/DisplayField.js b/src/widgets/form/DisplayField.js new file mode 100644 index 00000000..30a61b72 --- /dev/null +++ b/src/widgets/form/DisplayField.js @@ -0,0 +1,98 @@ +/*! + * Ext JS Library 3.0.0 + * Copyright(c) 2006-2009 Ext JS, LLC + * licensing@extjs.com + * http://www.extjs.com/license + */ +/** + * @class Ext.form.DisplayField + * @extends Ext.form.Field + * A display-only text field which is not validated and not submitted. + * @constructor + * Creates a new DisplayField. + * @param {Object} config Configuration options + * @xtype displayfield + */ +Ext.form.DisplayField = Ext.extend(Ext.form.Field, { + validationEvent : false, + validateOnBlur : false, + defaultAutoCreate : {tag: "div"}, + /** + * @cfg {String} fieldClass The default CSS class for the field (defaults to "x-form-display-field") + */ + fieldClass : "x-form-display-field", + /** + * @cfg {Boolean} htmlEncode false to skip HTML-encoding the text when rendering it (defaults to + * false). This might be useful if you want to include tags in the field's innerHTML rather than + * rendering them as string literals per the default logic. + */ + htmlEncode: false, + + // private + initEvents : Ext.emptyFn, + + isValid : function(){ + return true; + }, + + validate : function(){ + return true; + }, + + getRawValue : function(){ + var v = this.rendered ? this.el.dom.innerHTML : Ext.value(this.value, ''); + if(v === this.emptyText){ + v = ''; + } + if(this.htmlEncode){ + v = Ext.util.Format.htmlDecode(v); + } + return v; + }, + + getValue : function(){ + return this.getRawValue(); + }, + + getName: function() { + return this.name; + }, + + setRawValue : function(v){ + if(this.htmlEncode){ + v = Ext.util.Format.htmlEncode(v); + } + return this.rendered ? (this.el.dom.innerHTML = (Ext.isEmpty(v) ? '' : v)) : (this.value = v); + }, + + setValue : function(v){ + this.setRawValue(v); + return this; + } + /** + * @cfg {String} inputType + * @hide + */ + /** + * @cfg {Boolean} disabled + * @hide + */ + /** + * @cfg {Boolean} readOnly + * @hide + */ + /** + * @cfg {Boolean} validateOnBlur + * @hide + */ + /** + * @cfg {Number} validationDelay + * @hide + */ + /** + * @cfg {String/Boolean} validationEvent + * @hide + */ +}); + +Ext.reg('displayfield', Ext.form.DisplayField);