LINUX.ORG.RU

[gtk][pygtk] gtkrc стилия для одного приложения/виджета.

 ,


0

0

Хочу сделать темы для своего приложения.

Как из приложения присвоить ему тему gtk?
Как разным виджетам присвоить разные темы и переключаться между ними?
Возможно ли в темах задавать свойства для виджетов (например Button.set_relief())?

Поделитесь пожалуйста ссылками!

★★★★★

я могу очень ошибаться... но позвольте мне пофилософствовать...

темы, мать меремать, для того и придумали, чтобы ВСЕ было в ЕДИНОМ _СТИЛЕ_. Как в маке, как в гноме, как в кде, как в маемо и не как в винде, где зоопарк и где каждая софтина пытается выделиться не умом, а цветом кнопочек да рамочек.

no offence :)

Pi ★★★★★
()

При запуске своего велосипеда задай собственное значение переменной GTK_RC_FILES

init_6 ★★★★★
()

В Perl для этого имеется удобеый класс Gtk2::Rc, у которого есть функции parse($filename) и parse_string($rc_string) для управления стилями виджетов в рантайме. Очевидно, в pygtk должен быть аналогичный по функциональности класс.

И таки да, программы, которые не умеют следовать системным настройкам оформления, не нужны.

d_a ★★★★★
()
Ответ на: комментарий от d_a

Спасибо за ответ, parse есть.
>И таки да, программы, которые не умеют следовать системным настройкам оформления, не нужны.

Все так однозначно? Мне всего-то надо менять фон кнопки в зависимости от состояния (ну, и еще пару параметров), при этом кнопка будет рисоваться тем же темовым движком, что и все остальное.

ls-h ★★★★★
() автор топика
Ответ на: комментарий от ls-h

Именно так: ты навязываешь свой вкус, который скорее всего не идеален :)

Pi ★★★★★
()
Ответ на: комментарий от ls-h

> Все так однозначно? Мне всего-то надо менять фон кнопки в зависимости от состояния (ну, и еще пару параметров), при этом кнопка будет рисоваться тем же темовым движком, что и все остальное.

Ну как однозначно, при подобных вольностях разработчиков в стилевом оформлении их приложений, при установке недефолтных тем на DE обязательно где-нибудь да окажется черный текст на черном фоне, или наоборот белый на белом. Просто потому, что девелопер где-то жестко закодил цвет, черный или белый, неважно, фона или надписи или еще чего-то. Юзабельность же в резальтате становится нулевая.

d_a ★★★★★
()
Ответ на: комментарий от d_a

Какие альтернативы?
Конкретно мне надо отображать состояние значка в доке.
Состояния:
- Приложение. Оставить в доке: нет
- Приложение. Оставить в доке: да
- Иконка для запуска (приложение не запущено)
-- это минимум.
Еще надо бы: приложение требует внимания, приложение активно (одно из окон активное).

Рисовать используя cairo - будет совсем долеко от системной темы.

ls-h ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.