Evgenii Legotckoi
Evgenii Legotckoi14 грудня 2017 р. 03:12

Випуск Qt 5.10

Розробники 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.

Рекомендуємо хостинг TIMEWEB
Рекомендуємо хостинг TIMEWEB
Стабільний хостинг, на якому розміщується соціальна мережа EVILEG. Для проектів на Django радимо VDS хостинг.

Вам це подобається? Поділіться в соціальних мережах!

C
  • 25 лютого 2018 р. 16:53
Здравствуйте.
Планируется ли урок по Qt Network Authorization? Всё же интересная тема и информации маловато в интернете.
Evgenii Legotckoi
  • 26 лютого 2018 р. 05:21

Добрый день.
Честно, не знаю, когда этим займусь. По хорошему надо будет разбираться, когда начну писать приложение для сайта, но это очень не скоро будет. У меня ещё слишком много других задач по разработке функционала сайта.

Коментарі

Only authorized users can post comments.
Please, Log in or Sign up
Ua

Qt - Тест 001. Сигналы и слоты

  • Результат:84бали,
  • Рейтинг балів4
Ua

Qt - Тест 001. Сигналы и слоты

  • Результат:42бали,
  • Рейтинг балів-8
ОК

Qt - Тест 001. Сигналы и слоты

  • Результат:47бали,
  • Рейтинг балів-6
Останні коментарі
ИМ
Игорь Максимов22 листопада 2024 р. 11:51
Django - Підручник 017. Налаштуйте сторінку входу до Django Добрый вечер Евгений! Я сделал себе авторизацию аналогичную вашей, все работает, кроме возврата к предидущей странице. Редеректит всегда на главную, хотя в логах сервера вижу запросы на правильн…
Evgenii Legotckoi
Evgenii Legotckoi31 жовтня 2024 р. 14:37
Django - Урок 064. Як написати розширення для Python Markdown Добрый день. Да, можно. Либо через такие же плагины, либо с постобработкой через python библиотеку Beautiful Soup
A
ALO1ZE19 жовтня 2024 р. 08:19
Читалка файлів fb3 на Qt Creator Подскажите как это запустить? Я не шарю в программировании и кодинге. Скачал и установаил Qt, но куча ошибок выдается и не запустить. А очень надо fb3 переконвертировать в html
ИМ
Игорь Максимов05 жовтня 2024 р. 07:51
Django - Урок 064. Як написати розширення для Python Markdown Приветствую Евгений! У меня вопрос. Можно ли вставлять свои классы в разметку редактора markdown? Допустим имея стандартную разметку: <ul> <li></li> <li></l…
d
dblas505 липня 2024 р. 11:02
QML - Урок 016. База даних SQLite та робота з нею в QML Qt Здравствуйте, возникает такая проблема (я новичок): ApplicationWindow неизвестный элемент. (М300) для TextField и Button аналогично. Могу предположить, что из-за более новой верси…
Тепер обговоріть на форумі
Дмитрий
Дмитрий03 лютого 2025 р. 06:24
Создание deb-пакета. Как создать ярлык на рабочем столе после установки собственного deb-пакета? Всем привет. Сделал свой deb-пакет с программой. Всё устанавливается и работает. Ставлю по пути /usr/bin/my_application. Как для пользователя при установке пакета сразу создать ярлык на раб…
NW
Nayo Wai30 січня 2025 р. 09:22
не запускается компьютер!!! Не запускается компьютер (точнее работает блок , но сам монитор вообще жесть)В общем я ничего с интернета не скачивала в последнее время. На компе никаких левых пр…
n
nkly03 січня 2025 р. 02:52
Нужно запретить перемещение только некоторых итемов, остальные перемещать можно. Вопрос решен. Узнать QModelIndex элемента на который мы перетаскиваем другой элемент, можно с помощью функции indexAt(event->position().toPoint()) представления QTreeViev вызываемой в переопр…
M
Marsel16 серпня 2023 р. 14:26
OAuth2.0 через VK, получение email Спасибо большое за помощь и простите за то что отнял время своей невнимательностью.
Evgenii Legotckoi
Evgenii Legotckoi24 червня 2024 р. 15:11
добавить qlineseries в функции Я тут. Работы оень много. Отправил его в бан.

Слідкуйте за нами в соціальних мережах