14.1.0

<< Click to Display Table of Contents >>

Navigation:  Version History >

14.1.0

Version History link

 

2016-11-22

 

IntraWeb controls use less memory and perform better than previous versions. Major refactoring of base classes and controls, using improved data structures which use less memory and have better performance when compared to standard Delphi data structures (mainly TStringList).

 

New: class TBufferedHandleStream which drastically improves stream write and read performance. TempFileStream now descends from TBufferedHandleStream. New class TIWFileStream, descends from TBufferedHandleStream

 

New: TIWExceptionCallback allows 3rd party exception tracers/loggers (e.g. EurekaLog) to integrate with IntraWeb using a pre-defined, dedicated interface.

 

New: TIWControl and TIWRegion now render margins when AlignWithMargins = True

 

New: IWComboBox now allows grouping of related options in the list, using OPTGROUP tag. Each group in the list must start with the plus sign char (+), e.g. “+Group 1”..

 

New: New basic data structures (list and dictionary classes) are used instead of TStringLists, in several internal classes. Less memory usage and more performance.

 

New: ServerController.OnRewriteURL event lets you specify Reverse proxy or RewriteURL parameter using events

 

New: IWModalWindow: Button close action can be skipped using “|NoClose”

 

New: TIWLayoutMgrForm, TIWLayoutMgrHTML and TIWTemplateProcessorHTML have a new published property StyleAttributesToRemove (TStringList). Each style attribute in the StyleAttriutesToRemove list will be removed when rendering controls in a form using templates

 

New: IWMonitor property jsCallbackName. This parameter is optional. When set, IWMonitor will call this JavaScript function each time it queries the status value from IW server. This function should be provided by user (JavaScript function).

 

New method CenterInParent() available in TIWCustomControl and TIWBaseContainer (TIWRegion and descendants). Centers a control within its parent’s client area

 

New property CustomLockerAnimationFile (an animated gif file name), which allows you to customize the IWLocker image. A new (slightly bigger) locker is default. Many free sample lockers can be found inside \Images\LoadingGif subfolder

 

New properties:

 

TIWBaseForm.IsFirstRequest

 

TIWBaseForm.IsPostBack and TIWApplication.IsPostBack

 

TIWApplication.IsFormFirstRequest

 

Bug fix: Frame name validation wrongly raises an exception when 2 existing frames descend from the same parent frame (check the new “Frame Inheritance” demo project in our demo repository)

 

Bug fix: Aligned invisible controls (e.g. IWRegion with Visible=True, Align=alBottom) would still be considered when aligning other controls. This caused other controls to be wrongly aligned, as the invisible control was actually visible.

 

Bug fix: TIWDBLookupComboBox and TIWDBLookupListBox could show NonSelectionText property instead of actual selected item text after sync event

 

Bug fix: possible issue with multiple threads uploading files (FFileList)

 

Bug fix: WebApplication methods SwitchToSecure/SwitchToNonSecure (HTTPS <-> HTTP) could fail

 

Bug fix: Under very rare circumstances, some temporary files could remain until application termination

 

Bug fix: TIWDBGrid rendering issues when a control is assigned to a cell. Refreshing the Grid in Edit mode should not raise excepion

 

Modified: IWLists.pas has been renamed to IW.Common.Lists.pas

 

Modified: Faster SA Server with an Indy intercept class customization

 

Modified: IW Version check form is non modal, so IDE continues loading while the form is visible

 

Modified: TIWCompressionOptions.MinSize is now 512 bytes (instead of 1024)

 

Modified: “attr” tag is used instead of “attribute” in XML node (async response). This reduces the size of XML response, in average, 100+ bytes per object modified in an AJAX request.

 

Modified: TIWResyncInfo record (used when detecting sync issues/BackButton events) has 2 new members: FormOutOfSync and TrackIdOutOfSync.

 

IWBundledRemovalTool is now part of IntraWeb installation. It can be found inside folder \Tools\BundledRemoval

 

Dozens of other small improvements and fixes