Upgrade to ExtJS 3.0.3 - Released 10/11/2009
[extjs.git] / docs / output / Ext.menu.BaseItem.html
1 <div class="body-wrap" xmlns:ext="http://www.extjs.com"><div class="top-tools"><a class="inner-link" href="#Ext.menu.BaseItem-props"><img src="resources/images/default/s.gif" class="item-icon icon-prop">Properties</a>&#13;<a class="inner-link" href="#Ext.menu.BaseItem-methods"><img src="resources/images/default/s.gif" class="item-icon icon-method">Methods</a>&#13;<a class="inner-link" href="#Ext.menu.BaseItem-events"><img src="resources/images/default/s.gif" class="item-icon icon-event">Events</a>&#13;<a class="inner-link" href="#Ext.menu.BaseItem-configs"><img src="resources/images/default/s.gif" class="item-icon icon-config">Config Options</a>&#13;<a class="bookmark" href="../docs/?class=Ext.menu.BaseItem"><img src="resources/images/default/s.gif" class="item-icon icon-fav">Direct Link</a>&#13;</div><div class="inheritance res-block"><pre class="res-block-inner"><a href="output/Ext.util.Observable.html" ext:member="" ext:cls="Ext.util.Observable">Observable</a>&#13;&nbsp;&nbsp;<img src="resources/elbow-end.gif"><a href="output/Ext.Component.html" ext:member="" ext:cls="Ext.Component">Component</a>&#13;&nbsp;&nbsp;&nbsp;&nbsp;<img src="resources/elbow-end.gif">BaseItem</pre></div><h1>Class <a href="source/BaseItem.html#cls-Ext.menu.BaseItem">Ext.menu.BaseItem</a></h1><table cellspacing="0"><tr><td class="label">Package:</td><td class="hd-info">Ext.menu</td></tr><tr><td class="label">Defined In:</td><td class="hd-info">BaseItem.js</td></tr><tr><td class="label">Class:</td><td class="hd-info"><a href="source/BaseItem.html#cls-Ext.menu.BaseItem">BaseItem</a></td></tr><tr><td class="label">Subclasses:</td><td class="hd-info"><a href="output/Ext.menu.Item.html" ext:cls="Ext.menu.Item">Item</a>,&#13;<a href="output/Ext.menu.Separator.html" ext:cls="Ext.menu.Separator">Separator</a>,&#13;<a href="output/Ext.menu.TextItem.html" ext:cls="Ext.menu.TextItem">TextItem</a></td></tr><tr><td class="label">Extends:</td><td class="hd-info"><a href="output/Ext.Component.html" ext:cls="Ext.Component" ext:member="">Component</a></td></tr><tr><td class="hd-info"></td></tr><tr><td class="label">xtype:</td><td class="hd-info">menubaseitem</td></tr></table><div class="description">The base class for all items that render into menus.  BaseItem provides default rendering, activated state
2 management and base configuration options shared by all menu components.</div><div class="hr"></div><a id="Ext.menu.BaseItem-configs"></a><h2>Config Options</h2><table cellspacing="0" class="member-table"><tbody><tr><th colspan="2" class="sig-header">Config Options</th><th class="msource-header">Defined By</th></tr><tr class="config-row  "><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.menu.BaseItem-activeClass"></a><b><a href="source/BaseItem.html#cfg-Ext.menu.BaseItem-activeClass">activeClass</a></b> : String<div class="mdesc">The CSS class to use when the item becomes activated (defaults to "x-menu-item-active")</div></td><td class="msource">BaseItem</td></tr><tr class="config-row  inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-allowDomMove"></a><b><a href="source/Component.html#cfg-Ext.Component-allowDomMove">allowDomMove</a></b> : Boolean<div class="mdesc">Whether the component can move the Dom node when rendering (defaults to true).</div></td><td class="msource"><a href="output/Ext.Component.html#allowDomMove" ext:member="#allowDomMove" ext:cls="Ext.Component">Component</a></td></tr><tr class="config-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-anchor"></a><b><a href="source/Component.html#cfg-Ext.Component-anchor">anchor</a></b> : String<div class="mdesc"><div class="short">Note: this config is only used when this Component is rendered\r
3 by a Container which has been configured to use an Anc...</div><div class="long"><p><b>Note</b>: this config is only used when this Component is rendered
4 by a Container which has been configured to use an <b><a href="output/Ext.layout.AnchorLayout.html" ext:cls="Ext.layout.AnchorLayout">AnchorLayout</a></b>
5 based layout manager, for example:<div class="mdetail-params"><ul>
6 <li><a href="output/Ext.form.FormPanel.html" ext:cls="Ext.form.FormPanel">Ext.form.FormPanel</a></li>
7 <li>specifying <code>layout: <em>'anchor'</em> <i>// or <em>'form'</em>, or <em>'absolute'</em></i></code></li>
8 </ul></div></p>
9 <p>See <a href="output/Ext.layout.AnchorLayout.html" ext:cls="Ext.layout.AnchorLayout">Ext.layout.AnchorLayout</a>.<a href="output/Ext.layout.AnchorLayout.html#Ext.layout.AnchorLayout-anchor" ext:member="anchor" ext:cls="Ext.layout.AnchorLayout">anchor</a> also.</p></div></div></td><td class="msource"><a href="output/Ext.Component.html#anchor" ext:member="#anchor" ext:cls="Ext.Component">Component</a></td></tr><tr class="config-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-applyTo"></a><b><a href="source/Component.html#cfg-Ext.Component-applyTo">applyTo</a></b> : Mixed<div class="mdesc"><div class="short">Specify the id of the element, a DOM element or an existing Element corresponding to a DIV\r
10 that is already present in...</div><div class="long"><p>Specify the id of the element, a DOM element or an existing Element corresponding to a DIV
11 that is already present in the document that specifies some structural markup for this
12 component.</p><div><ul>
13 <li><b>Description</b> : <ul>
14 <div class="sub-desc">When <tt>applyTo</tt> is used, constituent parts of the component can also be specified
15 by id or CSS class name within the main element, and the component being created may attempt
16 to create its subcomponents from that markup if applicable.</div>
17 </ul></li>
18 <li><b>Notes</b> : <ul>
19 <div class="sub-desc">When using this config, a call to render() is not required.</div>
20 <div class="sub-desc">If applyTo is specified, any value passed for <a href="output/Ext.Component.html#Ext.Component-renderTo" ext:member="renderTo" ext:cls="Ext.Component">renderTo</a> will be ignored and the target
21 element's parent node will automatically be used as the component's container.</div>
22 </ul></li>
23 </ul></div></div></div></td><td class="msource"><a href="output/Ext.Component.html#applyTo" ext:member="#applyTo" ext:cls="Ext.Component">Component</a></td></tr><tr class="config-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-autoEl"></a><b><a href="source/Component.html#cfg-Ext.Component-autoEl">autoEl</a></b> : Mixed<div class="mdesc"><div class="short">A tag name or DomHelper spec used to create the Element which will\r
24 encapsulate this Component.\r
25 You do not normally ne...</div><div class="long"><p>A tag name or <a href="output/Ext.DomHelper.html" ext:cls="Ext.DomHelper">DomHelper</a> spec used to create the <a href="output/Ext.Component.html#Ext.Component-getEl" ext:member="getEl" ext:cls="Ext.Component">Element</a> which will
26 encapsulate this Component.</p>
27 <p>You do not normally need to specify this. For the base classes <a href="output/Ext.Component.html" ext:cls="Ext.Component">Ext.Component</a>, <a href="output/Ext.BoxComponent.html" ext:cls="Ext.BoxComponent">Ext.BoxComponent</a>,
28 and <a href="output/Ext.Container.html" ext:cls="Ext.Container">Ext.Container</a>, this defaults to <b><tt>'div'</tt></b>. The more complex Ext classes use a more complex
29 DOM structure created by their own onRender methods.</p>
30 <p>This is intended to allow the developer to create application-specific utility Components encapsulated by
31 different DOM elements. Example usage:</p><pre><code>{
32     xtype: <em>'box'</em>,
33     autoEl: {
34         tag: <em>'img'</em>,
35         src: <em>'http:<i>//www.example.com/example.jpg'</em></i>
36     }
37 }, {
38     xtype: <em>'box'</em>,
39     autoEl: {
40         tag: <em>'blockquote'</em>,
41         html: <em>'autoEl is cool!'</em>
42     }
43 }, {
44     xtype: <em>'container'</em>,
45     autoEl: <em>'ul'</em>,
46     cls: <em>'ux-unordered-list'</em>,
47     items: {
48         xtype: <em>'box'</em>,
49         autoEl: <em>'li'</em>,
50         html: <em>'First list item'</em>
51     }
52 }</code></pre></div></div></td><td class="msource"><a href="output/Ext.Component.html#autoEl" ext:member="#autoEl" ext:cls="Ext.Component">Component</a></td></tr><tr class="config-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-autoShow"></a><b><a href="source/Component.html#cfg-Ext.Component-autoShow">autoShow</a></b> : Boolean<div class="mdesc"><div class="short">True if the component should check for hidden classes (e.g. 'x-hidden' or 'x-hide-display') and remove\r
53 them on render...</div><div class="long">True if the component should check for hidden classes (e.g. 'x-hidden' or 'x-hide-display') and remove
54 them on render (defaults to false).</div></div></td><td class="msource"><a href="output/Ext.Component.html#autoShow" ext:member="#autoShow" ext:cls="Ext.Component">Component</a></td></tr><tr class="config-row  "><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.menu.BaseItem-canActivate"></a><b><a href="source/BaseItem.html#cfg-Ext.menu.BaseItem-canActivate">canActivate</a></b> : Boolean<div class="mdesc">True if this item can be visually activated (defaults to false)</div></td><td class="msource">BaseItem</td></tr><tr class="config-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-clearCls"></a><b><a href="source/Component.html#cfg-Ext.Component-clearCls">clearCls</a></b> : String<div class="mdesc"><div class="short">The CSS class used to to apply to the special clearing div rendered\r
55 directly after each form field wrapper to provide...</div><div class="long"><p>The CSS class used to to apply to the special clearing div rendered
56 directly after each form field wrapper to provide field clearing (defaults to
57 <tt>'x-form-clear-left'</tt>).</p>
58 <br><p><b>Note</b>: this config is only used when this Component is rendered by a Container
59 which has been configured to use the <b><a href="output/Ext.layout.FormLayout.html" ext:cls="Ext.layout.FormLayout">FormLayout</a></b> layout
60 manager (e.g. <a href="output/Ext.form.FormPanel.html" ext:cls="Ext.form.FormPanel">Ext.form.FormPanel</a> or specifying <tt>layout:'form'</tt>) and either a
61 <tt><a href="output/Ext.Component.html#Ext.Component-fieldLabel" ext:member="fieldLabel" ext:cls="Ext.Component">fieldLabel</a></tt> is specified or <tt>isFormField=true</tt> is specified.</p><br>
62 <p>See <a href="output/Ext.layout.FormLayout.html" ext:cls="Ext.layout.FormLayout">Ext.layout.FormLayout</a>.<a href="output/Ext.layout.FormLayout.html#Ext.layout.FormLayout-fieldTpl" ext:member="fieldTpl" ext:cls="Ext.layout.FormLayout">fieldTpl</a> also.</p></div></div></td><td class="msource"><a href="output/Ext.Component.html#clearCls" ext:member="#clearCls" ext:cls="Ext.Component">Component</a></td></tr><tr class="config-row  "><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.menu.BaseItem-clickHideDelay"></a><b><a href="source/BaseItem.html#cfg-Ext.menu.BaseItem-clickHideDelay">clickHideDelay</a></b> : Number<div class="mdesc">Length of time in milliseconds to wait before hiding after a click (defaults to 100)</div></td><td class="msource">BaseItem</td></tr><tr class="config-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-cls"></a><b><a href="source/Component.html#cfg-Ext.Component-cls">cls</a></b> : String<div class="mdesc"><div class="short">An optional extra CSS class that will be added to this component's Element (defaults to '').  This can be\r
63 useful for ...</div><div class="long">An optional extra CSS class that will be added to this component's Element (defaults to '').  This can be
64 useful for adding customized styles to the component or any of its children using standard CSS rules.</div></div></td><td class="msource"><a href="output/Ext.Component.html#cls" ext:member="#cls" ext:cls="Ext.Component">Component</a></td></tr><tr class="config-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-ctCls"></a><b><a href="source/Component.html#cfg-Ext.Component-ctCls">ctCls</a></b> : String<div class="mdesc"><div class="short">An optional extra CSS class that will be added to this component's container. This can be useful for\r
65 adding customize...</div><div class="long"><p>An optional extra CSS class that will be added to this component's container. This can be useful for
66 adding customized styles to the container or any of its children using standard CSS rules.  See
67 <a href="output/Ext.layout.ContainerLayout.html" ext:cls="Ext.layout.ContainerLayout">Ext.layout.ContainerLayout</a>.<a href="output/Ext.layout.ContainerLayout.html#Ext.layout.ContainerLayout-extraCls" ext:member="extraCls" ext:cls="Ext.layout.ContainerLayout">extraCls</a> also.</p>
68 <p><b>Note</b>: <tt>ctCls</tt> defaults to <tt>''</tt> except for the following class
69 which assigns a value by default:
70 <div class="mdetail-params"><ul>
71 <li><a href="output/Ext.layout.Box.html" ext:cls="Ext.layout.Box">Box Layout</a> : <tt>'x-box-layout-ct'</tt></li>
72 </ul></div>
73 To configure the above Class with an extra CSS class append to the default.  For example,
74 for BoxLayout (Hbox and Vbox):<pre><code>ctCls: <em>'x-box-layout-ct custom-class'</em></code></pre>
75 </p></div></div></td><td class="msource"><a href="output/Ext.Component.html#ctCls" ext:member="#ctCls" ext:cls="Ext.Component">Component</a></td></tr><tr class="config-row  inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-disabled"></a><b><a href="source/Component.html#cfg-Ext.Component-disabled">disabled</a></b> : Boolean<div class="mdesc">Render this component disabled (default is false).</div></td><td class="msource"><a href="output/Ext.Component.html#disabled" ext:member="#disabled" ext:cls="Ext.Component">Component</a></td></tr><tr class="config-row  inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-disabledClass"></a><b><a href="source/Component.html#cfg-Ext.Component-disabledClass">disabledClass</a></b> : String<div class="mdesc">CSS class added to the component when it is disabled (defaults to 'x-item-disabled').</div></td><td class="msource"><a href="output/Ext.Component.html#disabledClass" ext:member="#disabledClass" ext:cls="Ext.Component">Component</a></td></tr><tr class="config-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-fieldLabel"></a><b><a href="source/Component.html#cfg-Ext.Component-fieldLabel">fieldLabel</a></b> : String<div class="mdesc"><div class="short">The label text to display next to this Component (defaults to '').\r
76 Note: this config is only used when this Component...</div><div class="long"><p>The label text to display next to this Component (defaults to '').</p>
77 <br><p><b>Note</b>: this config is only used when this Component is rendered by a Container which
78 has been configured to use the <b><a href="output/Ext.layout.FormLayout.html" ext:cls="Ext.layout.FormLayout">FormLayout</a></b> layout manager (e.g.
79 <a href="output/Ext.form.FormPanel.html" ext:cls="Ext.form.FormPanel">Ext.form.FormPanel</a> or specifying <tt>layout:'form'</tt>).</p><br>
80 <p>Also see <tt><a href="output/Ext.Component.html#Ext.Component-hideLabel" ext:member="hideLabel" ext:cls="Ext.Component">hideLabel</a></tt> and
81 <a href="output/Ext.layout.FormLayout.html" ext:cls="Ext.layout.FormLayout">Ext.layout.FormLayout</a>.<a href="output/Ext.layout.FormLayout.html#Ext.layout.FormLayout-fieldTpl" ext:member="fieldTpl" ext:cls="Ext.layout.FormLayout">fieldTpl</a>.</p>
82 Example use:<pre><code><b>new</b> Ext.FormPanel({
83     height: 100,
84     renderTo: Ext.getBody(),
85     items: [{
86         xtype: <em>'textfield'</em>,
87         fieldLabel: <em>'Name'</em>
88     }]
89 });</code></pre></div></div></td><td class="msource"><a href="output/Ext.Component.html#fieldLabel" ext:member="#fieldLabel" ext:cls="Ext.Component">Component</a></td></tr><tr class="config-row expandable "><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.menu.BaseItem-handler"></a><b><a href="source/BaseItem.html#cfg-Ext.menu.BaseItem-handler">handler</a></b> : Function<div class="mdesc"><div class="short">A function that will handle the click event of this menu item (optional).\r
90 The handler is passed the following paramet...</div><div class="long">A function that will handle the click event of this menu item (optional).
91 The handler is passed the following parameters:<div class="mdetail-params"><ul>
92 <li><code>b</code> : Item<div class="sub-desc">This menu Item.</div></li>
93 <li><code>e</code> : EventObject<div class="sub-desc">The click event.</div></li>
94 </ul></div></div></div></td><td class="msource">BaseItem</td></tr><tr class="config-row  inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-hidden"></a><b><a href="source/Component.html#cfg-Ext.Component-hidden">hidden</a></b> : Boolean<div class="mdesc">Render this component hidden (default is false). If <tt>true</tt>, the
95 <a href="output/Ext.Component.html#Ext.Component-hide" ext:member="hide" ext:cls="Ext.Component">hide</a> method will be called internally.</div></td><td class="msource"><a href="output/Ext.Component.html#hidden" ext:member="#hidden" ext:cls="Ext.Component">Component</a></td></tr><tr class="config-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-hideLabel"></a><b><a href="source/Component.html#cfg-Ext.Component-hideLabel">hideLabel</a></b> : Boolean<div class="mdesc"><div class="short">true to completely hide the label element\r
96 (label and separator). Defaults to false.\r
97 By default, even if you do not sp...</div><div class="long"><p><tt>true</tt> to completely hide the label element
98 (<a href="output/Ext.Component.html#Ext.Component-fieldLabel" ext:member="fieldLabel" ext:cls="Ext.Component">label</a> and <a href="output/Ext.Component.html#Ext.Component-labelSeparator" ext:member="labelSeparator" ext:cls="Ext.Component">separator</a>). Defaults to <tt>false</tt>.
99 By default, even if you do not specify a <tt><a href="output/Ext.Component.html#Ext.Component-fieldLabel" ext:member="fieldLabel" ext:cls="Ext.Component">fieldLabel</a></tt> the space will still be
100 reserved so that the field will line up with other fields that do have labels.
101 Setting this to <tt>true</tt> will cause the field to not reserve that space.</p>
102 <br><p><b>Note</b>: see the note for <tt><a href="output/Ext.Component.html#Ext.Component-clearCls" ext:member="clearCls" ext:cls="Ext.Component">clearCls</a></tt>.</p><br>
103 Example use:<pre><code><b>new</b> Ext.FormPanel({
104     height: 100,
105     renderTo: Ext.getBody(),
106     items: [{
107         xtype: <em>'textfield'</em>
108         hideLabel: true
109     }]
110 });</code></pre></div></div></td><td class="msource"><a href="output/Ext.Component.html#hideLabel" ext:member="#hideLabel" ext:cls="Ext.Component">Component</a></td></tr><tr class="config-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-hideMode"></a><b><a href="source/Component.html#cfg-Ext.Component-hideMode">hideMode</a></b> : String<div class="mdesc"><div class="short">How this component should be hidden. Supported values are 'visibility'\r
111 (css visibility), 'offsets' (negative offset p...</div><div class="long"><p>How this component should be hidden. Supported values are <tt>'visibility'</tt>
112 (css visibility), <tt>'offsets'</tt> (negative offset position) and <tt>'display'</tt>
113 (css display).</p>
114 <br><p><b>Note</b>: the default of <tt>'display'</tt> is generally preferred
115 since items are automatically laid out when they are first shown (no sizing
116 is done while hidden).</p></div></div></td><td class="msource"><a href="output/Ext.Component.html#hideMode" ext:member="#hideMode" ext:cls="Ext.Component">Component</a></td></tr><tr class="config-row  "><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.menu.BaseItem-hideOnClick"></a><b><a href="source/BaseItem.html#cfg-Ext.menu.BaseItem-hideOnClick">hideOnClick</a></b> : Boolean<div class="mdesc">True to hide the containing menu after this item is clicked (defaults to true)</div></td><td class="msource">BaseItem</td></tr><tr class="config-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-hideParent"></a><b><a href="source/Component.html#cfg-Ext.Component-hideParent">hideParent</a></b> : Boolean<div class="mdesc"><div class="short">True to hide and show the component's container when hide/show is called on the component, false to hide\r
117 and show the...</div><div class="long">True to hide and show the component's container when hide/show is called on the component, false to hide
118 and show the component itself (defaults to false).  For example, this can be used as a shortcut for a hide
119 button on a window by setting hide:true on the button when adding it to its parent container.</div></div></td><td class="msource"><a href="output/Ext.Component.html#hideParent" ext:member="#hideParent" ext:cls="Ext.Component">Component</a></td></tr><tr class="config-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-id"></a><b><a href="source/Component.html#cfg-Ext.Component-id">id</a></b> : String<div class="mdesc"><div class="short">The unique id of this component (defaults to an auto-assigned id).\r
120 You should assign an id if you need to be able to ...</div><div class="long"><p>The <b>unique</b> id of this component (defaults to an <a href="output/Ext.Component.html#Ext.Component-getId" ext:member="getId" ext:cls="Ext.Component">auto-assigned id</a>).
121 You should assign an id if you need to be able to access the component later and you do
122 not have an object reference available (e.g., using <a href="output/Ext.html" ext:cls="Ext">Ext</a>.<a href="output/Ext.html#Ext-getCmp" ext:member="getCmp" ext:cls="Ext">getCmp</a>).</p>
123 <p>Note that this id will also be used as the element id for the containing HTML element
124 that is rendered to the page for this component. This allows you to write id-based CSS
125 rules to style the specific instance of this component uniquely, and also to select
126 sub-elements using this component's id as the parent.</p>
127 <p><b>Note</b>: to avoid complications imposed by a unique <tt>id</tt> also see
128 <code><a href="output/Ext.Component.html#Ext.Component-itemId" ext:member="itemId" ext:cls="Ext.Component">itemId</a></code> and <code><a href="output/Ext.Component.html#Ext.Component-ref" ext:member="ref" ext:cls="Ext.Component">ref</a></code>.</p>
129 <p><b>Note</b>: to access the container of an item see <code><a href="output/Ext.Component.html#Ext.Component-ownerCt" ext:member="ownerCt" ext:cls="Ext.Component">ownerCt</a></code>.</p></div></div></td><td class="msource"><a href="output/Ext.Component.html#id" ext:member="#id" ext:cls="Ext.Component">Component</a></td></tr><tr class="config-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-itemCls"></a><b><a href="source/Component.html#cfg-Ext.Component-itemCls">itemCls</a></b> : String<div class="mdesc"><div class="short">Note: this config is only used when this Component is rendered by a Container which\r
130 has been configured to use the Fo...</div><div class="long"><p><b>Note</b>: this config is only used when this Component is rendered by a Container which
131 has been configured to use the <b><a href="output/Ext.layout.FormLayout.html" ext:cls="Ext.layout.FormLayout">FormLayout</a></b> layout manager (e.g.
132 <a href="output/Ext.form.FormPanel.html" ext:cls="Ext.form.FormPanel">Ext.form.FormPanel</a> or specifying <tt>layout:'form'</tt>).</p><br>
133 <p>An additional CSS class to apply to the div wrapping the form item
134 element of this field.  If supplied, <tt>itemCls</tt> at the <b>field</b> level will override
135 the default <tt>itemCls</tt> supplied at the <b>container</b> level. The value specified for
136 <tt>itemCls</tt> will be added to the default class (<tt>'x-form-item'</tt>).</p>
137 <p>Since it is applied to the item wrapper (see
138 <a href="output/Ext.layout.FormLayout.html" ext:cls="Ext.layout.FormLayout">Ext.layout.FormLayout</a>.<a href="output/Ext.layout.FormLayout.html#Ext.layout.FormLayout-fieldTpl" ext:member="fieldTpl" ext:cls="Ext.layout.FormLayout">fieldTpl</a>), it allows
139 you to write standard CSS rules that can apply to the field, the label (if specified), or
140 any other element within the markup for the field.</p>
141 <br><p><b>Note</b>: see the note for <tt><a href="output/Ext.Component.html#Ext.Component-fieldLabel" ext:member="fieldLabel" ext:cls="Ext.Component">fieldLabel</a></tt>.</p><br>
142 Example use:<pre><code><i>// Apply a style to the field&#39;s <b>label</b>:</i>
143 &lt;style>
144     .required .x-form-item-<b>label</b> {font-weight:bold;color:red;}
145 &lt;/style>
146
147 <b>new</b> Ext.FormPanel({
148     height: 100,
149     renderTo: Ext.getBody(),
150     items: [{
151         xtype: <em>'textfield'</em>,
152         fieldLabel: <em>'Name'</em>,
153         itemCls: <em>'required'</em> <i>//this <b>label</b> will be styled</i>
154     },{
155         xtype: <em>'textfield'</em>,
156         fieldLabel: <em>'Favorite Color'</em>
157     }]
158 });</code></pre></div></div></td><td class="msource"><a href="output/Ext.Component.html#itemCls" ext:member="#itemCls" ext:cls="Ext.Component">Component</a></td></tr><tr class="config-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-itemId"></a><b><a href="source/Component.html#cfg-Ext.Component-itemId">itemId</a></b> : String<div class="mdesc"><div class="short">An itemId can be used as an alternative way to get a reference to a component\r
159 when no object reference is available. ...</div><div class="long"><p>An <tt>itemId</tt> can be used as an alternative way to get a reference to a component
160 when no object reference is available.  Instead of using an <code><a href="output/Ext.Component.html#Ext.Component-id" ext:member="id" ext:cls="Ext.Component">id</a></code> with
161 <a href="output/Ext.html" ext:cls="Ext">Ext</a>.<a href="output/Ext.html#Ext-getCmp" ext:member="getCmp" ext:cls="Ext">getCmp</a>, use <code>itemId</code> with
162 <a href="output/Ext.Container.html" ext:cls="Ext.Container">Ext.Container</a>.<a href="output/Ext.Container.html#Ext.Container-getComponent" ext:member="getComponent" ext:cls="Ext.Container">getComponent</a> which will retrieve
163 <code>itemId</code>'s or <tt><a href="output/Ext.Component.html#Ext.Component-id" ext:member="id" ext:cls="Ext.Component">id</a></tt>'s. Since <code>itemId</code>'s are an index to the
164 container's internal MixedCollection, the <code>itemId</code> is scoped locally to the container --
165 avoiding potential conflicts with <a href="output/Ext.ComponentMgr.html" ext:cls="Ext.ComponentMgr">Ext.ComponentMgr</a> which requires a <b>unique</b>
166 <code><a href="output/Ext.Component.html#Ext.Component-id" ext:member="id" ext:cls="Ext.Component">id</a></code>.</p>
167 <pre><code><b>var</b> c = <b>new</b> Ext.Panel({ <i>//</i>
168     <a href="output/Ext.BoxComponent.html#Ext.BoxComponent-height" ext:member="height" ext:cls="Ext.BoxComponent">height</a>: 300,
169     <a href="output/Ext.Component.html#Ext.Component-renderTo" ext:member="renderTo" ext:cls="Ext.Component">renderTo</a>: document.body,
170     <a href="output/Ext.Container.html#Ext.Container-layout" ext:member="layout" ext:cls="Ext.Container">layout</a>: <em>'auto'</em>,
171     <a href="output/Ext.Container.html#Ext.Container-items" ext:member="items" ext:cls="Ext.Container">items</a>: [
172         {
173             itemId: <em>'p1'</em>,
174             <a href="output/Ext.Panel.html#Ext.Panel-title" ext:member="title" ext:cls="Ext.Panel">title</a>: <em>'Panel 1'</em>,
175             <a href="output/Ext.BoxComponent.html#Ext.BoxComponent-height" ext:member="height" ext:cls="Ext.BoxComponent">height</a>: 150
176         },
177         {
178             itemId: <em>'p2'</em>,
179             <a href="output/Ext.Panel.html#Ext.Panel-title" ext:member="title" ext:cls="Ext.Panel">title</a>: <em>'Panel 2'</em>,
180             <a href="output/Ext.BoxComponent.html#Ext.BoxComponent-height" ext:member="height" ext:cls="Ext.BoxComponent">height</a>: 150
181         }
182     ]
183 })
184 p1 = c.<a href="output/Ext.Container.html#Ext.Container-getComponent" ext:member="getComponent" ext:cls="Ext.Container">getComponent</a>(<em>'p1'</em>); <i>// not the same as <a href="output/Ext.html#Ext-getCmp" ext:member="getCmp" ext:cls="Ext">Ext.getCmp()</a></i>
185 p2 = p1.<a href="output/Ext.Component.html#Ext.Component-ownerCt" ext:member="ownerCt" ext:cls="Ext.Component">ownerCt</a>.<a href="output/Ext.Container.html#Ext.Container-getComponent" ext:member="getComponent" ext:cls="Ext.Container">getComponent</a>(<em>'p2'</em>); <i>// reference via a sibling</i></code></pre>
186 <p>Also see <tt><a href="output/Ext.Component.html#Ext.Component-id" ext:member="id" ext:cls="Ext.Component">id</a></tt> and <code><a href="output/Ext.Component.html#Ext.Component-ref" ext:member="ref" ext:cls="Ext.Component">ref</a></code>.</p>
187 <p><b>Note</b>: to access the container of an item see <tt><a href="output/Ext.Component.html#Ext.Component-ownerCt" ext:member="ownerCt" ext:cls="Ext.Component">ownerCt</a></tt>.</p></div></div></td><td class="msource"><a href="output/Ext.Component.html#itemId" ext:member="#itemId" ext:cls="Ext.Component">Component</a></td></tr><tr class="config-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-labelSeparator"></a><b><a href="source/Component.html#cfg-Ext.Component-labelSeparator">labelSeparator</a></b> : String<div class="mdesc"><div class="short">The separator to display after the text of each\r
188 fieldLabel.  This property may be configured at various levels.\r
189 The o...</div><div class="long"><p>The separator to display after the text of each
190 <tt><a href="output/Ext.Component.html#Ext.Component-fieldLabel" ext:member="fieldLabel" ext:cls="Ext.Component">fieldLabel</a></tt>.  This property may be configured at various levels.
191 The order of precedence is:
192 <div class="mdetail-params"><ul>
193 <li>field / component level</li>
194 <li>container level</li>
195 <li><a href="output/Ext.layout.FormLayout.html#Ext.layout.FormLayout-labelSeparator" ext:member="labelSeparator" ext:cls="Ext.layout.FormLayout">layout level</a> (defaults to colon <tt>':'</tt>)</li>
196 </ul></div>
197 To display no separator for this field's label specify empty string ''.</p>
198 <br><p><b>Note</b>: see the note for <tt><a href="output/Ext.Component.html#Ext.Component-clearCls" ext:member="clearCls" ext:cls="Ext.Component">clearCls</a></tt>.</p><br>
199 <p>Also see <tt><a href="output/Ext.Component.html#Ext.Component-hideLabel" ext:member="hideLabel" ext:cls="Ext.Component">hideLabel</a></tt> and
200 <a href="output/Ext.layout.FormLayout.html" ext:cls="Ext.layout.FormLayout">Ext.layout.FormLayout</a>.<a href="output/Ext.layout.FormLayout.html#Ext.layout.FormLayout-fieldTpl" ext:member="fieldTpl" ext:cls="Ext.layout.FormLayout">fieldTpl</a>.</p>
201 Example use:<pre><code><b>new</b> Ext.FormPanel({
202     height: 100,
203     renderTo: Ext.getBody(),
204     layoutConfig: {
205         labelSeparator: <em>'~'</em>   <i>// layout config has lowest priority (defaults to <em>':'</em>)</i>
206     },
207     <a href="output/Ext.layout.FormLayout.html#Ext.layout.FormLayout-labelSeparator" ext:member="labelSeparator" ext:cls="Ext.layout.FormLayout">labelSeparator</a>: <em>'>>'</em>,     <i>// config at container level</i>
208     items: [{
209         xtype: <em>'textfield'</em>,
210         fieldLabel: <em>'Field 1'</em>,
211         labelSeparator: <em>'...'</em> <i>// field/component level config supersedes others</i>
212     },{
213         xtype: <em>'textfield'</em>,
214         fieldLabel: <em>'Field 2'</em> <i>// labelSeparator will be <em>'='</em></i>
215     }]
216 });</code></pre></div></div></td><td class="msource"><a href="output/Ext.Component.html#labelSeparator" ext:member="#labelSeparator" ext:cls="Ext.Component">Component</a></td></tr><tr class="config-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-labelStyle"></a><b><a href="source/Component.html#cfg-Ext.Component-labelStyle">labelStyle</a></b> : String<div class="mdesc"><div class="short">A CSS style specification string to apply directly to this field's\r
217 label.  Defaults to the container's labelStyle val...</div><div class="long"><p>A CSS style specification string to apply directly to this field's
218 label.  Defaults to the container's labelStyle value if set (e.g.,
219 <tt><a href="output/Ext.layout.FormLayout.html#Ext.layout.FormLayout-labelStyle" ext:member="labelStyle" ext:cls="Ext.layout.FormLayout">Ext.layout.FormLayout.labelStyle</a></tt> , or '').</p>
220 <br><p><b>Note</b>: see the note for <code><a href="output/Ext.Component.html#Ext.Component-clearCls" ext:member="clearCls" ext:cls="Ext.Component">clearCls</a></code>.</p><br>
221 <p>Also see <code><a href="output/Ext.Component.html#Ext.Component-hideLabel" ext:member="hideLabel" ext:cls="Ext.Component">hideLabel</a></code> and
222 <code><a href="output/Ext.layout.FormLayout.html" ext:cls="Ext.layout.FormLayout">Ext.layout.FormLayout</a>.<a href="output/Ext.layout.FormLayout.html#Ext.layout.FormLayout-fieldTpl" ext:member="fieldTpl" ext:cls="Ext.layout.FormLayout">fieldTpl</a>.</code></p>
223 Example use:<pre><code><b>new</b> Ext.FormPanel({
224     height: 100,
225     renderTo: Ext.getBody(),
226     items: [{
227         xtype: <em>'textfield'</em>,
228         fieldLabel: <em>'Name'</em>,
229         labelStyle: <em>'font-weight:bold;'</em>
230     }]
231 });</code></pre></div></div></td><td class="msource"><a href="output/Ext.Component.html#labelStyle" ext:member="#labelStyle" ext:cls="Ext.Component">Component</a></td></tr><tr class="config-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.util.Observable-listeners"></a><b><a href="source/Observable.html#cfg-Ext.util.Observable-listeners">listeners</a></b> : Object<div class="mdesc"><div class="short">A config object containing one or more event handlers to be added to this\r
232 object during initialization.  This should ...</div><div class="long"><p>A config object containing one or more event handlers to be added to this
233 object during initialization.  This should be a valid listeners config object as specified in the
234 <a href="output/Ext.util.Observable.html#Ext.util.Observable-addListener" ext:member="addListener" ext:cls="Ext.util.Observable">addListener</a> example for attaching multiple handlers at once.</p>
235 <br><p><b><u>DOM events from ExtJs <a href="output/Ext.Component.html" ext:cls="Ext.Component">Components</a></u></b></p>
236 <br><p>While <i>some</i> ExtJs Component classes export selected DOM events (e.g. "click", "mouseover" etc), this
237 is usually only done when extra value can be added. For example the <a href="output/Ext.DataView.html" ext:cls="Ext.DataView">DataView</a>'s
238 <b><code><a href="output/Ext.DataView.html#Ext.DataView-click" ext:member="click" ext:cls="Ext.DataView">click</a></code></b> event passing the node clicked on. To access DOM
239 events directly from a Component's HTMLElement, listeners must be added to the <i><a href="output/Ext.Component.html#Ext.Component-getEl" ext:member="getEl" ext:cls="Ext.Component">Element</a></i> after the Component
240 has been rendered. A plugin can simplify this step:<pre><code><i>// Plugin is configured <b>with</b> a listeners config object.</i>
241 <i>// The Component is appended to the argument list of all handler functions.</i>
242 Ext.DomObserver = Ext.extend(Object, {
243     constructor: <b>function</b>(config) {
244         this.listeners = config.listeners ? config.listeners : config;
245     },
246
247     <i>// Component passes itself into plugin&#39;s init method</i>
248     init: <b>function</b>(c) {
249         <b>var</b> p, l = this.listeners;
250         <b>for</b> (p <b>in</b> l) {
251             <b>if</b> (Ext.isFunction(l[p])) {
252                 l[p] = this.createHandler(l[p], c);
253             } <b>else</b> {
254                 l[p].fn = this.createHandler(l[p].fn, c);
255             }
256         }
257
258         <i>// Add the listeners to the Element immediately following the render call</i>
259         c.render = c.render.<a href="output/Function.html#Function-createSequence" ext:member="createSequence" ext:cls="Function">createSequence</a>(<b>function</b>() {
260             <b>var</b> e = c.getEl();
261             <b>if</b> (e) {
262                 e.on(l);
263             }
264         });
265     },
266
267     createHandler: <b>function</b>(fn, c) {
268         <b>return</b> <b>function</b>(e) {
269             fn.call(this, e, c);
270         };
271     }
272 });
273
274 <b>var</b> combo = <b>new</b> Ext.form.ComboBox({
275
276     <i>// Collapse combo when its element is clicked on</i>
277     plugins: [ <b>new</b> Ext.DomObserver({
278         click: <b>function</b>(evt, comp) {
279             comp.collapse();
280         }
281     })],
282     store: myStore,
283     typeAhead: true,
284     mode: <em>'local'</em>,
285     triggerAction: <em>'all'</em>
286 });</code></pre></p></div></div></td><td class="msource"><a href="output/Ext.util.Observable.html#listeners" ext:member="#listeners" ext:cls="Ext.util.Observable">Observable</a></td></tr><tr class="config-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-overCls"></a><b><a href="source/Component.html#cfg-Ext.Component-overCls">overCls</a></b> : String<div class="mdesc"><div class="short">An optional extra CSS class that will be added to this component's Element when the mouse moves\r
287 over the Element, and...</div><div class="long">An optional extra CSS class that will be added to this component's Element when the mouse moves
288 over the Element, and removed when the mouse moves out. (defaults to '').  This can be
289 useful for adding customized 'active' or 'hover' styles to the component or any of its children using standard CSS rules.</div></div></td><td class="msource"><a href="output/Ext.Component.html#overCls" ext:member="#overCls" ext:cls="Ext.Component">Component</a></td></tr><tr class="config-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-plugins"></a><b><a href="source/Component.html#cfg-Ext.Component-plugins">plugins</a></b> : Object/Array<div class="mdesc"><div class="short">An object or array of objects that will provide custom functionality for this component.  The only\r
290 requirement for a ...</div><div class="long">An object or array of objects that will provide custom functionality for this component.  The only
291 requirement for a valid plugin is that it contain an init method that accepts a reference of type Ext.Component.
292 When a component is created, if any plugins are available, the component will call the init method on each
293 plugin, passing a reference to itself.  Each plugin can then call methods or respond to events on the
294 component as needed to provide its functionality.</div></div></td><td class="msource"><a href="output/Ext.Component.html#plugins" ext:member="#plugins" ext:cls="Ext.Component">Component</a></td></tr><tr class="config-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-ptype"></a><b><a href="source/Component.html#cfg-Ext.Component-ptype">ptype</a></b> : String<div class="mdesc"><div class="short">The registered ptype to create. This config option is not used when passing\r
295 a config object into a constructor. This ...</div><div class="long">The registered <tt>ptype</tt> to create. This config option is not used when passing
296 a config object into a constructor. This config option is used only when
297 lazy instantiation is being used, and a Plugin is being
298 specified not as a fully instantiated Component, but as a <i>Component config
299 object</i>. The <tt>ptype</tt> will be looked up at render time up to determine what
300 type of Plugin to create.<br><br>
301 If you create your own Plugins, you may register them using
302 <a href="output/Ext.ComponentMgr.html#Ext.ComponentMgr-registerPlugin" ext:member="registerPlugin" ext:cls="Ext.ComponentMgr">Ext.ComponentMgr.registerPlugin</a> in order to be able to
303 take advantage of lazy instantiation and rendering.</div></div></td><td class="msource"><a href="output/Ext.Component.html#ptype" ext:member="#ptype" ext:cls="Ext.Component">Component</a></td></tr><tr class="config-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-ref"></a><b><a href="source/Component.html#cfg-Ext.Component-ref">ref</a></b> : String<div class="mdesc"><div class="short">A path specification, relative to the Component's ownerCt specifying into which\r
304 ancestor Container to place a named r...</div><div class="long"><p>A path specification, relative to the Component's <a href="output/Ext.Component.html#Ext.Component-ownerCt" ext:member="ownerCt" ext:cls="Ext.Component">ownerCt</a> specifying into which
305 ancestor Container to place a named reference to this Component.</p>
306 <p>The ancestor axis can be traversed by using '/' characters in the path.
307 For example, to put a reference to a Toolbar Button into <i>the Panel which owns the Toolbar</i>:</p><pre><code><b>var</b> myGrid = <b>new</b> Ext.grid.EditorGridPanel({
308     title: <em>'My EditorGridPanel'</em>,
309     store: myStore,
310     colModel: myColModel,
311     tbar: [{
312         text: <em>'Save'</em>,
313         handler: saveChanges,
314         disabled: true,
315         ref: <em>'../saveButton'</em>
316     }],
317     listeners: {
318         afteredit: <b>function</b>() {
319 <i>//          The button reference is <b>in</b> the GridPanel</i>
320             myGrid.saveButton.enable();
321         }
322     }
323 });</code></pre>
324 <p>In the code above, if the ref had been <code><em>'saveButton'</em></code> the reference would
325 have been placed into the Toolbar. Each '/' in the ref moves up one level from the
326 Component's <a href="output/Ext.Component.html#Ext.Component-ownerCt" ext:member="ownerCt" ext:cls="Ext.Component">ownerCt</a>.</p></div></div></td><td class="msource"><a href="output/Ext.Component.html#ref" ext:member="#ref" ext:cls="Ext.Component">Component</a></td></tr><tr class="config-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-renderTo"></a><b><a href="source/Component.html#cfg-Ext.Component-renderTo">renderTo</a></b> : Mixed<div class="mdesc"><div class="short">Specify the id of the element, a DOM element or an existing Element that this component\r
327 will be rendered into.\r
328 Notes ...</div><div class="long"><p>Specify the id of the element, a DOM element or an existing Element that this component
329 will be rendered into.</p><div><ul>
330 <li><b>Notes</b> : <ul>
331 <div class="sub-desc">Do <u>not</u> use this option if the Component is to be a child item of
332 a <a href="output/Ext.Container.html" ext:cls="Ext.Container">Container</a>. It is the responsibility of the
333 <a href="output/Ext.Container.html" ext:cls="Ext.Container">Container</a>'s <a href="output/Ext.Container.html#Ext.Container-layout" ext:member="layout" ext:cls="Ext.Container">layout manager</a>
334 to render and manage its child items.</div>
335 <div class="sub-desc">When using this config, a call to render() is not required.</div>
336 </ul></li>
337 </ul></div>
338 <p>See <tt><a href="output/Ext.Component.html#Ext.Component-render" ext:member="render" ext:cls="Ext.Component">render</a></tt> also.</p></div></div></td><td class="msource"><a href="output/Ext.Component.html#renderTo" ext:member="#renderTo" ext:cls="Ext.Component">Component</a></td></tr><tr class="config-row  "><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.menu.BaseItem-scope"></a><b><a href="source/BaseItem.html#cfg-Ext.menu.BaseItem-scope">scope</a></b> : Object<div class="mdesc">The scope (<tt><b>this</b></tt> reference) in which the handler function will be called.</div></td><td class="msource">BaseItem</td></tr><tr class="config-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-stateEvents"></a><b><a href="source/Component.html#cfg-Ext.Component-stateEvents">stateEvents</a></b> : Array<div class="mdesc"><div class="short">An array of events that, when fired, should trigger this component to\r
339 save its state (defaults to none). stateEvents ...</div><div class="long"><p>An array of events that, when fired, should trigger this component to
340 save its state (defaults to none). <code>stateEvents</code> may be any type
341 of event supported by this component, including browser or custom events
342 (e.g., <tt>['click', 'customerchange']</tt>).</p>
343 <p>See <code><a href="output/Ext.Component.html#Ext.Component-stateful" ext:member="stateful" ext:cls="Ext.Component">stateful</a></code> for an explanation of saving and
344 restoring Component state.</p></div></div></td><td class="msource"><a href="output/Ext.Component.html#stateEvents" ext:member="#stateEvents" ext:cls="Ext.Component">Component</a></td></tr><tr class="config-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-stateId"></a><b><a href="source/Component.html#cfg-Ext.Component-stateId">stateId</a></b> : String<div class="mdesc"><div class="short">The unique id for this component to use for state management purposes\r
345 (defaults to the component id if one was set, o...</div><div class="long">The unique id for this component to use for state management purposes
346 (defaults to the component id if one was set, otherwise null if the
347 component is using a generated id).
348 <p>See <code><a href="output/Ext.Component.html#Ext.Component-stateful" ext:member="stateful" ext:cls="Ext.Component">stateful</a></code> for an explanation of saving and
349 restoring Component state.</p></div></div></td><td class="msource"><a href="output/Ext.Component.html#stateId" ext:member="#stateId" ext:cls="Ext.Component">Component</a></td></tr><tr class="config-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-stateful"></a><b><a href="source/Component.html#cfg-Ext.Component-stateful">stateful</a></b> : Boolean<div class="mdesc"><div class="short">A flag which causes the Component to attempt to restore the state of\r
350 internal properties from a saved state on startu...</div><div class="long"><p>A flag which causes the Component to attempt to restore the state of
351 internal properties from a saved state on startup. The component must have
352 either a <code><a href="output/Ext.Component.html#Ext.Component-stateId" ext:member="stateId" ext:cls="Ext.Component">stateId</a></code> or <code><a href="output/Ext.Component.html#Ext.Component-id" ext:member="id" ext:cls="Ext.Component">id</a></code> assigned
353 for state to be managed. Auto-generated ids are not guaranteed to be stable
354 across page loads and cannot be relied upon to save and restore the same
355 state for a component.<p>
356 <p>For state saving to work, the state manager's provider must have been
357 set to an implementation of <a href="output/Ext.state.Provider.html" ext:cls="Ext.state.Provider">Ext.state.Provider</a> which overrides the
358 <a href="output/Ext.state.Provider.html#Ext.state.Provider-set" ext:member="set" ext:cls="Ext.state.Provider">set</a> and <a href="output/Ext.state.Provider.html#Ext.state.Provider-get" ext:member="get" ext:cls="Ext.state.Provider">get</a>
359 methods to save and recall name/value pairs. A built-in implementation,
360 <a href="output/Ext.state.CookieProvider.html" ext:cls="Ext.state.CookieProvider">Ext.state.CookieProvider</a> is available.</p>
361 <p>To set the state provider for the current page:</p>
362 <pre><code>Ext.state.Manager.setProvider(<b>new</b> Ext.state.CookieProvider({
363     expires: <b>new</b> Date(<b>new</b> Date().getTime()+(1000*60*60*24*7)), <i>//7 days from now</i>
364 }));</code></pre>
365 <p>A stateful Component attempts to save state when one of the events
366 listed in the <code><a href="output/Ext.Component.html#Ext.Component-stateEvents" ext:member="stateEvents" ext:cls="Ext.Component">stateEvents</a></code> configuration fires.</p>
367 <p>To save state, a stateful Component first serializes its state by
368 calling <b><code>getState</code></b>. By default, this function does
369 nothing. The developer must provide an implementation which returns an
370 object hash which represents the Component's restorable state.</p>
371 <p>The value yielded by getState is passed to <a href="output/Ext.state.Manager.html#Ext.state.Manager-set" ext:member="set" ext:cls="Ext.state.Manager">Ext.state.Manager.set</a>
372 which uses the configured <a href="output/Ext.state.Provider.html" ext:cls="Ext.state.Provider">Ext.state.Provider</a> to save the object
373 keyed by the Component's <code><a href="output/stateId.html" ext:cls="stateId">stateId</a></code>, or, if that is not
374 specified, its <code><a href="output/Ext.Component.html#Ext.Component-id" ext:member="id" ext:cls="Ext.Component">id</a></code>.</p>
375 <p>During construction, a stateful Component attempts to <i>restore</i>
376 its state by calling <a href="output/Ext.state.Manager.html#Ext.state.Manager-get" ext:member="get" ext:cls="Ext.state.Manager">Ext.state.Manager.get</a> passing the
377 <code><a href="output/Ext.Component.html#Ext.Component-stateId" ext:member="stateId" ext:cls="Ext.Component">stateId</a></code>, or, if that is not specified, the
378 <code><a href="output/Ext.Component.html#Ext.Component-id" ext:member="id" ext:cls="Ext.Component">id</a></code>.</p>
379 <p>The resulting object is passed to <b><code>applyState</code></b>.
380 The default implementation of <code>applyState</code> simply copies
381 properties into the object, but a developer may override this to support
382 more behaviour.</p>
383 <p>You can perform extra processing on state save and restore by attaching
384 handlers to the <a href="output/Ext.Component.html#Ext.Component-beforestaterestore" ext:member="beforestaterestore" ext:cls="Ext.Component">beforestaterestore</a>, <a href="output/Ext.Component.html#Ext.Component-staterestore" ext:member="staterestore" ext:cls="Ext.Component">staterestore</a>,
385 <a href="output/Ext.Component.html#Ext.Component-beforestatesave" ext:member="beforestatesave" ext:cls="Ext.Component">beforestatesave</a> and <a href="output/Ext.Component.html#Ext.Component-statesave" ext:member="statesave" ext:cls="Ext.Component">statesave</a> events.</p></div></div></td><td class="msource"><a href="output/Ext.Component.html#stateful" ext:member="#stateful" ext:cls="Ext.Component">Component</a></td></tr><tr class="config-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-style"></a><b><a href="source/Component.html#cfg-Ext.Component-style">style</a></b> : String<div class="mdesc"><div class="short">A custom style specification to be applied to this component's Element.  Should be a valid argument to\r
386 Ext.Element.ap...</div><div class="long">A custom style specification to be applied to this component's Element.  Should be a valid argument to
387 <a href="output/Ext.Element.html#Ext.Element-applyStyles" ext:member="applyStyles" ext:cls="Ext.Element">Ext.Element.applyStyles</a>.
388 <pre><code><b>new</b> Ext.Panel({
389     title: <em>'Some Title'</em>,
390     renderTo: Ext.getBody(),
391     width: 400, height: 300,
392     layout: <em>'form'</em>,
393     items: [{
394         xtype: <em>'textarea'</em>,
395         style: {
396             width: <em>'95%'</em>,
397             marginBottom: <em>'10px'</em>
398         }
399     },
400         <b>new</b> Ext.Button({
401             text: <em>'Send'</em>,
402             minWidth: <em>'100'</em>,
403             style: {
404                 marginBottom: <em>'10px'</em>
405             }
406         })
407     ]
408 });</code></pre></div></div></td><td class="msource"><a href="output/Ext.Component.html#style" ext:member="#style" ext:cls="Ext.Component">Component</a></td></tr><tr class="config-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-xtype"></a><b><a href="source/Component.html#cfg-Ext.Component-xtype">xtype</a></b> : String<div class="mdesc"><div class="short">The registered xtype to create. This config option is not used when passing\r
409 a config object into a constructor. This ...</div><div class="long">The registered <tt>xtype</tt> to create. This config option is not used when passing
410 a config object into a constructor. This config option is used only when
411 lazy instantiation is being used, and a child item of a Container is being
412 specified not as a fully instantiated Component, but as a <i>Component config
413 object</i>. The <tt>xtype</tt> will be looked up at render time up to determine what
414 type of child Component to create.<br><br>
415 The predefined xtypes are listed <a href="output/Ext.Component.html" ext:cls="Ext.Component">here</a>.
416 <br><br>
417 If you subclass Components to create your own Components, you may register
418 them using <a href="output/Ext.ComponentMgr.html#Ext.ComponentMgr-registerType" ext:member="registerType" ext:cls="Ext.ComponentMgr">Ext.ComponentMgr.registerType</a> in order to be able to
419 take advantage of lazy instantiation and rendering.</div></div></td><td class="msource"><a href="output/Ext.Component.html#xtype" ext:member="#xtype" ext:cls="Ext.Component">Component</a></td></tr></tbody></table><a id="Ext.menu.BaseItem-props"></a><h2>Public Properties</h2><table cellspacing="0" class="member-table"><tbody><tr><th colspan="2" class="sig-header">Property</th><th class="msource-header">Defined By</th></tr><tr class="property-row  inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-disabled"></a><b><a href="source/Component.html#prop-Ext.Component-disabled">disabled</a></b> : Boolean<div class="mdesc">True if this component is disabled. Read-only.</div></td><td class="msource"><a href="output/Ext.Component.html#disabled" ext:member="#disabled" ext:cls="Ext.Component">Component</a></td></tr><tr class="property-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-el"></a><b><a href="source/Component.html#prop-Ext.Component-el">el</a></b> : Ext.Element<div class="mdesc"><div class="short">The Ext.Element which encapsulates this Component. Read-only.\r
420 This will usually be a &amp;lt;DIV&gt; element created by the ...</div><div class="long"><p>The <a href="output/Ext.Element.html" ext:cls="Ext.Element">Ext.Element</a> which encapsulates this Component. Read-only.</p>
421 <p>This will <i>usually</i> be a &lt;DIV> element created by the class's onRender method, but
422 that may be overridden using the <code><a href="output/Ext.Component.html#Ext.Component-autoEl" ext:member="autoEl" ext:cls="Ext.Component">autoEl</a></code> config.</p>
423 <br><p><b>Note</b>: this element will not be available until this Component has been rendered.</p><br>
424 <p>To add listeners for <b>DOM events</b> to this Component (as opposed to listeners
425 for this Component's own Observable events), see the <a href="output/Ext.util.Observable.html#Ext.util.Observable-listeners" ext:member="listeners" ext:cls="Ext.util.Observable">listeners</a>
426 config for a suggestion, or use a render listener directly:</p><pre><code><b>new</b> Ext.Panel({
427     title: <em>'The Clickable Panel'</em>,
428     listeners: {
429         render: <b>function</b>(p) {
430             <i>// Append the Panel to the click handler&#39;s argument list.</i>
431             p.getEl().on(<em>'click'</em>, handlePanelClick.createDelegate(null, [p], true));
432         },
433         single: true  <i>// Remove the listener after first invocation</i>
434     }
435 });</code></pre>
436 <p>See also <tt><a href="output/Ext.Component.html#Ext.Component-getEl" ext:member="getEl" ext:cls="Ext.Component">getEl</a></p></div></div></td><td class="msource"><a href="output/Ext.Component.html#el" ext:member="#el" ext:cls="Ext.Component">Component</a></td></tr><tr class="property-row  inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-hidden"></a><b><a href="source/Component.html#prop-Ext.Component-hidden">hidden</a></b> : Boolean<div class="mdesc">True if this component is hidden. Read-only.</div></td><td class="msource"><a href="output/Ext.Component.html#hidden" ext:member="#hidden" ext:cls="Ext.Component">Component</a></td></tr><tr class="property-row  inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-initialConfig"></a><b><a href="source/Component.html#prop-Ext.Component-initialConfig">initialConfig</a></b> : Object<div class="mdesc">This Component's initial configuration specification. Read-only.</div></td><td class="msource"><a href="output/Ext.Component.html#initialConfig" ext:member="#initialConfig" ext:cls="Ext.Component">Component</a></td></tr><tr class="property-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-ownerCt"></a><b><a href="source/Component.html#prop-Ext.Component-ownerCt">ownerCt</a></b> : Ext.Container<div class="mdesc"><div class="short">This Component's owner Container (defaults to undefined, and is set automatically when\r
437 this Component is added to a C...</div><div class="long">This Component's owner <a href="output/Ext.Container.html" ext:cls="Ext.Container">Container</a> (defaults to undefined, and is set automatically when
438 this Component is added to a Container).  Read-only.
439 <p><b>Note</b>: to access items within the Container see <tt><a href="output/Ext.Component.html#Ext.Component-itemId" ext:member="itemId" ext:cls="Ext.Component">itemId</a></tt>.</p></div></div></td><td class="msource"><a href="output/Ext.Component.html#ownerCt" ext:member="#ownerCt" ext:cls="Ext.Component">Component</a></td></tr><tr class="property-row  "><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.menu.BaseItem-parentMenu"></a><b><a href="source/BaseItem.html#prop-Ext.menu.BaseItem-parentMenu">parentMenu</a></b> : Ext.menu.Menu\r
440 The parent Menu of this Item.<div class="mdesc"></div></td><td class="msource">BaseItem</td></tr><tr class="property-row  inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-rendered"></a><b><a href="source/Component.html#prop-Ext.Component-rendered">rendered</a></b> : Boolean<div class="mdesc">True if this component has been rendered. Read-only.</div></td><td class="msource"><a href="output/Ext.Component.html#rendered" ext:member="#rendered" ext:cls="Ext.Component">Component</a></td></tr></tbody></table><a id="Ext.menu.BaseItem-methods"></a><h2>Public Methods</h2><table cellspacing="0" class="member-table"><tbody><tr><th colspan="2" class="sig-header">Method</th><th class="msource-header">Defined By</th></tr><tr class="method-row expandable"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.menu.BaseItem-BaseItem"></a><b><a href="source/BaseItem.html#cls-Ext.menu.BaseItem">BaseItem</a></b>(&nbsp;<code>Object&nbsp;config</code>&nbsp;)\r
441     <div class="mdesc"><div class="short">Creates a new BaseItem</div><div class="long">Creates a new BaseItem<div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>config</code> : Object<div class="sub-desc">Configuration options</div></li></ul><strong>Returns:</strong><ul><li>void</li></ul></div><table><tr><td class="label">xtype:</td><td class="hd-info">menubaseitem</td></tr></table></div></div></td><td class="msource">BaseItem</td></tr><tr class="method-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-addClass"></a><b><a href="source/Component.html#method-Ext.Component-addClass">addClass</a></b>(&nbsp;<code>string&nbsp;cls</code>&nbsp;)\r
442     :\r
443                                         Ext.Component<div class="mdesc"><div class="short">Adds a CSS class to the component's underlying element.</div><div class="long">Adds a CSS class to the component's underlying element.<div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>cls</code> : string<div class="sub-desc">The CSS class name to add</div></li></ul><strong>Returns:</strong><ul><li><code>Ext.Component</code><div class="sub-desc">this</div></li></ul></div></div></div></td><td class="msource"><a href="output/Ext.Component.html#addClass" ext:member="#addClass" ext:cls="Ext.Component">Component</a></td></tr><tr class="method-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.util.Observable-addEvents"></a><b><a href="source/Observable.html#method-Ext.util.Observable-addEvents">addEvents</a></b>(&nbsp;<code>Object|String&nbsp;o</code>,&nbsp;<code>string&nbsp;Optional.</code>&nbsp;)\r
444     :\r
445                                         void<div class="mdesc"><div class="short">Adds the specified events to the list of events which this Observable may fire.</div><div class="long">Adds the specified events to the list of events which this Observable may fire.<div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>o</code> : Object|String<div class="sub-desc">Either an object with event names as properties with a value of <code>true</code>
446 or the first event name string if multiple event names are being passed as separate parameters.</div></li><li><code>Optional.</code> : string<div class="sub-desc">Event name if multiple event names are being passed as separate parameters.
447 Usage:<pre><code>this.addEvents(<em>'storeloaded'</em>, <em>'storecleared'</em>);</code></pre></div></li></ul><strong>Returns:</strong><ul><li>void</li></ul></div></div></div></td><td class="msource"><a href="output/Ext.util.Observable.html#addEvents" ext:member="#addEvents" ext:cls="Ext.util.Observable">Observable</a></td></tr><tr class="method-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.util.Observable-addListener"></a><b><a href="source/Observable.html#method-Ext.util.Observable-addListener">addListener</a></b>(&nbsp;<code>String&nbsp;eventName</code>,&nbsp;<code>Function&nbsp;handler</code>,&nbsp;<span title="Optional" class="optional">[<code>Object&nbsp;scope</code>]</span>,&nbsp;<span title="Optional" class="optional">[<code>Object&nbsp;options</code>]</span>&nbsp;)\r
448     :\r
449                                         void<div class="mdesc"><div class="short">Appends an event handler to this object.</div><div class="long">Appends an event handler to this object.<div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>eventName</code> : String<div class="sub-desc">The name of the event to listen for.</div></li><li><code>handler</code> : Function<div class="sub-desc">The method the event invokes.</div></li><li><code>scope</code> : Object<div class="sub-desc">(optional) The scope (<code><b>this</b></code> reference) in which the handler function is executed.
450 <b>If omitted, defaults to the object which fired the event.</b></div></li><li><code>options</code> : Object<div class="sub-desc">(optional) An object containing handler configuration.
451 properties. This may contain any of the following properties:<ul>
452 <li><b>scope</b> : Object<div class="sub-desc">The scope (<code><b>this</b></code> reference) in which the handler function is executed.
453 <b>If omitted, defaults to the object which fired the event.</b></div></li>
454 <li><b>delay</b> : Number<div class="sub-desc">The number of milliseconds to delay the invocation of the handler after the event fires.</div></li>
455 <li><b>single</b> : Boolean<div class="sub-desc">True to add a handler to handle just the next firing of the event, and then remove itself.</div></li>
456 <li><b>buffer</b> : Number<div class="sub-desc">Causes the handler to be scheduled to run in an <a href="output/Ext.util.DelayedTask.html" ext:cls="Ext.util.DelayedTask">Ext.util.DelayedTask</a> delayed
457 by the specified number of milliseconds. If the event fires again within that time, the original
458 handler is <em>not</em> invoked, but the new handler is scheduled in its place.</div></li>
459 <li><b>target</b> : Observable<div class="sub-desc">Only call the handler if the event was fired on the target Observable, <i>not</i>
460 if the event was bubbled up from a child Observable.</div></li>
461 </ul><br>
462 <p>
463 <b>Combining Options</b><br>
464 Using the options argument, it is possible to combine different types of listeners:<br>
465 <br>
466 A delayed, one-time listener.
467 <pre><code>myDataView.on(<em>'click'</em>, this.onClick, this, {
468 single: true,
469 delay: 100
470 });</code></pre>
471 <p>
472 <b>Attaching multiple handlers in 1 call</b><br>
473 The method also allows for a single argument to be passed which is a config object containing properties
474 which specify multiple handlers.
475 <p>
476 <pre><code>myGridPanel.on({
477 <em>'click'</em> : {
478     fn: this.onClick,
479     scope: this,
480     delay: 100
481 },
482 <em>'mouseover'</em> : {
483     fn: this.onMouseOver,
484     scope: this
485 },
486 <em>'mouseout'</em> : {
487     fn: this.onMouseOut,
488     scope: this
489 }
490 });</code></pre>
491 <p>
492 Or a shorthand syntax:<br>
493 <pre><code>myGridPanel.on({
494 <em>'click'</em> : this.onClick,
495 <em>'mouseover'</em> : this.onMouseOver,
496 <em>'mouseout'</em> : this.onMouseOut,
497  scope: this
498 });</code></pre></div></li></ul><strong>Returns:</strong><ul><li>void</li></ul></div></div></div></td><td class="msource"><a href="output/Ext.util.Observable.html#addListener" ext:member="#addListener" ext:cls="Ext.util.Observable">Observable</a></td></tr><tr class="method-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-applyToMarkup"></a><b><a href="source/Component.html#method-Ext.Component-applyToMarkup">applyToMarkup</a></b>(&nbsp;<code>String/HTMLElement&nbsp;el</code>&nbsp;)\r
499     :\r
500                                         void<div class="mdesc"><div class="short">Apply this component to existing markup that is valid. With this function, no call to render() is required.</div><div class="long">Apply this component to existing markup that is valid. With this function, no call to render() is required.<div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>el</code> : String/HTMLElement<div class="sub-desc"></div></li></ul><strong>Returns:</strong><ul><li>void</li></ul></div></div></div></td><td class="msource"><a href="output/Ext.Component.html#applyToMarkup" ext:member="#applyToMarkup" ext:cls="Ext.Component">Component</a></td></tr><tr class="method-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-cloneConfig"></a><b><a href="source/Component.html#method-Ext.Component-cloneConfig">cloneConfig</a></b>(&nbsp;<code>Object&nbsp;overrides</code>&nbsp;)\r
501     :\r
502                                         Ext.Component<div class="mdesc"><div class="short">Clone the current component using the original config values passed into this instance by default.</div><div class="long">Clone the current component using the original config values passed into this instance by default.<div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>overrides</code> : Object<div class="sub-desc">A new config containing any properties to override in the cloned version.
503 An id property can be passed on this object, otherwise one will be generated to avoid duplicates.</div></li></ul><strong>Returns:</strong><ul><li><code>Ext.Component</code><div class="sub-desc">clone The cloned copy of this component</div></li></ul></div></div></div></td><td class="msource"><a href="output/Ext.Component.html#cloneConfig" ext:member="#cloneConfig" ext:cls="Ext.Component">Component</a></td></tr><tr class="method-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-destroy"></a><b><a href="source/Component.html#method-Ext.Component-destroy">destroy</a></b>()\r
504     :\r
505                                         void<div class="mdesc"><div class="short">Destroys this component by purging any event listeners, removing the component's element from the DOM,\r
506 removing the c...</div><div class="long">Destroys this component by purging any event listeners, removing the component's element from the DOM,
507 removing the component from its <a href="output/Ext.Container.html" ext:cls="Ext.Container">Ext.Container</a> (if applicable) and unregistering it from
508 <a href="output/Ext.ComponentMgr.html" ext:cls="Ext.ComponentMgr">Ext.ComponentMgr</a>.  Destruction is generally handled automatically by the framework and this method
509 should usually not need to be called directly.<div class="mdetail-params"><strong>Parameters:</strong><ul><li>None.</li></ul><strong>Returns:</strong><ul><li>void</li></ul></div></div></div></td><td class="msource"><a href="output/Ext.Component.html#destroy" ext:member="#destroy" ext:cls="Ext.Component">Component</a></td></tr><tr class="method-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-disable"></a><b><a href="source/Component.html#method-Ext.Component-disable">disable</a></b>()\r
510     :\r
511                                         Ext.Component<div class="mdesc"><div class="short">Disable this component and fire the 'disable' event.</div><div class="long">Disable this component and fire the 'disable' event.<div class="mdetail-params"><strong>Parameters:</strong><ul><li>None.</li></ul><strong>Returns:</strong><ul><li><code>Ext.Component</code><div class="sub-desc">this</div></li></ul></div></div></div></td><td class="msource"><a href="output/Ext.Component.html#disable" ext:member="#disable" ext:cls="Ext.Component">Component</a></td></tr><tr class="method-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-enable"></a><b><a href="source/Component.html#method-Ext.Component-enable">enable</a></b>()\r
512     :\r
513                                         Ext.Component<div class="mdesc"><div class="short">Enable this component and fire the 'enable' event.</div><div class="long">Enable this component and fire the 'enable' event.<div class="mdetail-params"><strong>Parameters:</strong><ul><li>None.</li></ul><strong>Returns:</strong><ul><li><code>Ext.Component</code><div class="sub-desc">this</div></li></ul></div></div></div></td><td class="msource"><a href="output/Ext.Component.html#enable" ext:member="#enable" ext:cls="Ext.Component">Component</a></td></tr><tr class="method-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.util.Observable-enableBubble"></a><b><a href="source/Observable-more.html#method-Ext.util.Observable-enableBubble">enableBubble</a></b>(&nbsp;<code>Object&nbsp;events</code>&nbsp;)\r
514     :\r
515                                         void<div class="mdesc"><div class="short">Enables events fired by this Observable to bubble up an owner hierarchy by calling&#13;\r
516 this.getBubbleTarget() if present...</div><div class="long"><p>Enables events fired by this Observable to bubble up an owner hierarchy by calling\r
517 <code>this.getBubbleTarget()</code> if present. There is no implementation in the Observable base class.</p>\r
518 <p>This is commonly used by Ext.Components to bubble events to owner Containers. See <a href="output/Ext.Component.getBubbleTarget.html" ext:cls="Ext.Component.getBubbleTarget">Ext.Component.getBubbleTarget</a>. The default\r
519 implementation in Ext.Component returns the Component's immediate owner. But if a known target is required, this can be overridden to\r
520 access the required target more quickly.</p>\r
521 <p>Example:</p><pre><code>Ext.override(Ext.form.Field, {\r
522 <i>//  Add functionality to Field<em>'s initComponent to enable the change event to bubble\r</i>
523     initComponent: Ext.form.Field.prototype.initComponent.createSequence(<b>function</b>() {\r
524         this.enableBubble('</em>change<em>');\r
525     }),\r
526 \r
527 <i>//  We know that we want Field'</em>s events to bubble directly to the FormPanel.\r</i>
528     getBubbleTarget: <b>function</b>() {\r
529         <b>if</b> (!this.formPanel) {\r
530             this.formPanel = this.findParentByType(<em>'form'</em>);\r
531         }\r
532         <b>return</b> this.formPanel;\r
533     }\r
534 });\r
535 \r
536 <b>var</b> myForm = <b>new</b> Ext.formPanel({\r
537     title: <em>'User Details'</em>,\r
538     items: [{\r
539         ...\r
540     }],\r
541     listeners: {\r
542         change: <b>function</b>() {\r
543 <i>//          Title goes red <b>if</b> form has been modified.\r</i>
544             myForm.header.setStyle(<em>"color"</em>, <em>"red"</em>);\r
545         }\r
546     }\r
547 });</code></pre><div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>events</code> : Object<div class="sub-desc">The event name to bubble, or an Array of event names.</div></li></ul><strong>Returns:</strong><ul><li>void</li></ul></div></div></div></td><td class="msource"><a href="output/Ext.util.Observable.html#enableBubble" ext:member="#enableBubble" ext:cls="Ext.util.Observable">Observable</a></td></tr><tr class="method-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-findParentBy"></a><b><a href="source/Component.html#method-Ext.Component-findParentBy">findParentBy</a></b>(&nbsp;<code>Function&nbsp;fn</code>&nbsp;)\r
548     :\r
549                                         Ext.Container<div class="mdesc"><div class="short">Find a container above this component at any level by a custom function. If the passed function returns\r
550 true, the con...</div><div class="long">Find a container above this component at any level by a custom function. If the passed function returns
551 true, the container will be returned.<div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>fn</code> : Function<div class="sub-desc">The custom function to call with the arguments (container, this component).</div></li></ul><strong>Returns:</strong><ul><li><code>Ext.Container</code><div class="sub-desc">The first Container for which the custom function returns true</div></li></ul></div></div></div></td><td class="msource"><a href="output/Ext.Component.html#findParentBy" ext:member="#findParentBy" ext:cls="Ext.Component">Component</a></td></tr><tr class="method-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-findParentByType"></a><b><a href="source/Component.html#method-Ext.Component-findParentByType">findParentByType</a></b>(&nbsp;<code>String/Class&nbsp;xtype</code>&nbsp;)\r
552     :\r
553                                         Ext.Container<div class="mdesc"><div class="short">Find a container above this component at any level by xtype or class</div><div class="long">Find a container above this component at any level by xtype or class<div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>xtype</code> : String/Class<div class="sub-desc">The xtype string for a component, or the class of the component directly</div></li></ul><strong>Returns:</strong><ul><li><code>Ext.Container</code><div class="sub-desc">The first Container which matches the given xtype or class</div></li></ul></div></div></div></td><td class="msource"><a href="output/Ext.Component.html#findParentByType" ext:member="#findParentByType" ext:cls="Ext.Component">Component</a></td></tr><tr class="method-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.util.Observable-fireEvent"></a><b><a href="source/Observable.html#method-Ext.util.Observable-fireEvent">fireEvent</a></b>(&nbsp;<code>String&nbsp;eventName</code>,&nbsp;<code>Object...&nbsp;args</code>&nbsp;)\r
554     :\r
555                                         Boolean<div class="mdesc"><div class="short">Fires the specified event with the passed parameters (minus the event name).\r
556 An event may be set to bubble up an Obse...</div><div class="long"><p>Fires the specified event with the passed parameters (minus the event name).</p>
557 <p>An event may be set to bubble up an Observable parent hierarchy (See <a href="output/Ext.Component.html#Ext.Component-getBubbleTarget" ext:member="getBubbleTarget" ext:cls="Ext.Component">Ext.Component.getBubbleTarget</a>)
558 by calling <a href="output/Ext.util.Observable.html#Ext.util.Observable-enableBubble" ext:member="enableBubble" ext:cls="Ext.util.Observable">enableBubble</a>.</p><div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>eventName</code> : String<div class="sub-desc">The name of the event to fire.</div></li><li><code>args</code> : Object...<div class="sub-desc">Variable number of parameters are passed to handlers.</div></li></ul><strong>Returns:</strong><ul><li><code>Boolean</code><div class="sub-desc">returns false if any of the handlers return false otherwise it returns true.</div></li></ul></div></div></div></td><td class="msource"><a href="output/Ext.util.Observable.html#fireEvent" ext:member="#fireEvent" ext:cls="Ext.util.Observable">Observable</a></td></tr><tr class="method-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-focus"></a><b><a href="source/Component.html#method-Ext.Component-focus">focus</a></b>(&nbsp;<span title="Optional" class="optional">[<code>Boolean&nbsp;selectText</code>]</span>,&nbsp;<span title="Optional" class="optional">[<code>Boolean/Number&nbsp;delay</code>]</span>&nbsp;)\r
559     :\r
560                                         Ext.Component<div class="mdesc"><div class="short">Try to focus this component.</div><div class="long">Try to focus this component.<div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>selectText</code> : Boolean<div class="sub-desc">(optional) If applicable, true to also select the text in this component</div></li><li><code>delay</code> : Boolean/Number<div class="sub-desc">(optional) Delay the focus this number of milliseconds (true for 10 milliseconds)</div></li></ul><strong>Returns:</strong><ul><li><code>Ext.Component</code><div class="sub-desc">this</div></li></ul></div></div></div></td><td class="msource"><a href="output/Ext.Component.html#focus" ext:member="#focus" ext:cls="Ext.Component">Component</a></td></tr><tr class="method-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-getBubbleTarget"></a><b><a href="source/Component.html#method-Ext.Component-getBubbleTarget">getBubbleTarget</a></b>()\r
561     :\r
562                                         Ext.Container<div class="mdesc"><div class="short">Provides the link for Observable's fireEvent method to bubble up the ownership hierarchy.</div><div class="long">Provides the link for Observable's fireEvent method to bubble up the ownership hierarchy.<div class="mdetail-params"><strong>Parameters:</strong><ul><li>None.</li></ul><strong>Returns:</strong><ul><li><code>Ext.Container</code><div class="sub-desc">the Container which owns this Component.</div></li></ul></div></div></div></td><td class="msource"><a href="output/Ext.Component.html#getBubbleTarget" ext:member="#getBubbleTarget" ext:cls="Ext.Component">Component</a></td></tr><tr class="method-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-getEl"></a><b><a href="source/Component.html#method-Ext.Component-getEl">getEl</a></b>()\r
563     :\r
564                                         Ext.Element<div class="mdesc"><div class="short">Returns the Ext.Element which encapsulates this Component.\r
565 This will usually be a &amp;lt;DIV&gt; element created by the cla...</div><div class="long"><p>Returns the <a href="output/Ext.Element.html" ext:cls="Ext.Element">Ext.Element</a> which encapsulates this Component.</p>
566 <p>This will <i>usually</i> be a &lt;DIV> element created by the class's onRender method, but
567 that may be overridden using the <a href="output/Ext.Component.html#Ext.Component-autoEl" ext:member="autoEl" ext:cls="Ext.Component">autoEl</a> config.</p>
568 <br><p><b>Note</b>: this element will not be available until this Component has been rendered.</p><br>
569 <p>To add listeners for <b>DOM events</b> to this Component (as opposed to listeners
570 for this Component's own Observable events), see the <a href="output/Ext.Component.html#Ext.Component-listeners" ext:member="listeners" ext:cls="Ext.Component">listeners</a> config for a suggestion,
571 or use a render listener directly:</p><pre><code><b>new</b> Ext.Panel({
572     title: <em>'The Clickable Panel'</em>,
573     listeners: {
574         render: <b>function</b>(p) {
575             <i>// Append the Panel to the click handler&#39;s argument list.</i>
576             p.getEl().on(<em>'click'</em>, handlePanelClick.createDelegate(null, [p], true));
577         },
578         single: true  <i>// Remove the listener after first invocation</i>
579     }
580 });</code></pre><div class="mdetail-params"><strong>Parameters:</strong><ul><li>None.</li></ul><strong>Returns:</strong><ul><li><code>Ext.Element</code><div class="sub-desc">The Element which encapsulates this Component.</div></li></ul></div></div></div></td><td class="msource"><a href="output/Ext.Component.html#getEl" ext:member="#getEl" ext:cls="Ext.Component">Component</a></td></tr><tr class="method-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-getId"></a><b><a href="source/Component.html#method-Ext.Component-getId">getId</a></b>()\r
581     :\r
582                                         String<div class="mdesc"><div class="short">Returns the id of this component or automatically generates and\r
583 returns an id if an id is not defined yet:'ext-comp-'...</div><div class="long">Returns the <code>id</code> of this component or automatically generates and
584 returns an <code>id</code> if an <code>id</code> is not defined yet:<pre><code><em>'ext-comp-'</em> + (++Ext.Component.AUTO_ID)</code></pre><div class="mdetail-params"><strong>Parameters:</strong><ul><li>None.</li></ul><strong>Returns:</strong><ul><li><code>String</code><div class="sub-desc">id</div></li></ul></div></div></div></td><td class="msource"><a href="output/Ext.Component.html#getId" ext:member="#getId" ext:cls="Ext.Component">Component</a></td></tr><tr class="method-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-getItemId"></a><b><a href="source/Component.html#method-Ext.Component-getItemId">getItemId</a></b>()\r
585     :\r
586                                         String<div class="mdesc"><div class="short">Returns the itemId of this component.  If an\r
587 itemId was not assigned through configuration the\r
588 id is returned using g...</div><div class="long">Returns the <code><a href="output/Ext.Component.html#Ext.Component-itemId" ext:member="itemId" ext:cls="Ext.Component">itemId</a></code> of this component.  If an
589 <code><a href="output/Ext.Component.html#Ext.Component-itemId" ext:member="itemId" ext:cls="Ext.Component">itemId</a></code> was not assigned through configuration the
590 <code>id</code> is returned using <code><a href="output/Ext.Component.html#Ext.Component-getId" ext:member="getId" ext:cls="Ext.Component">getId</a></code>.<div class="mdetail-params"><strong>Parameters:</strong><ul><li>None.</li></ul><strong>Returns:</strong><ul><li><code>String</code><div class="sub-desc"></div></li></ul></div></div></div></td><td class="msource"><a href="output/Ext.Component.html#getItemId" ext:member="#getItemId" ext:cls="Ext.Component">Component</a></td></tr><tr class="method-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-getXType"></a><b><a href="source/Component.html#method-Ext.Component-getXType">getXType</a></b>()\r
591     :\r
592                                         String<div class="mdesc"><div class="short">Gets the xtype for this component as registered with Ext.ComponentMgr. For a list of all\r
593 available xtypes, see the Ex...</div><div class="long">Gets the xtype for this component as registered with <a href="output/Ext.ComponentMgr.html" ext:cls="Ext.ComponentMgr">Ext.ComponentMgr</a>. For a list of all
594 available xtypes, see the <a href="output/Ext.Component.html" ext:cls="Ext.Component">Ext.Component</a> header. Example usage:
595 <pre><code><b>var</b> t = <b>new</b> Ext.form.TextField();
596 alert(t.getXType());  <i>// alerts <em>'textfield'</em></i></code></pre><div class="mdetail-params"><strong>Parameters:</strong><ul><li>None.</li></ul><strong>Returns:</strong><ul><li><code>String</code><div class="sub-desc">The xtype</div></li></ul></div></div></div></td><td class="msource"><a href="output/Ext.Component.html#getXType" ext:member="#getXType" ext:cls="Ext.Component">Component</a></td></tr><tr class="method-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-getXTypes"></a><b><a href="source/Component.html#method-Ext.Component-getXTypes">getXTypes</a></b>()\r
597     :\r
598                                         String<div class="mdesc"><div class="short">Returns this Component's xtype hierarchy as a slash-delimited string. For a list of all\r
599 available xtypes, see the Ext...</div><div class="long"><p>Returns this Component's xtype hierarchy as a slash-delimited string. For a list of all
600 available xtypes, see the <a href="output/Ext.Component.html" ext:cls="Ext.Component">Ext.Component</a> header.</p>
601 <p><b>If using your own subclasses, be aware that a Component must register its own xtype
602 to participate in determination of inherited xtypes.</b></p>
603 <p>Example usage:</p>
604 <pre><code><b>var</b> t = <b>new</b> Ext.form.TextField();
605 alert(t.getXTypes());  <i>// alerts <em>'component/box/field/textfield'</em></i></code></pre><div class="mdetail-params"><strong>Parameters:</strong><ul><li>None.</li></ul><strong>Returns:</strong><ul><li><code>String</code><div class="sub-desc">The xtype hierarchy string</div></li></ul></div></div></div></td><td class="msource"><a href="output/Ext.Component.html#getXTypes" ext:member="#getXTypes" ext:cls="Ext.Component">Component</a></td></tr><tr class="method-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.util.Observable-hasListener"></a><b><a href="source/Observable.html#method-Ext.util.Observable-hasListener">hasListener</a></b>(&nbsp;<code>String&nbsp;eventName</code>&nbsp;)\r
606     :\r
607                                         Boolean<div class="mdesc"><div class="short">Checks to see if this object has any listeners for a specified event</div><div class="long">Checks to see if this object has any listeners for a specified event<div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>eventName</code> : String<div class="sub-desc">The name of the event to check for</div></li></ul><strong>Returns:</strong><ul><li><code>Boolean</code><div class="sub-desc">True if the event is being listened for, else false</div></li></ul></div></div></div></td><td class="msource"><a href="output/Ext.util.Observable.html#hasListener" ext:member="#hasListener" ext:cls="Ext.util.Observable">Observable</a></td></tr><tr class="method-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-hide"></a><b><a href="source/Component.html#method-Ext.Component-hide">hide</a></b>()\r
608     :\r
609                                         Ext.Component<div class="mdesc"><div class="short">Hide this component.  Listen to the 'beforehide' event and return\r
610 false to cancel hiding the component.  Fires the 'h...</div><div class="long">Hide this component.  Listen to the '<a href="output/Ext.Component.html#Ext.Component-beforehide" ext:member="beforehide" ext:cls="Ext.Component">beforehide</a>' event and return
611 <tt>false</tt> to cancel hiding the component.  Fires the '<a href="output/Ext.Component.html#Ext.Component-hide" ext:member="hide" ext:cls="Ext.Component">hide</a>'
612 event after hiding the component. Note this method is called internally if
613 the component is configured to be <code><a href="output/Ext.Component.html#Ext.Component-hidden" ext:member="hidden" ext:cls="Ext.Component">hidden</a></code>.<div class="mdetail-params"><strong>Parameters:</strong><ul><li>None.</li></ul><strong>Returns:</strong><ul><li><code>Ext.Component</code><div class="sub-desc">this</div></li></ul></div></div></div></td><td class="msource"><a href="output/Ext.Component.html#hide" ext:member="#hide" ext:cls="Ext.Component">Component</a></td></tr><tr class="method-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-isVisible"></a><b><a href="source/Component.html#method-Ext.Component-isVisible">isVisible</a></b>()\r
614     :\r
615                                         Boolean<div class="mdesc"><div class="short">Returns true if this component is visible.</div><div class="long">Returns true if this component is visible.<div class="mdetail-params"><strong>Parameters:</strong><ul><li>None.</li></ul><strong>Returns:</strong><ul><li><code>Boolean</code><div class="sub-desc">True if this component is visible, false otherwise.</div></li></ul></div></div></div></td><td class="msource"><a href="output/Ext.Component.html#isVisible" ext:member="#isVisible" ext:cls="Ext.Component">Component</a></td></tr><tr class="method-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-isXType"></a><b><a href="source/Component.html#method-Ext.Component-isXType">isXType</a></b>(&nbsp;<code>String&nbsp;xtype</code>,&nbsp;<span title="Optional" class="optional">[<code>Boolean&nbsp;shallow</code>]</span>&nbsp;)\r
616     :\r
617                                         Boolean<div class="mdesc"><div class="short">Tests whether or not this Component is of a specific xtype. This can test whether this Component is descended\r
618 from th...</div><div class="long"><p>Tests whether or not this Component is of a specific xtype. This can test whether this Component is descended
619 from the xtype (default) or whether it is directly of the xtype specified (shallow = true).</p>
620 <p><b>If using your own subclasses, be aware that a Component must register its own xtype
621 to participate in determination of inherited xtypes.</b></p>
622 <p>For a list of all available xtypes, see the <a href="output/Ext.Component.html" ext:cls="Ext.Component">Ext.Component</a> header.</p>
623 <p>Example usage:</p>
624 <pre><code><b>var</b> t = <b>new</b> Ext.form.TextField();
625 <b>var</b> isText = t.isXType(<em>'textfield'</em>);        <i>// true</i>
626 <b>var</b> isBoxSubclass = t.isXType(<em>'box'</em>);       <i>// true, descended from BoxComponent</i>
627 <b>var</b> isBoxInstance = t.isXType(<em>'box'</em>, true); <i>// false, not a direct BoxComponent instance</i></code></pre><div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>xtype</code> : String<div class="sub-desc">The xtype to check for this Component</div></li><li><code>shallow</code> : Boolean<div class="sub-desc">(optional) False to check whether this Component is descended from the xtype (this is
628 the default), or true to check whether this Component is directly of the specified xtype.</div></li></ul><strong>Returns:</strong><ul><li><code>Boolean</code><div class="sub-desc">True if this component descends from the specified xtype, false otherwise.</div></li></ul></div></div></div></td><td class="msource"><a href="output/Ext.Component.html#isXType" ext:member="#isXType" ext:cls="Ext.Component">Component</a></td></tr><tr class="method-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-nextSibling"></a><b><a href="source/Component.html#method-Ext.Component-nextSibling">nextSibling</a></b>()\r
629     :\r
630                                         Ext.Component<div class="mdesc"><div class="short">Returns the next component in the owning container</div><div class="long">Returns the next component in the owning container<div class="mdetail-params"><strong>Parameters:</strong><ul><li>None.</li></ul><strong>Returns:</strong><ul><li><code>Ext.Component</code><div class="sub-desc"></div></li></ul></div></div></div></td><td class="msource"><a href="output/Ext.Component.html#nextSibling" ext:member="#nextSibling" ext:cls="Ext.Component">Component</a></td></tr><tr class="method-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.util.Observable-on"></a><b><a href="source/Observable.html#method-Ext.util.Observable-on">on</a></b>(&nbsp;<code>String&nbsp;eventName</code>,&nbsp;<code>Function&nbsp;handler</code>,&nbsp;<span title="Optional" class="optional">[<code>Object&nbsp;scope</code>]</span>,&nbsp;<span title="Optional" class="optional">[<code>Object&nbsp;options</code>]</span>&nbsp;)\r
631     :\r
632                                         void<div class="mdesc"><div class="short">Appends an event handler to this object (shorthand for addListener.)</div><div class="long">Appends an event handler to this object (shorthand for <a href="output/Ext.util.Observable.html#Ext.util.Observable-addListener" ext:member="addListener" ext:cls="Ext.util.Observable">addListener</a>.)<div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>eventName</code> : String<div class="sub-desc">The type of event to listen for</div></li><li><code>handler</code> : Function<div class="sub-desc">The method the event invokes</div></li><li><code>scope</code> : Object<div class="sub-desc">(optional) The scope (<code><b>this</b></code> reference) in which the handler function is executed.
633 <b>If omitted, defaults to the object which fired the event.</b></div></li><li><code>options</code> : Object<div class="sub-desc">(optional) An object containing handler configuration.</div></li></ul><strong>Returns:</strong><ul><li>void</li></ul></div></div></div></td><td class="msource"><a href="output/Ext.util.Observable.html#on" ext:member="#on" ext:cls="Ext.util.Observable">Observable</a></td></tr><tr class="method-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-previousSibling"></a><b><a href="source/Component.html#method-Ext.Component-previousSibling">previousSibling</a></b>()\r
634     :\r
635                                         Ext.Component<div class="mdesc"><div class="short">Returns the previous component in the owning container</div><div class="long">Returns the previous component in the owning container<div class="mdetail-params"><strong>Parameters:</strong><ul><li>None.</li></ul><strong>Returns:</strong><ul><li><code>Ext.Component</code><div class="sub-desc"></div></li></ul></div></div></div></td><td class="msource"><a href="output/Ext.Component.html#previousSibling" ext:member="#previousSibling" ext:cls="Ext.Component">Component</a></td></tr><tr class="method-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.util.Observable-purgeListeners"></a><b><a href="source/Observable.html#method-Ext.util.Observable-purgeListeners">purgeListeners</a></b>()\r
636     :\r
637                                         void<div class="mdesc"><div class="short">Removes all listeners for this object</div><div class="long">Removes all listeners for this object<div class="mdetail-params"><strong>Parameters:</strong><ul><li>None.</li></ul><strong>Returns:</strong><ul><li>void</li></ul></div></div></div></td><td class="msource"><a href="output/Ext.util.Observable.html#purgeListeners" ext:member="#purgeListeners" ext:cls="Ext.util.Observable">Observable</a></td></tr><tr class="method-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.util.Observable-relayEvents"></a><b><a href="source/Observable-more.html#method-Ext.util.Observable-relayEvents">relayEvents</a></b>(&nbsp;<code>Object&nbsp;o</code>,&nbsp;<code>Array&nbsp;events</code>&nbsp;)\r
638     :\r
639                                         void<div class="mdesc"><div class="short">Relays selected events from the specified Observable as if the events were fired by this.</div><div class="long">Relays selected events from the specified Observable as if the events were fired by <tt><b>this</b></tt>.<div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>o</code> : Object<div class="sub-desc">The Observable whose events this object is to relay.</div></li><li><code>events</code> : Array<div class="sub-desc">Array of event names to relay.</div></li></ul><strong>Returns:</strong><ul><li>void</li></ul></div></div></div></td><td class="msource"><a href="output/Ext.util.Observable.html#relayEvents" ext:member="#relayEvents" ext:cls="Ext.util.Observable">Observable</a></td></tr><tr class="method-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-removeClass"></a><b><a href="source/Component.html#method-Ext.Component-removeClass">removeClass</a></b>(&nbsp;<code>string&nbsp;cls</code>&nbsp;)\r
640     :\r
641                                         Ext.Component<div class="mdesc"><div class="short">Removes a CSS class from the component's underlying element.</div><div class="long">Removes a CSS class from the component's underlying element.<div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>cls</code> : string<div class="sub-desc">The CSS class name to remove</div></li></ul><strong>Returns:</strong><ul><li><code>Ext.Component</code><div class="sub-desc">this</div></li></ul></div></div></div></td><td class="msource"><a href="output/Ext.Component.html#removeClass" ext:member="#removeClass" ext:cls="Ext.Component">Component</a></td></tr><tr class="method-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.util.Observable-removeListener"></a><b><a href="source/Observable.html#method-Ext.util.Observable-removeListener">removeListener</a></b>(&nbsp;<code>String&nbsp;eventName</code>,&nbsp;<code>Function&nbsp;handler</code>,&nbsp;<span title="Optional" class="optional">[<code>Object&nbsp;scope</code>]</span>&nbsp;)\r
642     :\r
643                                         void<div class="mdesc"><div class="short">Removes an event handler.</div><div class="long">Removes an event handler.<div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>eventName</code> : String<div class="sub-desc">The type of event the handler was associated with.</div></li><li><code>handler</code> : Function<div class="sub-desc">The handler to remove. <b>This must be a reference to the function passed into the <a href="output/Ext.util.Observable.html#Ext.util.Observable-addListener" ext:member="addListener" ext:cls="Ext.util.Observable">addListener</a> call.</b></div></li><li><code>scope</code> : Object<div class="sub-desc">(optional) The scope originally specified for the handler.</div></li></ul><strong>Returns:</strong><ul><li>void</li></ul></div></div></div></td><td class="msource"><a href="output/Ext.util.Observable.html#removeListener" ext:member="#removeListener" ext:cls="Ext.util.Observable">Observable</a></td></tr><tr class="method-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-render"></a><b><a href="source/Component.html#method-Ext.Component-render">render</a></b>(&nbsp;<span title="Optional" class="optional">[<code>Element/HTMLElement/String&nbsp;container</code>]</span>,&nbsp;<span title="Optional" class="optional">[<code>String/Number&nbsp;position</code>]</span>&nbsp;)\r
644     :\r
645                                         void<div class="mdesc"><div class="short">Render this Component into the passed HTML element.\r
646 If you are using a Container object to house this Component, then...</div><div class="long"><p>Render this Component into the passed HTML element.</p>
647 <p><b>If you are using a <a href="output/Ext.Container.html" ext:cls="Ext.Container">Container</a> object to house this Component, then
648 do not use the render method.</b></p>
649 <p>A Container's child Components are rendered by that Container's
650 <a href="output/Ext.Container.html#Ext.Container-layout" ext:member="layout" ext:cls="Ext.Container">layout</a> manager when the Container is first rendered.</p>
651 <p>Certain layout managers allow dynamic addition of child components. Those that do
652 include <a href="output/Ext.layout.CardLayout.html" ext:cls="Ext.layout.CardLayout">Ext.layout.CardLayout</a>, <a href="output/Ext.layout.AnchorLayout.html" ext:cls="Ext.layout.AnchorLayout">Ext.layout.AnchorLayout</a>,
653 <a href="output/Ext.layout.FormLayout.html" ext:cls="Ext.layout.FormLayout">Ext.layout.FormLayout</a>, <a href="output/Ext.layout.TableLayout.html" ext:cls="Ext.layout.TableLayout">Ext.layout.TableLayout</a>.</p>
654 <p>If the Container is already rendered when a new child Component is added, you may need to call
655 the Container's <a href="output/Ext.Container.html#Ext.Container-doLayout" ext:member="doLayout" ext:cls="Ext.Container">doLayout</a> to refresh the view which causes any
656 unrendered child Components to be rendered. This is required so that you can add multiple
657 child components if needed while only refreshing the layout once.</p>
658 <p>When creating complex UIs, it is important to remember that sizing and positioning
659 of child items is the responsibility of the Container's <a href="output/Ext.Container.html#Ext.Container-layout" ext:member="layout" ext:cls="Ext.Container">layout</a> manager.
660 If you expect child items to be sized in response to user interactions, you must
661 configure the Container with a layout manager which creates and manages the type of layout you
662 have in mind.</p>
663 <p><b>Omitting the Container's <a href="output/Ext.Container.html#Ext.Container-layout" ext:member="layout" ext:cls="Ext.Container">layout</a> config means that a basic
664 layout manager is used which does nothing but render child components sequentially into the
665 Container. No sizing or positioning will be performed in this situation.</b></p><div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>container</code> : Element/HTMLElement/String<div class="sub-desc">(optional) The element this Component should be
666 rendered into. If it is being created from existing markup, this should be omitted.</div></li><li><code>position</code> : String/Number<div class="sub-desc">(optional) The element ID or DOM node index within the container <b>before</b>
667 which this component will be inserted (defaults to appending to the end of the container)</div></li></ul><strong>Returns:</strong><ul><li>void</li></ul></div></div></div></td><td class="msource"><a href="output/Ext.Component.html#render" ext:member="#render" ext:cls="Ext.Component">Component</a></td></tr><tr class="method-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.util.Observable-resumeEvents"></a><b><a href="source/Observable.html#method-Ext.util.Observable-resumeEvents">resumeEvents</a></b>()\r
668     :\r
669                                         void<div class="mdesc"><div class="short">Resume firing events. (see suspendEvents)\r
670 If events were suspended using the queueSuspended parameter, then all\r
671 event...</div><div class="long">Resume firing events. (see <a href="output/Ext.util.Observable.html#Ext.util.Observable-suspendEvents" ext:member="suspendEvents" ext:cls="Ext.util.Observable">suspendEvents</a>)
672 If events were suspended using the <tt><b>queueSuspended</b></tt> parameter, then all
673 events fired during event suspension will be sent to any listeners now.<div class="mdetail-params"><strong>Parameters:</strong><ul><li>None.</li></ul><strong>Returns:</strong><ul><li>void</li></ul></div></div></div></td><td class="msource"><a href="output/Ext.util.Observable.html#resumeEvents" ext:member="#resumeEvents" ext:cls="Ext.util.Observable">Observable</a></td></tr><tr class="method-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-setDisabled"></a><b><a href="source/Component.html#method-Ext.Component-setDisabled">setDisabled</a></b>(&nbsp;<code>Boolean&nbsp;disabled</code>&nbsp;)\r
674     :\r
675                                         Ext.Component<div class="mdesc"><div class="short">Convenience function for setting disabled/enabled by boolean.</div><div class="long">Convenience function for setting disabled/enabled by boolean.<div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>disabled</code> : Boolean<div class="sub-desc"></div></li></ul><strong>Returns:</strong><ul><li><code>Ext.Component</code><div class="sub-desc">this</div></li></ul></div></div></div></td><td class="msource"><a href="output/Ext.Component.html#setDisabled" ext:member="#setDisabled" ext:cls="Ext.Component">Component</a></td></tr><tr class="method-row expandable "><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.menu.BaseItem-setHandler"></a><b><a href="source/BaseItem.html#method-Ext.menu.BaseItem-setHandler">setHandler</a></b>(&nbsp;<code>Function&nbsp;handler</code>,&nbsp;<code>Object&nbsp;scope</code>&nbsp;)\r
676     :\r
677                                         void<div class="mdesc"><div class="short">Sets the function that will handle click events for this item (equivalent to passing in the handler\r
678 config property)....</div><div class="long">Sets the function that will handle click events for this item (equivalent to passing in the <a href="output/Ext.menu.BaseItem.html#Ext.menu.BaseItem-handler" ext:member="handler" ext:cls="Ext.menu.BaseItem">handler</a>
679 config property).  If an existing handler is already registered, it will be unregistered for you.<div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>handler</code> : Function<div class="sub-desc">The function that should be called on click</div></li><li><code>scope</code> : Object<div class="sub-desc">The scope that should be passed to the handler</div></li></ul><strong>Returns:</strong><ul><li>void</li></ul></div></div></div></td><td class="msource">BaseItem</td></tr><tr class="method-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-setVisible"></a><b><a href="source/Component.html#method-Ext.Component-setVisible">setVisible</a></b>(&nbsp;<code>Boolean&nbsp;visible</code>&nbsp;)\r
680     :\r
681                                         Ext.Component<div class="mdesc"><div class="short">Convenience function to hide or show this component by boolean.</div><div class="long">Convenience function to hide or show this component by boolean.<div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>visible</code> : Boolean<div class="sub-desc">True to show, false to hide</div></li></ul><strong>Returns:</strong><ul><li><code>Ext.Component</code><div class="sub-desc">this</div></li></ul></div></div></div></td><td class="msource"><a href="output/Ext.Component.html#setVisible" ext:member="#setVisible" ext:cls="Ext.Component">Component</a></td></tr><tr class="method-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-show"></a><b><a href="source/Component.html#method-Ext.Component-show">show</a></b>()\r
682     :\r
683                                         Ext.Component<div class="mdesc"><div class="short">Show this component.  Listen to the 'beforeshow' event and return\r
684 false to cancel showing the component.  Fires the '...</div><div class="long">Show this component.  Listen to the '<a href="output/Ext.Component.html#Ext.Component-beforeshow" ext:member="beforeshow" ext:cls="Ext.Component">beforeshow</a>' event and return
685 <tt>false</tt> to cancel showing the component.  Fires the '<a href="output/Ext.Component.html#Ext.Component-show" ext:member="show" ext:cls="Ext.Component">show</a>'
686 event after showing the component.<div class="mdetail-params"><strong>Parameters:</strong><ul><li>None.</li></ul><strong>Returns:</strong><ul><li><code>Ext.Component</code><div class="sub-desc">this</div></li></ul></div></div></div></td><td class="msource"><a href="output/Ext.Component.html#show" ext:member="#show" ext:cls="Ext.Component">Component</a></td></tr><tr class="method-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.util.Observable-suspendEvents"></a><b><a href="source/Observable.html#method-Ext.util.Observable-suspendEvents">suspendEvents</a></b>(&nbsp;<code>Boolean&nbsp;queueSuspended</code>&nbsp;)\r
687     :\r
688                                         void<div class="mdesc"><div class="short">Suspend the firing of all events. (see resumeEvents)</div><div class="long">Suspend the firing of all events. (see <a href="output/Ext.util.Observable.html#Ext.util.Observable-resumeEvents" ext:member="resumeEvents" ext:cls="Ext.util.Observable">resumeEvents</a>)<div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>queueSuspended</code> : Boolean<div class="sub-desc">Pass as true to queue up suspended events to be fired
689 after the <a href="output/Ext.util.Observable.html#Ext.util.Observable-resumeEvents" ext:member="resumeEvents" ext:cls="Ext.util.Observable">resumeEvents</a> call instead of discarding all suspended events;</div></li></ul><strong>Returns:</strong><ul><li>void</li></ul></div></div></div></td><td class="msource"><a href="output/Ext.util.Observable.html#suspendEvents" ext:member="#suspendEvents" ext:cls="Ext.util.Observable">Observable</a></td></tr><tr class="method-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.util.Observable-un"></a><b><a href="source/Observable.html#method-Ext.util.Observable-un">un</a></b>(&nbsp;<code>String&nbsp;eventName</code>,&nbsp;<code>Function&nbsp;handler</code>,&nbsp;<span title="Optional" class="optional">[<code>Object&nbsp;scope</code>]</span>&nbsp;)\r
690     :\r
691                                         void<div class="mdesc"><div class="short">Removes an event handler (shorthand for removeListener.)</div><div class="long">Removes an event handler (shorthand for <a href="output/Ext.util.Observable.html#Ext.util.Observable-removeListener" ext:member="removeListener" ext:cls="Ext.util.Observable">removeListener</a>.)<div class="mdetail-params"><strong>Parameters:</strong><ul><li><code>eventName</code> : String<div class="sub-desc">The type of event the handler was associated with.</div></li><li><code>handler</code> : Function<div class="sub-desc">The handler to remove. <b>This must be a reference to the function passed into the <a href="output/Ext.util.Observable.html#Ext.util.Observable-addListener" ext:member="addListener" ext:cls="Ext.util.Observable">addListener</a> call.</b></div></li><li><code>scope</code> : Object<div class="sub-desc">(optional) The scope originally specified for the handler.</div></li></ul><strong>Returns:</strong><ul><li>void</li></ul></div></div></div></td><td class="msource"><a href="output/Ext.util.Observable.html#un" ext:member="#un" ext:cls="Ext.util.Observable">Observable</a></td></tr></tbody></table><a id="Ext.menu.BaseItem-events"></a><h2>Public Events</h2><table cellspacing="0" class="member-table"><tbody><tr><th colspan="2" class="sig-header">Event</th><th class="msource-header">Defined By</th></tr><tr class="method-row expandable "><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.menu.BaseItem-activate"></a><b><a href="source/BaseItem.html#event-Ext.menu.BaseItem-activate">activate</a></b> :\r
692                                       (&nbsp;<code>Ext.menu.BaseItem&nbsp;this</code>&nbsp;)\r
693     <div class="mdesc"><div class="short">Fires when this item is activated</div><div class="long">Fires when this item is activated<div class="mdetail-params"><strong style="font-weight: normal;">Listeners will be called with the following arguments:</strong><ul><li><code>this</code> : Ext.menu.BaseItem<div class="sub-desc"></div></li></ul></div></div></div></td><td class="msource">BaseItem</td></tr><tr class="method-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-afterrender"></a><b><a href="source/Component.html#event-Ext.Component-afterrender">afterrender</a></b> :\r
694                                       (&nbsp;<code>Ext.Component&nbsp;this</code>&nbsp;)\r
695     <div class="mdesc"><div class="short">Fires after the component rendering is finished.\r
696 The afterrender event is fired after this Component has been rendere...</div><div class="long"><p>Fires after the component rendering is finished.</p>
697 <p>The afterrender event is fired after this Component has been <a href="output/Ext.Component.html#Ext.Component-rendered" ext:member="rendered" ext:cls="Ext.Component">rendered</a>, been postprocesed
698 by any afterRender method defined for the Component, and, if <a href="output/Ext.Component.html#Ext.Component-stateful" ext:member="stateful" ext:cls="Ext.Component">stateful</a>, after state
699 has been restored.</p><div class="mdetail-params"><strong style="font-weight: normal;">Listeners will be called with the following arguments:</strong><ul><li><code>this</code> : Ext.Component<div class="sub-desc"></div></li></ul></div></div></div></td><td class="msource"><a href="output/Ext.Component.html#afterrender" ext:member="#afterrender" ext:cls="Ext.Component">Component</a></td></tr><tr class="method-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-beforedestroy"></a><b><a href="source/Component.html#event-Ext.Component-beforedestroy">beforedestroy</a></b> :\r
700                                       (&nbsp;<code>Ext.Component&nbsp;this</code>&nbsp;)\r
701     <div class="mdesc"><div class="short">Fires before the component is destroyed. Return false from an event handler to stop the destroy.</div><div class="long">Fires before the component is <a href="output/Ext.Component.html#Ext.Component-destroy" ext:member="destroy" ext:cls="Ext.Component">destroy</a>ed. Return false from an event handler to stop the <a href="output/Ext.Component.html#Ext.Component-destroy" ext:member="destroy" ext:cls="Ext.Component">destroy</a>.<div class="mdetail-params"><strong style="font-weight: normal;">Listeners will be called with the following arguments:</strong><ul><li><code>this</code> : Ext.Component<div class="sub-desc"></div></li></ul></div></div></div></td><td class="msource"><a href="output/Ext.Component.html#beforedestroy" ext:member="#beforedestroy" ext:cls="Ext.Component">Component</a></td></tr><tr class="method-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-beforehide"></a><b><a href="source/Component.html#event-Ext.Component-beforehide">beforehide</a></b> :\r
702                                       (&nbsp;<code>Ext.Component&nbsp;this</code>&nbsp;)\r
703     <div class="mdesc"><div class="short">Fires before the component is hidden by calling the hide method.\r
704 Return false from an event handler to stop the hide.</div><div class="long">Fires before the component is hidden by calling the <a href="output/Ext.Component.html#Ext.Component-hide" ext:member="hide" ext:cls="Ext.Component">hide</a> method.
705 Return false from an event handler to stop the hide.<div class="mdetail-params"><strong style="font-weight: normal;">Listeners will be called with the following arguments:</strong><ul><li><code>this</code> : Ext.Component<div class="sub-desc"></div></li></ul></div></div></div></td><td class="msource"><a href="output/Ext.Component.html#beforehide" ext:member="#beforehide" ext:cls="Ext.Component">Component</a></td></tr><tr class="method-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-beforerender"></a><b><a href="source/Component.html#event-Ext.Component-beforerender">beforerender</a></b> :\r
706                                       (&nbsp;<code>Ext.Component&nbsp;this</code>&nbsp;)\r
707     <div class="mdesc"><div class="short">Fires before the component is rendered. Return false from an\r
708 event handler to stop the render.</div><div class="long">Fires before the component is <a href="output/Ext.Component.html#Ext.Component-rendered" ext:member="rendered" ext:cls="Ext.Component">rendered</a>. Return false from an
709 event handler to stop the <a href="output/Ext.Component.html#Ext.Component-render" ext:member="render" ext:cls="Ext.Component">render</a>.<div class="mdetail-params"><strong style="font-weight: normal;">Listeners will be called with the following arguments:</strong><ul><li><code>this</code> : Ext.Component<div class="sub-desc"></div></li></ul></div></div></div></td><td class="msource"><a href="output/Ext.Component.html#beforerender" ext:member="#beforerender" ext:cls="Ext.Component">Component</a></td></tr><tr class="method-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-beforeshow"></a><b><a href="source/Component.html#event-Ext.Component-beforeshow">beforeshow</a></b> :\r
710                                       (&nbsp;<code>Ext.Component&nbsp;this</code>&nbsp;)\r
711     <div class="mdesc"><div class="short">Fires before the component is shown by calling the show method.\r
712 Return false from an event handler to stop the show.</div><div class="long">Fires before the component is shown by calling the <a href="output/Ext.Component.html#Ext.Component-show" ext:member="show" ext:cls="Ext.Component">show</a> method.
713 Return false from an event handler to stop the show.<div class="mdetail-params"><strong style="font-weight: normal;">Listeners will be called with the following arguments:</strong><ul><li><code>this</code> : Ext.Component<div class="sub-desc"></div></li></ul></div></div></div></td><td class="msource"><a href="output/Ext.Component.html#beforeshow" ext:member="#beforeshow" ext:cls="Ext.Component">Component</a></td></tr><tr class="method-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-beforestaterestore"></a><b><a href="source/Component.html#event-Ext.Component-beforestaterestore">beforestaterestore</a></b> :\r
714                                       (&nbsp;<code>Ext.Component&nbsp;this</code>,&nbsp;<code>Object&nbsp;state</code>&nbsp;)\r
715     <div class="mdesc"><div class="short">Fires before the state of the component is restored. Return false from an event handler to stop the restore.</div><div class="long">Fires before the state of the component is restored. Return false from an event handler to stop the restore.<div class="mdetail-params"><strong style="font-weight: normal;">Listeners will be called with the following arguments:</strong><ul><li><code>this</code> : Ext.Component<div class="sub-desc"></div></li><li><code>state</code> : Object<div class="sub-desc">The hash of state values returned from the StateProvider. If this
716 event is not vetoed, then the state object is passed to <b><tt>applyState</tt></b>. By default,
717 that simply copies property values into this Component. The method maybe overriden to
718 provide custom state restoration.</div></li></ul></div></div></div></td><td class="msource"><a href="output/Ext.Component.html#beforestaterestore" ext:member="#beforestaterestore" ext:cls="Ext.Component">Component</a></td></tr><tr class="method-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-beforestatesave"></a><b><a href="source/Component.html#event-Ext.Component-beforestatesave">beforestatesave</a></b> :\r
719                                       (&nbsp;<code>Ext.Component&nbsp;this</code>,&nbsp;<code>Object&nbsp;state</code>&nbsp;)\r
720     <div class="mdesc"><div class="short">Fires before the state of the component is saved to the configured state provider. Return false to stop the save.</div><div class="long">Fires before the state of the component is saved to the configured state provider. Return false to stop the save.<div class="mdetail-params"><strong style="font-weight: normal;">Listeners will be called with the following arguments:</strong><ul><li><code>this</code> : Ext.Component<div class="sub-desc"></div></li><li><code>state</code> : Object<div class="sub-desc">The hash of state values. This is determined by calling
721 <b><tt>getState()</tt></b> on the Component. This method must be provided by the
722 developer to return whetever representation of state is required, by default, Ext.Component
723 has a null implementation.</div></li></ul></div></div></div></td><td class="msource"><a href="output/Ext.Component.html#beforestatesave" ext:member="#beforestatesave" ext:cls="Ext.Component">Component</a></td></tr><tr class="method-row expandable "><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.menu.BaseItem-click"></a><b><a href="source/BaseItem.html#event-Ext.menu.BaseItem-click">click</a></b> :\r
724                                       (&nbsp;<code>Ext.menu.BaseItem&nbsp;this</code>,&nbsp;<code>Ext.EventObject&nbsp;e</code>&nbsp;)\r
725     <div class="mdesc"><div class="short">Fires when this item is clicked</div><div class="long">Fires when this item is clicked<div class="mdetail-params"><strong style="font-weight: normal;">Listeners will be called with the following arguments:</strong><ul><li><code>this</code> : Ext.menu.BaseItem<div class="sub-desc"></div></li><li><code>e</code> : Ext.EventObject<div class="sub-desc"></div></li></ul></div></div></div></td><td class="msource">BaseItem</td></tr><tr class="method-row expandable "><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.menu.BaseItem-deactivate"></a><b><a href="source/BaseItem.html#event-Ext.menu.BaseItem-deactivate">deactivate</a></b> :\r
726                                       (&nbsp;<code>Ext.menu.BaseItem&nbsp;this</code>&nbsp;)\r
727     <div class="mdesc"><div class="short">Fires when this item is deactivated</div><div class="long">Fires when this item is deactivated<div class="mdetail-params"><strong style="font-weight: normal;">Listeners will be called with the following arguments:</strong><ul><li><code>this</code> : Ext.menu.BaseItem<div class="sub-desc"></div></li></ul></div></div></div></td><td class="msource">BaseItem</td></tr><tr class="method-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-destroy"></a><b><a href="source/Component.html#event-Ext.Component-destroy">destroy</a></b> :\r
728                                       (&nbsp;<code>Ext.Component&nbsp;this</code>&nbsp;)\r
729     <div class="mdesc"><div class="short">Fires after the component is destroyed.</div><div class="long">Fires after the component is <a href="output/Ext.Component.html#Ext.Component-destroy" ext:member="destroy" ext:cls="Ext.Component">destroy</a>ed.<div class="mdetail-params"><strong style="font-weight: normal;">Listeners will be called with the following arguments:</strong><ul><li><code>this</code> : Ext.Component<div class="sub-desc"></div></li></ul></div></div></div></td><td class="msource"><a href="output/Ext.Component.html#destroy" ext:member="#destroy" ext:cls="Ext.Component">Component</a></td></tr><tr class="method-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-disable"></a><b><a href="source/Component.html#event-Ext.Component-disable">disable</a></b> :\r
730                                       (&nbsp;<code>Ext.Component&nbsp;this</code>&nbsp;)\r
731     <div class="mdesc"><div class="short">Fires after the component is disabled.</div><div class="long">Fires after the component is disabled.<div class="mdetail-params"><strong style="font-weight: normal;">Listeners will be called with the following arguments:</strong><ul><li><code>this</code> : Ext.Component<div class="sub-desc"></div></li></ul></div></div></div></td><td class="msource"><a href="output/Ext.Component.html#disable" ext:member="#disable" ext:cls="Ext.Component">Component</a></td></tr><tr class="method-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-enable"></a><b><a href="source/Component.html#event-Ext.Component-enable">enable</a></b> :\r
732                                       (&nbsp;<code>Ext.Component&nbsp;this</code>&nbsp;)\r
733     <div class="mdesc"><div class="short">Fires after the component is enabled.</div><div class="long">Fires after the component is enabled.<div class="mdetail-params"><strong style="font-weight: normal;">Listeners will be called with the following arguments:</strong><ul><li><code>this</code> : Ext.Component<div class="sub-desc"></div></li></ul></div></div></div></td><td class="msource"><a href="output/Ext.Component.html#enable" ext:member="#enable" ext:cls="Ext.Component">Component</a></td></tr><tr class="method-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-hide"></a><b><a href="source/Component.html#event-Ext.Component-hide">hide</a></b> :\r
734                                       (&nbsp;<code>Ext.Component&nbsp;this</code>&nbsp;)\r
735     <div class="mdesc"><div class="short">Fires after the component is hidden.\r
736 Fires after the component is hidden when calling the hide method.</div><div class="long">Fires after the component is hidden.
737 Fires after the component is hidden when calling the <a href="output/Ext.Component.html#Ext.Component-hide" ext:member="hide" ext:cls="Ext.Component">hide</a> method.<div class="mdetail-params"><strong style="font-weight: normal;">Listeners will be called with the following arguments:</strong><ul><li><code>this</code> : Ext.Component<div class="sub-desc"></div></li></ul></div></div></div></td><td class="msource"><a href="output/Ext.Component.html#hide" ext:member="#hide" ext:cls="Ext.Component">Component</a></td></tr><tr class="method-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-render"></a><b><a href="source/Component.html#event-Ext.Component-render">render</a></b> :\r
738                                       (&nbsp;<code>Ext.Component&nbsp;this</code>&nbsp;)\r
739     <div class="mdesc"><div class="short">Fires after the component markup is rendered.</div><div class="long">Fires after the component markup is <a href="output/Ext.Component.html#Ext.Component-rendered" ext:member="rendered" ext:cls="Ext.Component">rendered</a>.<div class="mdetail-params"><strong style="font-weight: normal;">Listeners will be called with the following arguments:</strong><ul><li><code>this</code> : Ext.Component<div class="sub-desc"></div></li></ul></div></div></div></td><td class="msource"><a href="output/Ext.Component.html#render" ext:member="#render" ext:cls="Ext.Component">Component</a></td></tr><tr class="method-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-show"></a><b><a href="source/Component.html#event-Ext.Component-show">show</a></b> :\r
740                                       (&nbsp;<code>Ext.Component&nbsp;this</code>&nbsp;)\r
741     <div class="mdesc"><div class="short">Fires after the component is shown when calling the show method.</div><div class="long">Fires after the component is shown when calling the <a href="output/Ext.Component.html#Ext.Component-show" ext:member="show" ext:cls="Ext.Component">show</a> method.<div class="mdetail-params"><strong style="font-weight: normal;">Listeners will be called with the following arguments:</strong><ul><li><code>this</code> : Ext.Component<div class="sub-desc"></div></li></ul></div></div></div></td><td class="msource"><a href="output/Ext.Component.html#show" ext:member="#show" ext:cls="Ext.Component">Component</a></td></tr><tr class="method-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-staterestore"></a><b><a href="source/Component.html#event-Ext.Component-staterestore">staterestore</a></b> :\r
742                                       (&nbsp;<code>Ext.Component&nbsp;this</code>,&nbsp;<code>Object&nbsp;state</code>&nbsp;)\r
743     <div class="mdesc"><div class="short">Fires after the state of the component is restored.</div><div class="long">Fires after the state of the component is restored.<div class="mdetail-params"><strong style="font-weight: normal;">Listeners will be called with the following arguments:</strong><ul><li><code>this</code> : Ext.Component<div class="sub-desc"></div></li><li><code>state</code> : Object<div class="sub-desc">The hash of state values returned from the StateProvider. This is passed
744 to <b><tt>applyState</tt></b>. By default, that simply copies property values into this
745 Component. The method maybe overriden to provide custom state restoration.</div></li></ul></div></div></div></td><td class="msource"><a href="output/Ext.Component.html#staterestore" ext:member="#staterestore" ext:cls="Ext.Component">Component</a></td></tr><tr class="method-row expandable inherited"><td class="micon"><a href="#expand" class="exi">&nbsp;</a></td><td class="sig"><a id="Ext.Component-statesave"></a><b><a href="source/Component.html#event-Ext.Component-statesave">statesave</a></b> :\r
746                                       (&nbsp;<code>Ext.Component&nbsp;this</code>,&nbsp;<code>Object&nbsp;state</code>&nbsp;)\r
747     <div class="mdesc"><div class="short">Fires after the state of the component is saved to the configured state provider.</div><div class="long">Fires after the state of the component is saved to the configured state provider.<div class="mdetail-params"><strong style="font-weight: normal;">Listeners will be called with the following arguments:</strong><ul><li><code>this</code> : Ext.Component<div class="sub-desc"></div></li><li><code>state</code> : Object<div class="sub-desc">The hash of state values. This is determined by calling
748 <b><tt>getState()</tt></b> on the Component. This method must be provided by the
749 developer to return whetever representation of state is required, by default, Ext.Component
750 has a null implementation.</div></li></ul></div></div></div></td><td class="msource"><a href="output/Ext.Component.html#statesave" ext:member="#statesave" ext:cls="Ext.Component">Component</a></td></tr></tbody></table></div>