В данной статье я попытаюсь рассказать о том как передавать события мыши и клавиатуры в QQuickWindow, в случае его использования в связке с QQuickRenderControl. Причиной того, что этому необходимо уделять специальное внимание, является то, что в случае использования QQuickRenderControl, никакого окна на самом деле не создается, соответственно у QQuickWindow нет абсолютно никакой возможности получать какие либо события, и их приходится эмулировать. То же самое касается изменения размеров — об этой операции так же необходимо оповещать в явном виде.
Читать полностью »
Рубрика «QML» - 6
Как подружить QML с чужим OpenGL контекстом. Часть III: Обработка пользовательского ввода
2015-01-31 в 11:27, admin, рубрики: c++, QML, qt, qt quick, qt5, ПрограммированиеКак подружить QML с чужим OpenGL контекстом. Часть II: Загружаем QML
2015-01-17 в 5:40, admin, рубрики: QML, qt В данной статье я попытаюсь рассказать о том как загружать QML в случае, если у вас, по какой-то причине, нет возможности использовать QQuickView, а необходимо работать непосредственно с QQuickWindow.
В моем случае, таковой причиной являлось то, что с QQuickRenderControl умеет работать только QQuickWindow. В вашем же случае, таковой причиной может быть например то, что вам понадобилось загружать QML не из какого либо файла, а например из памяти, что открывает возможность генерации QML «на лету», или запроса содержимого QML, или его части, у пользователя — занятно, не так ли?
Читать полностью »
QQuickRenderControl, или как подружить QML с чужим OpenGL контекстом. Часть I
2015-01-09 в 14:31, admin, рубрики: OpenGL, QML, qt, Qt Quick 2, qt5 Недавний релиз Qt 5.4, помимо прочего, предоставил в распоряжение разработчиков один, на мой взгляд, очень любопытный инструмент. А именно, разработчики Qt сделали QQuickRenderControl частью публичного API. Занятность данного класса заключается в том, что теперь появилась возможность использовать Qml в связке с любым другим фреймворком, если он предоставляет возможность получить (или задать) указатель на используемый OpenGL контекст.
С другой стороны, в процессе работы над одним из своих проектов, я столкнулся с необходимостью отрисовывать QML сцену на CALayer (Mac OS X), без малейшей возможности получить доступ к родительскому окну. Недельный поиск возможных вариантов решения проблемы показал, что самым адекватным решением будет как раз использование QQuickRenderControl из Qt 5.4, благодаря удачному совпадению, получившего статус релиза одновременно с возникновением вышеупомянутой задачи.
Изначально я предположил что задача плевая, и будет решена в течении пары вечеров, но как же я сильно заблуждался — задача заняла порядка полумесяца на исследования, и еще пол месяца на реализацию (которая все еще далека от идеала).
Читать полностью »
Linux с «материальным» дизайном
2014-11-26 в 12:47, admin, рубрики: linux, open source, QML, Qt 5, Дизайн в IT, ПрограммированиеГруппа энтузиастов начала работу над проектом Quantum OS — операционной системой на ядре Linux, но при этом с интерфейсом в стиле «материального» дизайна от Google.
Вот как примерно выглядит экспериментальный дизайн, к которому стремятся разработчики (это концепт, он будет отличаться от финальной версии):
Android приложение на QML: Picker
2014-10-15 в 6:04, admin, рубрики: android, QML, qt, Разработка под android
Можно ли написать обыкновенное мобильное приложение на Qt Quick? Не игру, а именно традиционное приложение? Если полгода назад у меня были серьезные сомнения в осуществимости этого предприятия, то теперь сомнений не осталось — можно!
Конечно, на этом пути поджидало (и поджидает) множество проблем, большинство из которых описано тут. На данный момент накопилось уже приличное количество наработок, надеюсь эта статья положит начало циклу по систематизации и документированию опыта. Начнем с чего-нибудь простого и нужного, а именно с виджета выбора цифрового значения, по английски именуемого Picker. Такой используется в Android, когда нужно ввести дату, время, или какое-нибудь специфическое значение.
Читать полностью »
Про QML и новое REST API Яндекс.Диска
2014-07-20 в 10:46, admin, рубрики: api, JS, QML, qt, rest, SDK, Ubuntu, ubuntu.sdk, Yandex, Убунтариум, Яндекс API Доброго времени суток, друзья!
В последнее время на хабре совсем перестали появляться статьи на тему QtQuickQML Про Ubuntu SDK (основанном на QtQuick) и вовсе тишина, а ведь в настоящий момент это основной инструментарий, предлагаемый для разработки приложений под Ubuntu (ни много ни мало самый популярный Linux-дистрибутив). Захотелось в меру своих возможностей исправить эту ситуацию с помощью написания данной статьи! Объять необъятное пытаться не стоит, поэтому начну, пожалуй, с повествования о том, как мне удалось заменить большой объем кода на C++ кодом на QML (в приложении под Ubuntu SDK). Если вам стало интересно, а может быть еще и непонятно, причем тут Яндекс.Диск, то прошу под кат!

Читать полностью »
Простой спрособ подключения произвольного видеоисточника в Qml
2014-07-14 в 7:29, admin, рубрики: c++, QML, qt, QtMultimediaПреамбула
Все нижеизложенное приводится в контексте Qt версии 5.3.1 (как наиболее актуальной на данный момент), но имеет смысл в контексте любой версии ветки 5.x, а возможно даже 4.8.x (не проверял за ненадобностью).
Операционная система — Windows, среда разработки — QtCreator 3.1.2 в связке с MinGW и gcc 4.8.2 От использования других платформ/IDE/компиляторов суть не меняется.
В качестве иточника видеоданных был выбран самый простой из доступных вариантов, а именно — рабочий стол. Т.е. приложение будет отображать копию всего что происходит на рабочем столе. В многомониторных конфигурациях, в качестве источника, будем использовать основной экран.
Читать полностью »
Версия Qt 5.3 доступна для загрузки
2014-05-22 в 7:49, admin, рубрики: mobile development, QML, qt, Qt 5, Qt 5.3, Программирование, метки: QML, Qt, Qt 5, Qt 5.3Итак, давайте посмотрим, что нового в этом релизе:
Cute Plane: игра на QML с векторной графикой
2014-03-10 в 1:38, admin, рубрики: box2d, game development, indie, indie games, open source, QML, qt, Qt 5, Qt Software, svg 
Наткнулся в интернете на концептуальный showcase. Не то, чтобы это настоящая игра, но автор утверждает, что оно способно затянуть. Необычным оно мне показалось потому, что написано на непопулярном QML, внутри использует всеми забытый SVG и устаревший Box2D (и это в 2014-то году, когда все нормальные люди уже давно перешли на Unity!).
Читать полностью »


