Как стать автором
Обновить

Комментарии 44

автодополнение всего этого добра будет или как всегда в голове все держать?
Первоначальная реализация есть в Qt Creator'е, дополнает большую часть свойств. Но моё мнение такое, что, при знакомстве с новой технологией, автокомплит, мощные кодогенераторы и тд, на первых порах скорее вредны. В университетах на первых курсах иногда вообще запрещают RAD использовать.
По моему, как раз наоборот. Первое время автокомплит очень помогает не отвлекаться на орфографию, а сконцентрироваться на сути.
ну уж нет.
производительность программиста в разы увеличивается, если для студента в университете потратить Nое количество дней на разработку простительно, ибо его время ничего не стоит, то для нормального человека работать без автокомплита — вредительство)
по-разному, ох, по-разному…
В последних коммитах на gitorious на проекте qt-creator видел мелькало про доработки QML, допиливают его и доделывают. Там и автокомплит и еще какие-то фенички были. Вобщем полная поддержка будет, вроде даже с предпросмотром всего этого добра (по этому поводу точно сказать не могу, просто было обсуждение, найти его щас не могу, поэтому к чему в итоге пришли — незнаю).

По поводу автозаполнения, год назад я бы с Вами согласился на все 100%. Но так случилось что год назад начал осваивать vim(для комфортной работы в vim пришлось научится в слепую печатать на латинице) и теперь могу даже сомневатся в необходимости автозаполнения. Пользуюсь им только когда не помню точно как называется метод, а просто метод длинной до 10 символов в нацать раз быстрее набрать в слепую, чем нажать комбинацию клавишь для вызова всплывающей подсказки, найти там нужный вариант и клацнуть «Ентер».

Но я не утверждаю, что всем теперь осваивать слепую печать и переходить на vim, просто предлагаю другую точку зрения, что вот некоторые «не очень сильно» пользуются этой фичей.

А вообще конечно да, автозаполнению быть обязательно, большинство им пользуется, а те кто не ползуюся, могут просто им не пользоватся :-), вот такой каламбурчик.

Автокомплит конечно нужная вещь, сам за это люблю Kdevelop, он очень даже внушительные блоки кода самостоятельно генерит. Но первые шаги лучше делать с минимальным комплитом, а иначе можно не прочуствовать синтаксические конструкции и банально привязаться к IDE на мертво.
В Креаторе вполне рабочий автокомплит для QMLя, но весьма не полный. Лучше уж юзать его с открытой рядом докой.
НУ ЧТО, ПЕДЕРАСТЫ, МИНУСУЙТЕ!!!
-4 место, видать хочет -1 место
Предлагаю флешмоб, все плюсуем его дружно, ибо нефиг перед собой такие цели ставить
мне кажется лучше игнорить, само пропадет.
не трогаешь — не воняет :)
Значит, все дружно призываем НЛО :)
ебаный ты насос, минусуйте сучары
Ололо…

Деточка, ну чего тебе неймётся? Что, мама с папой за тройки отругали? Девушка не дала? На работу на нормальную не берут? Так иди дальше качаться в ВОВ, фапать на прон и срать в комментах на анонимных имиджбордах.
Кстати, а тут есть кнопка вызова НЛО? Или куда можно написать, чтобы этому существу сделали экстерминатус?
Ну вообще в теории можно обратиться к Чипу и Дейлу по ссылке в подвале сайта. Но что-то они пока не спешат на помощь ;)
Да кстати, забыл написать :-), понравился результат, очень даже красивенькое окошечком. :-) (с точки зрения дизайна).
Спасибо :) Делал его для того, чтобы потом использовать как попапы в qutIMе
Для начала, неплохо было бы убрать системный заголовок и сделать фон прозрачным:
view->viewport()->setAutoFillBackground(false);

Теперь инициализируем наш просмотрщик QML и указываем ему путь к файлу, который мы собираемся исполнить
view = new QmlView(this);
...


Собственно, если выполнять операции в предложенном вами порядке, до инициализации QmlView мы не дойдем, получив при обращении по не инициализированному указателю Segmentation Fault. Полный исходник не скачивал, вероятно, там все сделано правильно. И тем не менее — поправьте, пожалуйста, в статье :)
Аха, там всё правильно. Хотел просто всё в одном месте собрать… но чутка промахнулся. Счас пофикшу
Тролли молодцы. По-моему QML гораздо нагляднее XAML.

Вообще во многом благодаря Qt я использую С++ без какого-либо дискомфорта, иначе пришлось бы переходить на другие языки.
Для человеческого глаза нагляднее. А вот если програмно парсить/генерировать — то XML-based код, наверное, все же предпочтительнее.
А мне машину не жалко. :) QML вроде использует какой-то стандарт (забыл название), тот же, что и JS.
json
Я в том смысле, что для XML уже давно существует целый зоопарк библиотек и технологий (XSLT, XPath etc.), которые облегчают работу с ним. Сомневаюсь, что для стандарта QML существует столь полный набор. Впрочем, при желании наверное можно конвертировать QML в XML и наоборот.
Для JSON'а существует достаточно средств разбора и генерации, а QML это далеко ещё не стандарт.
Впрочем он больше похож на эдакий css на стероидах. В будущем наверное и генераторы появятся, но его создавали именно для того, чтобы можно было легко писать прямо на нём, а не использовать внешние инструменты.
НЛО прилетело и опубликовало эту надпись здесь
можно ли в qml вставить widget?
Конечно нельзя ;) Кнопки для лохов :)
а почему кнопки?
Ну любой другой виджет тоже для лохов :)
Вообще да, можно через QGraphicsProxyWidget
Интересно, про XML не слыхали в Qt? Почему выбрали именно что-то вроде JSON?

Так скоро и до XAML дело дойдёт :)
Что значит не слышали? Для работы с XML имеется достаточно инструментов
Но зачем тут нужен XAML не пойму? Читается он хуже, чем QML, для сравнения нашел тут блог с похожей штукой, но на WPF'е. Для ручного редактирования XAML не так удобен, он куда более многословен.
При этом json проще интегрировать с javascript'ом, его можно даже простым eval'ом парсить.
А я так думаю, что появятся конвертилки WPF <> QML
Вы действительно думаете что изобретение велосипедов наподобии XSLT/XAML это хорошая идея?
Я имею в виду велосипеды и костыли, которые позволяют внедрять логику работы в язык разметки, изначально для этого не предназначенный.

С другой стороны имеем Javascript Object Notation, который был спроектирован для передачи данных об объекте и в том числе для передачи логики работы этого объекта (т.е. методов).

Не стоит забывать, что QML предназначен не только для определения внешнего вида, но и для определения логики
>Интересно, про XML не слыхали в Qt?

Qt-шные ui-файлы — как раз таки XML :)
Спасибо за статью, очень познавательно. Сам начал ковырять новые фишки Qt где-то в сентябре, даже постил статью про Qt Animation Framevork, но до Declarative UI не добрался (хотя хотел, даже собрал его из git-а) — перекинули на другой проект, некогда стало баловаться :)
Поковыряю на досуге.
Простите, а не подскажете, как созданное вами окошко можно подвинуть путём перетаскивания (без заголовка-то)? Где надо написать какой-нибудь обработчик или флаг выставить?

Очень хочется разобраться с возможностями связки QT-QML, и наконец понять – да, QT это то, что мне нужно для разработки эффектных кроссплатформенных UI. Пока что такому осознанию мешает 10летний опыт использования win32 и .net.

PS: Большое спасибо за статью.
В kde, openbox (и во всём остальном вроде тоже) при зажатом ALT можно за любое место окно перетаскивать, в W7 вроде тоже до этого додумались.
Ссылки на архив с примером ведут на запаркованный домен.
Уважаемый All — подкиньте файлик qmltest.zip у кого в загашнике остался.
У меня уже нет. Да и с тех пор лучше руководства вышли)
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации