Комментарии 14
Спасибо! Хорошая статья. После НГ изучу код поподробнее.
Одно замечание: не рекомендуется использовать «Qt» в качестве префикса своих классов, этот префикс зарезервирован для классов из Qt Solutions.
Ещё сразу бросилось в глаза: реализация прогресс-бара из Qt Creator'а в макоси выглядит кривовато. Мне кажется, лучше было бы сделать его в виде крутилки — круг постепенно заполняется. И, кроме того, у разных программ разные значки — а значит, у некоторых прогресс-бар будет сливаться со значком, так что лучше сделать его цвет настраиваемым.
Ну, и для Win7 неплохо бы добавить возможность выводить в меню превьюшки произвольных виджетов (вместо превью всех открытых окон).
Одно замечание: не рекомендуется использовать «Qt» в качестве префикса своих классов, этот префикс зарезервирован для классов из Qt Solutions.
Ещё сразу бросилось в глаза: реализация прогресс-бара из Qt Creator'а в макоси выглядит кривовато. Мне кажется, лучше было бы сделать его в виде крутилки — круг постепенно заполняется. И, кроме того, у разных программ разные значки — а значит, у некоторых прогресс-бар будет сливаться со значком, так что лучше сделать его цвет настраиваемым.
Ну, и для Win7 неплохо бы добавить возможность выводить в меню превьюшки произвольных виджетов (вместо превью всех открытых окон).
0
Возможно, но там рисовать нужно все средствами макоси, а я в них не слишком пока еще силен это во первых. Во вторых из интерфейса нет возможности добраться до конкретного плагина, что в общем-то абсолютно правильно! Поэтому нужен какой-то универсальный способ вызывать платформозависимый функционал.
Да я в курсе насчет префикса, но в принципе мне бы хотелось в конце концов получить для плагина этот самый статус Qt Solutions.
Да я в курсе насчет префикса, но в принципе мне бы хотелось в конце концов получить для плагина этот самый статус Qt Solutions.
0
Стремление к универсальности одновременно и огромный плюс, и весомый минус Qt… Мне кажется, лучше было бы предоставить побольше платформозависимых возможностей.
А с попаданием в Solutions — желаю сбыться! =)
А с попаданием в Solutions — желаю сбыться! =)
0
Qt как раз предоставляют простой способ взаимодействия с платформозависимым функционалом. Но я пока хочу базовую часть чуть-чуть отладить на публике, а уже потом добавлять некоторые интересные фичи.
+1
Способ взаимодействия — да, простой, а вот готовых решений для отдельных систем Qt почти не предоставляет.
0
И тут на сцене появляются бравые парни, пишущие в блог Qt Software. :)
Вы правы, но реализовать всё и вся, а потом ещё и поддерживать было бы трудно. Подобные фишки, менюха в таскбаре и прочее — не такая уж и устоявшаяся вещь. Поди знай, что ещё придумают эти ребята из мелкософта или какой другой компании?
Вы правы, но реализовать всё и вся, а потом ещё и поддерживать было бы трудно. Подобные фишки, менюха в таскбаре и прочее — не такая уж и устоявшаяся вещь. Поди знай, что ещё придумают эти ребята из мелкософта или какой другой компании?
0
Да запросто (в некоторой степени). Но, как указал автор, — потом. Чересчур необычная фича, которая есть только на Windows.
+1
Может сделать платформозависимые фичи как вызов виртуального метода, принимающего в качестве аргумента const char * с idшкой метода и QVariant с данными. Ну например:
Тогда можно будет любые платформозависимые фичи делать без ломки бинарной совместимости.
virtual QVariant platformInvoke(const char *id, const QVariant &data);
Тогда можно будет любые платформозависимые фичи делать без ломки бинарной совместимости.
+1
Если верить исходникам, лицензия Вашего компонента — LGPL v.3. В то время как у «официальных» QtSolutions — BSD.
0
Вау! Какие вы молодцы!
Вас продонатить можно как-то?
Вас продонатить можно как-то?
+1
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
QtDockTile — кроссплатформенное использование доков!