Доступен (http://blog.qt.digia.com/blog/2014/09/08/qt-5-4-alpha-available/) для тестирования альфа-выпуск кроссплатформенного фреймворка Qt 5.4, продолжившего развитием ветки Qt 5.x. Начиная с Qt 5.4 все модули распространяются (https://www.opennet.ru/opennews/art.shtml?num=40415) под лицензией LGPLv3, в дополнение к LGPLv2.1, GPLv3 и коммерческой лицензии. Qt WebEngine, Qt Canvas3D, Qt WebView и Qt Quick Controls для Android будут поставляться только под LGPLv3, GPLv2 и коммерческой лицензией.
Основные новшества (http://qt-project.org/wiki/New-Features-in-Qt-5.4):
- Интеграция Qt WebEngine (http://qt-project.org/wiki/QtWebEngine), компонента для использования браузерного движка в Qt-приложениях, пришедшего на смену Qt WebKit. Qt WebEngine отличается (https://www.opennet.ru/opennews/art.shtml?num=38916) переходом на кодовую базу проекта Blink (https://www.opennet.ru/opennews/art.shtml?num=36581), в рамках которого компания Google развивает форк движка WebKit (http://webkit.org/). Поддержка Qt WebKit пока сохранена для обеспечения обратной совместимости, но данная подсистема больше не развивается и в скором времени будет исключена из состава Qt. Состояние Qt WebEngine в qt 5.4 соответствует кодовой базе Chromium 37. Благодаря обеспечению возможности прямого вывода текстур Chromium в графические сцены OpenGL в Qt Quick, движок демонстрирует прекрасную производительность вывода активного графического web-контента (например, WebGL).- Добавление модуля Qt WebChannel, обеспечивающего интеграцию кода на QML/C++ с компонентами на HTML/JavaScript. В том числе, Qt WebChannel может быть применён для задействования функциональности QObject в коде на JavaScript, выполняемом с использованием Qt WebKit или Qt WebEngine.
- Полноценная поддержка платформы WinRT. В качестве минимально поддерживаемой версии заявлен WindowsPhone 8.1, что дало возможность исключить из числа зависимостей ранее применяемый компилятор D3D и существенно упростить развёртывание приложений на устройства. Большинство модулей Qt поддерживают работу на WinRT, что открывает двери для адаптации существующих приложений для работы на смартфонах, планшетах и ПК c интерфейсом Metro.
- Добавлен виджет QOpenGLWidget, который заменил собой QGLWidget и дополнил представленный в прошлом выпуске виджет QQuickWidget,
позволяющий бесшовно интегрировать части пользовательского интерфейса, созданные с использованием Qt Quick, с приложениями на базе Qt Widget. Назначение QOpenGLWidget сводится к отображению контента OpenGL в приложениях на базе Qt Widget;- Добавлен API QQuickRenderControl, обеспечивающий эффективный рендеринг сцен Qt Quick 2 в объектах с фреймбуфером. Сформированный контент может быть использован как в штатной системе OpenGL-отрисовки Qt, так и в сторонних системах OpenGL-отрисовки. Доступна также возможность инкапсуляции существующих контекстов OpenGL в QOpenGLContext, что позволяет встраивать Qt-контент для использования в других движках рендеринга.
- Добавлены классы QOpenGLWindow для отрисовки OpenGL в QWindow и QRasterWindow для отрисовки через QPainter в QWindow;
- Обеспечена поддержка изображений с глубиной цветности в 10 битов на цветовой канал;
- Для платформы Windows во время запуска программ обеспечена возможность выбора движка ANGLE или OpenGL, без пересборки приложения;
Поддерживается как использование opengl32.dll так и ANGLE-реализация OpenGL ES 2.0;
- В элементах Qt Quick реализована возможность использования стиля Android, при котором виджеты и элементы управления Qt ничем не отличаются от родных элементом интерфейса Android;
- В модуле Qt Bluetooth обеспечена поддержка Bluetooth-стекf Bluez 5 и начальная поддержка спецификации Bluetooth Low Energy;
- Модули Qt Location и Qt 3D не вошли в состав Qt 5.4.URL: http://digia.com/ru/Qt/News/Qt-54-Alpha/
Новость: https://www.opennet.ru/opennews/art.shtml?num=40543
Ну... Обычное неспешное развитие. Ничего особо хитрого нет. Ну мобильным виндузятникам кость бросили. Всем пятерым или сколько их там...
> Полноценная поддержка платформы WinRT.Это вообще "выкрасить и выбросить" - на WinRT забил даже сам MS.
Не путайте WinRT с Windows RT.
Это не только мобилки
Qt WebChannel - аналог HTMLayout (http://www.terrainformatica.com/htmlayout/)? Альтернатива QML?
Это скорее всего такая штука, чтобы можно было из жабоскрипта дёргать сишный код.
Убрали ICU из зависимостей qtcore? Починили регистрозависимый поиск в qtslite? И расскажите в чем отличие для десктоп-приложения opengl32 и ANGLE? Когда использовать то или иное?
>>Убрали ICU из зависимостей qtcore?А собирались? ICU отключается пересборкой - какие проблемы?
Без пересборки. Они подтвердили что это баг https://bugreports.qt-project.org/browse/QTBUG-38259?page=co...
Вот решение http://qt-project.org/groups/qt-contributors-summit-2013/wik...В 5.4.0 должны были пересмотреть работу с ICU и убрать из базовых зависимостей (или сделать меньше)
используйте dumb-icu, если вас тяжесть смущает. можно и не пересобирать.
> Убрали ICU из зависимостей qtcore? Починили регистрозависимый поиск в qtslite? И
> расскажите в чем отличие для десктоп-приложения opengl32 и ANGLE? Когда использовать
> то или иное?В Qt Base ICU отключается ключом -noicu, я добавил его вместе с -nopulseaudio. С QtWebkit проблема: там нельзя отключить ICU. Есть патчи: http://pkgs.fedoraproject.org/cgit/mingw-qt5-qtwebkit.git/tree/ Но у меня они выдают:
In file included from ./wtf/unicode/Unicode.h:32:0,
from ./wtf/text/ASCIIFastPath.h:31,
from ./wtf/text/WTFString.h:28,
from wtf/DateMath.h:54,
from wtf/DateMath.cpp:73:
./wtf/unicode/icu/UnicodeIcu.h:29:27: fatal error: unicode/uchar.h: No such file or directoryЭти файлы находятся в пакете libicu-dev(el). Может это потому что у меня Qt 5.3.2, а патчи - для 5.3.1? Попробовал 5.3.1 - ничего не изменилось. Как будто ничего не "отвязалось".
Не вижу особого смысла отключать зависимости на icu и прочее, т.к. сам QtWebkit жирный, выигрыш будет малоощутимый. Ещё один агрумент за то чтобы не трогать - icu доступен из реп и чаще всего он уже установлен(в случае Linux`а, конечно).
Зы: а чего Qt такой старый? // у меня Qt 5.5.0 / QtC 3.2.81
QtCore с собой webkit не тащит, если что.
QwebKit не всем нужен. Даже если собрать консольный проект, неохото тащить без дела ~20Mb ICU.
>>И расскажите в чем отличие для десктоп-приложения opengl32 и ANGLEОтличие в том, что для некоторых недовидях нет толкового OpenGL(Qt хочет, как минимум, ES 2.0), поэтому надо юзать ANGLE, который исправляет недоГЛ при помощи directX
Все не так. Есть обычный opengl 2 (опция desktop при сборке, qt с оффсайта для mingw собирается именно с ней). Недостатки – на винде драйвера opengl ужасающей убогие, особенно для интелов. Артефакты с текстом и тому подобное веселье (кстати парадокс, под линуксами интеловские видеодрова наоборот эталонные). А вот через opengl es 2 (который эмулируется из директикса, опция при сборке es2) артефактов нет.Ну и разумеется, на мобильных девайсах десктопного опенгля нету.
Как там QtWebEngine? API у него в первой альфе полноценное или урезанное по сравнению с QtWebKit?
Отрисовку сглаженных шрифтов починили уже?
Нет.
> Отрисовку сглаженных шрифтов починили уже?Ситуация с fontconfig стала лучше. Поддерживаются настройки хинтинга.
> Для платформы Windows во время запуска программ обеспечена возможность выбора движка ANGLE или OpenGL, без пересборки приложения. Поддерживается как использование opengl32.dll так и ANGLE-реализация OpenGL ES 2.0;
> В элементах Qt Quick реализована возможность использования стиля Android, при котором виджеты и элементы управления Qt ничем не отличаются от родных элементов интерфейса Android;Вот это отлично!
Запилили уже qtconfig-qt5?
Таки нет.
И судя по всему и не будут его пилить. Ироды. И на шрифты похоже тоже забили. А ведь это два самых мерзких недостатка Qt5