0% found this document useful (0 votes)
103 views5 pages

Tms Web Core: v1.4.0.0 Ravenna Release Notes

Uploaded by

Disooft SIGH
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
103 views5 pages

Tms Web Core: v1.4.0.0 Ravenna Release Notes

Uploaded by

Disooft SIGH
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 5

TMS SOFTWARE

TMS WEB Core


RELEASE NOTES

TMS WEB Core


v1.4.0.0 Ravenna
RELEASE NOTES

June 2020

Copyright © 2020 by tmssoftware.com bvba


Web: http://www.tmssoftware.com
Email: info@tmssoftware.com
TMS SOFTWARE
TMS WEB Core
RELEASE NOTES

Contents
Breaking changes in TMS WEB Core v1.4 ............................................................................................... 3

JavaScript object parameters in event handlers................................................................................. 3

TWebPaypal class changes.................................................................................................................. 5

TWebTimer, TWebGeoLocation inheritance change .......................................................................... 5


TMS SOFTWARE
TMS WEB Core
RELEASE NOTES

Breaking changes in TMS WEB Core v1.4

JavaScript object parameters in event handlers


For compatibility with the Visual Studio Code / OmniPascal environment, it was technically required
to no longer use direct external JavaScript objects as parameters for event handlers in Pascal classes.
Where needed, the JavaScript external object parameters were replaced by a Pascal record with a
reference to the external JavaScript object.

Example:

In TWebStringGrid, the event OnGetCellChildren signature was before v1.4

OnGetCellChildren(Sender: TObject; ACol, ARow: Integer;


AField: TField; AValue: string; AElement: TJSHTMLElement);

Now it is changed to

OnCellChildren(Sender: TObject; ACol, ARow: Integer;


AField: TField; AValue: string; AElement: TJSHTMLElementRecord);

with

TJSHTMLElementRecord = record
element: TJSHTMLElement;
end;

As such, where formerly an event handler could be written as:

procedure TForm1.gridTasksGetCellChildren(Sender: TObject; ACol,


ARow: Integer;
AField: TField; AValue: string; AElement: TJSHTMLElement);
begin
case ACol of
0: AElement ['align'] := 'center';
3: AElement['align'] := 'right';
TMS SOFTWARE
TMS WEB Core
RELEASE NOTES
end;
end;

if becomes now

procedure TForm1.gridTasksGetCellChildren(Sender: TObject; ACol,


ARow: Integer;
AField: TField; AValue: string; AElement: TJSHTMLElementRecord);
begin
case ACol of
0: AElement.element['align'] := 'center';
3: AElement.element['align'] := 'right';
end;
end;

This affects all classes where previously such JavaScript object was directly used, i.e. also the
TWebHttpRequest.OnRequestResponse event

It changed from
OnRequestResponse(Sender: TObject;
ARequest: TJSXMLHttpRequest; AResponse: string);

to
OnRequestResponse(Sender: TObject;
ARequest: TJSXMLHttpRequestRecord; AResponse: string);

with

TJSXMLHttpRequestRecord = record
req: TJSXMLHttpRequest;
end;
TMS SOFTWARE
TMS WEB Core
RELEASE NOTES

TWebPaypal class changes

The property Environment has been removed as it is no longer available in the PayPal JavaScript API.
The environment is now automatically set to Live or Sandbox based on the provided API key.

TWebTimer, TWebGeoLocation inheritance change

Now TWebTimer and TWebGeoLocation descend from TComponent instead of


TWebNonVisualControl. This might affect DFM files that store width/height of TWebTimer or
TWebGeoLocation. To remedy, open the forms, ignore any property error related to Width/Height
properties and save the form file(s) again.

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy