Реліз фреймворку Qt 6.1

Компанія Qt Company опублікувала реліз фреймворку Qt 6.1, в якому продовжено роботу зі стабілізації та нарощування функціональності гілки Qt 6. У Qt 6.1 забезпечено підтримку платформ Windows 10, macOS 10.14+, Linux (Ubuntu 20.04+, CentOS 8.1.+). iOS 15.1+ та Android (API 13+). Вихідні тексти компонентів Qt поставляються під ліцензіями LGPLv23 та GPLv3.

Ключові поліпшення Qt 6.1 в основному стосуються включення до складу модулів, які були доступні Qt 5.15, але виявилися не готові для включення до складу першого випуску Qt 6. Зокрема, до складу включені модулі:

  • Active Qt — підтримка елементів керування COM та ActiveX на платформі Windows.
  • Qt Charts – створення діаграм.
  • Qt Data Visualization – візуалізація статичних та динамічних даних.
  • Qt Device Utilities — це частина пакету Qt for Device Creation.
  • Qt Graphical Effect - прошарок для спрощення портування програм на Qt 6.
  • Qt Lottie – малює графіку та анімацію, експортовану у форматі JSON за допомогою плагіна Bodymovin до пакету Adobe After Effects. Включає вбудований мікродвигун для виконання анімації, обрізки, обробки шарів та інших ефектів.
  • Qt State Machine - фреймворк для створення подієво-орієнтованих конструкцій та реалізація кінцевого автомата на базі SCXML.
  • Qt Virtual Keyboard – реалізація віртуальної клавіатури.

Модулі, які ще не перенесені і очікуються в LTS-випуску Qt 6.2, наміченому на вересень.

  • qt-Bluetooth
  • Мультимедіа Qt
  • NFC
  • Позиціонування Qt
  • Qt Quick Dialogs: Folder, Message Box
  • Qt Remote Objects
  • Датчики Qt
  • Qt SerialBus
  • Послідовний порт Qt
  • Веб -канал Qt
  • Qt WebEngine
  • Qt WebSockets
  • Qt WebView

Зміни Qt 6.1:

  • У Qt Core проведено роботу з підвищення зручності використання та спрощення API. Додано методи removeIf() та розширено число класів, що підтримують метод erase_if(). Реалізовані методи, доступні в QString, але відсутні QStringView. Додані захищені від переповнення функції додавання, віднімання та множення. Поліпшено підтримку 16-розрядних значень з плаваючою комою. Оновлено API для прив'язки властивостей (property binding), що з'явився Qt 6.0. Додано нові класи для спрощення інтеграції з Java, QJniEnvironment та QJniObject, які зазвичай затребувані на платформі Android.
  • У Qt Gui покращена підтримка графічного API Vulkan 1.1 та 1.2. Додано новий клас QUrlResourceProvider, який використовується в QLabel та дозволяє обійтися без повторної реалізації loadResource() та створення підкласів QTextDocument. Реалізовано можливість застосування певних користувачем функцій корекції компонентів колірних просторів у класі QColorSpace.
  • У Qt Network запропоновано клас QNetworkInformation, що дозволяє визначити стан мережі у системі. У обробнику HTTP Cookie додано підтримку режиму SameSite.
  • У Qt Qml реалізовані опції QJSPrimitiveValue та QJSManagedValue для більш тонкого керування за виконанням JavaScript.
  • У Qt Quick 3D додано підтримку морфінгу цільової анімації та реалізовано експериментальну підтримку дублюючого рендерингу (instanced rendering), що дозволяє на один прохід відобразити безліч копій однотипних об'єктів, розміщених у периферійних частинах сцени. Метод суттєво прискорює рендеринг за наявності у сцені великої кількості схожих об'єктів. На базі зазначеного методу реалізовано підтримку малювання тривимірних частинок.

Джерело: opennet.ru

Додати коментар або відгук