Wenn Sie die Geschehnisse rund um RAD Studio verfolgen, haben Sie wahrscheinlich unsere Ankündigung gesehen, dass wir uns wieder auf die Sprache C++ konzentrieren werden, Was kommt für C++Builder: Eine verblüffende Vorschau. Im Anschluss an unsere aufregenden C++Builder-Updates möchten wir Ihnen einige Details zu unseren Plänen für die anderen Teile des Produkts mitteilen, insbesondere zu unseren VCL- und FireMonkey UI-Bibliotheken.
Eine neue Grundlage für FireMonkey: Skia
Die geräte- und plattformübergreifende UI-Bibliothek von RAD Studio basiert auf dem Konzept der Abstraktion des eigentlichen Renderings der UI-Elemente mithilfe von Stilen. Stile werden mit Hilfe einiger primitiver grafischer Objekte und Elemente implementiert, die von FireMonkey auf verschiedene Grafiktreiber abgebildet werden, von DirectX bis Metal.
In den letzten Jahren ist in diesem Bereich eine Bibliothek entstanden, die eine höhere Abstraktionsebene mit komplexeren Primitiven bietet und gleichzeitig auf denselben plattformeigenen Treibern arbeitet, die FireMonkey unterstützt. Diese Bibliothek heißt Skia und es bietet eine unglaubliche Leistung für 2D-Grafikanwendungen aller Art, zusammen mit einem deutlichen Leistungsschwerpunkt. Skia ist die Grundlage für einige der erfolgreichsten Multi-Device-Anwendungen von heute, angefangen bei Googles Chrome-Browser.
Es ist möglich, Skia für FireMonkey-Anwendungen zu verwenden, indem Sie das Skia4Delphi Bibliothek, die auch direkt in GetIt. In zukünftigen Versionen von RAD Studio wird es eine tiefe und sofort einsatzbereite Integration von Skia und Skia4Delphi geben: Indem wir Skia zum Bestandteil des Produkts machen, bieten wir eine reibungslosere Erfahrung und machen es zu einem erstklassigen Bürger im FireMonkey-Ökosystem. Zu den Vorteilen gehört ein schnelleres Rendering, insbesondere unter Android, aber auch eine Reihe zusätzlicher Funktionen und Komponenten, die bei Verwendung eines Skia-basierten Treibers zur Verfügung stehen.
Beachten Sie, dass wir im Rahmen der Skia-Unterstützung nicht nur die Verwendung als FireMonkey-GPU-Treiber planen, sondern auch spezielle UI-Steuerelemente für FireMonkey und sogar für die VCL-Bibliothek einbeziehen.

(Das SkLabel-Steuerelement unterstützt mehrere Abschnitte eines einzelnen Etiketts mit unterschiedlichen Textattributen, wie Sie im Objektinspektor sehen können)
VCL-Modernisierung: Die Rückkehr von MDI
Wir wissen, dass viele unserer Kunden bestehende VCL-Anwendungen haben, die sie aktiv halten und modernisieren möchten. Die VCL-Bibliothek hat kontinuierlich starke Unterstützung für die Anwendungsmodernisierung geboten, z.B. HighDPI-Unterstützung, eine ausgefeilte Styling-Architektur, die Verwendung neuerer Versionen der Plattform-Steuerelemente, die Integration der WinRT-API, die Unterstützung der MSIX-Bereitstellung und die Integration des WebView2-Steuerelements (die Chromium-basierte Engine des Edge-Browsers).
In den letzten Jahren haben wir uns von der Unterstützung für das MDI-Modell (das Schnittstelle für mehrere Dokumente). Dies ist ein relativ veraltetes UI-Paradigma, das darauf beruht, dass mehrere Fenster (die denselben Inhalt oder unterschiedliche Inhalte zeigen) in einem Hauptfenster untergebracht sind. So veraltet es auch sein mag, das MDI-Modell kann effektiv sein und viele unserer Kunden verwenden es schon seit langem, haben ihre Benutzer darauf trainiert und würden es aus diesen Gründen gerne weiter verwenden. Einer der Nachteile des VCL-MDI-Modells besteht darin, dass es eine Hülle für die Unterstützung der Windows-Plattform ist - und diese Unterstützung hat viele Probleme, z.B. auf HighDPI-Monitoren.

(oben) Eine MDI-Anwendung mit voller Styling-Unterstützung bei hoher DPI, dargestellt mit dem VCL-Stil Glow (links) und dem VCL-Stil Aqua Light Slate (rechts)
Nach umfangreichen Recherchen und technischen Überprüfungen haben wir beschlossen, dass es sich lohnt, einen Versuch zu unternehmen, alle wichtigen Plattformprobleme zu umgehen und das VCL MDI-Modell zu überarbeiten. Es basiert zwar immer noch auf der Kern-API der Plattform, aber wir haben die meisten Plattformprobleme umgangen und gelöst. Außerdem führen wir eine neue Option für das Hosten von MDI-Formularen (oder generell von Formularen) in einer tabulatorbasierten Benutzeroberfläche ein, wie Sie unten sehen können. Für alle unsere Kunden, die die MDI-Benutzeroberfläche verwenden, wird die nächste Version frischen Wind bringen - sie wird den Anwendungen neues Leben einhauchen. Insbesondere haben wir uns auf die HighDPI-Unterstützung und die Unterstützung von VCL-Styles konzentriert, so dass Sie alle bestehenden VCL-Modernisierungsfunktionen auch für MDI-Anwendungen nutzen können.

(oben) Das neue, auf Registerkarten basierende MDI-Modell
Und vieles mehr
Es gibt noch viel mehr, woran Embarcadero R&D derzeit arbeitet, in Bezug auf Bibliotheken, IDE, Compiler, Plattform-Updates und Datenbankzugriff. Die nächste Version von RAD Studio wird ein großes Release für C++-Entwickler sein, aber auch für Delphi-Entwickler wird es ein sehr wichtiges Release sein, mit Verbesserungen in allen Produktbereichen.
Bleiben Sie dran für weitere Informationen in den kommenden Monaten und einen frühen Beta-Zugang, zunächst für unsere Kunden mit einem aktiven Premium-Abonnement.
Haftungsausschluss: Alle neuen Funktionen und Verbesserungen, die in diesem Blog-Beitrag für zukünftige Versionen von RAD Studio diskutiert werden, sind bis zur Fertigstellung und Freigabe nicht verbindlich.
Sind Sie an der neuesten Version zu einem Sonderpreis interessiert?
