/**
* A Text Field Trigger that contains a {@link Ext.Component Component} or {@link
* Ext.Widget Widget}.
* @private
*/
Ext.define('Ext.form.trigger.Component', {
extend: 'Ext.form.trigger.Trigger',
alias: 'trigger.component',
cls: Ext.baseCSSPrefix + 'form-trigger-cmp',
/**
* @cfg {Object/Ext.Component/Ext.Widget} component A config object for a Component or Widget,
* or an already instantiated Component or Widget.
*/
/**
* @property {Ext.Component/Ext.Widget} component The component or widget
* @readonly
*/
onFieldRender: function() {
var me = this,
component = me.component;
me.callParent();
if (!component.isComponent && !component.isWidget) {
component = Ext.widget(component);
}
me.component = component;
component.render(me.el);
},
destroy: function() {
var component = this.component;
if (component.isComponent || component.isWidget) {
component.destroy();
}
this.component = null;
this.callParent();
}
});