Uploaded image for project: 'XWiki Commons'
  1. XWiki Commons
  2. XCOMMONS-536

Upgrade to SmartGWT 4.0

    XMLWordPrintable

Details

    • N/A

    Description

      Release notes http://www.smartclient.com/smartgwt/release_notes.html#4_0 :

      Release Notes for Smart GWT 4.0
      New Features
      General
      
          Added support for SmartGWT reflection.
          Much improved and extended support for configuring AutoChildren
          Added classes LogicalDate and LogicalTime to represent SmartClient logical dates and times, respectively.
      
      SpinnerItem
      
          Added SpinnerItem.setNextValueHandler() and setPreviousValueHandler().
      
      DataBoundComponent
      
          Added support for configuring a DataBoundComponent's hiliteEditor via the AutoChild system.
          See DataBoundComponent.hiliteEditor.
          Added support for databound listGrids reselecting updated records on cache sync via listGrid.reselectOnUpdate
          Added support for a databound CubeGrid being updated from its DataSource.
          Expose new feature, UserSummary, configurable in ListGridFields.
          Exposed DBC Hiliting classes HiliteRule, HiliteEditor and AdvancedHiliteEditor for SGWT
      
      DataSource
      
          Add new feature, TextExportSettings.nullValueText to allow configurable behavior when
          a field value is null.  Default settings of "" shows empty string for null field.  If
          property is set to null, then the default value for the type is used for field value.
          Added a public method to DataSource to extract a field value from a record using name or dataPath and respecting
          any specified SimpleType method for extracting the atomic value.
          Support for specifying multipleValueSeparator string for displaying multiple field values
          New framework property datasource.allowClientAdditionalOutputs, which allows or disables additionalOutputs sent in request from the browser.
          Added includeFrom + groupFunction feature which allows to have aggregated values from related data source:
          - in an "order" DataSource with related orderItem DataSource having an FK to order (many orderItems to one order):
              <field name="total" includeFrom="orderItem.price" groupFunction="sum"/>
              <field name="lastShipDate" includeFrom="orderItem.shipDate" groupFunction="max"/>
          - supports all groupFunctions that are supported for groupBy fieldFunctions, plus:
            - "first" - selects first value
            - "concat" (SQLDataSource + Oracle only) - combines all values textually via field.joinString, so that you get a display like "Updated by: Roger Parks, Lewis French"
              <field name="updaters" includeFrom="user.fullName" groupFunction="concat" joinString=", " joinSuffix="" joinPrefix=""/>
              - default value for joinString is ", ".  It can also be set to empty String explicitly
              - default vlaue for joinPrefix/Suffix is empty string
          Fix DataSource reference not being cleaned up after addData() for clientOnly DataSources.
      
      RestDataSource
      
          support for "invalidateCache" flag for RestDataSource added
      
      ResultTree
      
          Added support for explicitly determining whether open state should be preserved when fresh data arrives within a
          databound tree via ResultTree.autoPreserveOpenState attribute
      
      RPCManager
      
          Added additional RPCManager.exportContent method overloads.
          Added the DrawPane.getDataURL() API which converts the DrawPane to a PNG image and calls the given callback with a data URI representing the PNG. In modern browsers and if using <canvas>-type drawing (the default), the data URI is generated without contacting the server.
          If a request is configured to block user interactivity a new RPCManager.promptDelay property
          controls the delay in milliseconds before a visual indication is shown to the user that
          interactivity is blocked.
          Added support for RPCManager.exportContent to accept an array of canvases.
          Added extra logging categories to the detailed timing measurements
          Added RPCManager.exportImage() for exporting SVG graphics in PNG or JPEG format.
          Added optional detailed timing data for both client- and server-side DSRequest processing to the Developer Console RPC tab
          New API RPCManager::startSQLTransaction()
      
      Drawing
      
          Added the property DrawItem.keepInParentRect to constrain a DrawItem to the
          visible area of its DrawPane.  Added DrawItem.dragResizeMove() (for SmartClient)
          and DragResizeMoveEvent and DragResizeMoveHandler (for SmartGWT) to respond to
          drags of "resize" control knobs.
      
      Date
      
          When parsing a datetime specified in a JSON string, handle an explicit timezone specification in the format "+H:MM" as well as "+HH:MM".
          Added showPickerTimeItem flag to DateItem and RelativeDateItem, allowing developers to suppress the time field from
          being displayed in the DateChooser popup for fields with data type "datetime".
          Expose Date.get/setWeekendDays()
      
      Tree
      
          Added support for "showCollapsedGroupSummary" attribute for showing group summaries even when the group is collapsed.
      
      Gauge
      
          Added new properties and setters to configure a Gauge's border, and set the list of GaugeSectors.
      
      AutoTest
      
          Add new 'Getting Starting FAQ' section to deal with common issues with using the new TestRunner API/Feature.
          Improve AutoTest.isGridDone() to detect more cases of pending loads,
          such as from ListGrid.scrollToRow() for unloaded rows.
      
      Add getElements() method to AutoTest. Improve logic in getElement() to allow ListGrid rows to be returned.
      Button SectionStack StatefulCanvas
      
          Added support for title clipping to Button, SectionHeader and ImgSectionHeader in the presence of section controls. Enabled by default, if the title is too long to fit in the SectionHeader, the title is clipped by an ellipsis.
              If showClippedTitleOnHover is true (the default), then a hover is shown when the user holds the mouse pointer over the component and the title is clipped.
      
      Calendar
      
          Calendar.getDateLabelText is now a valid override point, allowing customization of the date label text
          Added i18n attributes for eventStartDate/EndDate/Description/LaneFieldTitle
          Prevent timeline events from being dragged beyond the end of the timeline;  have the drag target and event overlapping cater for timelineEventPadding; added support for creating events by clicking in the timeline, and for backgroundMouseDown and backgroundClick
          Exposed timelineEventMoved and timelineEventResized and redoc'd eventSnapGap to cover Timelines
          Added calendar.scrollToTime()
          Added Timeline support for HeaderLevel.headerWidth (innermost level only) and Lane.height
          Added support for customizable, date-specific workday hours
          Added Calendar.columnsPerPage, which dictates the number of columns by which a Timeline will scroll when using the next and previous buttons
      
      CubeGrid
      
          Allow creation of custom method for CubeGrid.makeChart().
      
      DateChooser
      
          Added an 'Apply' button to DateChoosers that allow editing of the time portion and fixed so that am/pm based TimeItems show hours 1-12, rather than 0-11
      
      FacetChart
      
          Added support for labelling the x-axis of a "Scatter" FacetChart by setting the
          title property of the metric facet value of the x-axis.  The label properties
          are specified using FacetChart.dataAxisLabelProperties.
          Deprecated FacetChart.autoRotateLabels in favor of a new property rotateLabels,
          which offers the option to always, never, or automatically rotate the X-axis
          labels by 90 degrees.
          Added x- and y-axis-specific value formatters to FacetChart.
          Documented PrintProperties.printForExport and added information about using printForExport when preparing DrawPanes and FacetCharts for export.
      
      FieldPicker
      
          Up/Down buttons added to move visible fields in FieldPicker.
      
      ListGrid
      
          Add capability to pass String field name to DBC.getFormulaFieldValue()
          and DBC.getSummaryFieldValue() rather than the actual ListGridField.
          Access to the GridSummary and GroupSummary functionality on the ListGridField has been exposed through SmartGWT.
          Added new API headerSpan.setHeaderButtonProperties(), and modified signature of listGridField.setHeaderButtonProperties() in order to support customization of header buttons for fields / header spans even when the button constructor is
          not a subclass of Button.
          Added support for ListGrid.booleanBaseStyle, which can be used to apply a CSS
            style to checkbox icons displayed for "boolean" fields and the checkbox selection
            field.
          - Extended ListGrid.booleanTrueImage, ListGrid.booleanFalseImage, and
            ListGrid.booleanPartialImage to support the special value "blank", which means
            that no image is shown.
          Added ListGrid.showClippedHeaderTitlesOnHover to control whether to show a hover if a field title is clipped, and added ListGrid.headerHoverHTML() to customize the HTML displayed in such a hover.
          Added support for groupStateChanged notification on ListGrids
          New ListGrid API "getDefaultFormattedFieldValue()"
          Added support for ListGrid.applyFormulaAfterSummary for determining how userFormula field values are calculated
          in summary rows
          Added support for additional escapeKeyEditAction - we now support cancelling the edit, exiting the editor and
          leaving edit values intact, or quitting the editor and saving the edits on escape keypress.
          Added listGrid.isGroupNode() for determining whether a record is a group header node in a grouped listGrid
          Added support for record property excluding a record from UI removal.
          New APIs to simplify customizing header button appearance:
              ListGrid.setFieldHeaderBaseStyle()
              ListGrid.setFieldHeaderTitleStyle()
              ListGrid.setFieldButtonProperties()
              ListGrid.setHeaderSpanButtonProperties() 
          Added support for custom baseStyle / titleStyle for individual headerSpans via HeaderSpan.headerBaseStyle and HeaderSpan.headerTitleStyle
          Added showClippedValuesOnHover, cellValueHover(), and cellValueHoverHTML() to ListGrid
          to control displaying a hover for a cell whose value is clipped. Also added a utility
          method, ListGrid.cellValueIsClipped(), to determine whether a cell value is clipped.
      
      ListGrid TreeGrid
      
          Added ListGrid support for canDropBelowRecords - set to false to prevent drops in the empty area of a grid's body
          * Fixed ListGrid support for showDropLines: false
          * Fixes to canDragRecordsOut and canAcceptDroppedRecords implementations for TreeGrid
      
      ScreenReader
      
          Enhanced screenreader support: Added support for setting ariaRole for formItems and setting arbitrary ariaState
          attributes for both Canvases and FormItems
      
      Scrollbar
      
          added Scrollbar.showTrackButtons to control visibility of the buttons above/left and below/right of a scrollbar track
      
      TabSet
      
          Added two methods to TabSet, setCanCloseTab() for changing a Tab's canClose property
          and setCanCloseTabs() for changing the TabSet's canCloseTabs property.
          Added support for drag reorder of Tabset tabs.
          added TabSet.defaultTabHeight as corollary to defaultTabHeight and improved docs
          Notification for tab reordering event: tabsReordered()
      
      TreeGrid
      
          Added support for attributes openerIconWidth and openerIconHeight to TreeGrid. This
          enables opener icons (typically a [+] or [-] symbol) to be non-square.
      
      TreeMenuButton
      
          added TreeMenuButton (for localization only)
      
      TreeMenuButton Menu
      
          Added PickTreeItem.dataProperties (Tree : null : IR)
            For a PickTreeItem that uses a DataSource, these properties will be passed to
            the automatically-created ResultTree.  This can be used for various customizations such as
            modifying the automatically-chosen tree.parentIdField.
      
      BlurbItem DynamicForm FormItem StaticTextItem TextAreaItem
      
          Implemented support for clipping values of FormItems and displaying a hover containing
          the full value if the value is clipped. See FormItem.clipValue, FormItem.valueHover(),
          and FormItem.valueHoverHTML() for more information.
      
      BlurbItem HeaderItem StaticTextItem
      
          Added support for setting "canSelectText" on StaticTextItems, BlurbItems and HeaderItems
      
      ComboBoxItem FormItem TextAreaItem TextItem
      
          New attribute for TextItem and TextAreaItem: formatOnBlur - if set to true, static formatters will be applied while
          the item does not have focus (and cleared when the item receives focus)
      
      ComboBoxItem PickList
      
          Added ComboBoxItem feature to only perform search once a minimum number of characters
          have been entered.
      
      ComboBoxItem PickList SelectItem
      
          Added support for explicit "useClientFiltering" attribute for databound SelectItems and ComboBoxItems. Also cleaned up some documentation in this area.
      
      FileItem FormItem UploadItem
      
          Added support for the HTML accept attribute as file/uploadItem.accept - a comma-separated list of valid MIME types that are applied as available filters in the file picker window
      
      FormItem
      
          - Added support for FormItemIcon.baseStyle to apply a CSS style to the icon, and
            which is suffixed according to the state.
          - Added support for setting FormItemIcon.src to "blank", which means that no image
            is shown for the icon.
          Exposed formItem.iconHSpace and formItemIcon.hspace attributes to customize horizontal spacing of FormItem icons.
          Added setAutoChildProperties() for FormItem and Canvas, and well as getters to return the autochild for a FormItem or Canvas.
          Added changeAutoChildDefaults() for FormItem and Canvas as well as Canvas.setAutoChildConstructor().
      
      FormItem TextItem
      
          Added support for controlling the native HTML "autocorrect" and "autocapitalize" attributes on TextItems via browserAutoCorrect and browserAutoCapitalize
      
      SelectItem PickList
      
          Added support for arrow key navigation in dataBound SelectItems even before all options are cached.
      
      Validators
      
          Add the ability to specify "criteriaFields" on the isUnique validator, to reduce the scope of the uniqueness check
      
      PdfExport.java ResourceLoader.java
      
          PDF Export: added support for automatically downloading and using custom fonts specified in CSS.
          This new feature allows the users to declare new font files within a CSS file, which is loaded by the PDF export.
          The following extensions are supported: .otf, .ttf and .ttc.
          If a font resource is detected, the procces will attempt to look for the font within the fonts directory by default. The fonts directory must be located at the same level as of the .CSS file loaded. If there is no a fonts directory, the font files must be located where the .CSS file is.
      
      DSRequest.java
      
          Added related updates functionality for JPA and Hibernate data sources.
      
      ISCMessage.java MessagingConnectionHandler.java MessagingServlet.java
      
          Added server-side support for the use of Server-Sent Events with the Real-Time Messaging module.
      
      SQLDriver.java
      
          Introduce new server.properties attribute, defaultTimeFormat, to control the format of the string we use when generating SQL to update "time" fields.  Operates in exactly the same fashion as the existing defaultDateFormat and defaultDateTimeFormat properties.  Note, if defaultTimeFormat is not set, we fall back to the defaultDateTimeFormat, because this is what was being used before the introduction of this new property.
      
      SQLTableCreator.java
      
          Fields defined as type="clob" in DataSource definitions will now generate a clob field in the DB when used with the sql generator regardless of the field.length setting.
          Previously a field had to have a length > 4000 to auto-generate a clob.
      
      SQLTransform.java
      
          Added support to handle epoch values.The epoch values must be handled in a different way, because an epoch value can't be parsed
          as a SimpleDateFormat string directly. Users must set sqlDateFormat="epoch" or sqlDateFormat="epochms"
          and sqlStorageStrategy="number" to their fields which will handle epoch values.
      
      BuiltinRPC.java DataSourceTools.java
      
          Hibernate data source generation now uses Hibernate configuration internals to acquire complete mapping information.
      
      Bug Fixes / Other Changes
      BmmlImporter
      
          Fixed a bug in BMML Importer where a different BMML file from the local disk could not be imported after importing a BMML file from the local disk.
          Fixed the "The file is not in BMML format." warning when attempting to import a file from the local disk in BMML Importer.
      
      DataBoundComponent
      
          Fixed an issue where calling "getRecordList()" on a DynamicForm would return a broken RecordList object
          Fixed issue where a dropped record on a grouped grid did not receive the correct criteria.
          Fixed an issue whereby if a formula field depended on another formula field, an error would occur if the
          first field was hidden
          Fixed the issue that the titles of a DataBoundComponent's fields were not overriding
          the data source's field titles when using the DataBoundComponent.exportData() API.
          Fixed the issue that formula and summary fields were not being exported by default
          when using the exportClientData() API.
          Fixed a server-side IndexOutOfBoundsException when exporting a subset of fields
          via the DataBoundComponent.exportClientData() API.
          Fixed field availability in HiliteEditor vs AdvancedHiliteEditor
          Altered so that Simple field-lists in hilite editors always include fields that are used by visible Summary fields, even those other fields are themselves hidden
          Fixed an issue where the presence of a sortField in a databound select item could cause callbacks passed to "fetchData()"
          to fire multiple times.
          Fixed a bug where 3 or more hilites applied to the same record and field would not all be displayed.
          If listGridField.canExport is false, respect this when assembling default list of fields for formatted export using exportClientData()
          [Was already respected for standard "exportData()" flow].
          Fixed header spans quoting while exporting client data from ListGrid.
          Fixed issue on ListGrid where setting canDragSelectText:true still results
          in a drag tracker representing the starting record.
          Added missing i18n attributes dataBoundComponent_editHilitesDialogTitle and hiliteRule_iconFieldTitle
      
      ValuesManager
      
          Fixed the issue that DynamicForm.updateOperation was not honored for implicit saves when using a ValuesManager.
          Implement method ValuesManager::getMemberCanvases(), and redoc getMembers() as a convenience method that can only be used if all members are DynamicForms
      
      KeyPressEvent KeyDownEvent KeyUpEvent
      
          isAltKeyPressed, isCtrlKeyPressed and isShiftKeyPressed helper methods added to KeyPressEvent, KeyUpEvent and KeyDownEvent events for FormItems.
      
      DataBoundComponent DataSource
      
          Fixed an issue where a ListGrid having an expansion field and the ability to reorder
          records would show the arrow image of the expansion field on reordering records
          unless an appropriate titleField was set.
      
      DataSource
      
          Fix issue where certain field types in a DataSource, if present, may cause an error in
          DataSource.recordsAsText().
          Fix error in DataSource with cacheAllData: true set.
          Fixed available Operator list for Date fields in FilterBuilders
          Documented the special DataSourceField.sqlDateFormat values "epoch" and "epochms".
          Added a note to the Java Module Dependencies documentation on how to use iText 2.1.7 with the Server Framework's Content Export module.
          Updated the "Java Module Dependencies" documentation to note that the Batik JARs are also needed if RPCManager.exportImage() is to be used.
          Updated the "Java Module Dependencies" documentation to note that the xml-commons External Components JAR, xml-apis-ext.jar, is required in order to use the 'exportImage' built-in or for PDF Export of DrawPanes in IE6-8.
          Fix a contradictory assertion in the docs that DataSource.useAnsiJoins is the default - it is not
          Fixed criteria produced by RelativeDateItem and DateRangeItem
          Documentation for DSRequest.generateRelatedUpdates property.
          autoCacheAllData will now set cacheAllData:true when a request with no criteria receives
          all rows.
          Document that a primaryKey is required for DataSources with a binary field
          Mark the "data" parameter of DataSource::performCustomOperation() as optional
          Changed module dependency documentation to note that commons-fileupload is a required library of isomorphic_core_rpc.jar, even if you aren't using the upload features of the framework
          Fixed a loop-counter bug in validateJSONRecord
          Fix DSrequest.getSort() so that exception is not thrown.
          Fixed a JS error occurring when DataSource.cacheAllData is set to true.
          Fix a bug whereby oldValues are not correctly maintained after a saveData() if the dsRequest was a sparseUpdates request
          Modified getSaveOperationType() to handle being passed no requestProperties
          Fixed issue with binary metadata fields when the underlying binary field is mapped via nativeName. Also have DynamicForms switch to edit mode after a successful add, even if the form contains a FileItem
          Fixed an issue where decimalPad / decimalPrecision, if specified for a field within a .ds.xml file, would fail to be respected within the application.
      
      DataSource DataBoundComponent
      
          Resolved an issue using a blank AdvancedCriteria when calling ListGrid.fetchData() would not return any matches and calling it a second time would throw an exception.
      
      MultiSortDialog
      
          Fixed i18n hover prompts for the Level Up and Level Down buttons in the MultiSortDialog
      
      RestDataSource
      
          Updated the sample JSON responses in the RestDataSource documentation. JSON responses now strictly follow the JSON standard and no longer include 'Date.parseServerDate()' calls.
          Re-doc RestDataSource.dataProtocol, detailing that, to control the format in which inputs are sent to the dataURL, you must specify a replacement OperationBinding
      
      ResultSet
      
          Fix DataBoundComponent.find()/findAll()/findIndex()/findNextIndex(), so that
          they return the correct results for datetime fields from the DataSource.
          Log warnings on attempts to modify data in (readonly) ResultSets
      
      ResultTree
      
          Fixed a problem whereby databound treeGrids with loadDataOnDemand set to true could be confused if passed
          initial criteria in AdvancedCriteria format
      
      Visual Builder
      
          Make the DataSource pane of VisualBuilder show a per-project list of DataSources.
      
      Browser
      
          Enabled CSS3 mode by default in IE 9 standards mode and IE 10 and later when using
          the Enterprise, EnterpriseBlue, or Graphite skins.
      
      Messaging
      
          Fixed the endless "page loading" indicators in Safari 4 and 5 and Firefox 3 when using Real-Time Messaging.
          Fixed Real-Time Messaging in Internet Explorer if ActiveX is disabled.
          Fixed the endless "Waiting for" statusbar message and regular "phantom click" sounds when using Real-Time Messaging.
          Fixed the continuous loading "throbber" in Chrome when using RTM.
          Enabled the use of Server-Sent Events with Real Time Messaging in Firefox and Opera.
          Fixed the endless spinning loading indicator ("throbber") when using Real-Time Messaging in Safari 4 and 5.0.x.
      
      FileLoader
      
          Fixed an issue whereby FileLoader.cacheFile() could append an unexpected query parameter onto the URL passed in
          while attempting to cache images.
      
      Developer Console
      
          Fixed problem with icon display in the Developer Console's "RPC" tab.
          Fixed a problem where the developer console would not show up properly in IE10
      
      EventHandler
      
          Correct processing of extended characters in TextItem when using masking
          Fixed an issue with the SGWT application freezing if dialogProperties specifying an ID
          were passed to SC.askforValue() or one of the other dialog-showing utility methods.
          Fix issue where ListGrid in a modal window may blank out after having
          launched a child modal window that calls ListGrid.setFields().
          Fixed a bug where the hover of a button would not appear in Internet Explorer if the mouse started on the button's icon.
          Fix issue where clicks that start a modal operation can misbehave in
          Selenium RC scripts.
          Fixed an event handling issue: MouseWheel events were being sent to disabled canvases, allowing the user to scroll
          widgets that were marked as being non-interactive.
          Fixed some issues causing keyboard-triggered context menu events to fail to be properly handled
          Fixed a bug where a DynamicForm with one column and one item at width/height 100%, with no title, but with a prompt, would never show the FormItem prompt in a hover
          Fixed a case where Chrome would not react properly (scroll) to small trackpad scroll gestures
          Corrected EventHandler.getWheelDelta() - method returns a float rather than an integer.
      
      Date
      
          Fixed updating of Grid-level summaries after a record-removal and altered Date.getWeek() to consider the default firstDayOfWeek from the current locale if one isn't passed
          Fixed Date.toSerializeableDate() for datetimes
          Fixed RelativeDateItem inputFormat issue when using a custom formatter function
          Fixed a JS error from _isDatetimeString() when the inputFormat is a function
          Update RelativeDateItem.baseDate accordingly from updateValue as well as setValue and fixed a bug where any value prefixed with a "$" was interpreted as a valid relativeDate
          Update types in the DateUtil.createLogicalDate(), createLogicalTime(), getLogicalDateOnly(), and getLogicalTimeOnly() overrides.
      
      RelativeDate
      
          Fixed an issue where when a relativeDate was converted to an absolute date due to DataSource.autoConvertRelativeDates
          being set to true, you could end up with a datetime rather than a logical date being passed to the server for a field
          of type "date"
          Fixed firstDayOfWeek support for Timeline
          Reworked Timeline.setTimelineRange() and fixed interactions with the DateChooser button and Next/Previous buttons
          Added new attribute Calendar.defaultTimelineColumnSpan, default 20 - this is the number of innermost headerLevels (grid columns) we will show if no endDate is provided on creation, o later via setTimelineRange()
          Fixed issue where a RelativeDate's rangePosition was getting dropped in the communication bewteen SGWT and SmartClient.
      
      Selection
      
          Don't fire selectionUpdated with selectionType: "single" when re-selecting the same record in a DBC
      
      SimpleType
      
          Fixed example link in SimpleType documentation
          Fixed display values in group summaries for avg, min and max, when the data contained nulls, or all zeros
      
      Time
      
          Fix a date/time formatting issue seen in SGWT Dev Mode with RelativeDateItem
          Fixed incorrect title for the top-most time-label in Calendars
      
      Tree
      
          Fix sorting of Grouped ListGrids with multiple GroupBy fields.
          Fixed single/multi sorting on fields that are also involved in a multi-grouping situation, with and without rowSummaries of either type.
          Removed logWarn() from inside the script of the internal sort-normalizer for Trees
          Fixed ListGrid sorting behavior when the grid is both grouped and sorted on the same field
      
      PNG Export
      
          Fixed the translation of <canvas>-style radial gradients to SVG <radialGradient>s.
      
      Built In Types
      
          Fixed warning for 'image' data type.
          Removed warning message generated for type="link" DataSource fields.
      
      Button
      
          Fixed a bug where in pages running with strict or HTML5 doctype, specified Label padding would not be displayed.
          Fix for an issue that would cause buttons containing icons to intermittently render poorly in Firefox 18
      
      Button Canvas ImgButton ListGrid StatefulCanvas StretchImgButton
      
          Added to Button, ImgButton, and StretchImgButton support for the showClippedTitleOnHover attribute to control whether a hover containing the full button title is enabled if clipTitle is true.
      
      Button DateGrid FormulaBuilder
      
          Fixed an issue where the body of DateChoosers in the Simplicity skin would size wrongly in Chrome and show unwanted scrollbars
      
      Button Element
      
          Fixed a bug in Button.showClippedTitleOnHover support. In IE 9 Strict Mode, the
          hover could be displayed even if the title was not clipped. This affected Button
          and all classes derived from Button such as ImgSectionHeader.
      
      Calendar
      
          Improved mouse-based event creation for timelines by having the start and end dates rounded to the eventSnapGap
          Fixed JS errors in getDateFromPoint() (monthView only) and dateIsWorkday() and corrected bad style used for event-windows when showEventDescriptions is false
          Fixed the date being passed to calendar.getDateCSSText()
          Fixed a bug where styling was not being correctly updated after creation when an EventWindow was reused for events with different baseStyles
          Fixed a couple of redraw issues for overlapping events in Calendar
          Fixed bugs that caused getActiveTime() to return the wrong value and Calendar-level drag events to be incorrectly fired by eventWindow movements
          Fixed timeline event rendering for timelineGranularities greater than "day"
          Added Calendar.canReorderLanes, fixed so that timeline events don't show the description in the header when showEventDescriptions is true, and fixed so that removeEvent(), setLanes() and addLane() properly refresh events
          Fixed a bug where events could render a column-width beyond the end of Timelines.
          Fixed a drag-repositioning bug in Timeline
          Fixed an issue  where events that ended before 1am would be extended to 11:59pm
          Fixed custom workday styling in Day and Week views by ensuring that dateIsWorkday() is passed the correct date
          Fixed handling of null startDate and startDate > endDate for Timeliine
          Fixed a bug where when a long event is overlapped in its very last unit (30 mins by default) by another event which is exactly that long, both events would render at full width, but one after the other, partly obscuring the next column in the grid
          * fixed a bug where dragging an overlapping event into a different column did not correctly render the original column because the event being dragged was still being taken into account
          Fixed placement of overlapping calendar events when one or more ends at 00:00.
          * Fixed JS error when showing event hovers in the MonthView
          Fixed JS error when showing the quick event editor in non-timeline views
          Fixes: timeline event drag-drop in all cases, events drawing past the end of the timeline, column rebuilding after selecting a date with the picker, bubbling of dragReposition events for timeline events - also adds two optimizations and fixes two JS errors
      
      Canvas
      
          Fixed Canvas.enforceScrollSize() in Firefox.
          Exposed the canvas "showShadow" property as being settable at runtime
          Fixed an issue whereby Firefox version 18 would incorrectly size elements containing images when those images are first loaded and not present in the browser cache.
          Defered generation of automatic widget IDs for SGWT widgets until the JS object is actually created.
      
      Canvas ListGrid
      
          Optimized _remapEmbeddedComponents() so it checks if a record has changed or moved before searching the data for it
      
      Chart
      
          Fixed a Javascript error that occurs in the expression `this.facets.length` in
          Chart.isMultiFacet() when a FacetChart has no data.
      
      ColorPicker
      
          Fixed a bug where ColorPicker defaultOpacity would not always be respected
      
      ComponentEditor
      
          Fixes issue in VisualBuilder where the "Events" editor would not maintain values.
      
      CubeGrid
      
          Fix issue where CubeGrid.getSelectedCells() returns null rather than the proper CellRecord[].
          Fixed CubeGrid.hiliteFacetValue()
          Fixed a JS error in the SGWT wrapper for CubeGrid.hiliteCell()
      
      CubeGrid ListGrid
      
          Fixed hiliteFacetValue() for column-facets and enhanced to allow hiliting of any facetValue, not just innermost ones, for rows and columns
      
      DateChooser
      
          Added new feature - DynamicForm/FormItem.readOnlyDisplay - supports different modes of rendering for items that are canEdit: false
          Fix issue where DateChooser for dateTimeItem doesn't show time picker widget(s).
      
      DateGrid ListGrid
      
          Fixed interactive styling for disabled weekday and weekend fields in the DateGrid
      
      DetailViewer
      
          Support for DetailViewer setViewState() / getViewState()
          Fixed a bug where DetailViewer field.height could fail to be respected
      
      Drawing
      
          Fixed a bug that DrawLabel.getBoundingBox() can fail to return the correct
          coordinates if the method is called after DrawPane.destroyItems() or after
          getBoundingBox() is called on another DrawLabel.
          Fixed an issue with FacetCharts possibly not drawing when used in a TabSet.
          Fixed the translation of <canvas>-style linear gradients to SVG <linearGradient>s.
          Fixed a bug that calling DrawPane.erase(), adding a DrawItem to the draw pane,
          and then calling hide() on the draw item caused a JavaScript error in IE.
          Included the data record in the DrawnValue objects returned by FacetChart's
          getDrawnValue() and getNearestDrawnValue().
          Fixed a bug in DrawPane that, after changing the zoomLevel, the screen area over
          which the mouseover handlers were active did not match the locations of the
          DrawItems handling the mouseover.
      
      DrawKnob Drawing
      
          Fixed a bug that knobs of DrawItems could stop working after DrawPane.zoom().
      
      EdgedCanvas
      
          Fixed the appearance of large gaps in the rendering of canvas shadows in Firefox.
          Fixed the background-size CSS applied to EdgedCanvas edge cells in IE9.
          Fixed the background size and display of bottom edge in IE9 strict mode when canvas
          size is less than 100px.
      
      Element
      
          Fix issue where widgets may not respond to clicks in Firefox when
          Standards Mode is active.
          Fix issue in Firefox Standards Mode where grid borders may disappear
          unexpectedly.
          Fixed FormItem.showIcon() and showAllIcons() in IE.
          Fixed a display issue in Opera 12.x where the DateRangeItem's form was not visible
          in the date range selection dialog of a ListGrid filter editor.
      
      FacetChart
      
          Fixed a bug where adding a RangeChangedEventHandler to the zoomChartSlider of a
          FacetChart prevented the chart from redrawing the data after manipulations of
          the slider.
          Added MultiComboBoxItem.getValues() and setValues(Object...) for getting and setting the selected values.
          Fixed a JavaScript error occurring in multi-facet, zoomable FacetCharts that use
          labelCollapseMode "time".
          Fixed a bug in single-facet "Pie" and "Dougnnut" FacetCharts that data value
          labels for the biggest pie slices might not be displayed.
          Fixed a bug in stacked "Bar" and "Column" FacetCharts with showValueOnHover
          enabled that the hover could appear on a bar even while the mouse is hovering
          over the next bar.
          Fixed a bug in FacetChart where swapping the facets can cause the zoom chart to
          display the wrong data labels.
          Fixed a bug where a column FacetChart with `showDataValues: true` failed to
          display the data value labels after the chartType was switched to "Pie" and
          then switched back to "Column".
          Fixed a bug that the context menu of a FacetChart is not destroyed when the
          chart is destroyed.
          Fixed a bug that the zoom (selection) chart was not automatically cleared when
          the chartType of a FacetChart is switched to "Pie", "Doughnut", "Radar", or
          "Bar" (which chart types, along with "Scatter", do not support zooming).
          Fixed a bug that FacetCharts that have zero values for all of their data points
          draw gradations lines at +/-0.01 instead of simply showing a gradation at zero.
          Fixed a bug where FacetChart.getNearestDrawnValue() would return the wrong
          data point in the presense of null-valued data.
          Fixed a bug that the record argument of FacetChart.getPointHoverHTML() is always
          null when hovers are enabled for the "Measurement Data" zoom chart sample.
          Implemented FacetChart.labelCollapseMode "time" for column charts.
          Fixed a bug that "Area" and "Line" FacetCharts could fail to draw all of the
          data points, while showing labels for the missing points in the top-left corner,
          in a case of all numeric data-axis values.
          Fixed a bug that switching the chartType of a FacetChart from "Column" to
          "Pie" and then back to "Column" causes extra space at the bottom of the chart.
          Fixed a bug that the bars in a column FacetChart with all negative values could
          be drawn over the chart title.
          Fixed a JavaScript error issued on bar/column FacetCharts that have some null
          data values.
          Fixed a JavaScript error in FacetChart in IE9 when showValueOnHover is true and
          the chart is changed to the "Column" chartType and is made unstacked.
          Fixed a bug that the legend in multi-facet pie FacetCharts could display values
          of the wrong facet.
          Fixed a JavaScript error in FacetCharts with `showValueOnHover: true` occurring
          when the chartType, stacked, filled, or data properties are changed in IE9.
          Fixed a bug that FacetChart pie charts could be drawn inconsistent with their
          legend and that non-stacked column/bar charts could have overlapping clusters.
          Fixed a bug that the scale on an extra axis of a FacetChart might not be
          updated after changing the data.
          Fixed FacetChart.getNearestDrawnValue() for clustered bar and column charts.
          Fixed a bug that FacetChart may fail to update the scale on the value axis after
          the stacked property is changed.
          Fixed a bug that radar FacetCharts with gradient fill might be only partially filled when drawn on an HTML5 canvas.
      
      FieldPicker
      
          Fix issue where record (field) in FieldPicker can't be expanded to access
          editing of a summary/formula field if DBC.fieldPickerFieldProperties is
          null or an empty list.
          Add ability to delete a user summary or formula field in FieldPicker.
          Enable focus styling for FieldPicker transport buttons.
      
      FormulaBuilder ListGrid
      
          Fix issue where Formula/Summary Editor causes error if opened after field in
          active formula/summary is removed.
      
      GridRenderer
      
          Firefox version 17 changed how heights are applied to TD elements in HTML5 rendering mode. Fixed an issue that
          caused our listGrid cells to render too tall, causing unnecessary scrollbars in CubeGrids.
          Fix CSS styling for rollovers/selection in TreeGrids in IE8/IE9 Standards Mode.
          Fix issue in IE8 in Standards Mode where ListGrid cells are wrapped even though
          wrapCells: true is not set.
          Fix case where autoFitFieldWidths yields widths that are too narrow for certain
          fields for a ListGrid where autoFitData is "vertical" or "both".
          Fixed vertical centering of text in ListGrid cells in IE 7+.
          Fixed an issue where print/export to PDF of ListGrids with canExpandRecords: true and sparse data would generate an empty document
          Fixed an issue where multiple rapid repeated clicks in the same position on a TreeGrid could cause a JavaScript error
          Clean up grid column sizer after use. Removes surplus (off screen) DOM elements
          Fixed an issue where cells would start to wrap, and expand their rows on rollover in IE8/IE9, with strict doctype set even if wrapCells was set to false.
      
      HiliteEditor
      
          Fixed a JS error in HiliteRule.getHilite() that occurred if the value of the criterion
          was left blank.
          Exposed the DBC Hiliting classes - HiliteRule, HiliteEditor and AdvancedHiliteEditor
      
      HiliteEditor TileGrid
      
          Fixed Hilite handling for TileGrid
      
      Layout
      
          Fixed a sizing bug where layouts with shadows were not properly resized down if set to fill 100% of a parent and the parent was made smaller.
      
      Layout TabSet
      
          Fixed an issue where hidden tabBarControls left a gap in the initial layout of
          the TabBar controls layout.
      
      ListGrid
      
          Fix for a bug where response to dataChanged would fail to update a grouped tree if grouped by primary key.
          Optimized the code for remapping recordComponents when data changes and recordComponentPoolingMode is not "data" - significant improvement when removing a record or fetch-scrolling
          Fixed a bug where ListGrid.removeData() would be ineffective - altered the type of the 'data' parameter from "Object" to "Record"
          Fixed the issue that the ListGrid.dateFormatter was not applied if the record value was
          a string.
          Fix issue where ListGrid header context menu button press shows info from wrong column.
          Fixed issue where trying to hide or unhide ListGrid columns may hang the browser with 100% CPU.
          Fix issue where freezing or unfreezing ListGrid columns with autoFitData set to
          "horizontal" or "both" can lead to an infinite loop.
          Fixed initialSort for ListGrids with a DataSource but no specified fields array
          Performance improvements for ListGrid autoFitFields behavior
          Fixed redraw issue with paged grids following a page-changing scroll and an export to PDF
          Fixed a case where focus could be dropped from the filterEditor while filtering in Mozilla FF only.
          Improved the placement and sizing of SelectItem and ComboBoxItem dropdowns so
          that the form item is not covered by it.
          Fix for an issue where when cell selection is enabled and the visible columns in a grid change,
          interactions such as drag selection could fail.
          Fixed a bug whereby headerBaseStyle was not being properly applied to header buttons in some cases.
          When alwaysShowEditors is true, render out the error icon for cells with validation errors
          Fixed a JavaScript error in ListGrid.saveEdits() when a new, unsaved row is
          edited and then marked for removal.
          Fix functions LG.getSummaryFieldValue() and LG.getFormulaFieldValue().
          Fixed issue with ListGrid corner sort button not showing the correct sort state.
          Fixed a JavaScript error when calling ListGrid.saveAllEdits() on a ListGrid with
          deferRemoval enabled.
          Add new API ListGrid.configureGrouping() for configuring multi-grouping mode.
          Fixed a JS crash that could happen if expandRecord() was called before the grid was drawn
          Fixed a JS crash with multiple-grouping and groupSummaries
          Fixed a stack overflow when attempting to view/download a file from a record in a grouped ListGrid
          Correctly flag the result of ListGrid.getFilterEditorCriteria() with a _constructor if its an AdvancedCriteria
          Re-Introduced removeRecordClick(int rowNum). This may be called to programmatically simulate a user clicking the remove icon for a row.
      
      Menu
      
          Added MenuItem.disabledIcon property to allow a different icon to be used when item is disabled.
      
      RecordEditor
      
          When showing the filterEditor for a listGrid, suppress the checkbox image from appearing in the filter editor of
          boolean type fields marked as canFilter:false. This is a more obvious UI for a non-interactive field than an
          unchecked (and non-interactive) checkbox image.
          Fixed an issue filtering a tree grid with a substring search.
      
      RichTextCanvas
      
          Fixed the Font and Font Size rich text editor controls in Chrome.
          Fixed a sizing issue for RichTextItem that resulted in perpetual redrawing of scrollbars in Chrome
          Fixed mouse-initiated focus/editing for RichTextCanvas in Chrome
          Fixed RichTextItem editability in Opera
          Fixed key handlers in RichTextEditor in Chrome
      
      ScreenReader
      
          fixed ListGrid aria-posinset accessibility attribute to be 1-based rather than zero-based as mandated by the WAI-ARIA specification
      
      SectionStack
      
          When trying to remove the expanded section in section stack, only half
          of it items are removed
      
      StatefulCanvas
      
          ScreenReader fix - ensure that if a Button or subclass has its title changed, the new title shows up as the aria-label
          and is read by ScreenReaders.
          Ensure that a custom mouseOver implementation of a StatefulCanvas subclass (like button) only prevents standard
          showRollOver styling behavior if the implementation explicitly cancels the event (returns false)
      
      TableResizePolicy
      
          Resolved an issue where certain FormItems, including SectionItems, could render too wide, causing the DynamicForm to overflow its specified size unnecessarily.
          Fixed rendered widths for FormItems that span multiple columns
      
      TabSet
      
          Fixed an issue whereby getTab() would return null for a tabSet defined directly in JavaScript (or via componentXML)
          once referenced in Java
          Fixed an issue where if a tabBar control is made visible after having been hidden,
          the newly-visible tabBar control was placed incorrectly beneath the first tab.
          Fixed a stack overflow occurring when an invisible widget is added to a TabSet's
          list of tabBarControls.
          Fixed an issue where tabSet.tabDefaultWidth could impact width of left/right positioned tabs and tabDefaultHeight
          could impact height of top/bottom positioned tabs, contrary to documentation. Now these propertes effect the
          "length" of the tab-buttons but not the "breadth" of them, as intended.
          Handle selecting a tabset tab whose pane has been destroyed.
      
      TileGrid
      
          Fixed a problem where "invalidateCache" was failing to behave correctly on databound TileGrids.
      
      TileLayout
      
          Fix an issue where TileLayouts that are not TileGrids show hidden tiles.
      
      ToolStripGroup
      
          Fix stack overflow error during ToolStripMenuButton creation
          Fix for showing separate Disabled and Over menuIcons for IconButtons that are showMenuIcon:true
      
      TreeGrid
      
          Implemented clipping of TreeNode titles by ellipses if the text is too long to fit within the tree field column.
          Fixed bug where TreeGrid.getNodeTitle() performs sometimes failed to properly format content in the tree-field.
      
      AutoFitTextAreaItem
      
          Fixed vertical autosizing for AutoFitTextAreaItem in css3 mode
      
      CanvasItem
      
          Fix problem where with CanvasItem, arguments were not passed to createCanvas().
          Resolved some issues around Tab-index handling of CanvasItems [especially visible within modal windows]
          Modified CanvasItem so that if showTitle is true and titleOrientation is "top" we now render the canvas at the
          specified size rather than shrinking it to accomodate the title text. This matches the behavior of other form items
          - the form item element doesn't shrink in order to leave more space for the title - and was reported as
          a bug on the forums.
          Changed the behavior of CanvasItem.storeValue(Object) to be more like FormItem.setValue(Object).
      
      CanvasItem DynamicForm
      
          Fixed the orphaning of an externally created canvas used as the canvas of a CanvasItem and then reused in another CanvasItem passed directly into DF.setFields()
      
      ComboBoxItem
      
          Rename ComboBoxItem.setSort() as ComboBoxItem.setPickListSort() to match the
          SelectItem API, and mark the original API name as deprecated.
          Fix for a bug where if you show a ComboBoxItem with a filter-editor on its picklist, certain interactions with
          that pickList filter editor would inappropriately dismiss the entire pickList
          Fixed pick list on ComboBoxItem with filter not allowing mouse click into filter.
          Fix class reference in SelectItem/ComboBoxItem.setPickListSort() effecting dev mode.
      
      ComboBoxItem FormItem NativeSelectItem SelectItem SpinnerItem StaticTextItem
      
          Fixed so that FormItems do not show icons or pickers and largely render with TextItem.texBoxStyle when printing
      
      DateItem
      
          Fixed a bug where DateItems would map one/two digit years to 1900
          Fixed an issue where a DateItem's textBox could render too wide, obscuring or shifting the date-picker icon
      
      DynamicForm
      
          Fixed the issue that DynamicForms were spacing form items apart so as to take up the entire height.
          Fixed so that a DynamicForm initialized with a string valuesManager auto-creates a global VM instance
          Fixed an issue where validateOnChange could cause focus to be removed from the field the user is currently editing
          Fixed a JS error from item-event handling code when, for instance, a form-item has a click-handler that removes its item from the form, via form.setItems(), partway through the event chain
      
      FileItem FormItem MultiFileItem
      
          Inhibit multiple selections in the native file selector window shown when the user clicks a "Browse" button in a MultiFileItem component
      
      FilterBuilder
      
          Fixed a bug where a "between" operation on a date field in FilterBuilders would not properly set the time on the end-range date to 23:59
          Fixed sortFields: false for FilterBuilder
      
      FormItem
      
          Fixed a problem with a char array being set as a form item's value if the FormItem#setValue(Object) method is used.
          Fixed an `UnsupportedOperationException' thrown by FormItem.setValue() when passing serializable objects.
          Fixed FormItem.getValue() by having it return a List if the value of the form item is an array (also, if the value was set to a List).
          Fixed FormItem.getValue() so that it returns a Java List object only if the form item accepts multiple values.
          Added FormItem.getValueAsRecordList().
          Altered the behavior of FormItem.getValue(). If the FormItem has multiple:true, there are some cases where the return type is now RecordList.
          Wrapped the StretchItem type, which allows the StretchImg.items array to be set in Smart GWT.
          Fixed a bug where SpinnerItems with no default value would fail to react to clicking on the spinner in some cases.
          Fixed show/hide cycle for formItemIcons in IE
          Fixed a bug with characterCasing:"upper" in IE 10 where spaces would disappear.
          Fixed the "Unknown runtime error" thrown in IE 8-10 when FormItem.hideIcon() or hideAllIcons() was called.
          Fix issue where setting icon.neverDisabled: true has no effect for icons
          associated with a Formitem.
          Allow validateOnExit FormItems to perform validation on a standalone form without
          the value being changed. This primarily affects the required validator.
          Updated the Javadoc of FormItem.getValue() with additional information pertaining to the case where the form item has multiple:true.
      
      FormItem TextItem
      
          Exposed the TextItem.browserInputType attribute.
          Fixed value hovers over TextItems in Firefox when the value is clipped.
          Fixed a bug where pasting a value into a masked TextItem sometimes caused characters
          to be lost.
      
      FormItem TextItem TextAreaItem
      
          write out aria-readonly flag for non editable form items with screenReader support enabled
      
      MultiFileItem
      
          Fix issue in MultiFileItem whereby deleted files are sometimes not removed from the visible list
      
      PickList
      
          Fixed an issue with the pickList of a SelectItem not moving with its SelectItem
          if the SelectItem is moved (for example, if the browser window is resized and the
          containing form is moved).
          Fixed a bug where a databound PickList for a FormItem with an explicitly
          specified sortField shows horizontal scrollbars instead of expanding to fit the
          data.
          Removed spurious Combobox/SelectItem warning "fields and completeFields are null and there is no DataSource"
          Fixed a case where a dataBound pickList with custom optionOperationId, and a
          specified sort field, could cause 2 fetches - one with the wrong operation ID.
      
      PickTreeItem
      
          Fixed the widths of PickTreeItems with icons when displayed in FilterEditors
          Fixed a bug that a menu item of a context menu on a form containing a PickTreeItem could draw menu icons twice on redraw in IE9.
          Fixed race condition during initialization resulting in a crash that can occur if a PickTreeItem has a TreeMenuButton as its canvas.
      
      RelationItem
      
          Fixed a bug where MultiFileItems would fail to be properly disabled when the disabled attribute is set to true.
      
      RelationItem MultiFileItem
      
          Modified MultiFileItem to always show the picker modally (so click outside the picker will not dismiss it).
          Previous behavior would show the picker modally only if the user was editing an existing record - not when
          editing a new record.
      
      RelativeDateItem
      
          Fixed a problem tabbing through RelativeDateItems when the clickMask is up (For example when embedded in a modal
          Window)
          Fixed 'Now' preset option when selected from the list
          Altered RelativeDateItem to reset it's baseDate from setValue() - fixes a bug where calling setValue("$now") after init would have no apparent effect
          Fixed availability of the dateChooser icon in RelativeDateItems across enable/disable cycles
          Altered RelativeDateItem.setValue() so that, when called with an actual date string, it parses the value and stores the date itself - fixes a bug where getDate() would return an unformatted date-string
          Improved consistency of behavior within a RelativeDateItem when 'type' is not explicitly specified as either date or datetime.
          Fixed the RelativeDateItem's display of the selected date in certain locales (e.g. ru_RU), which also fixes the date range picker used by the ListGrid filter editor in those locales.
      
      RichTextItem
      
          Prevent RichTextItem from firing an unnecesaary changed event during initialization, and thus prevent forms including its value from getChangedValues() when it hasn't really been changed
      
      SectionItem
      
          Fixed a bug that SectionItem failed to open or close after Space or Enter
          keypresses.
      
      SelectItem
      
          Added new attributes SelectItem.openOnSpace and openOnDownArrow
      
      TimeItem
      
          Fix issue where timeItem.hint is not displayed if timeItem.useTextField is false.
          Fixed custom parseEditorValue implementations and unexpected behavior while typing in TimeItem
      
      DataSourceAnnotations.java
      
          Performance optimizations - remove a bottleneck in the getCaller() method when deriving DataSource definitions from annotated classes
      
      FileAssembler.java
      
          Fix rare and intermittent NullPointerException during FileAssembly
      
      TestRunner.java TestRunnerLauncher.java
      
          Fix TestRunner alertEmail/repeatEmail functionality for reporting batch results.
      
      PdfExport.java
      
          Added documentation about how to configure .pdf export to international characters.
      
      AdvancedCriteria.java
      
          Guard against a NullPointerException in server-side AdvancedCriteria
      
      AdvancedCriteria.java Criterion.java
      
          Fixed a bug in getFieldCriterion() / getFieldCriterions() where certain Criterion types would not be found (for example, isNull)
      
      DataSource.java
      
          Fix a bug where fields of type "creatorTimestamp" were having their time elements stripped
          Strip "serverObject" and "serverCondition" elements of validators defined in .ds.xml files out of the version of the DS that is delivered to clients
          Fix a problem where database connections are remaining open until GC for a DSRequest that is executed multiple times
          Fixed i18n support in a Component XML that uses <dataSource> tag in between <fmt:message> tags.
          Fix ClassCastException arising when a SQLDataSource autoDerives from metadata derived from an unannotated Java class
          Enable the Export options (XML, Excel, etc) and streaming responses when the response's data model is a JSONFilter
          Only check operation-level security for related DataSources for fetch requests - it is inappropriate to do so for updates because we are never updating anything in the related DataSource
          Switch DataSource pooling on by default
      
      DataSource.java DataSourceDMI.java
      
          Fix over-zealous licensing enforcement that was preventing Pro users from using the "criteria" and "values" properties of an operationBinding
      
      SvgImage.java
      
          Fixed a bug in the 'exportImage' RPC built-in where padding around the drawn content of a DrawPane was not preserved.
      
      DSRequest.java
      
          Do not complain about missing primaryKey values for fields that declare a customInsertExpression, because we can assume that the point of the custom expression is to provide the missing value...
          Fixed in-memory relations with composite FK issues.
          Fixed in-memory relations. If FK field declares joinType="outer" records with null value for FK will be removed from dataSet, otherwise "outer" joinType logic will be applied and record will stay in dataSet.
      
      PoolableDataSourceFactory.java
      
          Clear out a ThreadLocal variable to prevent Tomcat from issuing a warning during shutdown
      
      HibernateDataSource.java
      
          Corrected query generation for JPA/HB data sources served from framework pool.
          Fixed additionalOutputs for pooled data sources (JPA/HB).
      
      IJSParser.java
      
          Modify RestRequestParser to preserve literal null values passed up from the client.  Fixes this issue: http://forums.smartclient.com/showthread.php?t=25492
      
      JPADataSource.java
      
          Fixed count query syntax to satisfy JPA/JPA2 specification.
      
      JSParser.jj
      
          Fixed RESTHandler's ability to handle "postMessage" requests containing Unicode.
      
      MessagingServlet.java
      
          Fixed an issue with Server-Sent Events not working in Firefox and Chrome depending
          on the value of the 'encoding' parameter to MessagingServlet.
      
      DataExport.java
      
          Fixed line breaks when exporting to CSV for unix/mac systems.
          Fixed export data issue when line break setting was ignored.
      
      ExcelDataExport.java
      
          Fixed an issue with Excel exports via exportClientData() where the field names were
          shown instead of the titles.
          Fixed background colors when exporting to Excel.
          Fix issue with the header row sometimes being blank in Excel exports, due to an apparent bug in POI
          In Excel export, do not attempt to parse a value that ends with an alphabetic character as a number, to avoid a quirk of the Java number parser which treats a trailing "f" or "d" as a designator of precision (float or double) that should be ignored
      
      RestRequestParser.java
      
          Fixed a bug in RESTHandler's handling of DS requests containing Unicode when using the "postMessage" data protocol.
      
      ISCJavaCompiler.java
      
          Throw a more specific and helpful exception if we cannot find a Java compiler when processing a server-side script where language="java"
      
      SQLOrderClause.java SQLServerDriver.java
      
          Fix a problem when using sqlPaging:"sqlLimit" with MS SQL Server and sorting by a valueMapped field
      
      SQLTableClause.java
      
          Fix a bug in SQL generation where includeFrom fields and non-ANSI join style could lead to us generating invalid UPDATE and INSERT queries
      
      SQLTransform.java
      
          Declaring SQLDataSource field type as text always converts value to string.
          Declaring DSField type as text forces conversion to String for decimal/numeric DB types.
      
      SQLWhereClause.java
      
          Extend the RESTHandler wire format so that datetime values may be specified as
          JSON strings in three additional formats: "yyyy-MM-dd'T'HH:mm:ss", "yyyy-MM-dd kk:mm:ss",
          and "'$$DATE$$':yyyy-MM-dd'T'HH:mm:ss". Additionally, date values may be specified
          in "yyyy-MM-dd" format and time values may be specified in "HH:mm:ss" format.
      
      SQLImport.java
      
          Change HSQLDB binary storage strategy to BLOB(1G)
          Change HSQL binary type from "binary" to "varbinary"
      
      DataTools.java
      
          String ""false" were converted to Boolean.TRUE instead of "yes".
      
      Localization
      
          Fixed escaping of single-quote in Dutch localization.
          Fixed the selectorFormat for the French locale.
      
      Skinning
      
          Added the pickListCellDisabledDark and tallPickListCellDisabledDark styles to the
          Enterprise, EnterpriseBlue, Graphite, and Simplicity skins.
          Set an explicit defaultTabHeight of 22px for TabSets in Enterprise, Graphite and EnterpriseBlue
          (applied to browsers that support css3 and those that don't). This resolves a difference in height of left/right
          oriented tabs in tabsets between browsers.
      

      Attachments

        Activity

          People

            mflorea Marius Dumitru Florea
            mflorea Marius Dumitru Florea
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: