08-23-2022, 07:12 AM
One of our customers asked me for a list containing all new things introduced since we moved from version 14 to 15.
To be honest, we didn't have this list. It is simply too long. But I decided to compile such a list. I'm excluding somethings that I consider "minor".
If you are using IW 14, you definitely need to read this!
Warning: Reading this list can take a good part of your day.
I'm keeping each point short. Some parts contain personal comments (in parenthesis):
Enjoy!
To be honest, we didn't have this list. It is simply too long. But I decided to compile such a list. I'm excluding somethings that I consider "minor".
If you are using IW 14, you definitely need to read this!
Warning: Reading this list can take a good part of your day.
I'm keeping each point short. Some parts contain personal comments (in parenthesis):
- New Http.sys application type. (Http.sys is huge. Creating it from scratch using 100% of our own code was big and rewarding).
- IW Bootstrap is now included with IntraWeb
- New zlib library. IW zlib is based on zlib Cloudflare code base and is more than 8x faster than Delphi XE7 zlib. (playing with pure-C code like this was the funniest thing I've done in programming in a long time and it was extremely rewarding)
- New TIWTemplateParserHTML. Template parsing and processing is more than 300% faster than IW 14 version. (the old template had some die-hard bugs. The new code is so simple and performs so well...)
- Removed /$/ (Exec command) from URL in browser (yes, we didn't like it, so it's gone)
- LockSessionTimeout property in ServerController. (some people don't know how important this is)
- New feature CheckWindowId which allows applications to detect when a link to a valid IW application session is used in another browser tab (If you don't know what this does, then it's my fault)
- TIWGrid and descendants now render <thead> and <tbody> (every TIWGrid is basically a style-less DataTable)
- ISAPI applications now allow redirection from HTTP to HTTPS (have you tried to do it yourself in IIS?)
- ServerController Options Wizard (you can save and restore ServerController properties both at runtime and design time)
- Content Security Policy (CSP) support. (this was major. Hundreds of parts of our code needed to be rewritten - and rethought - to be CSP compliant)
- Cross-Origin Resource Sharing (CORS) support
- Callback function infrastructure was completely refactored. (Nice to have anonymous functions as callbacks)
- New advanced lock-free data structures used for session control. (Have never written so many unit tests in my whole life. I believe is the most challenging part of programming that I've dealt with)
- New start-up/loading code is used when starting a new session. (yes, this was great. IW 15 needs 2 round-trips less than IW 14)
- New property ServerController.BlockedDocExtensions (security, security, security!)
- Full AJAX (Async) render capability. (No need to tell you how this is important, right)
- New security feature, IP access table (security, security, security!)
- New TIWVideo control
- New components IWjQGrid and IWjQDBGrid
- New tool “IntraWeb Certificate Manager” (yes, even the competitors download IntraWeb and use this tool)
- New TabOrder editor/logic
- New IWRecaptcha component
- New IWSelect component based on JQuery Select2
- New IWjQAccordion and IWjQPageControl
- New unit/class IW.HTTP.IndyClient/TIWHTTPClient which simplifies communication tasks like sending HTTP requests to other services/applications (GET and POST, both in HTTP and HTTPS).
- New class TIWTelegram. (man, this is simple and effective. 100% based on (26) above.
- New component IWIPGeolocationClient (more security, security, security!)
- New property “DelayKeyEvents” for TIWEdit, TIWDBEdit, TIWMemo, TIWDBMemo. (Similar created with IWImage mouse events).
- Content Handlers: allow registration of a “catch-all” content handler
- New Session's TIWClipboard property (very handy. Not well known yet by IW programmers)
- New class properties LocalJavaScriptFolder and LocalStyleFolder in TIWjQPageControl, TIWjQAccordion, TIWjQGrid , allow customization of file location
- New property Image in TIWLink and TIWURL, allows links to be rendered with associated imageNew control TIWLabelEx, an extended version of IWLabel with image
- New property ThemeColor
- DelayMouseMoveEvents added to TIWImage, TIWImageFile
- New feature allows IW applications to automatically block sessions created from within other pages (IW application running inside IFrame)
- New version of IWBackIntercept.js which handles the back button blocking feature
- New component: TIWChartJS: the IntraWeb implementation of the famous ChartJS component library
- New component: TIWCanvas: HTML 5 canvas implementation that allows you to draw anything on the browser page (works very similarly to the VCL Canvas object, with similar methods)
- New component: TIWSignaturePad control: allows users to draw smooth signatures on the page surface using a pointing device
- IWjQAccordion, IWjQGrid, IWjQDBGrid, IWjQPageControl, IWChartJS and IWSignaturePad will download required content files (all required JS and CSS files) directly into the wwwroot folder
Enjoy!
