X-Git-Url: http://git.ithinksw.org/extjs.git/blobdiff_plain/3789b528d8dd8aad4558e38e22d775bcab1cbd36..refs/heads/master:/docs/source/AbstractCard.html diff --git a/docs/source/AbstractCard.html b/docs/source/AbstractCard.html index 7d0757c2..c910b38b 100644 --- a/docs/source/AbstractCard.html +++ b/docs/source/AbstractCard.html @@ -3,8 +3,8 @@
/** - * @class Ext.layout.container.AbstractCard - * @extends Ext.layout.container.Fit - * <p>This layout manages multiple child Components, each is fit to the Container, where only a single child Component - * can be visible at any given time. This layout style is most commonly used for wizards, tab implementations, etc. - * This class is intended to be extended or created via the layout:'card' {@link Ext.container.Container#layout} config, - * and should generally not need to be created directly via the new keyword.</p> - * <p>The CardLayout's focal method is {@link #setActiveItem}. Since only one panel is displayed at a time, - * the only way to move from one Component to the next is by calling setActiveItem, passing the id or index of - * the next panel to display. The layout itself does not provide a user interface for handling this navigation, - * so that functionality must be provided by the developer.</p> - * <p>Containers that are configured with a card layout will have a method setActiveItem dynamically added to it. - * <pre><code> - var p = new Ext.panel.Panel({ - fullscreen: true, - layout: 'card', - items: [{ - html: 'Card 1' - },{ - html: 'Card 2' - }] - }); - p.setActiveItem(1); - </code></pre> - * </p> + * Abstract base class for {@link Ext.layout.container.Card Card layout}. + * @private */ - Ext.define('Ext.layout.container.AbstractCard', { /* Begin Definitions */ @@ -59,7 +36,7 @@ Ext.define('Ext.layout.container.AbstractCard', { /** * @cfg {Boolean} deferredRender * True to render each contained item at the time it becomes active, false to render all contained items - * as soon as the layout is rendered (defaults to false). If there is a significant amount of content or + * as soon as the layout is rendered. If there is a significant amount of content or * a lot of heavy controls being rendered into panels that are not displayed by default, setting this to * true might improve performance. */ @@ -67,7 +44,7 @@ Ext.define('Ext.layout.container.AbstractCard', { beforeLayout: function() { var me = this; - me.activeItem = me.getActiveItem(); + me.getActiveItem(); if (me.activeItem && me.deferredRender) { me.renderItems([me.activeItem], me.getRenderTarget()); return true; @@ -77,6 +54,13 @@ Ext.define('Ext.layout.container.AbstractCard', { } }, + renderChildren: function () { + if (!this.deferredRender) { + this.getActiveItem(); + this.callParent(); + } + }, + onLayout: function() { var me = this, activeItem = me.activeItem, @@ -166,12 +150,12 @@ Ext.define('Ext.layout.container.AbstractCard', { /** * Return the active (visible) component in the layout to the next card - * @returns {Ext.Component} + * @returns {Ext.Component} The next component or false. */ - getNext: function(wrap) { - //NOTE: Removed the JSDoc for this function's arguments because it is not actually supported in 4.0. This + getNext: function() { + //NOTE: Removed the JSDoc for this function's arguments because it is not actually supported in 4.0. This //should come back in 4.1 - + var wrap = arguments[0]; var items = this.getLayoutItems(), index = Ext.Array.indexOf(items, this.activeItem); return items[index + 1] || (wrap ? items[0] : false); @@ -179,22 +163,23 @@ Ext.define('Ext.layout.container.AbstractCard', { /** * Sets the active (visible) component in the layout to the next card + * @return {Ext.Component} the activated component or false when nothing activated. */ - next: function(anim, wrap) { - //NOTE: Removed the JSDoc for this function's arguments because it is not actually supported in 4.0. This + next: function() { + //NOTE: Removed the JSDoc for this function's arguments because it is not actually supported in 4.0. This //should come back in 4.1 - + var anim = arguments[0], wrap = arguments[1]; return this.setActiveItem(this.getNext(wrap), anim); }, /** * Return the active (visible) component in the layout to the previous card - * @returns {Ext.Component} + * @returns {Ext.Component} The previous component or false. */ - getPrev: function(wrap) { - //NOTE: Removed the JSDoc for this function's arguments because it is not actually supported in 4.0. This + getPrev: function() { + //NOTE: Removed the JSDoc for this function's arguments because it is not actually supported in 4.0. This //should come back in 4.1 - + var wrap = arguments[0]; var items = this.getLayoutItems(), index = Ext.Array.indexOf(items, this.activeItem); return items[index - 1] || (wrap ? items[items.length - 1] : false); @@ -202,11 +187,12 @@ Ext.define('Ext.layout.container.AbstractCard', { /** * Sets the active (visible) component in the layout to the previous card + * @return {Ext.Component} the activated component or false when nothing activated. */ - prev: function(anim, wrap) { - //NOTE: Removed the JSDoc for this function's arguments because it is not actually supported in 4.0. This + prev: function() { + //NOTE: Removed the JSDoc for this function's arguments because it is not actually supported in 4.0. This //should come back in 4.1 - + var anim = arguments[0], wrap = arguments[1]; return this.setActiveItem(this.getPrev(wrap), anim); } });