Lanzamento do framework Qt 5.14 e do contorno de desenvolvemento Qt Creator 4.11.0
Despois de seis meses de desenvolvemento preparado liberación dun marco multiplataforma Qt 5.14. O código fonte dos compoñentes de Qt ten licenza LGPLv3 e GPLv2, ferramentas para desenvolvedores de Qt como Qt Creator e qmake, e algúns módulos teñen licenza GPLv3. O lanzamento de Qt 5.14 marcou o inicio da preparación da rama Qt 6, na que esperado importantes cambios arquitectónicos. Qt 6 está programado para finais do próximo ano e, para suavizar a transición á nova rama, decidiuse incluír implementacións preliminares dalgunhas innovacións nas versións Qt 5.14 e Qt 5.15 LTS.
Qt Quick comezou a traballar para proporcionar unha API de gráficos independente da API 3D do sistema operativo. En Qt 5.14 proposto implementación preliminar dun novo motor de renderizado de escenas utilizando a nova capa RHI (Rendering Hardware Interface) para permitir que as aplicacións Qt Quick se executen non só sobre OpenGL, como era o caso ata agora, senón tamén mediante Vulkan, Metal e Direct 3D 11. O novo motor proponse actualmente en forma de opción para preparar aplicacións para a transición a Qt 6, na que RHI se utilizará para a saída de gráficos por defecto.
Implementouse o módulo Qt Quick Timeline, o que facilita a animación de propiedades mediante unha liña de tempo e fotogramas clave. O módulo deriva do contorno de desenvolvemento Qt Design Studio, que proporciona un editor baseado na cronoloxía para crear animacións sen escribir código.
Engadido módulo experimental Qt Quick 3D, que proporciona unha API unificada para crear interfaces de usuario baseadas en Qt Quick que combinan elementos gráficos 2D e 3D. A nova API permítelle utilizar QML para definir elementos da interface 3D sen utilizar o formato UIP. O módulo resolve problemas como grandes sobrecargas ao integrar QML con contido de Qt 3D ou 3D Studio, e ofrece a posibilidade de sincronizar animacións e transformacións a nivel de fotogramas entre 2D e 3D. En Qt Quick 3D, pode usar un tempo de execución (Qt Quick), un deseño de escena e un marco de animación para 2D e 3D, e usar Qt Design Studio para o desenvolvemento da interface visual.
Engadiuse WheelHandler, un controlador para eventos da roda do rato, así como eventos para unha roda emulado por un panel táctil.
Continúa o traballo para mellorar o rendemento en pantallas con alta densidade de píxeles. Incluíndo a capacidade de especificar factores de escala fraccionarios.
Engadiuse a posibilidade de engadir espazos de cor para as imaxes, o que lle permite conseguir unha correcta reprodución da cor cando se mostran imaxes en monitores calibrados.
Engadiuse o espazo de nomes QColorConstants, que en tempo de compilación permite xerar instancias da clase QColor cunha paleta predefinida.
Engadiuse soporte para ler e escribir Markdown aos compoñentes Qt Widgets e Qt Quick para crear editores de texto.
A API de QCalendar implementa a capacidade de traballar con calendarios que non sexan gregorianos.
Para Android, engadiuse soporte para conxuntos que abarcan varios ABI, o que che permite compilar unha aplicación para diferentes arquitecturas á vez. Tamén se engadiu soporte ao formato de paquete AAB, o que permite que as aplicacións sexan entregadas para todas as arquitecturas compatibles nun mesmo arquivo.
Levado a cabo optimización do rendemento do módulo Qt 3D, incluíndo o traballo modernizado con fíos, obxectos framebuffer e o sistema de notificación. Como resultado, foi posible reducir a carga da CPU ao debuxar un cadro e aumentar a eficiencia da sincronización entre fíos en execución.
Engadíronse API ao módulo Qt Network para configurar os parámetros HTTP/2 e supervisar a conexión de rede.
O motor web Qt WebEngine actualizouse a Chromium 77 e ampliouse cunha nova API para xestionar o ciclo de vida do obxecto QWebEnginePage.
Licenza para Qt Wayland Compositor, Qt Application Manager e Qt PDF components cambiado de LGPLv3 a GPLv3, é dicir. A vinculación con novas versións destes compoñentes agora require abrir o código fonte dos programas baixo licenzas compatibles con GPLv3 ou mercar unha licenza comercial (LGPLv3 permitiu a ligazón con código propietario).
Simultaneamente formado Lanzamento IDE QtCreator 4.11.0, deseñado para crear aplicacións multiplataforma usando a biblioteca Qt. Admítense tanto o desenvolvemento de programas clásicos de C++ como o uso da linguaxe QML, no que se usa JavaScript para definir scripts, e a estrutura e os parámetros dos elementos da interface son definidos por bloques tipo CSS.
A nova versión de Qt Creator engade soporte experimental para desenvolver aplicacións para microcontroladores e compilar en WebAssembly mediante módulos "Qt para MCU"E"Qt para WebAssembly". Para sistemas con
CMake 3.14 e as versións máis recentes usan unha nova para configurar e analizar proxectos API de ficheiros (/.cmake/api/). Engadido soporte ao editor de código ampliación Protocolo de Language Server para resaltar a semántica e tamén simplificar a configuración do Language Server para a linguaxe Python. Engadiuse unha opción á interface para cambiar o estilo de marcado de final de liña. Engadiuse a capacidade de editar ligazóns QML a Qt Quick Designer.