Observable Component
Package: | Ext |
Defined In: | Component.js |
Class: | Component |
Subclasses: | BoxComponent, Button, ColorPalette, DatePicker, Editor, BaseItem |
Extends: | Observable |
Base class for all Ext components. All subclasses of Component can automatically participate in the standard Ext component lifecycle of creation, rendering and destruction. They also have automatic support for basic hide/show and enable/disable behavior. Component allows any subclass to be lazy-rendered into any Ext.Container and to be automatically registered with the Ext.ComponentMgr so that it can be referenced at any time via Ext.getCmp. All visual widgets that require rendering into a layout should subclass Component (or Ext.BoxComponent if managed box model handling is required).
Every component has a specific xtype, which is its Ext-specific type name, along with methods for checking the xtype like getXType and isXType. This is the list of all valid xtypes:
xtype Class ------------- ------------------ box Ext.BoxComponent button Ext.Button colorpalette Ext.ColorPalette component Ext.Component container Ext.Container cycle Ext.CycleButton dataview Ext.DataView datepicker Ext.DatePicker editor Ext.Editor editorgrid Ext.grid.EditorGridPanel grid Ext.grid.GridPanel paging Ext.PagingToolbar panel Ext.Panel progress Ext.ProgressBar propertygrid Ext.grid.PropertyGrid slider Ext.Slider splitbutton Ext.SplitButton statusbar Ext.StatusBar tabpanel Ext.TabPanel treepanel Ext.tree.TreePanel viewport Ext.Viewport window Ext.Window Toolbar components --------------------------------------- toolbar Ext.Toolbar tbbutton Ext.Toolbar.Button tbfill Ext.Toolbar.Fill tbitem Ext.Toolbar.Item tbseparator Ext.Toolbar.Separator tbspacer Ext.Toolbar.Spacer tbsplit Ext.Toolbar.SplitButton tbtext Ext.Toolbar.TextItem Form components --------------------------------------- form Ext.FormPanel checkbox Ext.form.Checkbox combo Ext.form.ComboBox datefield Ext.form.DateField field Ext.form.Field fieldset Ext.form.FieldSet hidden Ext.form.Hidden htmleditor Ext.form.HtmlEditor label Ext.form.Label numberfield Ext.form.NumberField radio Ext.form.Radio textarea Ext.form.TextArea textfield Ext.form.TextField timefield Ext.form.TimeField trigger Ext.form.TriggerField
Config Options | Defined By | |
---|---|---|
allowDomMove : Boolean
Whether the component can move the Dom node when rendering (defaults to true).
|
Component | |
applyTo : Mixed The id of the node, a DOM node or an existing Element corresponding to a DIV that is already present in the document ...
The id of the node, a DOM node or an existing Element corresponding to a DIV that is already present in the document that specifies some structural markup for this component. When applyTo is used, constituent parts of the component can also be specified by id or CSS class name within the main element, and the component being created may attempt to create its subcomponents from that markup if applicable. Using this config, a call to render() is not required. If applyTo is specified, any value passed for renderTo will be ignored and the target element's parent node will automatically be used as the component's container.
|
Component | |
autoEl : String/Object A tag name or DomHelper spec to create an element with. This is intended to create shorthand utility components inlin...
A tag name or DomHelper spec to create an element with. This is intended to create shorthand utility components inline via JSON. It should not be used for higher level components which already create their own elements. Example usage:
|
Component | |
autoShow : Boolean True if the component should check for hidden classes (e.g. 'x-hidden' or 'x-hide-display') and remove them on render...
True if the component should check for hidden classes (e.g. 'x-hidden' or 'x-hide-display') and remove them on render (defaults to false).
|
Component | |
clearCls : String The CSS class used to provide field clearing (defaults to 'x-form-clear-left'). This config is only used when this Co...
The CSS class used to provide field clearing (defaults to 'x-form-clear-left').
This config is only used when this Component is rendered by a Container which has been configured to use the FormLayout layout manager. |
Component | |
cls : String An optional extra CSS class that will be added to this component's Element (defaults to ''). This can be useful for a...
An optional extra CSS class that will be added to this component's Element (defaults to ''). This can be useful for adding customized styles to the component or any of its children using standard CSS rules.
|
Component | |
ctCls : String An optional extra CSS class that will be added to this component's container (defaults to ''). This can be useful for...
An optional extra CSS class that will be added to this component's container (defaults to ''). This can be useful for adding customized styles to the container or any of its children using standard CSS rules.
|
Component | |
disabled : Boolean
Render this component disabled (default is false).
|
Component | |
disabledClass : String
CSS class added to the component when it is disabled (defaults to "x-item-disabled").
|
Component | |
fieldLabel : String The label text to display next to this Component (defaults to '') This config is only used when this Component is ren...
The label text to display next to this Component (defaults to '')
This config is only used when this Component is rendered by a Container which has been configured to use the FormLayout layout manager. Example use: |
Component | |
Render this component hidden (default is false).
|
hidden : Boolean Component | |
hideLabel : Boolean True to completely hide the label element (defaults to false). By default, even if you do not specify a fieldLabel th...
True to completely hide the label element (defaults to false). By default, even if you do not specify a fieldLabel the space will still be reserved so that the field will line up with other fields that do have labels. Setting this to true will cause the field to not reserve that space.
This config is only used when this Component is rendered by a Container which has been configured to use the FormLayout layout manager. Example use: |
Component | |
hideMode : String How this component should be hidden. Supported values are "visibility" (css visibility), "offsets" (negative offset p...
How this component should be hidden. Supported values are "visibility" (css visibility), "offsets" (negative offset position) and "display" (css display) - defaults to "display". For Containers which may be hidden and shown as part of a card layout Container such as a TabPanel, it is recommended that hideMode is configured as "offsets". This ensures that hidden Components still have height and width so that layout managers can perform measurements when calculating layouts. |
Component | |
hideParent : Boolean True to hide and show the component's container when hide/show is called on the component, false to hide and show the...
True to hide and show the component's container when hide/show is called on the component, false to hide and show the component itself (defaults to false). For example, this can be used as a shortcut for a hide button on a window by setting hide:true on the button when adding it to its parent container.
|
Component | |
id : String The unique id of this component (defaults to an auto-assigned id). You should assign an id if you need to be able to ...
The unique id of this component (defaults to an auto-assigned id). You should assign an id if you need to be able to access the component later and you do not have an object reference available (e.g., using Ext.ComponentMgr.getCmp). Note that this id will also be used as the element id for the containing HTML element that is rendered to the page for this component. This allows you to write id-based CSS rules to style the specific instance of this component uniquely, and also to select sub-elements using this component's id as the parent.
|
Component | |
itemCls : String An additional CSS class to apply to the wrapper's form item element of this field (defaults to the container's itemCl...
An additional CSS class to apply to the wrapper's form item element of this field (defaults to the container's itemCls value if set, or ''). Since it is applied to the item wrapper, it allows you to write standard CSS rules that can apply to the field, the label (if specified) or any other element within the markup for the field.
This config is only used when this Component is rendered by a Container which has been configured to use the FormLayout layout manager. Example use: |
Component | |
labelSeparator : String The standard separator to display after the text of each form label (defaults to the value of Ext.layout.FormLayout.l...
The standard separator to display after the text of each form label (defaults to the value of Ext.layout.FormLayout.labelSeparator, which is a colon ':' by default). To display no separator for this field's label specify empty string ''.
This config is only used when this Component is rendered by a Container which has been configured to use the FormLayout layout manager. Example use: |
Component | |
labelStyle : String A CSS style specification to apply directly to this field's label (defaults to the container's labelStyle value if se...
A CSS style specification to apply directly to this field's label (defaults to the container's labelStyle value if set, or '').
. This config is only used when this Component is rendered by a Container which has been configured to use the FormLayout layout manager. Example use: |
Component | |
listeners : Object (optional) A config object containing one or more event handlers to be added to this object during initialization. Th...
(optional) A config object containing one or more event handlers to be added to this object during initialization. This should be a valid listeners config object as specified in the addListener example for attaching multiple handlers at once.
|
Observable | |
overCls : String An optional extra CSS class that will be added to this component's Element when the mouse moves over the Element, and...
An optional extra CSS class that will be added to this component's Element when the mouse moves over the Element, and removed when the mouse moves out. (defaults to ''). This can be useful for adding customized "active" or "hover" styles to the component or any of its children using standard CSS rules.
|
Component | |
plugins : Object/Array An object or array of objects that will provide custom functionality for this component. The only requirement for a v...
An object or array of objects that will provide custom functionality for this component. The only requirement for a valid plugin is that it contain an init method that accepts a reference of type Ext.Component. When a component is created, if any plugins are available, the component will call the init method on each plugin, passing a reference to itself. Each plugin can then call methods or respond to events on the component as needed to provide its functionality.
|
Component | |
renderTo : Mixed The id of the node, a DOM node or an existing Element that will be the container to render this component into. Using...
The id of the node, a DOM node or an existing Element that will be the container to render this component into. Using this config, a call to render() is not required.
|
Component | |
stateEvents : Array An array of events that, when fired, should trigger this component to save its state (defaults to none). These can be...
An array of events that, when fired, should trigger this component to save its state (defaults to none). These can be any types of events supported by this component, including browser or custom events (e.g., ['click', 'customerchange']).
See stateful for an explanation of saving and restoring Component state. |
Component | |
stateId : String The unique id for this component to use for state management purposes (defaults to the component id if one was set, o...
The unique id for this component to use for state management purposes (defaults to the component id if one was set, otherwise null if the component is using a generated id).
See stateful for an explanation of saving and restoring Component state. |
Component | |
stateful : Boolean A flag which causes the Component to attempt to restore the state of internal properties from a saved state on startu...
A flag which causes the Component to attempt to restore the state of internal properties from a saved state on startup. The component must have either a stateId or id assigned for state to be managed. Auto-generated ids are not guaranteed to be stable across page loads and cannot be relied upon to save and restore the same state for a component. For state saving to work, the state manager's provider must have been set to an implementation of Ext.state.Provider which overrides the set and get methods to save and recall name/value pairs. A built-in implementation, Ext.state.CookieProvider is available. To set the state provider for the current page: Components attempt to save state when one of the events listed in the stateEvents configuration fires. You can perform extra processing on state save and restore by attaching handlers to the beforestaterestore, staterestore, beforestatesave and statesave events |
Component | |
style : String A custom style specification to be applied to this component's Element. Should be a valid argument to Ext.Element.app...
A custom style specification to be applied to this component's Element. Should be a valid argument to Ext.Element.applyStyles.
|
Component | |
xtype : String The registered xtype to create. This config option is not used when passing a config object into a constructor. This ...
The registered xtype to create. This config option is not used when passing a config object into a constructor. This config option is used only when lazy instantiation is being used, and a child item of a Container is being specified not as a fully instantiated Component, but as a Component config object. The xtype will be looked up at render time up to determine what type of child Component to create.
The predefined xtypes are listed here. If you subclass Components to create your own Components, you may register them using Ext.ComponentMgr.registerType in order to be able to take advantage of lazy instantiation and rendering. |
Component |
Property | Defined By | |
---|---|---|
disabled : Boolean
True if this component is disabled. Read-only.
|
Component | |
True if this component is hidden. Read-only.
|
hidden : Boolean Component | |
initialConfig : Object
This Component's initial configuration specification. Read-only.
|
Component | |
ownerCt : Ext.Container The component's owner Ext.Container (defaults to undefined, and is set automatically when
the component is added to a...
The component's owner Ext.Container (defaults to undefined, and is set automatically when
the component is added to a container). Read-only.
|
Component | |
rendered : Boolean
True if this component has been rendered. Read-only.
|
Component |
Method | Defined By | |
---|---|---|
Component( Ext.Element/String/Object config )
Parameters:
|
Component | |
addClass( string cls ) : void Adds a CSS class to the component's underlying element.
Adds a CSS class to the component's underlying element.
Parameters:
|
Component | |
addEvents( Object object ) : void Used to define events on this Observable
Used to define events on this Observable
Parameters:
|
Observable | |
addListener( String eventName , Function handler , [Object scope ], [Object options ] ) : void Appends an event handler to this component
Appends an event handler to this component
Parameters:
|
Observable | |
applyToMarkup( String/HTMLElement el ) : void Apply this component to existing markup that is valid. With this function, no call to render() is required.
Apply this component to existing markup that is valid. With this function, no call to render() is required.
Parameters:
|
Component | |
cloneConfig( Object overrides ) : Ext.Component Clone the current component using the original config values passed into this instance by default.
Clone the current component using the original config values passed into this instance by default.
Parameters:
|
Component | |
destroy() : void Destroys this component by purging any event listeners, removing the component's element from the DOM,
removing the c...
Destroys this component by purging any event listeners, removing the component's element from the DOM,
removing the component from its Ext.Container (if applicable) and unregistering it from
Ext.ComponentMgr. Destruction is generally handled automatically by the framework and this method
should usually not need to be called directly.
Parameters:
|
Component | |
disable() : Ext.Component Disable this component.
Disable this component.
Parameters:
|
Component | |
enable() : Ext.Component Enable this component.
Enable this component.
Parameters:
|
Component | |
findParentBy( Function fcn , [Object scope ] ) : Ext.Container Find a container above this component at any level by a custom function. If the passed function returns
true, the con...
Find a container above this component at any level by a custom function. If the passed function returns
true, the container will be returned. The passed function is called with the arguments (container, this component).
Parameters:
|
Component | |
findParentByType( String/Class xtype ) : Ext.Container Find a container above this component at any level by xtype or class
Find a container above this component at any level by xtype or class
Parameters:
|
Component | |
fireEvent( String eventName , Object... args ) : Boolean Fires the specified event with the passed parameters (minus the event name).
Fires the specified event with the passed parameters (minus the event name).
Parameters:
|
Observable | |
focus( [Boolean selectText ], [Boolean/Number delay ] ) : Ext.Component Try to focus this component.
Try to focus this component.
Parameters:
|
Component | |
getEl() : Ext.Element Returns the underlying Ext.Element.
Returns the underlying Ext.Element.
Parameters:
|
Component | |
getId() : String Returns the id of this component.
Returns the id of this component.
Parameters:
|
Component | |
getItemId() : String Returns the item id of this component.
Returns the item id of this component.
Parameters:
|
Component | |
getXType() : String Gets the xtype for this component as registered with Ext.ComponentMgr. For a list of all
available xtypes, see the Ex...
Gets the xtype for this component as registered with Ext.ComponentMgr. For a list of all
available xtypes, see the Ext.Component header. Example usage:
Parameters:
|
Component | |
getXTypes() : String Returns this Component's xtype hierarchy as a slash-delimited string. For a list of all
available xtypes, see the Ext...
Returns this Component's xtype hierarchy as a slash-delimited string. For a list of all available xtypes, see the Ext.Component header. If using your own subclasses, be aware that a Component must register its own xtype to participate in determination of inherited xtypes. Example usage:
Parameters:
|
Component | |
hasListener( String eventName ) : Boolean Checks to see if this object has any listeners for a specified event
Checks to see if this object has any listeners for a specified event
Parameters:
|
Observable | |
hide() : Ext.Component Hide this component.
Hide this component.
Parameters:
|
Component | |
isVisible() : void Returns true if this component is visible.
Returns true if this component is visible.
Parameters:
|
Component | |
isXType( String xtype , [Boolean shallow ] ) : void Tests whether or not this Component is of a specific xtype. This can test whether this Component is descended
from th...
Tests whether or not this Component is of a specific xtype. This can test whether this Component is descended from the xtype (default) or whether it is directly of the xtype specified (shallow = true). If using your own subclasses, be aware that a Component must register its own xtype to participate in determination of inherited xtypes. For a list of all available xtypes, see the Ext.Component header. Example usage:
Parameters:
|
Component | |
on( String eventName , Function handler , [Object scope ], [Object options ] ) : void Appends an event handler to this element (shorthand for addListener)
Appends an event handler to this element (shorthand for addListener)
Parameters:
|
Observable | |
purgeListeners() : void Removes all listeners for this object
Removes all listeners for this object
Parameters:
|
Observable | |
relayEvents( Object o , Array events ) : void Relays selected events from the specified Observable as if the events were fired by this.
Relays selected events from the specified Observable as if the events were fired by this.
Parameters:
|
Observable | |
removeClass( string cls ) : void Removes a CSS class from the component's underlying element.
Removes a CSS class from the component's underlying element.
Parameters:
|
Component | |
removeListener( String eventName , Function handler , [Object scope ] ) : void Removes a listener
Removes a listener
Parameters:
|
Observable | |
render( [Element/HTMLElement/String container ], [String/Number position ] ) : void Render this Component into the passed HTML element.
If you are using a Container object to house this Component, then...
Render this Component into the passed HTML element. If you are using a Container object to house this Component, then do not use the render method. A Container's child Components are rendered by that Container's layout manager when the Container is first rendered. Certain layout managers allow dynamic addition of child components. Those that do include Ext.layout.CardLayout, Ext.layout.AnchorLayout, Ext.layout.FormLayout, Ext.layout.TableLayout. If the Container is already rendered when a new child Component is added, you may need to call the Container's doLayout to refresh the view which causes any unrendered child Components to be rendered. This is required so that you can add multiple child components if needed while only refreshing the layout once. When creating complex UIs, it is important to remember that sizing and positioning of child items is the responsibility of the Container's layout manager. If you expect child items to be sized in response to user interactions, you must configure the Container with a layout manager which creates and manages the type of layout you have in mind. Omitting the Container's layout config means that a basic layout manager is used which does nothing but render child components sequentially into the Container. No sizing or positioning will be performed in this situation.
Parameters:
|
Component | |
resumeEvents() : void Resume firing events. (see suspendEvents)
Resume firing events. (see suspendEvents)
Parameters:
|
Observable | |
setDisabled( Boolean disabled ) : void Convenience function for setting disabled/enabled by boolean.
Convenience function for setting disabled/enabled by boolean.
Parameters:
|
Component | |
setVisible( Boolean visible ) : Ext.Component Convenience function to hide or show this component by boolean.
Convenience function to hide or show this component by boolean.
Parameters:
|
Component | |
show() : Ext.Component Show this component.
Show this component.
Parameters:
|
Component | |
suspendEvents() : void Suspend the firing of all events. (see resumeEvents)
Suspend the firing of all events. (see resumeEvents)
Parameters:
|
Observable | |
un( String eventName , Function handler , [Object scope ] ) : void Removes a listener (shorthand for removeListener)
Removes a listener (shorthand for removeListener)
Parameters:
|
Observable |