Метка «widget»

Вышел Android виджет с поддержкой оффлайн работы для сервиса PrettyTasks.
Основной функционал виджета включает наиболее важные функции работы с задачами на текущий день.

PrettyTasks Widget под Android с поддержкой оффлайн работы

Читать полностью »

в 8:36, , рубрики: github, open source, qt, widget, метки: ,

Properties framework для Qt

Проблема

В Qt существует замечательная вещь — Q_PROPERTY, которая позволяет добавить необходимое свойство к любому QObject классу. Но в некоторых случаях пользоваться ими неудобно.

Например, у вас есть приложение, в котором существуют (или можно создавать) много различных объектов и, которые необходимо настраивать (выдавать диалог со свойствами выбранного объекта). Примером таких приложений может быть почти любая инженерная программа, редактор векторной графики, Visual Studio в конце концов.
Читать полностью »

На Хабре уже достаточно статей о том, как разработать «hello world»-виджет для устройств на базе Android. Еще больше об этом можно почитать в сети, в том числе и на сайте Google для разработчиков, StackOverflow и других ресурсах. Казалось бы, все подробно разжевано, есть сотни примеров — зачем же писать очередную статью, когда вокруг и так достаточно информации?
Однако, когда мы начали разработку виджета, нам пришлось потратить несколько недель на то, чтобы разобраться с нюансами и реализовать проект так, как мы задумали его изначально.
Надеемся, наш опыт поможет сэкономить время на реализацию вашего виджета.
Читать полностью »

В первом посте мы разбили функциональность грида на несколько классов. Давайте еще раз быстренько их опишем:

  • Lines — представляет набор колонок или строк.
  • Range — oписывает любую совокупность ячеек.
  • Layout — позволяет размещать данные внутри ячейки.
  • Model — определяет интерфейс доступа к данным для View и Controller.
  • View — показывает информацию в ячейке.
  • Controller — позволяет пользователю менять данные.
  • CacheCell — кеширует данные для видимой ячейки.
  • CacheGrid — кеширует данные для видимой части грида.
  • GridWindow — специальный контрол.

Так же мы описали модели и вью для текстовых данных (ModelText, ModelTextCallback. ViewText). Давайте попробуем создать грид и привязать к нему текстовые данные. Новую функциональность, которая нужна для работы стандартного грида будем добавлять в виде специальных Model/View/Controller.
Читать полностью »

Пол Адамс из Intercom на связи:

'Kарточки' — будущее веба. Они быстро становятся лучшим шаблоном для дизайна под мобильные устройства.

На наших глазах идет пересмотр архитектуры интернета, замена страниц и адресов полностью персонализированным интерфейсом, построенным на агрегации многих элементов контента. Контент разбивают на составляющие компоненты и перекомпануют — и это результат роста популярности мобильных технологий, наличия миллиардов экранов всех форм и размеров, а также невиданной ранее доступности данных через разнообразные АПИ.

Все это ведет архитектуру интернета от связанных между собой страниц контента к связанным в единый интерфейс элементарных частей контента.

Или, по-русски, — виджет данных становится новой элементарной частицей интернета, заменяя в этом веб страницу.

Виджет становится новой элементарной частицей интернета
(картинка из блога Intercom)

Идея, конечно, неожиданна, но не нова. Есть уже Open Graph от Facebook и Twitter Cards для встраивания контента. Да и oEmbed, опубликованный в далеком 2008м году, еще долго будет востребован (по крайней мере пока в нем продолжает публиковать свои проигрыватели YouTube так точно).

Но вот в комментариях к статье наткнулся на что-то действительно новое и интересное — ссылка на недавно опубликованный протокол для встраивания резиновых виджетов — Iframely.Читать полностью »

image

На хабре еще не было ни одного поста про создание плазмоида на чистом QML с использованием JavaScript. Данный пост призван исправить данный недостаток.
Читать полностью »

Разрабатывая свой виджет я захотел чтобы некоторая информация предоставлялась пользователю в виде всплывающего диалога(alertdialog), но столкнулся с особенность платформы. Android не позволяет вызывать alertdialog из AppWidgetProvider.
Как написать простой виджет можно посмотреть в этой статье. Пойдем дальше и сразу рассмотрим как обойти это ограничение.
Читать полностью »

Введение.

Анализируя замечания предыдущего поста (Qt Designer & Runtime Qt библиотеки на службе OpenCV...), пришлось более детально проработать устройство видеозахвата библиотеки OpenCV и методы разделения библиотек runtime и виджетов.
Работа с Qt Designer удобна (я — лентяй), поэтому и возник компонент проектирования интерфейса для CvCapture. После начала работы подтянулось и «научное » тому объяснение — удобно применить нечто похожее, скажем, при проектировании интерфейса свойств или параметров приложения, использующего устройство видеозахвата.
Пока идёт скачивание архива проекта, читайте далее.

Благодарности.

Спасибо всем, кто оставил свои замечания по предыдущему посту.

Библиотека времени выполнения.

Итак, библиотека OpenCV установлена, примеры кода просмотрены. Самое время «прикрутить» устройство видеозахвата к Qt. Да не просто так, а чтобы и изображения получать, меняя устройства динамически. Да, чтобы помнило все пути к изображению, видео. Да, чтобы и номера камер переключало. Да, чтобы и… пост покороче получился.

Библиотека.

Чего проще! Наследуем новый класс библиотеки от QObject, прячем ненужные разработчику поля и методы в приватный класс как элемент коллекции QScopedPointer, монтируем сигналы оповещения и слоты-обработчики.
Читать полностью »

Как стало известно — в новой версии Android Jelly Bean (API v16) появилась возможность изменения размера виджета, да не просто изменения, а автоматического, который теперь подстраивается под свободное место на экране.
Функция удобная и полезная, но в официальной документации про это почти ничего нету, что довольно странно.
Изменение размера виджета в Android 4.1 Jelly Bean
Так как я разрабатываю несколько виджетов, то решил добавить данный функционал.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js