# pixmap_path "<dir 1>:<dir 2>:<dir 3>:..."
#
# include "rc-file"
#
# style <name> [= <name>]
# {
#   <option>
# }
#
# widget <widget_set> style <style_name>
# widget_class <widget_class_set> style <style_name>

# testgtkrc2 sets all the buttons in the main window to blue by default
include "testgtkrc2"

#include "/usr/local/share/themes/Pixmap/gtk/gtkrc"
#include "/usr/local/share/themes/Redmond95/gtk/gtkrc"
#include "/usr/local/share/themes/Metal/gtk/gtkrc"
#include "/usr/local/share/themes/Notif/gtk/gtkrc"
#include "/usr/local/share/themes/Default/gtk/gtkrc"

# On Windows, if you have installed gtk-engines, try this for instance:
#include "\\windows\\gtk\\themes\\Pixmap\\gtk\\gtkrc"

double-click_timeout = 42
bell-duration = 39
bell_duration = 40

# gtk-cursor-blink-time = 200
# gtk-menu-bar-accel = F10

style "global-style-properties"
{
#  xthickness = 20
  GtkButton::child_displacement_x = 1
  GtkButton::child_displacement_y = 1
#  GtkWidget::cursor_color = "#ff0000"
  GtkToolbar::space_size = 10
  GtkToolbar::space_style = line
  GtkToolbar::button_relief = none
  GtkButtonBox::child_min_width = 0
  GtkButtonBox::child_min_height = 0
}
class "GtkWidget" style "global-style-properties"

style "defaultfont"
{
  font_name = "Sans 12"

  Gtest::foo = 47
  Gtest::bar = 47
#  GtkScrollbar::spacing = 33
#  GtkButton::color = { 3, 2,45, 6, 6, 4, 23 }
}

style "myicons"
{
  stock["gtk-dialog-warning"] = 
    { 
      { "3DRings.xpm", *, *, *} 
    }
}

class "GtkImage" style "myicons"

# common default
class "GtkWidget" style "defaultfont"

style "window"
{
# bg_pixmap[NORMAL] = "marble.xpm"
}

style "scale"
{
  fg[NORMAL] = { 1.0, 0, 0 }
  bg_pixmap[NORMAL] = "<parent>"
}

style "button" = "default"
{
#  fg[PRELIGHT] = { 1.0, 1.0, 1.0 }
#  bg[PRELIGHT] = { 0, 0, 0.75 }
#  bg[PRELIGHT] = { 0.75, 0, 0x00 }
}

style "toggle_button" = "button"
{
  fg[NORMAL] = { 1.0, 0, 0 }
  fg[ACTIVE] = { 1.0, 0, 0 }
#  bg_pixmap[ACTIVE] = "check-y.xpm"
#  bg_pixmap[NORMAL] = "check-n.xpm"
}

style "text"
{
  bg_pixmap[NORMAL] = "marble.xpm"
  text[NORMAL] = { 1.0, 1.0, 1.0 }
  fg[NORMAL] = { 1.0, 1.0, 1.0 }
  base[NORMAL] = { 0.0, 0.0, 0.0 }
}

style "slider"
{
  fg[NORMAL] = { 1.0, 1.0, 1.0 }
  bg[NORMAL] = { 0.0, 0.0, 1.0 }
  bg[ACTIVE] = { 0.0 ,0.0, 0.5 }
  bg[PRELIGHT] = { 0.75 ,0.75, 1.0 }
}

style "ruler"
{
  font_name = 'Sans 8'
}

style "curve"
{
  fg[NORMAL] = { 58000, 0, 0 }                  # red
}

style "red-bar"
{
  bg[PRELIGHT] = { 0.95, .55, 0.55 }
}

# override testgtk2, introduce the green color in the button list
style 'button_list' = 'button'
{
  font_name = "Monospace 10"
  bg[PRELIGHT] = { 0, 0.75, 0x00 }
}
widget "main window.*GtkScrolledWindow.*GtkButton*" style "button_list"


class "GtkScrollbar" style "red-bar"

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"
widget "*GtkCurve" style "curve"

binding "test1"
{
  bind "<ctrl>1" {
    "debug-msg" ("jup!")
  }
}

binding "test2"
{
  bind "<ctrl>1" {
    "debug-msg" ("hallo and")
    "debug-msg" ("huhu")
  }
}

# possible priorities are (in ascending order):
# lowest
# gtk         (used by gtk for internal class bindings)
# application (for hard coded bindings on application basis)
# rc          (used implicitel by rc files)
# highest
class "GtkCList" binding  "test1"           # implicit : rc
#class "GtkWindow" binding : highest "test2" # override "rc" priority

binding "clist-test"
{
  bind "j" {
    "scroll-vertical" (step-backward, 0.0)
  }
  bind "k" {
    "scroll-vertical" (step-forward, 0.0)
  }
}

class "GtkCList" binding "clist-test"

style "testthickness" {
  xthickness = 15
  ythickness = 15
}

#class "GtkFrame" style "testthickness"

# Test ordering of RC file priorities

style "testgtk-red-style" {
  fg[NORMAL] = "red"
}

style "testgtk-green-style" {
  fg[NORMAL] = "green"
}

style "testgtk-blue-style" {
 fg[NORMAL] = "blue"
}

widget_class "*.GtkAspectFrame.*.GtkLabel" style "testgtk-green-style"
widget_class "*.GtkAspectFrame.*.GtkLabel" style "testgtk-blue-style"  # override because it's later

widget "*.testgtk-red-label" style "testgtk-red-style"  # override because it's widget, not widget_class

widget "*.testgtk-green-label" style : highest "testgtk-green-style"
# overrides the following, because it is higher priority
widget "*.testgtk-green-label" style "testgtk-red-style"
