# pixmap_path "<dir 1>:<dir 2>:<dir 3>:..."
#
pixmap_path "/usr/include/x11r6/pixmaps:/home/imain/pixmaps"
#
# style <name> [= <name>]
# {
# <option>
# }
#
# widget <widget_set> style <style_name>
# widget_class <widget_class_set> style <style_name>
# список всех возможных состояний. помните, что некоторые неприменимы к
# определённым виджетам.
#
# normal - нормальное состояние виджета, когда курсор не находится на нём и не происходит никаких
# действий мышки связанных с этим виджетом.
#
# prelight - когда курсор мыши находится на виджете, применяется цвет определённый для данного состояния
#
# active - когда на виджете происходит щелчок мыши он активизируется и задействует соответствующие атрибуты.
#
# insensitive - когда виджет находится в неактивном состоянии и не может быть активирован.
#
# selected - когда объект выделен или выбран.
#
# учитывая эти состояния мы можем установить признаки виджетов для каждого из них
# используя следующие директивы.
#
# fg - устанавливает цвет переднего плана виджета.
# bg - устанавливает второстепенный цвет виджета.
# bg_pixmap - устанавливает фон виджета пиксельной карты.
# font - устанавливает шрифт используемый с данным виджетом.
# это устанавливает стиль называемый "button". имя не имеет реального значения, как
# это установлено актуальными виджетами в начале файла.
style "window"
{
# устанавливаем наполнение окна определенным pixmap.
# bg_pixmap[<state>] = "<pixmap filename>"
bg_pixmap[normal] = "warning.xpm"
}
style "scale"
{
#устанавливаем цвет переднего плана (цвет шрифта) красным в состоянии "normal"
fg[normal] = { 1.0, 0, 0 }
#устанавливаем фоновый pixmap этого виджета, согласно родительского.
bg_pixmap[normal] = "<parent>"
}
style "button"
{
# показываем все возможные состояния кнопки. selected единственное состояние которое не применяется.
fg[prelight] = { 0, 1.0, 1.0 }
bg[prelight] = { 0, 0, 1.0 }
bg[active] = { 1.0, 0, 0 }
fg[active] = { 0, 1.0, 0 }
bg[normal] = { 1.0, 1.0, 0 }
fg[normal] = { .99, 0, .99 }
bg[insensitive] = { 1.0, 1.0, 1.0 }
fg[insensitive] = { 1.0, 0, 1.0 }
}
# в этом примере, мы наследуем признаки стиля "кнопки" и затем отменяем
# шрифт и цвет фона, чтобы создать новый стиль "main_button"
style "main_button" = "button"
{
font = "-adobe-helvetica-medium-r-normal--*-100-*-*-*-*-*-*"
bg[prelight] = { 0.75, 0, 0 }
}
style "toggle_button" = "button"
{
fg[normal] = { 1.0, 0, 0 }
fg[active] = { 1.0, 0, 0 }
# устанавливаем фон pixmap toggle_button как у родительского виджета
bg_pixmap[normal] = "<parent>"
}
style "text"
{
bg_pixmap[normal] = "marble.xpm"
fg[normal] = { 1.0, 1.0, 1.0 }
}
style "ruler"
{
font = "-adobe-helvetica-medium-r-normal--*-80-*-*-*-*-*-*"
}
# pixmap_path "~/.pixmaps"
# эти установленные типы виджетов используют стиль определённый выше.
# типы виджета перечислены в иерархии класса, но перечислены и в этом документе для
# справочной информации пользователей.
widget_class "gtkwindow" style "window"
widget_class "gtkdialog" style "window"
widget_class "gtkfileselection" style "window"
widget_class "*gtk*scale" style "scale"
widget_class "*gtkcheckbutton*" style "toggle_button"
widget_class "*gtkradiobutton*" style "toggle_button"
widget_class "*gtkbutton*" style "button"
widget_class "*ruler" style "ruler"
widget_class "*gtktext" style "text"
# устанавливаем все дочерние кнопки основного окна "main window" в стиль main_button.
# они должны быть зарегистрированы, чтобы быть использованными
widget "main window.*gtkbutton*" style "main_button"
|