On Sun, Dec 26, 2004 at 07:09:35PM +0300, Иван Лох wrote: > > > Преключаются установкой переменной окружения > > Какой? > GTK2_RC_FILES > > И кто выставляет эту переменную в зависимости от типа дисплея? > У меня FVWM Backer... Я просто использую разные виртуальные десктопы > для разных дисплеев. Веренее я использую theme-swicher, который просто > дергает gtk_rc_set_default_files(). Наверное можно сделать красивее, > но меня и так устраивает.
Понятно... А я уже было подумал, что оно, наконец, заработало, как надо. > > Ресурсы то сами настраиваются, вообще без моего вмешательства... А > > как эта схема ведёт себя при одновременной работе с нескольких > > дисплеев? > В Xinerama? Не знаю. Я ее не использую. Нет, не так. Я одновременно подключаюсь к своему хосту, например, с локального большого дисплея и с маленького ноутбука (используемого в этот момент качестве X-терминала). Плюс к этому я запускаю приложения на третьем хосте, которые показываются на двух описанных различных по размеру дисплеях. В .Xresources у меня стоит #if HEIGHT >= 1024 #define TERMFONT -rfx-courier-medium-r-normal-*-*-180-*-*-m-*-koi8-r и т.д. #else #define TERMFONT -rfx-courier-medium-r-normal-*-*-120-*-*-m-*-koi8-r и т.д. #endif В результате я могу использовать этот файл в неизменном виде и на ноутбуке, и на машине с большим монитором, а также могу легко менять мониторы, ничего при этом не настраивая, правильные цвета и размеры выбираются автоматически. А что будет, если я в двух одновременных сессиях выберу различные темы? Они друг с другом не подерутся? > > А окошки программ, запущенных на другом хосте, какую тему будут > > использовать на моём дисплее? > Если тема доступна на их хосте, то правильную. swicher бросит > gdk_event_send_clientmessage_toall() которую поймают все gtk > приложения, чьи окна открыты на десктопе и попробуют изменить тему. Нет, тема, разумеется, не доступна. Я хожу с инженерным аккаунтом на десятки разных хостов. Под тем же аккаунтом на этих хостах работают остальные разработчики. Поэтому мне совершенно не хочется трогать что-либо в тамошнем ${HOME}. Да это и не нужно. Если я запускаю gvim (lesstif), то он отрисовывается на моей рабочей станции именно так, как надо, используя настройки из моего .Xresources. А на ноутбуке отрисовывается по-другому, и тоже так, как надо. А вот ethereal (gtk) везде одним цветом и везде --- как не надо. Поскольку применяет настройки из локального файла .gtkrc. Но это просто глупо, ведь у данных хостов даже мониторов локальных нет, поэтому все настройки отображения должны определяться параметрами удалённых дисплеев, а они у каждого разные. Вот отсюда и вопрос: как сделать то же самое с GTK? > Кстати, как называется userspace утилита, которая заставит все окна > перечитать X ресурсы и перекраситься? editres? Только оно не со всеми приложениями работает. -- Andrey V. Kiselev Home phone: +7 812 5970603 ICQ# 26871517