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

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

Спасибо! Хорошая статья. После НГ изучу код поподробнее.

Одно замечание: не рекомендуется использовать «Qt» в качестве префикса своих классов, этот префикс зарезервирован для классов из Qt Solutions.

Ещё сразу бросилось в глаза: реализация прогресс-бара из Qt Creator'а в макоси выглядит кривовато. Мне кажется, лучше было бы сделать его в виде крутилки — круг постепенно заполняется. И, кроме того, у разных программ разные значки — а значит, у некоторых прогресс-бар будет сливаться со значком, так что лучше сделать его цвет настраиваемым.

Ну, и для Win7 неплохо бы добавить возможность выводить в меню превьюшки произвольных виджетов (вместо превью всех открытых окон).
Возможно, но там рисовать нужно все средствами макоси, а я в них не слишком пока еще силен это во первых. Во вторых из интерфейса нет возможности добраться до конкретного плагина, что в общем-то абсолютно правильно! Поэтому нужен какой-то универсальный способ вызывать платформозависимый функционал.
Да я в курсе насчет префикса, но в принципе мне бы хотелось в конце концов получить для плагина этот самый статус Qt Solutions.
Стремление к универсальности одновременно и огромный плюс, и весомый минус Qt… Мне кажется, лучше было бы предоставить побольше платформозависимых возможностей.

А с попаданием в Solutions — желаю сбыться! =)
Qt как раз предоставляют простой способ взаимодействия с платформозависимым функционалом. Но я пока хочу базовую часть чуть-чуть отладить на публике, а уже потом добавлять некоторые интересные фичи.
Способ взаимодействия — да, простой, а вот готовых решений для отдельных систем Qt почти не предоставляет.
И тут на сцене появляются бравые парни, пишущие в блог Qt Software. :)
Вы правы, но реализовать всё и вся, а потом ещё и поддерживать было бы трудно. Подобные фишки, менюха в таскбаре и прочее — не такая уж и устоявшаяся вещь. Поди знай, что ещё придумают эти ребята из мелкософта или какой другой компании?
Я прекрасно понимаю, что нельзя реализовать всё и вся =)
Но тем не менее, могли бы многие функции сделать публичными для начала. К примеру, сделать публичным класс QBalloonTip. И функции qt_mac_* тоже.

Очень много вещей уже реализовано, но почему-то не входит в public api.
Да запросто (в некоторой степени). Но, как указал автор, — потом. Чересчур необычная фича, которая есть только на Windows.
Может сделать платформозависимые фичи как вызов виртуального метода, принимающего в качестве аргумента const char * с idшкой метода и QVariant с данными. Ну например:
virtual QVariant platformInvoke(const char *id, const QVariant &data);

Тогда можно будет любые платформозависимые фичи делать без ломки бинарной совместимости.
Если верить исходникам, лицензия Вашего компонента — LGPL v.3. В то время как у «официальных» QtSolutions — BSD.
Хм… ну ежели получится более-менее официальный статус получить, сменим лицензию, а пока я думаю LGPL таки оптимальный вариант.
Вау! Какие вы молодцы!

Вас продонатить можно как-то?
Вопрос хороший, я лично не против, но я не в курсах как это дело организовывать. Банковский счет у меня есть.
И сам не знаю) Донатить пейпелом умею, а как включать такие кнопочки понятия не имею.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории