See what's new in RAD Studio 10.4 Sydney the largest and best improvement
to Delphi's code tooling in many years, RAD Studio 10.4 provides code insight
using a Delphi implementation of the Language Server Protocol also known as LSP.
LSP is a technique for calculating results for code completion, navigation,
or similar in a separate process. This means that the IDE will never block
while completing and code insight will provide accurate results. As part of the
major Delphi code insight improvements, we've also modified the filtering logic,
making it easier to find the property or method you want to invoke. This works
across the various components and features, and lets you modify and search for
the symbols that are available. This also works for parameter completion.
For errors in your code you will see a red squiggle in the editor, and an error in
the structure view until the error is resolved. The LSP mechanism also works
while you're debugging, so you can keep changing your code while the debugger is
running. RAD Studio 10.4 provides a much enhanced developer productivity
experience when working with large projects with millions of lines of code.
In RAD Studio 10.4 the Delphi language has been extended to include the concept
of managed records. These are records that can indicate which code is going to
be executed when the record is initialized, finalized, and when there's a
copy operation or an assignment between two different records. With managed
records in 10.4, Delphi developers now have the ability
to customize how records get created, copied, and destroyed by writing the code
to be executed at the various steps. This adds additional power to records in
Delphi, a construct used to achieve better efficiency compared to classes
With the new VCL per control styling capabilities, you can now use multiple
VCL styles in different forms within a single application or even different
visual controls that are on the same form. This also includes support for
styling any element using the default platform theme, and also enables you to use
third-party un-styled controls within a styled VCL application. For example, you
can easily define a different style for each button on your form. This provides
great customization options for building best-in-class Windows 10 applications
with RAD Studio 10.4.
RAD Studio 10.4 includes a new VCL web browser
component, TEdgeBrowser that uses Microsoft's new EdgeWebView2 control
based on Chromium. This offers a much more modern HTML engine compared to the
old TWebBrowser based on Internet Explorer. The classic TWebBrowser
component has also been extended, allowing browser controls in an existing
application to use either the existing Internet Explorer or Edge browsers for
display, depending on the browser available on the system.
10.4 also introduces a new VCL component TTitleBarPanel and custom title bars allowing
you to customize a VCL forms-native Windows title bar to build modern
enhanced title bars. You can place VCL controls on the Windows title bar,
control the default painting of elements such as the window icon and caption,
add new custom system buttons near the minimize maximize and close buttons,
or even custom paint the title bar entirely. With TTitleBarPanel and custom title
bars in RAD Studio 10.4 you can now build modern enhanced title bars similar
to the most popular word processing and web browser applications today.
The VCL styles architecture has been significantly extended in RAD Studio 10.4
to support high DPI and 4k monitors. We've updated a large number of our
built-in and premium VCL styles to provide support for the new high DPI
style mode letting you design visually stunning applications for any monitor.
All user interface controls on a styled VCL form are now automatically scaled
for the proper resolution of the monitor the form is displayed on. The style API
has been fully revised to support high DPI styles. Each user interface element
can be selected from a library of multi- scaled versions and scaled to any DPI,
resulting in crisp UI elements on all monitors.
We've made numerous enhancements to the IDE in RAD Studio 10.4. The IDE and key dialogues
use the new TCustomTitleBar control to implement search and settings on the
title bar, enabling native look and feel and
Windows DWM behavior. The code editor in RAD Studio 10.4 includes several
productivity improvements. The syntax highlighter that is being used for the
current file is displayed in the status bar. Clicking this lets you choose a
different syntax highlighter which can be useful when comments contain a
different language such as XML. The file encoding used for the current unit is
now displayed on the status bar. Clicking this displays a menu allowing you to
quickly change the file encoding. There's also a new setting to control the file
encoding used when creating new units which can be found in the options dialog.
In RAD Studio 10.4 the default encoding for a new unit remains ANSI. The status
bar now has a font size track bar and increase in decrease buttons.
Dragging this or clicking the plus/minus buttons will change the font size on the fly.
C++Builder 10.4 introduces a new debugger for Win64 C++. With a focus on
debugger stability and debugger productivity features, the new debugger
is based on a recent version of LLDB and has improved support debugging with a
new debug format which improves debugging for all data. It also has special
support for evaluating complex data types.
For example, here the debugger
tooltip is evaluating an STL narrow string and wide string, inspecting a
vector showing the length and contents, and as an example of a complex STL
container the length and contents of a std map. This is done through LLDB
formatters and we ship formatters for many types, including VCL unicode and
ANSI strings, including UTF-8, shared pointer, and std vector dec and map
Evaluation is shown in a debugger tooltip evaluated modified watches local
variables and more. Both the general improved debugging and the advanced
visualization of complex types is a great productivity boost when debugging
your Windows applications with C++Builder 10.4.
With RAD Studio 10.4
Delphi and C++Builder developers can adjust to the new launch screen requirement
for iOS. Support is built into the IDE making it easy for developers to create
a new launch screen for their application. The launch screen uses a
centered icon at different resolutions and different ones for light and dark
mode, a background color for each of the modes, and developers can also replace it
with their own custom built launch storyboard.
Through the new metal driver
GPU support for macOS and iOS in RAD Studio 10.4, Delphi developers can now
build macOS applications against the metal API rather than the old quartz API
and OpenGL. FireMonkey metal support offers a smooth migration to future
requirements and better performance for screen rendering. In 10.4 we've also
added support for the metal API on iOS for Delphi and C++Builder.
Visit embarcadero.com today to download a trial