Si vous suivez ce qui se passe autour de RAD Studio, vous avez probablement vu notre annonce concernant le renouvellement de l'accent mis sur le langage C++, Ce qui s'en vient pour C++Builder : un aperçu étonnant. Pour faire suite à nos passionnantes mises à jour de C++Builder, nous voulions partager quelques détails sur ce que nous avons prévu pour les autres parties du produit, en particulier nos bibliothèques VCL et FireMonkey UI.
Une nouvelle fondation pour FireMonkey : Skia
La bibliothèque d'interface utilisateur multi-appareils et multiplateforme de RAD Studio est basée sur le concept d'abstraction du rendu réel des éléments de l'interface utilisateur, à l'aide de styles. Les styles sont implémentés à l'aide d'objets et d'éléments graphiques primitifs, mappés par FireMonkey à différents pilotes graphiques, de DirectX à Metal.
Ces dernières années, une bibliothèque est apparue dans ce domaine, qui offre un niveau d'abstraction plus élevé avec des primitives plus complexes tout en travaillant sur les mêmes pilotes natifs de plateforme que FireMonkey prend en charge. Cette bibliothèque s'appelle Skia et il offre une puissance incroyable pour les applications graphiques 2D de toutes sortes, tout en mettant l'accent sur les performances. Skia est à l'origine de certaines des applications multi-appareils les plus réussies aujourd'hui, à commencer par Le navigateur Chrome de Google.
Il est possible d'utiliser Skia pour alimenter les applications FireMonkey dès aujourd'hui, en utilisant l'option Skia4Delphi qui est également disponible directement dans la bibliothèque GetIt. Ce qui est prévu dans les futures versions de RAD Studio est une intégration profonde et prête à l'emploi de Skia et de Skia4Delphi : en l'intégrant au produit, nous offrirons une expérience plus fluide et nous en ferons un citoyen de première classe dans l'écosystème FireMonkey. Les avantages seront un rendu plus rapide, en particulier sur Android, mais aussi un certain nombre de fonctionnalités et de composants supplémentaires disponibles lors de l'utilisation d'un pilote basé sur Skia.
Notez que dans le cadre du support de Skia, nous ne prévoyons pas seulement de l'utiliser comme pilote GPU FireMonkey, mais nous prévoyons également d'inclure des contrôles d'interface utilisateur spécifiques pour FireMonkey et même pour la bibliothèque VCL.

(Le contrôle SkLabel prend en charge plusieurs sections d'une même étiquette avec des attributs de texte différents, comme vous pouvez le voir dans l'inspecteur d'objets).
Modernisation de la VCL : Le retour de MDI
Dans un tout autre domaine, nous savons que beaucoup de nos clients ont des applications VCL existantes qu'ils souhaitent maintenir actives et moderniser. La bibliothèque VCL a toujours fourni un support solide pour la modernisation des applications, comme le support HighDPI, une architecture de style sophistiquée, l'utilisation de versions plus récentes des contrôles de la plateforme, l'intégration de l'API WinRT, le support du déploiement MSIX, et l'intégration du contrôle WebView2 (le moteur basé sur Chromium du navigateur Edge).
Au cours des dernières années, nous avons abandonné le soutien au modèle MDI (le modèle Interface pour documents multiples). Il s'agit d'un paradigme d'interface utilisateur relativement obsolète, basé sur l'existence de plusieurs fenêtres (affichant le même type de contenu ou des types différents) hébergées dans une fenêtre principale conteneurisée. Même s'il s'agit d'un style ancien, le modèle MDI peut être efficace et beaucoup de nos clients l'utilisent depuis longtemps, ont formé leurs utilisateurs à cet effet et préfèrent donc continuer à l'utiliser. L'un des inconvénients du modèle MDI de VCL est qu'il s'agit d'une enveloppe autour du support de la plate-forme Windows - et ce support présente de nombreux problèmes sur les moniteurs HighDPI, par exemple.

(ci-dessus) Une application MDI avec prise en charge complète du style sur High DPI, illustrée en utilisant le style Glow VCL (à gauche) et le style Aqua Light Slate VCL (à droite).
Après des recherches approfondies et un examen technique, nous avons décidé qu'il valait la peine d'essayer de résoudre tous les principaux problèmes liés à la plate-forme et de retravailler le modèle VCL MDI. Bien qu'il soit toujours basé sur l'API de base de la plate-forme, nous avons contourné et résolu la plupart des problèmes de plate-forme. De plus, nous introduisons une nouvelle option pour héberger les formulaires MDI (ou tout autre formulaire en général) dans une interface utilisateur basée sur des onglets, comme vous pouvez le voir ci-dessous. Pour tous nos clients qui utilisent l'interface MDI, la prochaine version offrira une bouffée d'air frais - en injectant une nouvelle vie dans les applications. En particulier, nous nous sommes concentrés sur la prise en charge de HighDPI et des styles VCL, afin que vous puissiez utiliser toutes les fonctionnalités de modernisation VCL existantes également pour les applications MDI.

(ci-dessus) Le nouveau modèle MDI basé sur les onglets
Et bien plus encore
La R&D de Embarcadero travaille actuellement sur bien d'autres éléments, en termes de bibliothèques, d'IDE, de compilateurs, de mises à jour de la plate-forme et d'accès à la base de données. La prochaine version de RAD Studio sera une version importante pour les développeurs C++, mais aussi pour les développeurs Delphi, avec des améliorations dans tous les domaines du produit.
Restez à l'écoute pour plus d'informations dans les mois à venir et pour un accès anticipé à la version bêta, en commençant par nos clients ayant un abonnement Premium actif.
Clause de non-responsabilité : Toutes les nouvelles fonctionnalités et améliorations discutées dans ce billet de blog pour les futures versions de RAD Studio ne sont pas engagées jusqu'à ce qu'elles soient terminées et que l'AG soit publiée.
Vous êtes intéressé par la dernière version à un prix spécial ?
