Release Notes for Ext 3.0.0
Release Date: Jul 6, 2009
Current Version: 3.0.0 (rev 4747)
Previous Version: 2.2.1 (rev 3003)
Overview
Changes
- Ext.Button
- Button is now a valid BoxComponent and can partake in layout management. The markup for buttons is completely different and will require changes if you had implemented a custom theme. Rather than being limited to only positioning buttons in a buttons configuration, they can now be placed anywhere you please.
- Buttons can now scale to any height or width and have advanced text positioning.
- Ext.data.Store
- baseParams may be overwritten by params of same name passed to load()
- Ext.Element
- autoHeight() - removed
- alignTo() - "position" parameter changed
- query() - "unique" parameter added
- focus() - "defer" parameter added
- Ext.EventManager
- within() - can now also check if the passed element is the target or related target
- Ext.form
- Ext.form.TextField - The validation behavior for allowBlank has been altered, please see Ext.form.TextField for more information
- Ext.form.FormPanel buttonAlign does not override the default center for Ext.Panel ('right')
- Ext.grid
- renderer may be specified in additional ways
- Ext.layout
- Layout managers now defer layout of hidden or collapsed child Components until such time as the child Component becomes visible or expanded. This avoids size calculation problems in hidden/collapsed Containers, and removes the need to use hideMode: 'offsets' (may even require that it be removed).
- Ext.lib.Ajax
- Ajax responses. The core adapter file in the Ext.lib.Ajax class has been changed in line with the W3 XMLHttpRequest specification. The response object which emulates the XHR now has getResponseHeader and getAllResponseHeaders as functions rather than Arrays to keep inline with the real XHR object. So, anyone who was currently examining headers using an Array (as inherited from YUI via yui-ext) will need to change to use a function.
- Ext.menu
- Toolbar and Menu are now proper Containers (formerly extended from BoxComponent).
- As well as Menu being a Container, this also means Menu can be a regular Component. Menu did not extend BoxComponent before, but was out on its own. Now, it can behave either as a regular floating Menu, or, if configured floating: false, it can be used as a usual inline Component of a Container.
- DateItem and ColorItem have been removed, they are no longer needed, you can now put components as menu items.
- autoWidth() - changed to autoSize()
- MenuItem ids are no longer local to their menu but global component ids. This means that you can't use the same id in multiple menus. Suggested fix: Use unique ids or switch to using itemIds.
- Ext.MenuButton
- Ext.MenuButton is removed (use SplitButton instead)
- Ext.StatusBar
- removed from the base library and added as Ext.ux.StatusBar
- Ext.Toolbar
- Toolbar and Menu are now proper Containers (formerly extended from BoxComponent).
- Ext.Tooltip
- delegate option added so one Tooltip can handle multiple child elements of its target based on selection using the delegate config.
- Ext.util.Format
- ellipsis() - "word" parameter added
- focus() - "defer" parameter added
- Ext.ux.GMapPanel
- Ext.ux.GMapPanel xtype=gmappanel
- Ext.ux.grid
- Ext.ux.grid.CheckColumn
- Ext.ux.grid.CheckColumn ptype=checkcolumn
- Ext.ux.grid.RowEditor
- Ext.ux.grid.RowEditor ptype=roweditor
- Ext.ux.TabCloseMenu
- Ext.ux.TabCloseMenu ptype=tabclosemenu
Deprecated
- Ext.data.Reader
- id deprecated in favor of propertyId and idIndex
- Ext.data.Store
- id deprecated in favor of storeId
- loadexception event deprecated in favor of catch all exception event
- SimpleStore is now ArrayStore
- Ext.Element
- getAttributeNS() deprecated in favor of getAttribute()
- Ext.data.PagingMemoryProxy
- Ext.ux.data.PagingMemoryProxy
- Ext.form.SpinnerField (remove xtype=spinner)
- Ext.ux.form.SpinnerField xtype=spinnerfield
- Ext.grid
- Ext.grid.HybridSummary
- Ext.ux.grid.HybridSummary
- Ext.grid.RowExpander
- Ext.ux.grid.RowExpander ptype=rowexpander
- Ext.tree
- Ext.tree.ColumnTree
- Ext.ux.tree.ColumnTree xtype=columntree
- Ext.ux
- Ext.ux.FileUploadField
- Ext.ux.form.FileUploadField xtype=fileuploadfield
- Ext.ux.ItemSelector
- Ext.ux.form.ItemSelector xtype=itemselector
- Ext.ux.Multiselect
- Ext.ux.form.MultiSelect xtype=multiselect
- Ext.ux.SelectBox
- Ext.ux.form.SelectBox xtype=selectbox
- Ext.ux.XmlTreeLoader
- Ext.ux.tree.XmlTreeLoader
New
- Ext
- iterate method - iterates an array or object calling a specified function
- isNumber method - Returns true if the passed object is a number
- isString method - Returns true if the passed object is a string.
- isBoolean method - Returns true if the passed object is a boolean.
- isDefined method - Returns true if the passed object is not undefined.
- Ext.BoxComponent
- getWidth() - added
- getHeight() - added
- getOuterSize() - added
- Ext.Button
- new configs: scale, iconAlign, arrowAlign
- Ext.chart
- Chart, PieChart, CartesianChart, LineChart, BarChart - numeric, time, category axis)
- Ext.Component
- A Component's Observable events may now be set to bubble up the Component-ownerCt axis.
- afterrender event added
- ref config - establish a named reference for an object an ancestor Container (mitigate dependency on 'id' and Ext.getCmp).
- ptypes - ComponentMgr manages plugins similar to xtypes (use Ext.preg similar to Ext.reg)
- nextSibling
- previousSibling
- getDomPositionEl
- Ext.ComponentMgr
- isRegistered method added - checks if an xtype has been registered
- Ext.data.Store
- store xtypes
- autoDestroy config to destroy the store when the component the store is bound to is destroyed
- setBaseParam() - added
- Ext.Direct
- Direct, Ext.data.DirectStore, Ext.data.DirectProxy)
- Ext.Element
- mouseenter and mouseleave events added
- Ext.form
- When dynamically adding Containers anywhere in a FormPanel, any Fields are now found and added to the BasicForm's Collection. So BasicForm's setValues method will now work consistently with dynamically added Fields.
- Ext.form.DisplayField
- Ext.grid
- columnLines config (boolean) - adds class ' x-grid-with-col-lines'
- Ext.grid.Column - Instances of this class are used as columns passed to ColumnModel
- xtypes can be used to specify a preconfigured renderer
- Grid RowEditor Class
- Grid like ListView and ListView.Sorter Classes
- Grid BufferedView Class. Buffered GridView enhances performance by waiting to render rows until they are visible.
- Ext.layout
- hbox, vbox layouts
- ToolbarLayout and MenuLayout (internally used by respective classes)
- Ext.menu
- Menu Overflow. Whenever a menu gets so long that the items won't fit the viewable area, it provides the user with an easy UI to scroll the menu. This feature is turned on by default and can be disabled by the configuration option enableScrolling.
- Ext.Spacer
- xtype 'spacer' (for empty box component)
- Ext.Toolbar
- Toolbar Overflow. A menu for items that don't fit the visible toolbar area will be created by default and can be disabled with the configuration option enableOverflow. Items in the menu react with the same handlers as the toolbar items.
- Ext.Tooltip
- AnchorTips. Tooltips now support an anchor configuration which will allow you to bring attention to a particular element or component with a small callout arrow.
- Ext.util.Format
- number() - added
- numberRenderer() - added
- plural() - added
- Ext.util.Observable
- Ext.util.Observable.observeClass() - Class level observability