Upgrade to ExtJS 4.0.1 - Released 05/18/2011
[extjs.git] / docs / source / AbstractContainer2.html
1 <!DOCTYPE html>
2 <html>
3 <head>
4   <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
5   <title>The source code</title>
6   <link href="../prettify/prettify.css" type="text/css" rel="stylesheet" />
7   <script type="text/javascript" src="../prettify/prettify.js"></script>
8   <style type="text/css">
9     .highlight { display: block; background-color: #ddd; }
10   </style>
11   <script type="text/javascript">
12     function highlight() {
13       document.getElementById(location.hash.replace(/#/, "")).className = "highlight";
14     }
15   </script>
16 </head>
17 <body onload="prettyPrint(); highlight();">
18   <pre class="prettyprint lang-js"><span id='Ext-layout-container-AbstractContainer'>/**
19 </span> * @class Ext.layout.container.AbstractContainer
20  * @extends Ext.layout.Layout
21  * Please refer to sub classes documentation
22  */
23
24 Ext.define('Ext.layout.container.AbstractContainer', {
25
26     /* Begin Definitions */
27
28     extend: 'Ext.layout.Layout',
29
30     /* End Definitions */
31
32     type: 'container',
33
34     fixedLayout: true,
35
36     // @private
37     managedHeight: true,
38     // @private
39     managedWidth: true,
40
41 <span id='Ext-layout-container-AbstractContainer-cfg-bindToOwnerCtComponent'>    /**
42 </span>     * @cfg {Boolean} bindToOwnerCtComponent
43      * Flag to notify the ownerCt Component on afterLayout of a change
44      */
45     bindToOwnerCtComponent: false,
46
47 <span id='Ext-layout-container-AbstractContainer-cfg-bindToOwnerCtContainer'>    /**
48 </span>     * @cfg {Boolean} bindToOwnerCtContainer
49      * Flag to notify the ownerCt Container on afterLayout of a change
50      */
51     bindToOwnerCtContainer: false,
52
53 <span id='Ext-layout-container-AbstractContainer-cfg-itemCls'>    /**
54 </span>     * @cfg {String} itemCls
55      * &lt;p&gt;An optional extra CSS class that will be added to the container. This can be useful for adding
56      * customized styles to the container or any of its children using standard CSS rules. See
57      * {@link Ext.Component}.{@link Ext.Component#ctCls ctCls} also.&lt;/p&gt;
58      * &lt;/p&gt;
59      */
60
61     isManaged: function(dimension) {
62         dimension = Ext.String.capitalize(dimension);
63         var me = this,
64             child = me,
65             managed = me['managed' + dimension],
66             ancestor = me.owner.ownerCt;
67
68         if (ancestor &amp;&amp; ancestor.layout) {
69             while (ancestor &amp;&amp; ancestor.layout) {
70                 if (managed === false || ancestor.layout['managed' + dimension] === false) {
71                     managed = false;
72                     break;
73                 }
74                 ancestor = ancestor.ownerCt;
75             }
76         }
77         return managed;
78     },
79
80     layout: function() {
81         var me = this,
82             owner = me.owner;
83         if (Ext.isNumber(owner.height) || owner.isViewport) {
84             me.managedHeight = false;
85         }
86         if (Ext.isNumber(owner.width) || owner.isViewport) {
87             me.managedWidth = false;
88         }
89         me.callParent(arguments);
90     },
91
92 <span id='Ext-layout-container-AbstractContainer-method-setItemSize'>    /**
93 </span>    * Set the size of an item within the Container.  We should always use setCalculatedSize.
94     * @private
95     */
96     setItemSize: function(item, width, height) {
97         if (Ext.isObject(width)) {
98             height = width.height;
99             width = width.width;
100         }
101         item.setCalculatedSize(width, height, this.owner);
102     },
103
104 <span id='Ext-layout-container-AbstractContainer-method-getLayoutItems'>    /**
105 </span>     * &lt;p&gt;Returns an array of child components either for a render phase (Performed in the beforeLayout method of the layout's
106      * base class), or the layout phase (onLayout).&lt;/p&gt;
107      * @return {Array} of child components
108      */
109     getLayoutItems: function() {
110         return this.owner &amp;&amp; this.owner.items &amp;&amp; this.owner.items.items || [];
111     },
112
113     afterLayout: function() {
114         this.owner.afterLayout(this);
115     },
116 <span id='Ext-layout-container-AbstractContainer-method-getTarget'>    /**
117 </span>     * Returns the owner component's resize element.
118      * @return {Ext.core.Element}
119      */
120      getTarget: function() {
121          return this.owner.getTargetEl();
122      },
123 <span id='Ext-layout-container-AbstractContainer-method-getRenderTarget'>    /**
124 </span>     * &lt;p&gt;Returns the element into which rendering must take place. Defaults to the owner Container's {@link Ext.AbstractComponent#targetEl}.&lt;/p&gt;
125      * May be overridden in layout managers which implement an inner element.
126      * @return {Ext.core.Element}
127      */
128      getRenderTarget: function() {
129          return this.owner.getTargetEl();
130      }
131 });
132 </pre>
133 </body>
134 </html>