Ext GWT Library Release Notes
General Changes & Enhancements
- Button visually shows when it has focus for both default and gray.
- Windows can be constrained to a container element when maximized.
- Windows in desktop do not cover task bar when maximized.
- Added ability for Portlets to be pinned.
- New version information part of build, see GXT.getVersion().
- New Document component which allows listening for events for the document element.
API Changes
- NumberField maxValue and minValue changed to Number, from double.
- Added getDateValue to TimeField.
- Added getDesktop() to Desktop.
- ComboBox getValue will return any set value prior when called prioer to the drop down list being initialized.
- Added add and remove window to Desktop which now must be called to add windows to the desktop. Previously, any window that was opened was added to the desktop which was problematic as not all windows should be added to the task bar.
- Added cell and row selector depth configuration to both TableView and GridView.
- Added Grid.reconfigure(ListStore store, ColumnModel cm).
- Added Tree.getAllItemCount().
- Component overrides onEnsureDebugId and calls setId.
Bug Fixes
- Exception thrown when removing item from Table.
- DataList not removing checked item from checked list when removing an item.
- Desktop incorrectly adding message boxes to task bar.
- GroupSummaryView throwing exception when grid first rendered without grouping.
- Incorrect indentation with TreeItems when joint is not visble (such as leafs).
- Grouped row incorrectly rendering with empty string being returned by renderer.
- Fx example page has layout issues and missing icon in content panel.
- Button not always clearing mouse over style (opening a modal panel).
- Window examples source code bad url.
- TreeTableView throwing NumberFormatException getCellIndex.
- NullPointer in certain cases when opening window in desktop.
- ColumnLayout treating width of 1 as 1px, not 100%.
- HttpProxy not clearing previous url paramters with multiple requests.
- Safari issue with Grid shifting up on selections.
- LabelField not overriding validate() which is throwing null pointer when called.
- DataList move selected down with multiple selections not working.
- TreeTable row and cell events not firing. rowIndex = the clicked items node depth.
- Table not clearing sorted column when rendered sorted.
- TwinTriggerField setTriggerStyle not being applied to trigger.
- Context menu hides immediately after showing with Safari and Chrome.
- Button not gaining focus when clicked.
- ToolBar not setting ToolItem toolBar member when added.
- ToolTip not hiding when source component hidden or detached.
- When opening a modal window, from code executing from a click in a parent window, the modal window is displayed behind the parent.
- Field label not being removed when removing fields in a container with a FormLayout.
- TreeTable RowDoubleClick and CellDoubleClick not firing.
- TreeTable not using renderer value for first column.
- NumberField not replacing decimal seperator before validating.
- ComboBox not showing scroll bars in IE when content exceeds drop down list.
- Fixed memory leak with Window caused by Shadow.
- Table rendering null values as "null".
General Changes & Enhancements
- Slate theme removed from Themes module
- Added HeaderContextMenu event to Table
- SimpleComboBox
- Record behavior has been updated and works slightly different than 1.0
- Added enter key support to Button
- Added spacing config to multi field
- Grays text on disabled menu items
- BeanModel now delegate equals and hashCode to their wrapped bean
- Using GWT 1.5.2
- Added FieldSet checkbox collapse
- Slate theme was donated to Ext JS and is now bundled
API Changes
- ComponentPlugin interface and component support
- Added setDirty method to Record
- WindowManager register method no longer public
- Added orientation to MultiField
- Added AUTOX and AUTOY to Sroll enumeration
- Added getDatePicker() to DateField
- Container iterator() now parameterized
- AdapterField no loger overrides isValid
- Added required functionality to RadioGroup
- Added setOffset and setTotalCount to PagingLoadResult
- Added addInputStyleName and removeInputStyleName to Field
- KeyNav default value for cancelBubble changed to false
- Added getResizable to Window
- Added ResizeListener
- Added locked functionality to AbstractSelectionModel
- AbsoluteLayout fully implemented
- AbsoluteData x and y changed to left and top
- setButtonAlign and getButtonAlign deprecated in ToolBar
- Field markInvalid marked deprecated.
- Removed MessageBox maxWidth
- Add TabItem setAutoLoad
- Add Field.setHideLabel(boolean hide)
- Added DataView setContainerTagName
- BaseModelData no longer overrides equals and hashCode
Bug Fixes
- Model element not set on Record update events
- Send to back not working
- El center not taking scroll offsets into account
- DOM event not passed in Table ColumnClick event
- TextMetrics not returning correct width
- ComboBox down key support
- Modal window opening another modal window not masking first window
- All data in ToolTipConfig not being applied to ToolTip
- Error in polish properties file
- ToolTip dismissDelay execption when set to 0
- TableView not listening for TableColumnModel HiddenChange
- ConcurrentMod exceptio when calling Store rejectChanges
- ComboBox not scrolling into view
- NumberField not accepting numeric key pad key presses
- FlowLayout clearing margins
- Emptyt text style not clearing on setValue of ComboBox
- ComboBox tab not selecting value from list in FF
- ComboBox losing focus after selecting item in list
- ListStore remove not setting index in event
- DatePicker today tooltip showing null
- TooTip exception when target component not rendered
- TextToolItem not overriding getToolTip
- Container iterator() now parameterized
- PagingToolBar exception when load event received before render
- TimeField clearing time of configured min value
- AccordionLayout active on top not working
- Window not closing on escape key
- Info bottom frame to tall in IE
- MultiField validation issues with validation child fields
- WindowManager and Window not setting active window
- Field name not being set if called pre-render
- DatePicker / DateField not clearing time for min max values
- Popup not adding itself to ignore list of base event preview
- DataListSelectionModel null pointer on click not over item
- Radio fires change event on click, not on blur
- AbsoluteLayout not setting children position: absolute
- NumberField key handling issues
- AccordionLayout bug when layout called with all collapsed panels
- MultiField not overriding reset
- Field cancelling bubbling on key events
- DatePicker startDay error
- Resizable not firing ResizeStart
- NumberField validator executing before base rules
- expand all / collapse bug in Tree
- TableHeader sort fails pre-rener
- Window not respecting setShadow(false)
- Validator not being executed with NumberField
- Escape key not closing window
- ComboBox up / down arrows not scrolling into view
- ContentPanel hideCollapseTool now working
- HttpProxy always using POST
- DataList throwing exception when clicking icon
- ModelPanel not convering entire document when document height > body height
API Changes
- RadioGroup setValue(Object) changed to setValue(Radio radio)
- RadioGroup getValue() now returns the seleced Radio
- CheckBoxGroup setValue(Object) changed to setValue(CheckBox)
- CheckBoxGroup getValue returns CheckBox, added getValues()
- TextField add getCursorPos, setCursorPos, getSelectedText, getSelectionLength, setSelectionRange
- Added setTextStyle to DataListItem
- BaseModelStringProvider made generic
Bug Fixes
- FadeOut not clearing filter style
- MessageBox.addCallback not working if called after dialog is rendered
- TreeBinder bug with expanding tree item with no loader
- DataListBinder not clearing loading mask
- TreeListBinder not clearing loading mask
- ListStore onLoad not registering new models, not removing existing items
- TreeBinder calling addStyleName rather than setTextStyle
- XmlReader not using newModelInstance() method
- Popup autoHide not working. hiding then showing not working with animate = false
- Null pointer FormPanel onRemove
- DataListBinder not using style provider
- FadeIn not setting opacity to 0 when starting effect
General Changes & Enhancements
- Added TriggerClick event to TriggerField
- CheckBox Change event fires on click, from on blur
- GWT jars no longer bundled in explorer.war and mail.war
- No longer required to "size" a table for it to render properly
- ToolTip support added to DataListItem and DataViewItem
- TreeStore, ListStore onLoadException now throw a runtime exception
- LayoutData can only be specified when adding components to LayoutContainer, not directly
API Changes
- El removed methods (use new methods on GWT Element): getElementAttribute, getIntElementAttribute, getBooleanElementAttribute
- Added clear() method to PagingToolBar
- Add getProxy() to BaseLoader
- All layout data instances extend LayoutData
- setData(Object) and getData() are deprecated, use set and get data with keys
Bug Fixes
- Sort not applied when inserting into ListStore with a sorter
- Table binder not sorting containers items when sorting
- DatePicker not selecting values
- AbstractSelectionModel bug when selecting pre-render
- MessageBox listeners throwing null pointer
- CenterLayout not centering verticall. Fix to TableLayout
- Missing cursor in FF2 windows with text fields
- Tree not rendering with expanded nodes properly
- Layer not removing shim when hiding
- Cell and row clicks not firing for table and tree table
- MessageBox not honoring modal config
- Safari layout issues, El getMargins returning junk values
- ComboBox list location invalid when body is scrolled
- TreeStore remove not removing children of removed model
- StoreBinder setSelection not working with empty list
- AbstractSelectioModel firing SelectionChange when selection not modified
- TreeBinder issue with setting leaf on TreeItem
- ToolBar and PagingToolBar height correction
- Horizontal RowLayout changed to use absolute positioning for proper margin handling
- TreeTable checkable issue, removed setCheckable, isCheckable as it is inherited from Tree
- Layer shim setting src attribute after inserted into DOM, https issue for IE
- Mixed content warning in IE https
General Changes & Enhancements
- BeforeClose event added to TabItem
- Added AdapterField
- New classes: LayoutData, FillData, FlowData
- North and South region in BorderLayout can be floated
- Added sort method to DataList
API Changes
- StateManager changed to singleton
- Registry get changed to use generics
- Popup getIgnoreList returns a CompositeElement, was a List
- SelectionChange event now always includes the selected items in the new selection field in ContainerEvent
- Added setReadOnly method to FormPanel
- Removed initialWidth and initialHeight from TextArea
Bug Fixes
- FormLayout was overriding field width when specified
- Table not rendering properly when first loaded by binder (no scroll bars)
- Text align not working in table columns
- Table vertical lines not working
- Header text does not display when collapsing north or south region in BorderLayout
- RowLayout not monitoring resize
- Menu not hiding MenuItems properly. Menu width not adjusting to changes to Menu
- LayoutContainer setting layout data after inserting component
- Missing Slate styles for DataList
- getNestedValue in BaseModelData error
- DataView not fire DataViewEvent event type
- setText and setIconStyle not working after render for DataListItem
- Rendering a ContentPanel collapsed results in the panel first being expanded
- TreeBinder onAdd null pointer for RootTreeItem
- NumberPropertyEditor not handling all number types
- Restore size in Window broken
- DateField and ComboBox allow dropdown and menu to show when read-only
- FormPanel getFields class cast exception
General Changes & Enhancements
- Generic support added to TreeModel and BaseTreeModel
- Added auto height support to TabPanel. New TabPanel "plain" style. TabItems can be disabled.
- Auto height support added to Table. No vertical scroll bar when not needed.
API Changes
- TreeBinder.removeAll removed. Use Store API
- KeyNav cancelBubble default changed from true to false
- TwinTriggerField twinTriggerStyle field changed to getters / setters
- AppEvent(int type, String token) constructor removed as ambiguous with AppEvent(int type, Data data)
- getProperties() added to ModelData
- public fields encapsulated in Draggable
- SelectionModel refactoring
- CellRenderer render method changed to "public String render(T item, String property, Object value);"
- RowLayout and FillLayout changes, see javadocs for updated
- MessageBox public fields encapsulated. Removed callback param from prompt, use addCallback
- Moved PagingToolBar messages into inner class
- New addChildren param added to 4 add and 4 insert methods in TreeStore
- Spacing config removed from FlowLayout, apply margins to components instead
- SelectionListener and SelectionChangedListener changed to abstract classes. You must pass a type when creating new instances. "new SelectionListener<ComponentEvent>"
Bug Fixes
- Null pointer in Tree.removeAll
- ContextMenu broken with Firefox / Mac
- Null pointer when remove field from FormPanel before it is rendered
- Table columns not clipping content when resizing
- Select on focus not working on ComboBox
- Tab index not working on checks and radios
- TreeTableBinder update and findItem broken
- Table setColumnContextMenu not working
- Add secure URL to shim in Layer
- Field labelStyle not working
- Collapse panel not showing heading for NORTH and SOUTH
- ContentPanel / AccordionLayout hide collapse tool not working
- StatusBar clear() not clearing content.
- RowLayout bug when having 1+ child components
- LabelField shows the the label separator
- NumberField default minValue was not negative
- Field onKeyDown not being called
- Modal panel not showing after closing and opening a window
General Changes & Enhancements
- GXT code compiled against GWT RC1
- Sorting support added to TreeStore, see javadocs for more information
- New ColumnLayout
- New CheckProvider, CheckChangedListener, CheckChangedEvent
- DataListBinder and TreeBinder now implement CheckProvider
- New CardPanel
- New TableListener and TableListenerAdapter
- ComboBox is a SelectionProvider
API Changes
- Layout layout() method changed from public to protected
- TextToolItem and ToogleToolItem now fire ToolBarEvents, rather than ButtonEvent
- getLimit() added to PagingLoader interface
- SelectionProvider addSelectionListener and removeSelectionListener renamed to addSelectionChangedListener and removeSelectionChangedListener.
- Destroy functionality removed as deemed unneccesary with GWT development
- Window close() method removed as destroying components is removed
- getSelectedRecord removed from ComboBox as getValue returns the model instance
- Validator made generic
- Item renamed to MenuItem, MenuItem renamed to Item, TextMenuItem removed (use MenuItem)
- Dialog buttonPressedAction removed and replaced with setHideOnButtonClick
- removeAll and update made protected in StoreBinder. Calls should be made on Store
- Buttons and button bar moved to new button package
- HistoryEvent removed
- FillLayout and RowLayout changes
- Default margins removed from BorderLayoutData. Default is now 0 margins
- All typed listeners are now classes, all adapters removed
- getPadding / setPadding moved from FormPanel to FormLayout
Bug Fixes
- Minimize button not added to Window
- Hide / Show Column bugs with Table
- ButtonBar alignment and remove bug
- TreeStore not working with sorter
- onModelChange implemented for TreeStore(Add, Update, Remove) and ListStore(Update)
- Class cast exception in TableHeader with TreeTable
- BeforeCheckChange and CheckChange bugs with Tree
- CheckChange not firing on DataList
- Error icon not showing after being displayed
- ComboBox not clearing selection when collapsing list
- Tab key not handled when list is open in ComboBox without a selection
- update in binders was not updating model referece store on child comonent (setData)
- BorderLayout setting container's position to absolute, should be relative if not previously marked aboslute
- Window opens to previous location and size if hidden to opened
- Hide / Show bug in Table / TreeTable in FF
- IE bug with ComboBox. Validation applied when trigger was clicked (focus / blur)
- Force selection not implemented in ComboBox
- Style provider not used in TreeBinder
- DataList moveSelectedUp and moveSelectedDown causing items to be removed
- Radio duplicating change events
General Changes & Enhancements
- All Eclipse Public License (EPL) based code removed from project, including the Viewer package. All removed functionality is still available with the updated data and store packages.
- Observable changed to interface, BaseObservable provides default implementatation. Both classes moved to event package.
- Store is abstract with ListStore and TreeStore subclasses.
- 4-way margins added to layouts.
- getHeader() added to TabPanel. ToolTips can now be set and the header can be hidden.
- Fx package refactored to use GWT 1.5 Animation class. Effects are now interface driven.
- LoadConfig marker interface removed, config can be any type.
- Added read-only behavior to RadioGroup / Radio and CheckBoxGroup / CheckBox.
- Added MultiField which RadioGroup and CheckBoxGroup now extends. MultiField has Validator support.
- Added CloseAction enum to Window, default action is CLOSE. Click close button in window header now uses close action to determine behavior.
- Added LabelField which can be used to display static text.
- All component messages moved into public inner class with getters / setters.
- BaseModelData supports nested properties with get and set.
- Form Field API now fully generic.
- NumberField allow negative and decimal seperator implemented.
- GXT.defaultTheme replaced with GXT.setDefaultTheme(Theme theme, boolean force).
Bug Fixes
- Significent changes with containers. AbststractContainer renamed to Container. Container renamed to LayoutContainer.
- Added initial width, initial height, and prevent scroll bar options to TextArea
- Fixed null pointer in BaseModel constructor using a map
- Name not being set in setName after render for Field
- Removed clear hover styles in TreeTable, clear hover style on deselect
- Fields lables removed when field removed from panel
- Error calculating height with NORTH / SOUTH percentage based sizes in BorderLayout
- Context menu now positioned absolutely
- Menu now adjusts width based on content in FF
- item field null in container remove event
- LayoutContainer remove parameter changed to widget
- Rendered TreeItems can be added to parent TreeItems
- Can't change the icon style of tab after being rendered
- Form fields not actually disabled when disable is called
- disable / enable not working on CheckBoxGroup and RadioGroup
- Initial render of error icon in was too far right in ie
- MessageBox updateText() was not updated the message
- CloseAction now used in close button in window header
- ToolTip was not sinking mouse events on target component
- cell horizontal / vertical alignment values are ignored
- HttpProxy bug when createing url paramters
- TreeItem not being added to correct container after parent is rendered
- deselectAll bug with TreeSelectionModel
General Changes
- Public fields - Public fields have been removed and replaced with getters and setters. This was the communities preference.
- SelectionModel - The selection model code was refactored for Table, Tree, and List. SelectionModel is a new interface that all selection models implement.
- SelectionService - Allows selection providers (all viewers) to register with service. Any listeners are notified of any selections by a registered provider.
- Menu - Menu and all menu items are fully implemented, including sub menu support.
- Themes - There is a new themes module that includes the Slate theme. It is only necessary to add ext-all.css to your host page html. Other stylesheets are added dynamically.
- State - Restore and save state added to component. Map support added to StateManager (serialize and deserialize a map from a cookie).
- HtmlContainer - New container that can be built from static markup, a remote url, an existing element, or element id. Child components can then be inserted into the container using CSS selectors to control the insert location (panel.add(button, "td:first-child";). This allows easy use of complex HTML layouts designed outside of GWT.
- Events - New fine-grained event hierarchy. For example: BaseEvent / DomEvent / ComponentEvent / TreeEvent. Listener interface is now generic.
Bug Fixes
- AccordionLayout typo from AccordianLayout
- TabItem content not visible after closing then re-opening a tab
- Beta 1 was complied with 1.6 bytecode
- Wrong "inherits" entry in setup.txt (com.extjs.gxt.ui.GXT)
- TableLayout verticalalign should be valign
- Tree Click events are fired twice
- NPE from Table.setSelectionModel
- Error trying to set style attribute (opacity)
- Corrupted tab scrolling/navigation in Explorer
- focus() on textfield does not work
- CenterLayout was centering content in centered component
- DatePicker Locale (constants.months changed to constants.standaloneMonths)
- DatePicker right border of selected box hidden in IE
- Fixed onBlur validation in NumberField
- Vertical lines fix in table
- Fields do not validate on blur
- DateField dropdown not updated based on text field changes
- Exception in paging table viewer
- ComboBox Store cannot be changed
- TabPanel bug when closing last open tab
- ComboBox not scrolling into view with key nav
- MultiTreeSelection throwing null pointer
- Checkable DataList not working