После пяти месяцев разработки компания Digia представила (http://blog.qt.digia.com/blog/2013/12/12/qt-5-2-released-the...) релиз кроссплатформенного фреймворка Qt 5.2 (http://qt-project.org/qt5/qt52), продолжившего развитием ветки Qt 5.x и включающего ряд новых модулей. Кроме того, была проведена большая работа по оптимизации производительности и улучшению работы возможностей, представленных в в прошлых выпусках Qt 5.
Дополнительно можно отметить план (http://lists.qt-project.org/pipermail/development/2013-Decem...) подготовки Qt 5.3, выпуск которого намечен на 29 апреля 2014 года. Выпуск Qt 5.3 в основном будет ориентирован не на развитии новых возможностей, а на повышение стабильности и производительности.
Ключевые новшества Qt 5.2 (http://qt-project.org/wiki/New-Features-in-Qt-5.2):
- Полнофункциональная поддержка платформ Android и iOS, позволяющая использовать Qt для разработки конечных мобильных приложений (в выпуске 5.1 поддержка Android и iOS носила экспериментальный характер и была ограничена по функциональности). Для указанных платформ доступны все модули Qt, за исключением WebKit. В том числе доступны модули Qt Core, Qt Network, Qt Gui, Qt Widgets, Qt Qml, Qt Quick и Qt Multimedia, а также дополнения Qt Sensors, Qt Graphical Effects, Qt Script и Qt SVG. Для Android дополнительно подготовлен модуль Qt Android Extras, содержащий расширения для поддержки особенностей данной платформы;
По сравнению с прошлым выпуском в Qt 5.2 для Android добавлена поддержка камеры, захвата видео, проигрывания звука (QAudioInput, QAudioOutput, QSoundEffect), OpenSSL и JNI API. В состав включена утилита для развёртывания Android-приложений на устройстве. В версии для iOS добавлена поддержка медиапроигрывателя, базовая поддержка камеры и поддержка звука (QAudioInput, QAudioOutput, QSoundEffect).
- Новые модули:
- <strong>Qt Bluetooth (http://doc-snapshot.qt-project.org/qt5-stable/qtbluetooth-in...)</strong> - функции для работы с Bluetooth. Поддерживается Linux (стек Bluez 4.x) и Blackberry- <strong>Qt NFC (http://doc-snapshot.qt-project.org/qt5-stable/qtnfc-index.html)</strong> - функции для работы с NFC. Поддерживается Blackberry;
- <strong>Qt Positioning (http://doc-snapshot.qt-project.org/qt5-stable/qtpositioning-...)</strong> - функции для получения информации о местоположении. Поддерживаются все платформы с использованием данных NMEA (http://www.nmea.org/). Для Linux поддерживается GeoClue (http://www.freedesktop.org/wiki/Software/GeoClue/);
- <strong>Qt Windows Extras (http://doc-snapshot.qt-project.org/qt5-stable/qtwinextras-in...)</strong> для задействования специфичных возможностей Windows;
- <strong>Qt Mac Extras (http://doc-snapshot.qt-project.org/qt5-stable/qtmacextras-in...)</strong> для задействования специфичных возможностей OS X;
- <strong>Qt Android Extras (http://doc-snapshot.qt-project.org/qt5-stable/qtandroidextra...)</strong> для задействования специфичных возможностей Android.
- Qt3D не вошел в состав Qt 5.2, но доступен для тестирования в виде ознакомительной версии (tech preview).- В Qt Core добавлена поддержка классов QTimezone и QCollator для корректной работы с часовыми поясами и сортировки с учётом настройки текущей локали. В Qt Network улучшена поддержка SSL. В Qt Widgets добавлен класс QKeySequenceEdit и внесено множество мелких улучшений;
- Интегрирован новый движок QML, который переведён на собственный встроенный JavaScript-движок и больше не зависит от движка V8. Следствием перехода на собственный встроенный JavaScript-движок стала поддержка Qt Quick 2 для платформы iOS, уменьшение размера QML-стека на 5 Мб и исключение необходимости поставки дополнительной разделяемой библиотеки. Кроме того, упрощено сопровождение стека QML и обеспечен задел для быстрого продвижения новшеств в будущем;
- В QML добавлена поддержка класса QFileSelector (http://doc-snapshot.qt-project.org/qt5-stable/qfileselector....), позволяющего упростить кастомизацию QML-кода в зависимости от характеристик устройств и операционной системы;
- В Qt Quick добавлена новая (http://blog.qt.digia.com/blog/2013/09/02/new-scene-graph-ren.../) реализация системы рендеринга сцены (scene graph renderer), которая потребляет заметно меньше ресурсов CPU и GPU;
<center><a href="http://blog.qt.digia.com/wp-content/uploads/2013/08/traces.p... src="http://www.opennet.me/opennews/pics_base/0_1380562537.png" style="border-style: solid; border-color: #606060; border-width: 1px;" title="" border="0"></a></center>- Добавлен новый тип операций Animator (http://doc-snapshot.qt-project.org/qt5-stable/qml-qtquick-an...), позволяющий создавать анимацию, выполняемую полностью в нити рендеринга, без блокирования и прерывания основной нити выполнения приложения;
- В набор виджетов Qt Quick Controls добавлены индикаторы быстрого переключения и занятости, в виджет отображения таблиц добавлена поддержка перемещения колонок и расширенного выделения.
- Для всех настольных платформ обеспечена полнофункциональная поддержка средств для людей с ограниченными возможностями.
Одновременно доступен релиз интегрированной среды разработки Qt Creator 3.0, входящей в состав базового пакета Qt 5.2. В новом выпуске появились начальные средства разработки для iOS, позволяющие собирать, устанавливать и выполнять Qt-приложения в симуляторе iOS и устройствах на базе iOS. Добавлена экспериментальная поддержка отладки приложений на любых устройствах. Для отладки в Qt Creator теперь достаточно запустить на устройстве gdb-совместимый отладчик. Кроме того, улучшена (http://blog.qt.digia.com/blog/2013/10/09/android-deployment-.../) поддержка Android, добавлены дополнения для многомониторных конфигураций, проведена чистка API для разработки плагинов, появилась поддержка развиваемого проектом LLVM отладчика lldb.Кроме того, можно отметить выпуск (http://qtfortizen.blogspot.ru/2013/12/1.0alpha5.html) пятой альфа версии Qt for Tizen, варианта фреймворка Qt для мобильной платформы Tizen. Проект развивается независимым сообществом и нацелен на обеспечение возможности разработки мобильных приложений для платформы Tizen с использованием Qt Quick 2. В состав входит набор элементов интерфейса, позволяющих создавать приложения не отличимые по внешнему виду и поведению от родных приложений, созданных в Tizen SDK. В рамках проекта также развивается плагин для организации бесшовной разработки Qt-приложений для Tizen в интегрированной среде Qt Creator. Выпуск построен на кодовой базе кандидата в релизы Qt 5.2 и полностью совместим с платформой Tizen 2.2.1. Из наиболее заметных улучшений выделяется поддержка экранной клавиатуры, которая автоматически отображается при использовании таких элементов, как TextField.
URL: http://blog.qt.digia.com/blog/2013/12/12/qt-5-2-released-the.../
Новость: http://www.opennet.me/opennews/art.shtml?num=38645
fontconfig игнорирует, qtconfig отсутствует. Как настроить шрифты не знают даже сами разработчики, но зато бегом выкатывать новый релиз.
А под вейландом даже тему сменить нельзя (как и у гтк, впрочем)
Ну так...
Да, согласен. Шрифты настолько ужасно рисует - пользоваться нельзя... :(
Что характерно, это наблюдается только в Linux. Под Windows и Qt Quick Controls, и Qt Widgets рендерят абсолютно правильно.
В QML, похоже, рендеринг шрифтов нельзя настроить by design. А на остальное они забили.
> В QML, похоже, рендеринг шрифтов нельзя настроить by design. А на остальное
> они забили.Design никигда ближе одного парсека не приближался к СПО.
Это фигня. В проприетарном ПО ещё хуже, там в парсеке на страже от дезигна ещё и маркетолухи стоят с приказом никого не впускать и никого не выпускать.
Создайте таск, прикрепите скрины. Нытьё на опеннете никоим образом не поможет решить проблему, если она имеется (сам давно на 5.2 и со шрифтами полный порядок)
Реально ли перенести приложение Qt 4.8.5 на Qt 5.2, будет ли при этом геморрой?
В приложении много наследований от Qt виджетов и рисования на QPainter.
QPainter и QWidget'ы работают по-старому, без кардинальных изменений.
вот такую штуку запускал на 5.1:
http://qt-apps.org/content/show.php/AnalogWidgets?content=87780из правок только название нескольких функций в api поменялось. Рисует быстро.
С 5.0 по 5.2 просто пересобирал проекты без правок.
Зависит от кол-ва использования Qt3Support и всякого deprecated кода.
QtCreator компилится под обе ветки;
я при переносе своего коммерческого проекта добавлял несколько #ifdef на инклюдах;
поменялись qtInstallMessageHandler и еще некоторые вызовы в диалогах. в целом считаю геморроя по api нет. другое дело, что работа приложения может измениться... например, заметил, что добавление виджета на панель QToolBar делает последний обладателем виджета (даже после снятия его оттуда), что, в случае вызова деструктора может быть неожиданным (например, если я хочу отображать один виджет опционально в разных окнах). ясен пень, что в некотором смысле сам дурак, но поведение меняется и это факт.
Ура! Правда пока 4.8.5 использую для поделок. Но все равно ура!
KDE похоже уже не угнаться за сменой версий Qt.
И очень зря они от v8 отказались, вряд ли есть что-то такое же быстрое и функциональное.
их с V8 на iOS не пускали.
А для них iOS - приоритетное направление для Qt?
>А для них iOS - приоритетное направление для Qt?Конечно приоритетное. Иначе смысл делать столько телодвижений?
Чувствую, скоро все силы сконцентрируются на виндовой и яблочной версии, а на линукс забьют.
Плюс v8 - единственный движок, работающий на solaris/amd64.
> И очень зря они от v8 отказались, вряд ли есть что-то такое
> же быстрое и функциональное.V4 быстрее V8 за счёт избавления от всяческого промежуточного бреда. НО V4 заточен специально на Qml JS и бэкпортироваться не будет (ибо больше никому и не нужен).
Зачем городить огород с Android если выходит парусник
Когда количество приложений и количество поддерживаемых устройств для парусника будет хотя бы, как для cyanogenmod. Вот тогда и можно забыть о android.
Пробовал в бете собрать простой проект на адроиде, с одной кнопочкой. Все заработало, тока странно, что диспетчер приложений на смарте показывает вес проги > 40 метров.
Нынче в смартфонах по 2 Гб оперативной памяти, так что можете не беспокоиться
Можно собрать dumb-icc или как он там и уменьшить вес метров на 20. если не используете Webkit.
А что у них за js движок?
>А что у них за js движок?Говорят на свой перешли, с поддержкой JIT на православных (и не только) системах.
QSound по старинке, через ветхозаветный nas пытается пиликать в пятерке, или они туда новый шкаф со скелетами притащили ?
Это только у меня QT Creator отказвается раскладки переключать? Или это вылечили уже?
таже фигня (Ubuntu 13.10)
+1, только та раскладка, в которой была запущена среда
У меня в Росе в KDE нормально раскладки переключаются (Qt 5.2.0, Qt Creator 2.8.1). Правда, хоткеи всё равно от раскладки зависят, их не починили.
Обновил Qt Creator до 3.0, в новой версии тоже проблемы нет. Так что она специфическая либо для дистрибутива, либо для какой-то DE.
Стабильный релиз только 4,8,5 остальное - непомерная жажда больших цифр!!!
Ни разу не использовал Qt5, скачал, запустил Creator.
Собрал для Android тестовое приложение, за 10 минут разобрался без всякой документации!
Естественно всякие android-sdk и android-ndk уже были на компе.
забыл дописать - прогер со стажем 20 лет, скил 88. тогда конечно...
Мышой потыкать НовыйПроект/Андроид ? ;-)
>была проведена большая работа по оптимизации производительностиКак по сравнению с четверкой: памяти меньше жрет, работает шустрее? Чего ждать от пятых кед, очередного скачка системных требований или будут легче? Интересно мнение попробовавших.