现在的位置: 首页 > 综合 > 正文

ExtJS 4 beta 2发布了

2012年10月11日 ⁄ 综合 ⁄ 共 19856字 ⁄ 字号 评论关闭

下载地址:http://www.sencha.com/products/extjs4-beta/download/

 

Release Notes for Ext JS 4 Beta 2

Release Notes: April 6, 2011
Version Number: 4.0.0beta2

New In This Release

  • Bug Fixes

    • Fix tabs mouseover in GroupTabPanel examples
    • Fix double rendering when quickly expanding / collapsing tree nodes
    • [EXTJSIV-466] Ensure cls config is applied to MessageBoxWindow
    • Fix issue where box layout margins could be improperly calculated
    • [EXTJSIV-470] Remove the permanent CheckHeader editor and place it only on the row editing example
    • Fix Tree keyboard navigation
    • Don't show loading indicator when trying to expand an already expanded tree node
    • [EXTJSIV-504] Fix alignment of fieldset legend checkbox
    • [EXTJSIV-502] Remove persistent scrollbar from Ext.form.Textarea and Ext.form.HtmlEditor source editor
    • [EXTJSIV-213] Fix BoxReorderer issues
    • [EXTJSIV-537] Fix an issue that allows multiple selection on the chart
    • [EXTJSIV-529] Element.highlight() fx function will now function properly, and can handle Anim callbacks
    • [EXTJSIV-539] We no longer allow the tb text field to be orderable in the multisort example
    • [EXTJSIV-540] Buttons will no longer show mouseover effects when disabled
    • [EXTJSIV-545] Fix duplicate id bug in grid -> grid DD example
    • [EXTJSIV-417] Fixed issue with field heights
    • [EXTJSIV-492] Fix application of overCls when the delegate option is used
    • [EXTJSIV-513] Ensure that mouseup when
      dragging the drag selector, and the subsequent click event does not
      clear selections in the DataView
    • [EXTJSIV-474] Fix ghosting of Windows during drag on IE < 9
    • [EXTJSIV-213] Fix multiple-sorting issue
      with BoxReorderer, ensure smooth component reordering, Improve
      reorderable-tabs examples
    • [EXTJSIV-501] Fix the ability to update floating Components while hidden, and have them run their ComponentLayout upon show
    • [EXTJSIV-530] Fixed bootstrap-release.js to test window.location.hostname instead of window.location.host
    • [EXTJSIV-540] Always attempt to remove
      the overCls when the mouse leaves the component. If a component is
      disabled while the mouse is still over it, then the overCls will be
      stuck on until the component is re-enabled
    • Grid DD Example update so columns aren't crammed together
    • [EXTJSIV-531] Fix MessageBox progress bar display
    • [EXTJSIV-434] Prevent IE6-7 from giving focus to the HtmlEditor iframe when setting its contentEditable=true
    • [EXTJSIV-464] Menu should pass its
      minWidth down to its child components so it is accounted for in the Box
      layout. This visually affects all examples that use menus which were
      only as wide as they needed to be
    • [EXTJSIV-138] Fix no borders on forum search example
    • Fixed column headers in IE
    • [EXTJSIV-561] Fix an issue when creating a tab panel with no items
    • Fix Loader's path resolution
    • [EXTJSIV-557] Locking grid resize indicator shows up regardless of which section you drag from
    • [EXTJSIV-507] Fix gecko3 issue with the first tab in a tabbar
    • [EXTJSIV-356] Prevent selection from scrolling into view when the selection model is refreshed
    • [EXTJSIV-568] RowEditor disables the view's keynav so that editors will get full default key events
    • [EXTJSIV-339] Fixed problematic curly braces in nestedIdRe in AbstractSummaryFeature
    • [EXTJSIV-375] Complete syncing of row heights, after sorting make sure that the scrollTop is synchronized
    • Correct syncRowHeight default config
    • [EXTJSIV-568] Don't allow RowEditor to hijack space
    • [EXTJSIV-409] Add extra path parameter to ensure cookie clearing works
    • [EXTJSIV-7] Fixed shift that appears in IE with large number scaling when you specify viewPort in a Draw Component
    • [EXTJSIV-558] Fixed an issue where setting a date in a model caused the record to become dirty
    • [EXTJSIV-575] Fix Uncaught TypeError: Cannot call method 'apply' of undefined, due to previous onDisable/onEnable changes
    • [EXTJSIV-449] TableView should not steal
      the focus when a header is resized. The header layouts occurred when a
      scrollbar was being added and removed by the TablePanel, causing any
      previously focused item to lose focus, with focusing going to the
      TableView. So, a "search filter text box", for example, would lose focus
      at random points
    • [EXTJSIV-167] Fix IE9 Center Layout
    • Fix Ext.form.Combobox select event firing
    • [EXTJSIV-546] Dont allow a parent folder to be dropped on a folder inside itself
    • [EXTJSIV-524] Make sure you can extend Ext.TreePanel and create an instance without passing a configuration
    • Properly relay View events on the TreePanel
    • [EXTJSIV-190] Fix Ext.ux.TabCloseMenu event monitoring
    • [EXTJSIV-535] Fix Multi sorting grid column reorder indicator
    • [EXTJSIV-537] Fix issue where FormDashboard allows multiple chart selection
    • [EXTJSIV-162] Fix TableView/Features collectData implementation
    • [EXTJSIV-544] Fix Bar display when data is of the same value for more than one record
    • [EXTJSIV-515] Clear groupers when disabling the Grouping Feature
    • [EXTJSIV-565] Fix radial axis labels problem
    • [EXTJSIV-469] Correct layout recursion back into an already-running ComponentLayout
    • [EXTJSIV-565] Fix maxValue in drawSeries
    • [EXTJSIV-590] The PagingScroller now calculates rowHeight based off of markup
    • [EXTJSIV-241] Fix bug in event wrapper ordering which meant that delayed or buffered single:true events threw errors
    • [EXTJSIV-583] Fix sorting padding issue with grid headers
    • [EXTJSIV-510] Added grid headers and special cell backgrounds
    • [EXTJSIV-597] Fix issue where Ext.tab.TabPanel wouldn't enable tabs
    • [EXTJSIV-588] Fix an issue when using scripts: true when loading a component
    • [EXTJSIV-321] Record associated data now also handles parent models
    • [EXTJSIV-566] Fix issues with returning exceptions from DirectProxy
    • [EXTJSIV-585] Fix an issue where Ext.MessgaeBox was dependent on having a title
    • [EXTJSIV-586] Fix an issue when using reset and formBind, the bound item will now be updated correctly
    • [EXTJSIV-591] Fix warning when destroying border layout
    • Fix detection of changes to form fields in IE9 standards mode by making it use the modern events set
    • Fix vertical alignment of checkbox/radio buttons in IE9 standards mode
    • Fix errors when expand/collapse methods are called after a Picker component is destroyed
    • [EXTJSIV-605] Fix an issue where undefined will be set on the editor when resetting
    • [EXTJSIV-569] Fix bug with nodes being inserted in the wrong location in the NodeStore
    • [EXTJSIV-607] Fix z-index of border floated region
    • [EXTJSIV-372] Fix an issue with flickering when using cell editing in FF on Linux
    • [EXTJSIV-608] Fix issue when creating records at a remote source
    • [EXTJSIV-450] FocusManager will only add
      tabIndex to DOM nodes that really need them for programmatic focusing.
      This will ensure default tabIndicies will remain in tact
    • [EXTJSIV-589] CellEditing now fires beforeedit, validateedit and afteredit appropriately
    • [EXTJSIV-610] CellModel will now call
      its base Model's doSelect and doDeselect functions so it is maintaining
      the selected record along with the selected position (row/column)
    • [EXTJSIV-418] CheckColumn now will handle the Enter/Space keys for toggling its select state
    • [EXTJSIV-609] CellModel fires its select/deselect events now
    • [EXTJSIV-560] Remove focused cls on items in a TableView when deselecting them
    • [EXTJSIV-614] Prevent combobox dropdown from getting closed before the selectOnTab handler has a chance to fire in WebKit
    • [EXTJSIV-622] When IE9 positions an
      element offscreen via offsets, the offsetWidth is inaccurately reported.
      For IE9 only, we render on screen before removing. Fixes an issue with
      Ext.getScrollBarWidth
    • [EXTJSIV-439] Changed images for the DataView examples to gif for IE6
    • [EXTJSIV-615] Fix an issue when using an idProperty other than "id"
    • RowEditor will handle resize, move, show, and hide of columns properly before the editor is brought up for the first time
    • [EXTJSIV-480] Table layout: added work
      around for a bug in Opera 10.5 where it makes table cells wider than
      they should be if their child element has border-box sizing and
      horizontal padding
    • [EXTJSIV-641] Fix an issue with creating items into a local storage object
    • [EXTJSIV-440][EXTJSIV-633] Fix Ext.ux.AnimatedDataView cross-browser issue
    • CellEditing will complete an edit before
      grabbing critical information about the next edit, since the view is
      refreshed upon edit completion
    • [EXTJSIV-371] CellEditing and CellModel
      will continue cell editing on tabs even across cells with no editor, and
      stop when the editing ends via a non-tab exit point such as blurring
      the field
    • [EXTJSIV-606] Constrained Windows no longer lose their center positioning
    • [EXTJSIV-508] Give a visual indication of a selected/focused tree node in the check-tree example
    • [EXTJSIV-508] Tree selection model handles enter/space to check any checkbox tree nodes
    • [EXTJSIV-663] Ensure ServerProxy checks if the value is defined as opposed to just truthy
    • [EXTJSIV-593] Numeric axis is now aware of chart substores, that way it can update when grouping/ungrouping time axis
    • [EXTJSIV-401][EXTJSIV-496] Rework
      active/inactive tab styling to be consistent across all browsers and
      avoid the floating border strip
  • Enhancements
    • [EXTJSIV-73] Optimized class system performance - round 1
    • Added a simple Gauge Chart
    • Add Ext.Array.sort which is a guaranteed stable sort
    • [EXTJSIV-556] Implement a buffered grid
      example loading thousands records and buffering the rendering. Required
      minor changes to PagingScroller, BufferStore and related classes
    • [EXTJSIV-193] Put iconCls and tools into ghosted windows
    • [EXTJSIV-471] RowEditing will now scroll
      the buttons into view when they are out of sight due to being near the
      bottom. Also will enforce row selection and keeping a row in view when
      starting an edit for smoother animations
    • [EXTJSIV-426] Remove redundant validation for allowBlank in Ext.form.Text
    • [EXTJSIV-427] Date and Time would always
      return null from getValue if the raw value could not be parsed as a
      date; this was resulting in such values being treated as valid during
      validation and not being seen as dirty. Changed so that getValue will
      return the raw value if it cannot be parsed. Also added logic to attempt
      parsing of the 'value' config during init so that originalValue is a
      valid Date object for dirty comparison
    • [EXTJSIV-448] Implement readOnly and setReadOnly for Checkbox and Radio fields
    • [EXTJSIV-416] Give fields within fieldset an anchor so they get a width in IE6
    • [EXTJSIV-530] Added port number support to localhost detection
    • Add required classes to Chart LiveUpdate example
    • Increase LiveSearchGridPanel reactiveness
    • [EXTJSIV-529] Element.getColor() will properly accept an empty string as a prefix, which is needed for color animations
    • [EXTJSIV-529] Enable afterRepair fx on dd.DragZone and TreeViewDragZone
    • [EXTJSIV-38] TreeViewDropZone will now highlight successfully dropped nodes
    • [EXTJSIV-38] Use the selectedItemCls
      setting on TableView prototype to handle the quick remove/add of that
      cls when highlighting a repair
    • [EXTJSIV-38] TreeViewDragZone will highlight all records that were dragged, for the case of multiselect tree sel model
    • [EXTJSIV-185] Removed .png slicer images + changing to gif (we <3 IE6)
    • [EXTJSIV-346] adding gif versions of icons for treegrid example
    • [EXTJSIV-475] LoadMask may now be
      configured with a Component to mask as an alternative to just an
      element. If configured with a Component, it masks the Component's
      contentTarget. If the Component changes size during loading, the mask's
      message is recentered. DataView configures its LoadMask by passing
      itself if it is standalone, or its owning Container if it is inside a
      Container
    • [EXTJSIV-478] Added the empty cls to all
      browsers, not just browsers that do not support `placeholder`. this is
      because of a styling issue in webkit
    • [EXTJSIV-540] Button over when disabled
      will not apply the hover background linear gradient anymore. disabled
      classes now get cascaded priority over background-image
    • [EXTJSIV-457] The DragZone was
      triggering a selection change on mousedown, which was resulting in
      duplicate selection calls when the DataView was configured to select on
      click. Moved the former from the mousedown handler to the start of the
      drag to avoid duplicate selection
    • Improved some Loader's alias functions for performance
    • [EXTJSIV-258][EXTJSIV-259]Refactor Shadow for floating Components
    • [EXTJSIV-551] Menu should not fire
      click, mouseover, or mouseleave events when its disabled. Menu items
      will not get any interaction when the menu is disabled
    • Menu will only activate items that can be activated, however, always deactivate the active item when applicable
    • [EXTJSIV-502] Add comment in HtmlEditor
      explaining how forcing documentMode in the Web Developer Tools will
      override the mode used by the iframe, causing scrollbars in IE8
    • [EXTJSIV-543] Horizontal scrolling does
      not rely on having records within the body of the grid. It is calculated
      off of the headercontainer instead
    • [EXTJSIV-547] Added in browser check for
      Opera for Mousewheel. Found additional information about Opera and its'
      mousewheel implementation here:

      http://www.switchonthecode.com/tutorials/javascript-tutorial-the-scroll-wheel

      To quote the important parts... "The weirdness comes in because IE and
      Firefox have very different names for the scroll event. In Internet
      Explorer, the event is called onmousewheel, while in Firefox the event
      is called DOMMouseScroll. To make it even worse, Opera uses the Internet
      Explorer event name (without the 'on' part, so just mousewheel), but
      Opera needs to use the Firefox way of attaching event listeners."

    • [EXTJSIV-564] Implement index support in selectRange rather than requiring the developer to pass a record instance
    • Updated grid row selection stuff to support IE better
    • [EXTJSIV-447] Add fieldStyle config and
      setFieldStyle method to Ext.form.BaseField, to allow direct manipulation
      of the inputEl CSS style
    • Legacy code in the widgets directory removed
    • RowEditor offsets itself by using bottom instead of top, in case of tall rows
    • [EXTJSIV-567] Table State implementation now restores width and visibility
    • [EXTJSIV-532] Add tooltip support on Radar series
    • [EXTJSIV-559][EXTJSIV-373]Provide accurate repair position for Header Drag Zones
    • [EXTJSIV-358] HeaderContainer will disable checkbox in column menu when there is only a single header
    • [EXTJSIV-582] Add Ext.Error custom error reporting class
    • [EXTJSIV-574] Add an alias for all series and handle custom series creation and adding them in an imperative way
    • [EXTJSIV-514] Reimplement rendering of
      Checkbox and Radio to use a custom image rather than native controls,
      for greater styling control and consistency across browsers
    • [EXTJSIV-241] Lots of cleanup on Component destroy method
    • [EXTJSIV-599] Make node loaded a field in NodeInterface. When appending a child to a node, mark it as loaded
    • Add the ability to pass a url to the load method on a Store with a ServerProxy defined on it
    • [EXTJSIV-394] Added itemTpl support for DataView
    • Add method to allow destroying the field layout's singleton QuickTip instance
    • [EXTJSIV-604] Allow height to be set on text fields
    • The footer toolbar's (fbar/buttons cfg) spacer shouldn't be focusable anymore
    • Button now has a visual state when
      focused, which currently mirrors the mouseover state. Also removed a
      focus/blur method in Button that was unnecessary
    • [EXTJSIV-450] FormPanel will provide
      default tab stops for its fields and buttons, so that all fields are
      tabbed through first, and then buttons second
    • [EXTJSIV-450] AbstractPanel and
      AbstractDock will return/render docked items in their visual
      representative order, respectively. Docked items have a default
      weighting, so that they are returned/rendered in (t,l,r,b) order. In the
      case of a Dock layout, the top/left items are rendered before any
      existing DOM nodes in the render target (body el, in the case of a
      Panel), and right/bottom items are rendered after the existing DOM
      nodes. This keeps our DOM nodes in order of their visual representation
      to support tab stops, ARIA readers, etc. Also,
      getDockedItems/getRefItems of AbstractPanel will return the same type of
      ordering by default to support logical ordering of ComponentQuery's and
      FocusManager navigation
    • Move FocusManager's tabIndex whitelist to the prototype so it's not defined over and over again for each call to setFocus
    • [EXTJSIV-418] Added keydown event handling to DataView
    • [EXTJSIV-600] Allow form fields to display all errors returned from getErrors at once, rather than only displaying the first
    • [EXTJSIV-304] Grid reconfigure method implemented
    • [EXTJSIV-498] Changed DataView to store
      the internal record IDs on the view DOM nodes for lookup by record and
      vice versa. This matters since blockRefresh's can happen and the store
      becomes out of sync with the DOM nodes, such as was the case with the
      Animated DataView plugin
    • [EXTJSIV-483] Implement expanded cls for
      rows inside collectData instead of getRowClass. This allows the user to
      override getRowClass without them having to worry about expanded state
    • [EXTJSIV-628] Added remove and destroy methods in Sprite.
    • [EXTJSIV-55] Add boxLabelAlign config to allow the user to place the boxLabel before or after the checkbox/radio
    • [EXTJSIV-517] Optimized buffering of requests in PagingScroller
    • [EXTJSIV-596] border:false on a Window removes borders from the body. The Window itself remains framed
    • [EXTJSIV-523] Use the verticalScrollers calculated height when available rather than the raw dom
    • [EXTJSIV-315] Updated access theme to have better styling across all components
    • [EXTJSIV-613] Move extraParams onto the object instead of being per request
    • RowEditor now transitions the error summary tip properly on back-to-back invalid records
    • Remove the inline unselectable cls, and
      instead call unselectable() on the table view's el after it's been
      rendered. This fixes a selection problem in Chrome when double clicking
      in a grid
    • [EXTJSIV-527] Add a workaround for the WebKit MarginRight bug with Anchor Layouts to make them much faster
    • [EXTJSIV-527] Componentlayout.afterLayout will now only be called when a ComponentLayout occurs
    • [EXTJSIV-527] Ensure Card.setActiveItem calls onLayout properly
    • Moved all locking behavior out of the LockingGridPanel subclass
    • [EXTJSIV-660] Add startDay to Date Field
    • [EXTJSIV-653] Added DirectStore shortcut
  • API Changes
    • [EXTJSIV-276] The "headers" config in
      GridPanel has been renamed to the 3.x compatible "columns". All
      supporting classes are now named XxxxxColumn and are in the
      Ext.grid.column package. Column xtypes are the same as they were in 3.x
    • [EXTJSIV-562] Added hideEmptyLabel
      config which automatically collapses the label space when fieldLabel is
      empty. Made this the default behavior everywhere; this is a slight
      change from the old form layout which defaulted to maintaining the space
      unless hideLabel=false
    • [EXTJSIV-59] Rename some methods in Menu to be consistent with framework standards
    • Modified field layout to avoid setting
      styles when not needed. The fieldLabel element's styles are now applied
      during render in the template and not in the layout. Fields whose size
      are not managed by a container no longer set their internal element
      sizes during layout this can result in wrapping since fields are floated
    • Add inverse iteration support to Ext.Array.each
    • Rename hlColor to repairHighlightColor for Tree DragSource
    • [EXTJSIV-38] TreeViewDDPlugin now has
      "nodeHighlightColor" which is used on repairs and drops, if applicable.
      Passing it as the "repairHighlightColor" to the drag zone in this
      commit. Will be passed to drop zone as "dropHighlightColor"
    • [EXTJSIV-38] Renamed hlDrop to
      nodeHighlightOnDrop and nodeHighlightOnRepair on the TreeViewDDPlugin
      class. They are routed to the TreeViewDragZone and TreeViewDropZone as
      repairHighlight and dropHighlight respectively
    • [EXTJSIV-552] Rename MessageBoxWindow to MessageBox
    • Move all locales package from core to extjs
    • [EXTJSIV-548] Add allowDrag config option on NodeInterface. Set it to false by default for root nodes
    • [EXTJSIV-549] Change the names for the relayed events from TreeStore to TreePanel so that they don't collide with Panel's events
    • [EXTJSIV-602] Put GridViewDDPlugin and TreeViewDDPlugin into proper namespaces (Ext.grid.plugin)
    • [EXTJSIV-269] Renamed enableCacheBuster to disableCaching, added disableCachingParam config
    • [EXTJSIV-581] Fixed up the API for
      TreeStore, TreeView and TreePanel. Also fixed some bugs related to
      changing the root node dynamically, loading data after TreePanel has
      already been created and expanding a node while its loading
    • [EXTJSIV-598] We no longer use the
      global QuickTips singleton for form error tips. We now create a QuickTip
      singleton just for the field layout, with the proper baseCls for
      framing, and register it to respond to an 'errorqtip' property
    • [EXTJSIV-534] Refactor Lockable into mixin
    • AbstractSummaryFeature, ChunkingFeature,
      GroupingFeature, RowSummaryFeature, RowBodyFeature, RowWrapFeature, and
      SummaryFeature moved to the Ext.grid.feature namespace
    • Rename locked from Header/Column to ddLock so that it doesnt conflict with the new locking functionality
  • Compatibility Changes
    • Removed compat reversing of
      El.down/El.child - There are too many places in Ext itself that use
      these calls, and reversing them in the compat layer to match 3.x
      behavior breaks some Ext 4 code. This will have to remain a documented
      breaking change in the migration guide
    • Set up compat code for TreePanel, AsyncTreeNode, TreeLoader and TreeSorter
    • Moved deprecated TreePanel members to the compat file
  • Documentation Changes
    • Guide section added to documentation. Class System and Drawing/Charting Guides added
    • File field updated
    • Model.fields updated
    • Component updated
    • FocusManager updated
    • Viewport updated
    • FormPanel updated
    • ActionHeader updated
    • GridViewDDPlugin updated
    • ColumnLayout updated
    • DateMenu updated
    • Panel updated
    • TabPanel updated
    • TreeViewDDPlugin updated
    • Animate updated
    • ClassLoader updated
    • Animator updated
    • BsicForm updated
    • Label field updated
    • Labelable updated
    • Text field updated
    • ElementLoader updated
    • Sortable updated
    • AbstractComponent updated
    • Locales updated
    • Ext.Number updated
    • Tab updated
    • TabPanel updated
    • StateProvider updated
    • Editing updated
    • Panel updated
    • CheckboxModel (selection) updated
    • TreePanel updated
    • Ext updated
    • Class updated
    • ClassManager updated
    • Array updated
    • Anim updated
    • FieldSet updated
    • Grid Column updated
    • Application updated
    • Controller updated
    • ControllerManager updated
    • ModelMgr updated
    • Router updated
    • BufferStore updated
    • JSON Writer updated
    • Charts updated
    • DrawComponent updated
    • Toolbar updated
    • DataView updated
    • Floating updated
    • Resizer updated
    • Store updated
    • ComponentDragger updated
  • Known Issues / Upcoming Changes
    • MVC Example applications and guide
    • Collapsed vertical headers need to be restyled in IE
    • Toolips in IE8 have too much padding on the header which can cause it to clip text
    • Tab Scroller is not working properly in FF < 4
    • Deprecated (methods slated for
      deprecation) and Since (what version methods were introduced)
      implemented within the documentation
    • Column Layout has some performance issues which will be addressed in the next release
    • API naming consistency implementation
    • Field Layout performance has improved, but is not where it should be for IE
    • IE9 Strict mode subpixel rounding can cause wrapping issues (similar to https://bugzilla.mozilla.org/show_bug.cgi?id=458617)

抱歉!评论已关闭.