Versión del marco Qt 5.15

Presentado por lanzamiento de un marco multiplataforma Qt 5.15. El código fuente de los componentes Qt se proporciona bajo las licencias LGPLv3 y GPLv2. En diciembre se publicará una nueva rama de Qt 6, en la que son esperados importantes cambios arquitectónicos. Para facilitar la transición futura a la rama Qt 6, Qt 5.15 incluye implementaciones preliminares de algunas características nuevas y advertencias agregadas sobre la inminente desaprobación de la funcionalidad programada para su eliminación en Qt 6.

Qt 5.15 está clasificado como una versión de soporte a largo plazo (LTS). Al mismo tiempo, para las actualizaciones de la comunidad a la rama 5.15. sera publicado sólo hasta que se forme el siguiente problema importante, es decir unos seis meses. El ciclo LTS extendido, que implica generar actualizaciones durante un período de tres años, se limitará a usuarios con una licencia comercial ($5508 por año por desarrollador para empresas regulares y $499 por año para nuevas empresas y pequeñas empresas). La compañía Qt también consideró la capacidad de cambiar al modelo de distribución Qt, en el que todos los lanzamientos de los primeros 12 meses se distribuirán únicamente a usuarios de licencias comerciales. Pero hasta ahora esta idea no ha pasado de discusión.

El principal innovaciones en Qt 5.15:

  • Se continuó trabajando en la creación de una API de gráficos abstractos que no dependa de la API 3D del sistema operativo. Un componente clave de la nueva pila de gráficos Qt es el motor de renderizado de escenas, que utiliza la capa RHI (Rendering Hardware Interface) para potenciar las aplicaciones Qt Quick no sólo con OpenGL, sino también sobre las API Vulkan, Metal y Direct 3D. En 5.15, la nueva pila de gráficos se ofrece en forma de una opción que tiene el estado de "Vista previa de tecnología".
  • Soporte completo del módulo proporcionado Qt Rápido 3D, del que se ha eliminado el signo de desarrollo experimental. Qt Quick 3D proporciona una API unificada para crear interfaces de usuario basadas en Qt Quick que combinan elementos gráficos 2D y 3D. La nueva API le permite usar QML para definir elementos de interfaz 3D sin usar el formato UIP. En Qt Quick 3D, puede usar un tiempo de ejecución (Qt Quick), un diseño de escena y un marco de animación para 2D y 3D, y usar Qt Design Studio para el desarrollo de interfaces visuales. El módulo resuelve problemas como la gran sobrecarga al integrar QML con contenido de Qt 3D o 3D Studio y brinda la capacidad de sincronizar animaciones y transformaciones a nivel de fotograma entre 2D y 3D.

    Las nuevas características agregadas a Qt Quick 3D incluyen soporte para efectos de posprocesamiento, una API C++ para manipulación de geometría, una API de rotación basada en la clase QQuaternion y soporte para luces puntuales. Evaluar las diversas características de Qt Quick 3D preparado una aplicación de demostración especial que muestra cómo cambiar los tipos y fuentes de iluminación, utilizar modelos complejos, manipular texturas, materiales y suavizado. Simultáneamente sugirió cuestión ambiente para diseñar la interfaz de usuario de Qt Design Studio 1.5, que proporciona soporte completo para Qt Quick 3D.


  • En Qt QML el trabajo fue concentrado en preparación para Qt 6. Se ha implementado la capacidad de utilizar propiedades con el atributo "requerido" en componentes cuya instalación es obligatoria. La utilidad qmllint ha mejorado la generación de avisos sobre posibles problemas en el código QML. Se agregó la utilidad qmlformat, que facilita el formato del código QML de acuerdo con las pautas de estilo de codificación. Compatibilidad asegurada de QML con la edición Qt para microcontroladores.
  • En Qt Quick, se agregó soporte para espacios de color al elemento Imagen. Se ha agregado un nuevo elemento PathText a Qt Quick Shapes.
    Se ha agregado una propiedad cursorShape al controlador del puntero, a través de la cual puede cambiar la forma del cursor del mouse en los sistemas de escritorio. Se agregó un elemento HeaderView para facilitar la adición de encabezados verticales y horizontales a tablas basadas en TableView.

  • Se ha mejorado significativamente la compatibilidad con la decoración de ventanas (CSD) del lado del cliente, lo que permite que una aplicación defina sus propias decoraciones de ventanas y coloque contenido personalizado en la barra de título de la ventana.
  • Módulo estabilizado qt lottie, que proporciona una API QML avanzada que le permite renderizar gráficos y animaciones exportados en formato JSON utilizando el complemento Bodymovin para Adobe After Effects. Gracias a QtLottie, un diseñador puede preparar efectos de animación en una aplicación conveniente y un desarrollador puede conectar directamente archivos exportados a la interfaz de la aplicación en QtQuick. QtLottie incluye un micromotor incorporado para realizar animaciones, recortes, capas y otros efectos. Se puede acceder al motor a través del elemento QML LottieAnimation, que se puede controlar desde el código QML de la misma manera que cualquier otro elemento QtQuick.
  • El motor del navegador Qt WebEngine se ha actualizado al código base. Chromium 80 (en la rama 5.14 se utilizó Chromium 77, la versión actual es Chromium 83).
  • El módulo Qt 3D ha mejorado las herramientas de creación de perfiles y depuración.
  • Qt Multimedia ha agregado soporte para renderizado de múltiples superficies.
  • En Qt GUI, las operaciones de transformación y escalado de imágenes ahora son multiproceso en muchos casos.
  • Qt Network ha agregado soporte para tiempos de espera personalizados y atajos de sesión en TLS 1.3 (Ticket de sesión, le permite reanudar una sesión sin guardar el estado en el lado del servidor).
  • Se habilitó Qt Core, QRunnable y QThreadPool para trabajar con std::function. Se agregó un nuevo método QFile::moveToTrash() para mover elementos a la papelera, teniendo en cuenta las características específicas de las diferentes plataformas.
  • En Qt para Android agregado Soporte para cuadros de diálogo nativos para abrir y guardar archivos.

Fuente: opennet.ru

Añadir un comentario