/** * @private */Ext.define('Ext.fx.layout.card.Abstract', { extend: 'Ext.Evented', isAnimation: true, config: { direction: 'left', duration: null, reverse: null, layout: null }, updateLayout: function() { this.enable(); }, enable: function() { var layout = this.getLayout(); if (layout) { layout.onBefore('activeitemchange', 'onActiveItemChange', this); } }, disable: function() { var layout = this.getLayout(); if (this.isAnimating) { this.stopAnimation(); } if (layout) { layout.unBefore('activeitemchange', 'onActiveItemChange', this); } }, onActiveItemChange: Ext.emptyFn, destroy: function() { var layout = this.getLayout(); if (this.isAnimating) { this.stopAnimation(); } if (layout) { layout.unBefore('activeitemchange', 'onActiveItemChange', this); } this.setLayout(null); if (this.observableId) { this.fireEvent('destroy', this); this.clearListeners(); this.clearManagedListeners(); } // this.callSuper(arguments); }});