Розробники Qt анонсували випуск Qt 5.10, ознаменований внесенням нового функціоналу, а також випуском Qt 3D Studio.
Qt 3D Studio
Як випливає з назви, Qt 3D Studio є графічним редактором, що використовується для створення тривимірних інтерфейсів і створений з продукту NVIDIA Drive Design, який NVIDIA внесла в Qt на початку цього року.
Qt 3D Studio містить runtime компонент, який запускається у вашому додатку, і графічний інструмент для проектування та створення інтерфейсу користувача. Хоча інструмент є автономною програмою, середовище виконання може бути легко інтегрована з рештою Qt.
Qt 3D Studio працюватиме як з Qt 5.9, так і з 5.10. Runtime компонент та програма 3D Studio доступні в рамках комерційного ліцензування та ліцензування GPL.
Qt Qml, Qt Quick і Qt Quick Controls
У цій галузі сталося багато цікавих речей. Qt Quick тепер отримав плагін, який дозволяє розміщувати довільно сформовані елементи у сцену
Нові обробники покажчиків є наступною великою новою функцією Qt Quick. Це великий крок вперед для Qt Quick, який значно покращує роботу з більш складними розрахунковими випадками. Замість використання Mouse- та TouchArea для обробки цих вхідних подій, ви можете тепер прив'язувати обробники для різних типів подій покажчика до будь-якого елементу. Підтримка цього, як і раніше, знаходиться в попередньому перегляді технологій.
Крім того, Qt Quick отримав більшу кількість невеликих покращень. Головною з них є підтримка прямого завантаження стислих текстур ETC1 і ETC2, підтримка мультисемплювання шарів і деякі властивості для налаштування обробки шрифтів.
Qt Quick Controls 2 також отримав багато нових функцій. Насамперед, тепер доступні два нові стилі. Один з них - це стиль, заснований на освіті, який дозволяє дуже легко використовувати власні ілюстрації для створення зовнішнього вигляду користувача. Інший, званий стиль Fusio, орієнтований на робочий стіл. Ці стилі також підтримують панелі.
Також були додані елементи Action, ActionGroup та MenuBar. Поза MenuBar, Actions також підтримуються в кнопках, делегатах та меню. Крім того, ми додали безліч дрібніших функцій до існуючих елементів управління.
Qt Qml нарешті підтримує оголошення перерахувань QML і динамічно ретранслює всі рядки при зміні мови.
Графіка
Масивною новою функцією графічної області є новий плагін QPA, який дозволяє передавати повний інтерфейс користувача Qt в будь-який браузер з підтримкою WebGL.
На стороні OpenGL тепер QSurfaceFormat можна використовувати для запиту фреймбуфферів, сумісних з sRGB, а повний набір API OpenGL ES 3.2 тепер доступний на всіх платформах через QOpenGLExtraFunctions.
Qt 3D
Завдяки KDAB, Qt 3D також придбала кілька нових функцій. Існують нові типи вузлів, які можна використовувати у графіках кадрів, таких як фільтр близькості та розщеплення фреймбуфера. Тепер є підтримка графіків Shader, які дозволяють створювати шейдери з опису на основі графіка, попереднього перегляду технології скелетної анімаційної системи та елемента Scene2D Qt Quick, що спрощує вбудовування Qt 3D-контенту QuickTime Qt.
Крім того, акцент на розробці Qt 3D тепер поступово зміщується від розробки всіх необхідних функцій підвищення продуктивності і зменшення споживання пам'яті.
Qt 3D також стане набагато важливішим для просування Qt вперед. В даний час йде робота над створенням середовища виконання Qt 3D Studio поверх Qt 3D, щоб уніфікувати архітектуру для всіх API та інструментів, пов'язаних з 3D.
Qt Core і Network
Qt Core тепер має новий клас QStringView, який концептуально схожий на std::string_view. На даний момент ще немає деяких функцій const з QString, але це буде завершено для Qt 5.11.
Qt Core також отримав новий клас QRandomGenerator, який забезпечує високоякісний випадковий генератор та доступ до безнасінних випадкових чисел, що генеруються апаратними засобами або операційними системами. В даний час також є набір явних великих / маленьких типів даних endian (qint16_le і т.д.) і KeyValueIterator для наших асоціативних контейнерів, які надають STL-сумісну ітераційну семантику над цими контейнерами.
Qt Network тепер підтримує OpenSSL 1.1, зберігає політики HSTS (HTTP Strict Transport Security) постійним чином QNetworkAccessManager і реалізує оновлення протоколу h2c, використовуване не SSL SSL / 2.
Віджети Qt
Додано кілька невеликих функцій, таких як QWidget::createWindowContainer() на Android, включення QOpenGLWidget для рендерингу та захоплення позаекранного контенту, додано властивість tabStopDistance у QTextOption та QTextEdit та API для кращої обробки вибору для QLineEdit. Тепер QDockWidgets можна перекидати з боку на бік.
Крім того, в цьому модулі Qt 5.10 був виправлений великий набір помилок.
Вбудована функціональність
Хоча більшість перелічених вище елементів покращують загальну пропозицію, як для розробки додатків, так і для створення пристроїв, також є деякі елементи, які зосереджені на вбудовуваних системах.
Віртуальна клавіатура Qt отримала підтримку багатьох нових мов та підтримку почерку для арабської, фарсі, китайської, японської та корейської мов.
На стороні Boot2Qt оновлено образи пристроїв до Yocto 2.3 (Pyro), надаючи вам сучасніший Linux для роботи.
Інші модулі
Оновлено Qt WebEngine для використання Chromium 61. Тепер ви можете призупинити та відновити завантаження та запустити програмне забезпечення.
На робочому столі Windows тепер можна використовувати UWP-сервер для Qt Bluetooth у Windows, а на X11 модуль Qt X11Extras тепер може зазирнути в чергу подій.
Нарешті, Qt Network Authorization (що забезпечує підтримку OAuth 1 і 2) і Qt Speech, що забезпечує підтримку перетворення тексту в мову, вийшли з попереднього перегляду технології, щоб повністю підтримуватися в 5.10.
Добрый день.
Честно, не знаю, когда этим займусь. По хорошему надо будет разбираться, когда начну писать приложение для сайта, но это очень не скоро будет. У меня ещё слишком много других задач по разработке функционала сайта.