Мы с Vass записали и выложили пятую серию подкаста «Заметки о Qt».
Сам подкаст на rpod.ru — qt-notes.rpod.ru/276973.html
Читать полностью »
Рубрика «QML» - 10
Подкаст «Заметки о Qt» s01e05
2012-06-04 в 12:41, admin, рубрики: c++, phonon, QML, qt, qt quick, Qt Software, qt webkit, qt5, подкасты, Программирование, метки: benchmark, c++, phonon, QML, Qt, qt quick, qt webkit, qt5Вебинары по QML и QtQuick: состояния и переходы
2012-05-30 в 8:24, admin, рубрики: fruct, nokia, QML, qml_training, qt, qt quick, Qt Software, QtQuick, Блог компании Nokia, метки: fruct, nokia, QML, qml_training, Qt, qt quick, QtQuickПосле небольшого перерыва мы вновь продолжаем серию вебинаров по QML и QtQuick, и на этот раз поговорим про состояния и переходы — один из важнейших моментов в построении пользовательских интерфейсов на QML.
Декларативный стиль языка QML направлен на то, чтобы избежать ошибок при построении интерфейса пользователя, которые вызываются некорректным переходом из одного состояния в другое. Для этого в QML есть встроенная поддержка для определения декларации состояний и переходов между ними, и машина состояний (state-machine), которая умеет эти переходы корректно осуществлять. Таким образом QML нам даёт формальную спецификацию интерфейса, надёжный способ организации логики приложения, гарантию покрытия всей функциональности и возможность связки переходов между состояниями с анимацией.
Внимательно посмотрев данный вебинар, вы научитесь работать с состояниями (states), условиями состояний и переходами между состояниями (transitions). Во второй половине видео вы узнаете о вероятных проблемах, связанных с использованием состояний и переходов, а также о возможных путях их решения.
Подкаст «Заметки о Qt» s01e04
2012-05-15 в 11:01, admin, рубрики: c++, KDAB, nokia, phonon, QML, qt, qt components, qt quick, Qt Software, qt webkit, qt5, QtCreator, Raspberry Pi, подкасты, Программирование, метки: c++, KDAB, nokia, phonon, QML, Qt, qt components, qt quick, qt webkit, qt5, qtcreator, Raspberry Pi Мы с Vass записали и выложили четвертую серию подкаста «Заметки о Qt».
Сам подкаст на rpod.ru — qt-notes.rpod.ru/275603.html
Читать полностью »
Примерно год назад я всерьез задумался над недавно пошумевшими на хабре темами про ненависть к html. Действительно, html — это просто средство разметки текста, его нельзя применять для построения UI, который на 90% состоит из layout'ов. Вернее можно, но получается ад. Кроме всего прочего, случай с html — это когда данные смешиваются с представлением. Не получится скачать отдельно html, а отдельно данные. Возникает идея парсеров.
И даже если в тысяче и одном шаблонизаторе это разделение явно, то оно перестает таковым быть на выходе. Кто-нибудь задумывался, а почему сервер занимается генерацией представления, которое нужно юзеру, но не нужно серверу? Вдобавок появляется проблема проверки данных, отображаемых для всех юзеров: эти xss и прочее. Не закрыл теги — убил сайт, который еще и упал на юзеров.
На мой взгляд, единственная задача html — это отображать br,strong,a, ну и так далее. Нет никакой необходимости пытаться верстать блочно, потому что блочная верстка — это попытка средставми html сделать layout. И вся эта идея иерархичности блочного контента рассыпается в пыль, когда child вылезает за пределы parent'a. Кому в голову вообще пришла такая издевательская над инкапусяцией идея, почему это вообще ВОЗМОЖНО? WYSIWYG с точки зрения кода какой-то странный получается — видишь один код, а отображаться он может как и где угодно. Зачем нужна эта двусмысленность?
И не получится сделать сложный блочный ui без костылей вида -999px и т.д. Кстати, почему до сих пор нет нативной поддержки layout'ов? Уже на языке низкого уровня быстрее описать интерфейс, чем на вебе. И заметьте: каждый дизайнер изголяется над созданием/стайлингом/размещением контролов, которые уже ДАВНО есть в ЛЮБОЙ ОС. Так зачем столько телодвижений для создания такого же, но другого? Чтобы что? Кстати, а для чего каждый сайт должен иметь уникальный дизайн? Разве это чем-то вынуждено? Почему desktop ui с одинаковыми контролами не приедается, а шибко пестрые-нестандартные интерфейсы на десктопе считаются моветоном? Ну да, можно написать еще штук 20 шаблонизаторов, позволяющих абстрагироваться от печальных реалий. А дизайнеры пускай сами своими -99999px гвоздями прибивают ui к html.
В комментариях предлагали запилить QML в браузеры. Это, имхо, очень интересный подход. Кстати, никто ведь не мешает генерить qml теми же методами, что и html.
QML Live Preview — мечта UI-дизайнеров
2012-05-04 в 8:57, admin, рубрики: Harmattan, nokia, QML, qt, Qt Software, метки: Harmattan, nokia, QML, Qt Немногие знают, что в последних версиях QtCreator'а есть поддержка QML Live Preview — возможности править код и сразу же видеть изменения на уже запущенной программе, причем как на десктопе/эмуляторе, так и на реальном устройстве.
Дико удобная вещь, позволяет экономить тонну времени на этапе разработки/правки UI.
Всё это, вместе с другими плюшками для дебаггинга QML работает из коробки на версиях QtCreator > 2.3. Для Qt версии 4.8 отладка QML включена по-умолчанию, для 4.7 необходимы легкие телодвижения в виде нажатия на одну кнопочку.
Небольшая демонстрация того, как это работает на примере Nokia N950:
Под катом ещё одно симпатичное видео.
Читать полностью »
Вебинары по QML и QtQuick: Списки. Модели и представления
2012-05-04 в 7:19, admin, рубрики: nokia, QML, qml_training, qt, qt quick, Qt Software, Блог компании Nokia, метки: nokia, QML, qml_training, Qt, qt quickТема сегодняшнего эпизода серии вебинаров по QML и Qt Quick — «Списки. Модели и представления».
На этот раз автор вебинара Кирилл Кринкин рассказывает про концепцию Model-View-Controller и посвящает практически весь вебинар работе с моделями и представлениями. Посмотрев видео, вы узнаете, для чего используются статические и динамические модели и как они устроены в Qt Quick, как использовать делегаты, чтобы отображать элементы модели данных в элементах списка или других визуальных контейнерах.
Подкаст «Заметки о Qt» s01e03
2012-05-01 в 12:18, admin, рубрики: c++, Digia, KDAB, playbook, QML, QNX, qt, qt components, qt quick, Qt Software, qt5, QtCreator, подкасты, Программирование, метки: c++, Digia, KDAB, playbook, QML, QNX, Qt, qt components, qt quick, qt5, qtcreator Мы с Vass записали и выложили третью серию подкаста «Заметки о Qt».
На этот раз у нас в гостях Gorthauer87
Сам подкаст на rpod.ru — qt-notes.rpod.ru/274520.html
Читать полностью »
Вебинары по QML и QtQuick: взаимодействие с пользователем
2012-04-28 в 7:27, admin, рубрики: nokia, QML, qml_training, qt, qt quick, Qt Software, Блог компании Nokia, метки: nokia, QML, qml_training, Qt, qt quickОчередной эпизод серии вебинаров по QML и QtQuick посвящен обработке событий мыши и клавиатуры.
Первая часть вебинара отводится рассказу про невизуальный элемент MouseArea, определяющий участки экрана, в которых события мыши приводят к вызову обработчиков. Ведущий Кирилл Кринкин показывает два способа обработки событий мыши — с помощью связывания свойств (property binding) и с помощью обработчиков сигналов (signal handlers), а также объясняет разницу между этими способами.
Во второй части видео рассказывается про два типа ввода с клавиатуры: текстовый (когда часть специальных клавиш обрабатываются в runtime и события которых до обработчиков не доходят) и «сырой» (когда все клавиши вызывают обработчики). После вводной следует объёмная практическая часть.
Подкаст «Заметки о Qt» s01e02
2012-04-21 в 21:21, admin, рубрики: c++, cordova, QML, qt, qt components, qt quick, Qt Software, qt5, Raspberry Pi, подкасты, Программирование, статистика, метки: c++, cordova, QML, Qt, qt components, qt quick, qt5, Raspberry Pi, подкасты, статистика Мы с Vass записали и выложили вторую серию подкаста «Заметки о Qt».
Сам подкаст на rpod.ru — qt-notes.rpod.ru/273862.html
Читать полностью »
Вебинары по QML и QtQuick: создание интерфейса пользователя
2012-04-20 в 7:07, admin, рубрики: nokia, QML, qt, Qt Software, QtQuick, Блог компании Nokia, метки: nokia, QML, Qt, QtQuickДанный эпизод серии вебинаров по QML и QtQuick посвящен базовым средствам по созданию пользовательских интерфейсов.
Кирилл Кринкин, руководитель лаборатории FRUCT Open Source & Linux Lab, расскажет про основные типы графических элементов. Посмотрев видео, вы узнаете, как с помощью QML можно работать с цветами, градиентами, графическими файлами и текстовыми элементами — возможности каждого элемента сперва описываются короткой теоретической частью, после чего демонстрируются на практике.
В вебинаре речь также пойдёт об организации элементов на форме. На приведенных примерах будет продемонстрирована работа с якорями (anchors) и отступами (margins) для позиционирования и выравнивания элементов. В теоретической части будут описаны возможности и правила (ограничения) при использовании якорей и отступов.