lançamento do framework multiplataforma . Os códigos-fonte dos componentes Qt são fornecidos sob as licenças LGPLv3 e GPLv2. Em dezembro, será lançado um novo ramo do Qt 6, no qual mudanças arquitetônicas significativas. Para facilitar a transição futura para o ramo Qt 6, o Qt 5.15 inclui implementações preliminares de algumas inovações e adiciona avisos sobre a iminente descontinuação de funcionalidades planejadas para remoção no Qt 6.
O Qt 5.15 é classificado como uma versão com suporte a longo prazo (LTS). Sendo assim, para a comunidade, atualizações do ramo 5.15 apenas até a formação da próxima versão significativa, ou seja, aproximadamente seis meses. O ciclo estendido de LTS, que prevê a geração de atualizações por um período de três anos, será restrito aos usuários com licença comercial (para empresas comuns — $5508 por ano para cada desenvolvedor, e para startups e pequenas empresas — $499 por ano). A Qt Company também a possibilidade de mudar para um modelo de distribuição do Qt, no qual todas as versões nos primeiros 12 meses seriam disponibilizadas apenas para usuários de licenças comerciais. Mas até agora, essa ideia não foi além da discussão.
Principais :
- O trabalho na criação de uma API gráfica abstrata, independente da API 3D do sistema operacional, foi continuado. O componente chave do novo sistema gráfico do Qt é o mecanismo de renderização de cenas, que utiliza uma camada RHI (Rendering Hardware Interface) para garantir que aplicativos Qt Quick funcionem não só com OpenGL, mas também sobre APIs Vulkan, Metal e Direct 3D. Na versão 5.15, o novo sistema gráfico é oferecido como uma opção com status de 'Technology Preview'.
- Suporte completo ao módulo , do qual foi removida a designação de desenvolvimento experimental. O Qt Quick 3D oferece uma API unificada para criar interfaces de usuário com base no Qt Quick, combinando elementos de gráficos 2D e 3D. A nova API permite usar QML para definir elementos 3D das interfaces sem a necessidade de utilizar o formato UIP. No Qt Quick 3D, é possível usar um único runtime (Qt Quick), um layout de cena e um framework de animação tanto para 2D quanto para 3D, e para o desenvolvimento visual da interface, aplica-se o Qt Design Studio. O módulo resolve problemas como grandes sobrecargas na integração do QML com conteúdo do Qt 3D ou 3D Studio e proporciona a possibilidade de sincronizar animações e transformações em nível de quadros individuais entre 2D e 3D.
Entre as novas funcionalidades adicionadas ao Qt Quick 3D, destaca-se o suporte a efeitos de pós-processamento, API C++ para gerenciamento de geometria, API para rotação baseada na classe QQuaternion, e suporte a fontes de luz pontuais. Para avaliar as diversas capacidades do Qt Quick 3D um aplicativo de demonstração especial que mostra como é possível alterar tipos e fontes de iluminação, usar modelos complexos, manipular texturas, materiais e suavização. Simultaneamente lançamento para o design da interface do usuário, o Qt Design Studio 1.5, que possui suporte completo ao Qt Quick 3D.

- No Qt QML, o foco foi na preparação para o Qt 6. Implementou-se a possibilidade de uso em componentes de propriedades com a designação 'required', cujo preenchimento é obrigatório. No utilitário qmllint, aprimorou-se a geração de avisos sobre possíveis problemas no código QML. Adicionou-se a ferramenta qmlformat, que facilita o formatação do código QML de acordo com as recomendações de estilo de codificação. Garantiu-se a compatibilidade do QML com a edição do Qt para .
- No Qt Quick, o elemento Image recebeu suporte a espaços de cor. No Qt Quick Shapes, um novo elemento PathText foi adicionado.
No manipulador de ponteiro, foi adicionado a propriedade cursorShape, através da qual é possível alterar a forma do cursor do mouse em sistemas desktop. Adicionou-se o elemento HeaderView para facilitar a inclusão de cabeçalhos verticais e horizontais em tabelas baseadas em TableView. - O suporte ao decorador de janelas do lado do cliente (CSD) foi significativamente melhorado, permitindo que o aplicativo identifique seus próprios elementos de decoração de janelas e insira conteúdo arbitrário no cabeçalho da janela.
- O módulo foi estabilizado , que fornece uma API expandida para QML, permitindo renderizar gráficos e animações exportados em formato JSON usando o plugin Bodymovin do pacote Adobe After Effects. Com o QtLottie, o designer pode preparar efeitos de animação no aplicativo de sua escolha, enquanto o desenvolvedor conecta diretamente os arquivos exportados à interface dos aplicativos em QtQuick. O QtLottie inclui um micro-motor embutido para execução de animações, cortes, manipulação de camadas e outros efeitos. O motor é acessível através do elemento QML LottieAnimation, que pode ser controlado a partir do código QML, da mesma forma que qualquer outro elemento do QtQuick.
- O mecanismo de navegador Qt WebEngine foi atualizado para a base de código (na branch 5.14 foi utilizado o Chromium 77, a versão atual é ).
- No módulo Qt 3D, foram melhoradas as ferramentas de perfilagem e depuração.
- No Qt Multimedia, foi adicionada a capacidade de renderizar em várias superfícies.
- No Qt GUI, as operações de escalonamento e transformação de imagens agora são realizadas em modo multi-thread em muitos casos.
- No Qt Network, foi adicionada a suporte para timeouts configuráveis e em TLS 1.3 (Session Ticket, que permitem retomar a sessão sem armazenar o estado do lado do servidor).
- Foi garantida a possibilidade de trabalhar com Qt Core, QRunnable e QThreadPool com std::function. Um novo método QFile::moveToTrash() foi adicionado para mover itens para a lixeira, levando em conta as especificidades de diferentes plataformas.
- No Qt para Android suporte a diálogos nativos para abrir e salvar arquivos.
Fonte: opennet.ru

