Caso você esteja acompanhando os desenvolvimentos em torno do RAD Studio, já se deparaou com o nosso renovado foco na linguagem dos nossos produtos, especialmente nossas bibliotecas VCL e a interface de usuário FireMonkey.
Uma Nova Base para o FireMonkey: Introdução do Skia
A estrutura multiplataforma e de interface do usuário do RAD Studio, o FireMonkey, opera através da abstração da renderização real dos elementos da interface usando estilos. Esses estilos são implementados por meio de objetos e elementos gráficos primitivos, que o FireMonkey mapeia para diversos drivers gráficos, desde DirectX até Metal.
Recentemente, emergiu uma biblioteca que oferece um nível mais alto de abstração, empregando primitivas mais complexas e operando na mesma plataforma dos drivers nativos do FireMonkey. Essa biblioteca é o Skia, que proporciona um poder incrível para aplicações gráficas 2D de todos os tipos, com um foco notável em desempenho. O Skia é utilizado por algumas das aplicações multidispositivos mais renomadas, começando pelo navegador Chrome do Google.
É possível utilizar o Skia para impulsionar aplicações do FireMonkey hoje, através da biblioteca Skia4Delphi, disponível no GetIt. No entanto, nas futuras versões do RAD Studio, estamos trabalhando para uma integração mais profunda e pronta para uso do Skia e Skia4Delphi. Ao torná-lo parte do produto, proporcionaremos uma experiência mais fluida e o incluiremos como um componente de destaque no ecossistema FireMonkey. Isso trará vantagens como renderização mais rápida, especialmente no Android, além de uma variedade de recursos e componentes adicionais ao usar um driver baseado no Skia.
Importante mencionar que, com o suporte ao Skia, nossa intenção não é apenas usá-lo como um driver de GPU do FireMonkey, mas também incorporar controles de interface do usuário específicos para o FireMonkey e até mesmo para a biblioteca VCL.
Modernização da VCL: O Retorno do MDI
Em um contexto completamente diferente, sabemos que muitos de nossos clientes possuem aplicações VCL que desejam manter atualizadas e modernizar. A biblioteca VCL sempre ofereceu um sólido suporte para a modernização de aplicações, incluindo o suporte a HighDPI, uma arquitetura de estilo avançada, utilização das versões mais recentes dos controles da plataforma, integração com API WinRT, implantação via MSIX e a incorporação do controle WebView2 (motor baseado em Chromium do navegador Edge).
Nos últimos anos, deixamos de dar suporte ao modelo MDI (Multiple Document Interface). Esse paradigma de interface do usuário, embora um tanto antiquado, se baseia em ter várias janelas, exibindo o mesmo tipo ou diferentes tipos de conteúdo, dentro de uma janela principal de contêiner. Apesar de sua antiguidade, o modelo MDI ainda pode ser eficaz, e muitos de nossos clientes o utilizam há muito tempo, tendo treinado seus usuários para isso. Por esses motivos, preferem continuar utilizando-o. Uma desvantagem do uso do modelo VCL MDI é que ele é uma camada extra sobre o suporte nativo à plataforma Windows, e esse suporte apresenta problemas em monitores HighDPI, por exemplo.
Após uma análise extensa e uma revisão de engenharia, decidimos que valia a pena abordar os principais problemas da plataforma e remodelar o modelo VCL MDI. Embora ainda baseado na API principal da plataforma, realizamos ajustes e resolvemos a maioria dos problemas associados. Além disso, estamos introduzindo uma nova opção para hospedar formulários MDI (ou qualquer formulário em geral) em uma interface de usuário baseada em guias, como demonstrado abaixo. Para nossos clientes que utilizam a interface MDI, a próxima versão trará um sopro de ar fresco, injetando novidade em suas aplicações. Especialmente, focamos no suporte a HighDPI e a estilos VCL, para que você possa aproveitar todos os recursos de modernização VCL também em aplicações MDI.
O trabalho da equipe de Pesquisa e Desenvolvimento da Embarcadero abrange uma ampla gama de áreas, como bibliotecas, ambiente de desenvolvimento, compiladores, atualizações de plataforma e acesso a bancos de dados. A próxima versão do RAD Studio será um marco para desenvolvedores C++, mas também trará melhorias significativas para os desenvolvedores Delphi, abrangendo diversas áreas do produto.