Ext


Go Back   Ext JS Forums > Ext JS Community Forums (2.0) > Ext 2.x: Help

Reply
 
Thread Tools
  #1  
Old 09-13-2007, 04:42 AM
brian.moeskau's Avatar
brian.moeskau brian.moeskau is offline
Ext JS Contributor
 
Join Date: Mar 2007
Location: Austin, Texas
Posts: 3,258
brian.moeskau is on a distinguished road
Arrow 2.0 Change Log (final)

EDIT: Updated Dec. 3 for final release.

OK folks,

Yes, we have been hard at work on 2.0 and, believe it or not, 2.0 docs. Here is your first official look at what's happening between 1.1 and 2.0, subject to change of course between now and final release. This list focuses mostly on API changes (not internal refactoring or bug fixes) and so should be pretty close to the change list for the first 2.0 alpha release when it comes out.

Please note that the 2.0 Overview and 1.x to 2.0 Migration Guide are in progress, but are not yet available and are now available . This change log is meant right now merely as a rough guide to what is changing so that those planning on using 2.0 soon can start determining the impact to any existing code.

-Brian

//=========================================
// Ext JS Release Notes
//=========================================
// Release Date: December 3, 2007
// Current Version: 2.0.0 (rev 1500)
// Previous Version: 1.1.1 (rev 876)
//=========================================

Added files
=============================================
Since most of these files represent new
classes, see the 2.0 API documentation and
Overview Guide for complete details on these.
http://extjs.com/learn/Ext_2_Overview
=============================================
src/data/
    GroupingStore - A specialized store which provides grouping of data by a field
    StoreMgr - Manages multiple stores and allows for easy retrieval of a store using the lookup method
   
src/dd/
    DragTracker - New simple drag drop implementation
  
src/locale/
    ext-lang-bg
    ext-lang-ukr
    ext-lang-sr
    ext-lang-fa
    
src/state/
    (These files are new -- split out from previous State.js -- but the classes have not changed)
    CookiProvider
    Provider
    StateManager
   
src/widgets/
    Action - Class for abstracting actions that apply to multiple components
    Container - Base class for any component that contains components
    CycleButton - SplitButton subclass that allows auto-cycling among options on click
    DataView - New enhanced View implementation (replaces View and JsonView)
    Panel - Basic application UI container
    ProgressBar - Standard progress bar component
    SplitButton - Renamed from MenuButton, no major changes (class is aliased for name compatibility)
    Viewport - Utility container representing the browser viewport
    Window - Panel subclass with window-specific functionality (floating, draggable, min/max/restore, etc.)
    WindowManager - Manages z-order and interactions among multiple windows
    
src/widgets/form/
    FieldSet (Component is not new but file is)
    Hidden - Hidden field implementation
    TimeField - Basic time picker field
    
src/widgets/grid/
    CheckboxSelectionModel - Abstracted selection model for checkboxes
    GridPanel - New version of Grid (replaces GridView2)
    GroupingView - GridPanel view for row grouping
    RowNumberer - GridPanel plugin to provide row numbering
   
src/widgets/layout/
    AbsoluteLayout - Absolute XY positioning of contained items
    AccordionLayout - Multiple stacked, collapsible panels visible one at a time
    AnchorLayout - Supports anchoring of components to container dimensions
    BorderLayout - Multiple nested regions/panels with split bar and collapse/expand support
    CardLayout - Multiple panels with only one visible at a time (for wizards, tabs, etc.)
    ColumnLayout - For column-based, variable-height content 
    ContainerLayout - Basic foundation class for all layouts
    FitLayout - Fit a single item to fill its container
    FormLayout - Utility layout specific to handling form fields
    TableLayout - Uses an HTML table to provide the layout structure
   
src/widgets/tree/
    TreeEventModel - Abstracted event model implementation for tree
   
resources/css/
    borders.css
    dialog.css
    panel.css
    progress.css
    window.css


Backwards-Compatible API Changes
=============================================
src/adapter/
    jquery-bridge
    prototype-bridge
    yui-bridge
    - Added constrainTo function

src/core/
    DomQuery
    - Added support for new "any" pseudo

    Element
    - Added getOffsetsTo function (replaces previous private method calcOffsetsTo)
    - Added getStyleSize function
    - Added getTextWidth function
    - Added hover function for automatic mouseover and mouseout handling
    - Added replaceWith function
    - Added isFlyweight property
    - Renamed getUpdateManager function to getUpdater (aliased for backwards-compatibility)

    Ext
    - Added getDoc function (shorthand for Ext.get(document))
    - Added getBody function (shorthand for Ext.get(document.body))
    - Added value function (shorthand for testing empty and applying a default to a value)
    - Added isAir property (test to check for Adobe AIR runtime environment)
    - Added isIE6 property (test to differentiate from isIE and isIE7)
    - Added removeNode (generic DOM node removal)
    - Added String.prototype.trim function to trim whitespace
    - Changed Array.prototype.remove to return a copy of the modified array (previously did not return a value)

    Template
    - Changed Template.from to accept a new config argument

    UpdateManager
    - Renamed UpdateManager class to Updater (aliased for backwards-compatibility)

src/data/
    Record
    - Changed commit and reject functions to accept a new optional "silent" argument which allows you to skip notification of the owning store of the change
    - Added getChanges function that returns all records which have been modified since last commit/reject

    SimpleStore
    - Added expandData config to support one-dimensional array data
    - Added Store.loadData override to implement expandData logic

    Store
    - Added url, autoLoad and pruneModifiedRecords configs
    - Added addSorted function
    - Added find and findBy functions
    - Added isFiltered function
    - Added destroy function
    - Added optional storeId config
    - Changed filter and query functions to accept a new optional "caseSensitive" argument

    Tree
    - Added remove function

src/util/
    Date
    - Added support for new formats:
        N (ISO-8601 day of week)
        o (ISO-8601 year number)
        P (difference to GMT with : separator)
        c (ISO-8601 date)
        U (Seconds since Unix epoch)
        u (milliseconds w/ leading zeroes)
    - Added between, getShortMonthName, getShortDayName and getMonthNumber functions

    Format
    - Added defaultValue function
    - Added fileSize format (xxx bytes, xxx KB, xxx MB)
    - Added stripScripts function

    MixedCollection
    - Changed remove, removeAt and removeKey to return the removed item or false of no item matched (previously did not return a value)
    - Changed filter function to accept new optional "anyMatch" and "caseSensitive" arguments
    - Added findIndex and findIndexBy functions

    Observable
    - Added suspendEvents and resumeEvents functions
    - Added (experimental) getMethodEvent, beforeMethod, afterMethod and removeMethodListener functions

src/widgets/
    BoxComponent
    - Added setWidth and setHeight functions

    Button
    - Changed Button class extensively to extend Ext.Component
    - Added menu support via new menu config
    - Added menu functions showMenu, hideMenu and hasVisibleMenu
    - Added events menushow, menuhide, menutriggerover and menutriggerout
    - Added toggle support via new config toggleGroup
    - Added setIconClass function

    Component
    - Added plugin support via the plugins config
    - Added autoShow config to automatically display the component after render
    - Added ctCls config to provide an optional CSS class applied to the component's container
    - Added addClass and removeClass functions
    - Added XType methods getXType, isXType, getXTypes
    - Added events beforestaterestore, staterestore, beforestatesave and statesave
    - Added getItemId method
    - Added optional delay argument to focus method

    Container
    - New functions find, findBy, findById, findByType to retrieve child components
    
    LoadMask
    - Added show and hide functions

    MenuButton
    - Renamed MenuButton class to SplitButton (aliased for backwards-compatibility)

    MessageBox
    - Added icon support via new icon config and setIcon function
    - Added icon CSS class constant properties
    - Changed getDialog to accept a new optional "titleText" argument
    - Changed wait function to accept a new optional "config" argument
    - Changed show function to accept a new optional "waitConfig" argument
    - Added Ext.MessageBox.CANCEL button config

    PagingToolbar
    - Added paramNames config to allow custom paging parameter names for the load call
    
    Toolbar
    - Changed to extend Ext.BoxComponent (previously had no base class)

src/widgets/form/
    BasicForm
    - Added getEl method to return the form element

    Combo
    - Added lazyInit config to init the combo's store on first focus

    HtmlEditor
    - Added getEditorBody function
    - Fix to allow multiple HtmlEditor components per page
    
    TextArea
    - Added configs for growAppend, growPad and enterIsSpecial

src/widgets/grid/
    ColumnModel
    - Added event configchange
    - Added setConfig function

    RowSelectionModel
    - Added hasNext and hasPrevious functions
    - Added each function

src/widgets/menu/
    BaseItem
    - Added setHandler function

    Item
    - Added setIconClass function
    
    Menu
    - Added defaults config to support default config values for each item added

    MenuMgr
    - Added getCheckedItem and setCheckedItem functions

src/widgets/tree/
    TreeEditor
    - Constructor now supports deferred rendering correctly
    - Added initEditor function to allow deferred initialization

    TreeLoader
    - Added support for url config (equivalent to existing dataUrl config)
    
    TreeNode
    - Added beginUpdate and endUpdate functions to defer UI updates
    
    TreeNodeUI
    - Added destroy function


*******************************************************
|                                                     |
|  All changes below are breaking changes!            |
|  Please see the 2.0 Migration Guide for             |
|  information about upgrading from 1.x:              |
|  http://extjs.com/learn/Ext_1_to_2_Migration_Guide  |
|                                                     |
*******************************************************

Breaking API Changes
=============================================
src/core/
    Element
    - Renamed getNextSibling function to next and added an optional selector argument
    - Renamed getPreviousSibling function to prev and added an optional selector argument

    EventManager
    - Removed previously-deprecated wrap function

src/widgets/
    MessageBox
    - Changed getDialog to return an Ext.Window instead of a BasicDialog
    - Changed progress and updateProgress argument list -- moved second arg into third position and added a new arg in second position based on the progress bar's new ability to display text inside the bar itself as the logical default.

    TabPanel
    - Changed to extend Ext.Panel instead of Observable
    - Major refactoring to support Component API and new tab strip functionality

    QuickTips
    - Changed "width" tag attribute to "qwidth" to avoid browser attribute conflicts

src/widgets/form/
    Field
    - Removed applyTo function (use base render function instead)

    Form
    - Converted Ext.form.Form to Ext.form.FormPanel (extends Panel instead of BasicForm)
    - Removed functions column, fieldset, container, start and end

    Layout
    - Replaced Ext.form.Layout with Ext.layout.FormLayout
    - Changed Fieldset to extend FormLayout instead of form.Layout

src/widgets/grid/
    EditorGrid
    - Changed EditorGrid to extend GridPanel instead of Grid (and renamed to EditorGridPanel)

    GridView
    - Major refactoring and API changes
    - Removed support for column locking for performance reasons
    - Added row grouping and summary functionality

src/widgets/tree/
    TreePanel
    - Changed TreePanel to extend Panel instead of Ext.data.Tree
    - Constructor signature changed from (el, config) to just (config) - el is no longer required under the new 2.0 component model
    - Added new events: append, remove, move, insert, beforeappend, beforeremove, beforemove and beforeinsert
    - Renamed beforeexpand event to beforeexpandnode
    - Renamed beforecollapse event to beforecollapsenode
    - Renamed expand event to expandnode
    - Renamed collapse event to collapsenode
    - Added root property (root node of the TreePanel)
    - Added getRootNode and setRootNode functions
    - Added getNodeById function


Deprecated (moved to legacy folder)
=====================================================
Most of these classes have been deprecated
because of superseding classes introduced in
2.0.  See the Migration Guide for complete details.
=====================================================
src/legacy/
    AbstractGridView
    BasicDialog
    GridView2
    JsonView
    MasterTemplate
    View
    
src/legacy/layout/
    BasicLayoutRegion
    BorderLayout
    BorderLayoutRegions
    ContentPanels
    LayoutManager
    LayoutRegion
    LayoutStateManager
    ReaderLayout
    SplitLayoutRegion
    
resources/legacy/
   basic-dialog.css
   grid.css


Deleted
=====================================================
src/state/State.js - Classes have been split out to CookieProvider.js, Provider.js and StateManager.js
src/widgets/form/Layout.js - This became the new FormLayout.js
src/widgets/grid/Grid.js - This became GridPanel.js
resources/css/xtheme-aero.css - Aero is now the default theme in Ext, so the separate CSS is not needed
resources/css/xtheme-vista.css - No longer supported
__________________
Brian Moeskau
FAQ / Tutorials / User Extensions / Enhanced Forum Search

Last edited by brian.moeskau; 12-04-2007 at 12:02 AM.. Reason: code tags and linked ext 2.0 docs
Reply With Quote
  #2  
Old 09-13-2007, 09:12 AM
bone bone is offline
Ext Premium Member
 
Join Date: Mar 2007
Posts: 92
bone is on a distinguished road
Default

__________________
Founder of the Path of Exticism
Reply With Quote
  #3  
Old 09-13-2007, 09:16 AM
trbs's Avatar
trbs trbs is offline
Ext User
 
Join Date: Mar 2007
Posts: 309
trbs is on a distinguished road
Default

great job brian thanks for the changelog!
__________________
I'm part of the Ext Community
Maintaining: Translations and some Examples
Developing on: ExtJS Python Builder / Gozerbot
Places: Ido.nl.eu.org / My ExtSamples / Trbs on Wiki / IRC
Reply With Quote
  #4  
Old 09-13-2007, 11:19 AM
jgarcia@tdg-i.com's Avatar
jgarcia@tdg-i.com jgarcia@tdg-i.com is offline
Ext User
 
Join Date: Mar 2007
Location: Frederick MD, NYC, DC
Posts: 11,448
jgarcia@tdg-i.com is on a distinguished road
Send a message via AIM to jgarcia@tdg-i.com Send a message via Skype™ to jgarcia@tdg-i.com
Default

Thanks brian!!

boy, i'm not even done w/ building my apps with ext 1.1

Any idea on how long ext 1.x will be supported?
__________________
Get 42% off by using coupon code n2442 valid until (11/24/09) -> [Book] - Ext JS In Action

My Blog || Ext JS screencasts || ext-doc || twitter

My free extensions/plugins:
Progressbar inside paging toolbar || Tab panel scroller menu || Window drawers || Icon Manager
Grid view custom 'view' filter || PanelHeaderToolbar

JavaScript Magazine August article now available.
Reply With Quote
  #5  
Old 09-13-2007, 11:28 AM
J.C. Bize's Avatar
J.C. Bize J.C. Bize is offline
Ext JS - Development Team
 
Join Date: May 2007
Location: Phoenix, AZ
Posts: 171
J.C. Bize is on a distinguished road
Default

Quote:
Originally Posted by djliquidice View Post
Any idea on how long ext 1.x will be supported?
I believe I just read yesterday (although I can no longer find the post) that they plan on supporting the last 2 major production versions simultaneously. So Ext 1.x would be supported until Ext 3.x was released.

Cheers,
JC
Reply With Quote
  #6  
Old 09-13-2007, 12:03 PM
brian.moeskau's Avatar
brian.moeskau brian.moeskau is offline
Ext JS Contributor
 
Join Date: Mar 2007
Location: Austin, Texas
Posts: 3,258
brian.moeskau is on a distinguished road
Default

JC is correct. That policy is spelled out in our support agreement terms.
__________________
Brian Moeskau
FAQ / Tutorials / User Extensions / Enhanced Forum Search
Reply With Quote
  #7  
Old 09-13-2007, 03:24 PM
thejoker101's Avatar
thejoker101 thejoker101 is offline
Ext User
 
Join Date: Mar 2007
Posts: 317
thejoker101 is on a distinguished road
Default

Out of curiosity, why are you dropping the Vista Theme?
Reply With Quote
  #8  
Old 09-13-2007, 04:19 PM
brian.moeskau's Avatar
brian.moeskau brian.moeskau is offline
Ext JS Contributor
 
Join Date: Mar 2007
Location: Austin, Texas
Posts: 3,258
brian.moeskau is on a distinguished road
Default

Themes require a lot of maintenance from release to release, so we decided to simplify the core down to 2 (the "original" Ext theme is also gone, replaced by aero as the default). Our plans are to introduce an official community themes site soon, and anyone who would like to port Vista and add 2.0 support for it would be welcome to do so.
__________________
Brian Moeskau
FAQ / Tutorials / User Extensions / Enhanced Forum Search
Reply With Quote
  #9  
Old 09-13-2007, 05:29 PM
trbs's Avatar
trbs trbs is offline
Ext User
 
Join Date: Mar 2007
Posts: 309
trbs is on a distinguished road
Default

any change for a helper tool for themes like the build-ext-yourself tool for customized ext-all.js builds ?
__________________
I'm part of the Ext Community
Maintaining: Translations and some Examples
Developing on: ExtJS Python Builder / Gozerbot
Places: Ido.nl.eu.org / My ExtSamples / Trbs on Wiki / IRC
Reply With Quote
  #10  
Old 09-13-2007, 07:03 PM
brian.moeskau's Avatar
brian.moeskau brian.moeskau is offline
Ext JS Contributor
 
Join Date: Mar 2007
Location: Austin, Texas
Posts: 3,258
brian.moeskau is on a distinguished road
Default

I assume you mean something to build a custom ext-all.css file? Nothing is planned as there's not much return on effort for that since the CSS for everything is already pretty small.
__________________
Brian Moeskau
FAQ / Tutorials / User Extensions / Enhanced Forum Search
Reply With Quote
Reply

Thread Tools

Posting Rules

Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump

All times are GMT -5. The time now is 07:06 PM.

© 2006-2009 Ext, LLC
Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2009, Jelsoft Enterprises Ltd.