| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121 |
- Ext.define('uas.override.form.field.Text', {
- override: 'Ext.form.field.Text',
- requiredLabelCls: Ext.baseCSSPrefix + 'form-item-required-label',
- requiredCls: Ext.baseCSSPrefix + 'form-required-field',
- setRequired: function (required) {
- var me = this;
- me.allowBlank = !required;
- if (required) {
- if (me.labelEl) {
- me.labelEl.addCls(me.requiredLabelCls);
- }
- if (me.inputEl) {
- me.inputEl.addCls(me.requiredCls);
- }
- } else {
- if (me.labelEl) {
- me.labelEl.removeCls(me.requiredLabelCls);
- }
- if (me.inputEl) {
- me.inputEl.removeCls(me.requiredCls);
- }
- }
- },
- /**
- * Generates the arguments for the field decorations {@link #labelableRenderTpl
- * rendering template}.
- * @param {Object} data optional object to use as the base data object. If provided,
- * this method will add properties to the base object instead of creating a new one.
- * @return {Object} The template arguments
- * @protected
- */
- getLabelableRenderData: function () {
- var me = this,
- labelAlign = me.labelAlign,
- topLabel = (labelAlign === 'top'),
- rightLabel = (labelAlign === 'right'),
- sideError = (me.msgTarget === 'side'),
- underError = (me.msgTarget === 'under'),
- errorMsgCls = me.errorMsgCls,
- labelPad = me.labelPad,
- labelWidth = me.labelWidth,
- labelClsExtra = me.labelClsExtra || '',
- errorWrapExtraCls = sideError ? me.errorWrapSideCls : me.errorWrapUnderCls,
- labelStyle = '',
- labelInnerStyle = '',
- labelVisible = me.hasVisibleLabel(),
- autoFitErrors = me.autoFitErrors,
- defaultBodyWidth = me.defaultBodyWidth,
- bodyStyle, data;
- if (topLabel) {
- labelClsExtra += ' ' + me.topLabelCls;
- if (labelPad) {
- labelInnerStyle = 'padding-bottom:' + labelPad + 'px;';
- }
- if (sideError && !autoFitErrors) {
- labelClsExtra += ' ' + me.topLabelSideErrorCls;
- }
- } else {
- if (rightLabel) {
- labelClsExtra += ' ' + me.rightLabelCls;
- }
- if (labelPad) {
- labelStyle += me.getHorizontalPaddingStyle() + labelPad + 'px;';
- }
- labelStyle += 'width:' + (labelWidth + (labelPad ? labelPad : 0)) + 'px;';
- // inner label needs width as well so that setting width on the outside
- // that is smaller than the natural width, will be ensured to take width
- // away from the body, and not the label.
- labelInnerStyle = 'width:' + labelWidth + 'px';
- }
- // 对requiredLabelCls的支持
- if (!me.allowBlank) {
- labelClsExtra += ' ' + me.requiredLabelCls;
- }
- if (labelVisible) {
- if (!topLabel && underError) {
- errorWrapExtraCls += ' ' + me.errorWrapUnderSideLabelCls;
- }
- }
- if (defaultBodyWidth) {
- // This is here to support textfield's deprecated "size" config
- bodyStyle = 'min-width:' + defaultBodyWidth + 'px;max-width:' + defaultBodyWidth + 'px;';
- }
- data = {
- id: me.id,
- inputId: me.getInputId(),
- labelCls: me.labelCls,
- labelClsExtra: labelClsExtra,
- labelStyle: labelStyle + (me.labelStyle || ''),
- labelInnerStyle: labelInnerStyle,
- labelInnerCls: me.labelInnerCls,
- labelTextCls: me.labelTextCls,
- skipLabelForAttribute: !!me.skipLabelForAttribute,
- unselectableCls: Ext.Element.unselectableCls,
- bodyStyle: bodyStyle,
- baseBodyCls: me.baseBodyCls,
- fieldBodyCls: me.fieldBodyCls,
- extraFieldBodyCls: me.extraFieldBodyCls,
- errorWrapCls: me.errorWrapCls,
- errorWrapExtraCls: errorWrapExtraCls,
- renderError: sideError || underError,
- invalidMsgCls: sideError ? me.invalidIconCls : underError ? me.invalidUnderCls : '',
- errorMsgCls: errorMsgCls,
- growCls: me.grow ? me.growCls : '',
- tipAnchorTarget: me.id + '-inputEl',
- errorWrapStyle: (sideError && !autoFitErrors) ? 'visibility:hidden' : 'display:none',
- fieldLabel: me.getFieldLabel(),
- labelSeparator: me.labelSeparator,
- renderAriaElements: !!me.renderAriaElements,
- ariaStatus: ''
- };
- if (me.ariaHelp) {
- data.ariaHelp = Ext.String.htmlEncode(me.ariaHelp);
- }
- me.getInsertionRenderData(data, me.labelableInsertions);
- return data;
- }
- });
|