Вот если бы еще все либы статически «из-коробки» линковались, либо чекбоксом можно было указать без пересборки всей среды, хотя когда заказчику передаешь внушительный дистр с кучей либ, то да, выглядит посерьезнее, но все же хотелось бы. А так Кьют сильно облегчил мне программинг и изучение. что само по себе приятно.
Ну сейчас ИМХО либы не такая уж и проблема. Все собрал в инсталлер и живи спокойно. Правда под линуксом конечно проще. Там qt из дистра ставится и все ок.
От Харматтана нет. А другие десктопные стили доступны (смена происходит также как и для приложений на QtGui, либо заданием в коде стиля для QApplication, либо через аргумент -style).
И, кстати, по умолчанию для QtGui нет стиля харматтановского (на н9 приложения запускается со стилем аля WIndows9x). Все, что написано на Harmattan использует MeegoTouch. Но тем не менее я видел некий пакет со стилями под MeeGo Harmattan. Не ставил правда, поэтому не могу ничего сказать
Он коряво работает. Но если хочется стили от Харматтана, то и юзайте meego touch framework + meego components. Они кроссплатформенные и компилируются и запускаются хоть на винде хоть в макоси хоть на андроиде.
Хм, насколько я помню meegotouch не такой уж кроссовый. По крайней мере попытки перенести компоненты на дроид традиционно начинаются с компонентов под симбиан (я в свое время делал для внутреннего проекта, плюс сейчас в necessitas-devel человек, который этим занимается, тоже пишет про симбианвские компоненты).
у меня контр-вопрос. А кто нибудь вообще юзает кумльный дизайнер? Просто ни я, ни все кого я знаю не юзают. Пишут руками. Это возможно просто осталось с тех времен, когда он был почти неюзабелен, но тем не менее.
В линуксе он у меня прекрасно работает)) Он вполне юзабелен, но просто когда перестаешь быть новичком, то быстрее в коде все забить, но смотреть результаты кодинга проще в дизайнере
Я все равно не доверяю дизайнеру. Он плохо понимает мои кастомные компоненты, у которых часть визуальной логики завязана на c++-объектах. Так что проще нажать Ctrl-R :)
ну да, с девайсом разрабатывать проще. Правда в случае девайса есть другой прикол. У н950 и н9 разные размеры экрана (физически, различие минимально, но есть). Из за этого не рекомендуется например делать в пиксель шириной линии. На одном девайсе будет ок, а на другом фигня.
Сам исправлял пару багов в компонентах, штука хорошая, а вот на QmlDesktopViewer я как-то и не обратил внимание, делая по старинке через QDeclarativeView.
С QDeclarativeView проблема в использовании Window. Он создает отдельный QDeclarativeView для каждого Window, но если qml с Window запущен на уже созданном QDeclarativeView, то все его содержимое окажется на созданном, а Window будет пустой (то есть два окна)
Еще бы оно научилось QDeclarativeEngine между окнами шарить, а то каждый Engine — это 20 мегов памяти примерно. Судя по коду, оно пока так не умеет делать.
ну я думаю это будет в итоге. Не так это и сложно, как мне кажется. Хотя в дебри десктопных компонентов не залезал, может там какие-нибудь архитектурные ограничения встретятся
Сама по себе задача легкая, не спорю. Но можно организовать работу этих окон так, что будет почти нереально. Надо будет на досуге глянуть что у Дженса в этом направлении есть.
Просто иначе например не ясно, как например размеры окошек менять в разных window'ах и прочие эффекты делать. Ну и просто из одного окошка к компонентам другого будет не добраться без расшаренного engin'а.
Это да, но размер у либы крошечный, поэтому я уже не стесняюсь ее в продакшене юзать. А если что-то не работает или глючит, то я это просто беру и фикшу)
Тоже самое. Только я у себя сделал сабмодуль гитовый, Чтобы не объяснять другим, где взять компоненты и чтобы переходить на новую версию только после проверки. А то уже пару раз приходилось слегка переделывать свой код после обновления на свежий master.
На прошлых девдеях Лео рассказывал о компонентах вообще. То есть и о мобильных тоже (о них в большей степени). Если мне не изменяет память, то десктопные появились уже в начале этого года.
Сдвинулось, на Qt5 его портировали, еще окошки добавили, отдельно бранч для макоси пилится. Но таки да, не скажу, что дико активно разрабатывается. Но там и работы не слишком то много.
Кдешники вот с тем же самым API сделали Plasma components'ы. Правда без методов типа Window и т.д.
Но их доделать — дело не хитрое)
> Для того, чтобы показать возможности десктопных компонентов, а заодно обозначить основные проблемы > и преимущества их использования, я создал минимальное графическое приложение на классическом QtGui > и на компонентах.
Не нашел реализации приложения на QtGui. Добавьте для сравнения, если не трудно.
Напоминает Silverlight первых версий, когда было видно что возможностей создания интерфейса уже много и они действительно гибкие, но набор стандартных элементов очень узок и что-то большое на этом делать пока рано.
Ну чистый qml очень удобен для кастомных интерфейсов. Для стандартных как раз Qt COmponents сделали.
А так, можно встроить любой виджет из QtGui в QDeclarativeView (через прокси-класс), но это очень неудобно
Qt Components для десктопа