Versión do framework Qt 5.13

Despois de seis meses de desenvolvemento preparado liberación dun marco multiplataforma Qt 5.13. 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 principal innovacións:

  • Ofrécese soporte total para o módulo "Qt for WebAssembly" (anteriormente experimental), que permite compilar aplicacións gráficas baseadas en Qt en forma de módulos WebAssembly que se poden executar directamente nun navegador web. Emscripten úsase para compilar. OpenGL tradúcese a WebGL;
  • Ampliáronse as capacidades do módulo Qt GUI, que xeneraliza clases relacionadas coa integración con sistemas de fiestras, procesamento de eventos, integración con OpenGL e OpenGL ES, gráficos 2D, traballo con imaxes, fontes e texto. A nova versión engade unha nova API
    QImage::convertTo para converter formatos de imaxe. Engadíronse novos métodos claro, reserva e capacidade á clase QPainterPath;

  • O módulo Qt QML, que proporciona ferramentas para desenvolver unha interface usando a linguaxe QML, mellorou o soporte para tipos enumerados definidos en código C++. Procesamento optimizado de valores "nulos" na fase de compilación. Engadiuse a posibilidade de xerar táboas de funcións en sistemas Windows de 64 bits, o que lle permite desenrolar a pila para funcións compiladas con JIT;
  • En Qt Quick, o obxecto TableView engadiu a posibilidade de ocultar columnas e filas da táboa;
  • Tipo engadido a Qt Quick Controls 2 Vista dividida para colocar elementos horizontal ou verticalmente, mostrando un separador móbil entre cada elemento. Engadiuse unha propiedade para as iconas que che permite controlar o seu almacenamento na caché;
  • O motor web Qt WebEngine actualizouse a Chromium 73 e ampliouse coa compatibilidade dun visor de PDF integrado, deseñado como un complemento interno. A nova versión tamén engade almacenamento de certificados de clientes locais e soporte para certificados de QML. Engadida a API de notificacións web. Implementouse o soporte para definir interceptores de solicitudes de URL;
  • O módulo Qt Network para sockets SSL engadiu soporte para canles seguras e a posibilidade de comprobar o estado dos certificados mediante o OCSP (Online Certificate Status Protocol). Para admitir SSL en Linux e Android, utilizouse unha nova rama da biblioteca OpenSSL 1.1;
  • No módulo Qt Multimedia para o tipo QML VideoOutput, engadiuse soporte para a reprodución continua (sen pausas entre diferentes contidos, controlada pola propiedade flushMode). Para Windows e macOS, engadiuse a posibilidade de usar o marco GStreamer. Engadido soporte para roles de audio para Android;
  • Actualizouse o módulo Qt KNX co soporte do estándar do mesmo nome para o control domótico. Engadiuse unha API para establecer conexións de clientes seguras co servidor KNXnet, que se pode usar para enviar mensaxes de forma segura ao bus KNX e controlar os dispositivos habilitados para KNX;
  • Eliminouse a bandeira de desenvolvemento experimental da API de C++ do módulo Qt OPC UA, que ofrece soporte para o estándar de comunicación industrial OPC/UA. Engadida API experimental para QML;
  • Engadiuse un novo módulo experimental Qt CoAP Constrained Application Protocol coa implementación da parte cliente do protocolo M2M utilizado para crear redes de dispositivos de Internet das Cousas. Soporte implementado para DTLS (Datagram TLS) sobre UDP;
  • Fixéronse correccións e melloras no conxunto de módulos "Qt for Python" para crear aplicacións gráficas en Python mediante Qt5 (os desenvolvedores de Python teñen acceso á maior parte da API Qt C++). Qt para Python está baseado no módulo PySide2 e continúa o seu desenvolvemento (de feito, a primeira versión de PySide con soporte para Qt 5 ofrécese cun novo nome);
  • Engadiuse un novo módulo experimental Qt Lottie, que proporciona unha API QML avanzada que che permite renderizar gráficos e animacións exportadas en formato JSON mediante o complemento Bodymovin para Adobe After Effects. Grazas a QtLottie, un deseñador pode preparar efectos de animación nunha aplicación conveniente e un programador pode conectar directamente os ficheiros exportados á interface da aplicación en QtQuick. QtLottie inclúe un micromotor integrado para realizar animacións, recortes, capas e outros efectos. O motor é accesible a través do elemento LottieAnimation QML, que se pode controlar desde código QML do mesmo xeito que calquera outro elemento QtQuick;
  • Qt Wayland Compositor, un sistema de renderizado multiproceso para dispositivos integrados baseado no protocolo Wayland, ofrece soporte para os protocolos linux-dmabuf-unstable-v1 e wp_viewporter. Engadiuse soporte ao protocolo fullscreen-shell-unstable-v1 aos compoñentes da plataforma para Wayland;
  • No módulo para admitir a plataforma Android, engadiuse a posibilidade de usar diálogos nativos para traballar con ficheiros. Os requisitos para a versión mínima da plataforma eleváronse a Android 5.0 (nivel de API 21);
  • Qt 3D engadiu compatibilidade para importar e exportar renderizadores de texturas OpenGL. Soporte inicial implementado para importar escenas glTF 2.0;
  • Os módulos Qt Script quedaron en desuso e eliminaranse nunha versión futura.
    Qt Quick Controls 1 e Qt XmlPatterns. Eliminouse o módulo Qt Canvas 3D.

Fonte: opennet.ru

Engadir un comentario