As well as features found in standard text editing components, Scintilla includes features especially useful when editing and debugging source code. These include support for syntax styling, error indicators, code completion and call tips. The selection margin can contain markers like those used in debuggers to indicate breakpoints and the current line. Styling choices are more open than with many editors, allowing the use of proportional fonts, bold and italics, multiple foreground and background colours and multiple fonts.
Our plugin includes built-in libraries for MacOS 64-bit, Windows 32/64-bit and Linux 64-bit, so you can use it without external libraries. But if you like, you can alternatively load your own libraries. You can have multiple controls work on the same documents providing different views and you can asynchronously load big text documents.
For DynaPDF we have new methods for complex text rendering. This includes defining alternative font lists (currently Windows only) and doing automatic font substitution. You can now delete optional content nodes in a PDF document. And for the optimize feature we can either skip some color spaces or only convert some color spaces.
The Contacts framework on macOS can report all changes to your address book via the new classes to fetch contacts history. This allows full synchronized applications to react to changes the user makes in other applications in the contacts database.
For macOS we added NSTextBlockMBS, NSTextTableMBS and related classes to handle tables within RTF with NSAttributedStringMBS class. We improved EventKit framework classes to add more properties for birthday, structuredLocation and contactPredicate. For our WKWebViewControlMBS control we got an event to show a file dialog. The MKMapViewMBS class can now zoom to show all annotations using our new ShowAllAnnotations method.
Our LCMS related classes for color management now support pre-multiplied conversions. The new helper function DetectRGBProfileGamma can try to calculate the gamme level.
For Xojo 2021r3 we added over 100 more methods to take DesktopWindow instead of just Window, so you can pass whatever you prefer. A couple of window properties got changed to Variant, so you can assign either there. We adjusted event names of our Desktop Controls to match Xojo's event names and changed the view of our controls in the IDE.
The WordFileMBS class can now replace text and handle tab characters there. For our use of LibXML we disabled network access explicitly and CPUBrandString function now can handle Apple M1.
Finally we updated the archive library to version 3.5.2, cpuid to 0.51, CURL to 7.81.0, DynaPDF to 188.8.131.52, expat library to 2.4.1, LCMS library to 2.13rc1, lz4 library to 1.9.3, openssl to 1.1.1l, SQLAPI to 5.1.8, SQLite to 3.37.0, ssh2 library to 1.10.0, taglib library to 1.12, and LibXL to version 4.0.1,
See release notes for a complete list of changes.