All the ROX applications use GTK. Everything inside the window frame of a GTK application is drawn by GTK, while the frame itself (the titlebar and resize frame) is drawn by the window manager.
The basic goal of the theme system is to keep programmers away from graphic design. The programmer says to GTK "display a button". The theme designer says to GTK "draw buttons like this". For more information, see The GTK+ Theme Architecture.
ROX uses GTK 2, so make sure you get a GTK2 theme if you want to change the style of the menus and other user interface widgets. To install a GTK theme:
You can find lots of themes at http://themes.freshmeat.net.
On startup, GTK reads the file ~/.gtkrc-2.0. You can edit this file to customize the appearance of your programs. See the following pages for some examples.
Make sure you have the appropriate theme engine installed (eg gtk2-engines-pixbuf).
ROX-Filer uses the standard Gtk stock icons system to change the toolbar icons. Put something like this
in your ~/.gtkrc-2.0 file:
pixmap_path "/path/to/icons" style "normal" { stock["gtk-close"] = {{"close-icon.png"}} stock["gtk-go-up"] = {{"up-icon.png"}} stock["gtk-home"] = {{"home-icon.png"}} stock["gtk-refresh"] = {{"refresh-icon.png"}} stock["gtk-zoom-in"] = {{"zoom-in-icon.png"}} stock["gtk-zoom-fit"] = {{"zoom-fit-icon.png"}} stock["gtk-jump-to"] = {{"jump-to-icon.png"}} stock["gtk-sort-ascending"] = {{"sort-icon.png"}} stock["gtk-help"] = {{"help-icon.png"}} stock["rox-show-hidden"] = {{"hidden-icon.png"}} stock["rox-show-details"] = {{"details-icon.png"}} stock["rox-select"] = {{"select-icon.png"}} } widget "*" style "normal"
Put something like this in your ~/.gtkrc-2.0 file:
style "panel-style" { bg[NORMAL] = "#efb47c" font_name = "Sans 5" } widget "rox-panel.*" style "panel-style"
Put something like the following in your ~/.gtkrc-2.0 file:
Note: to prevent this file from being overridden when changing themes use ~/.gtkrc.mine
instead
style "rox" = "default" { bg[NORMAL] = "#ffffff" bg[ACTIVE] = "#ffffff" } widget_class "*Collection*" style "rox"
Other widget_class backgrounds you may like to change include:
but remember that this will affect all GTK applications.
This is similar to the previous question. Put something like the following in your ~/.gtkrc-2.0 file:
Note: to prevent this file from being overridden when changing themes use ~/.gtkrc.mine
instead
pixmap_path "/home/yourhome/images" style "rox" = "default" { bg_pixmap[NORMAL] = "roxbg.png" } widget_class "*Collection*" style "rox"
See the GTK Theming Tutorial for more information.