Apart from just the window manager, the various included matchbox utilities are also theme-able.
'mbdock' and the menu's used by apps lile mbmenu can also be themed. Rather than use the theme.xml file, they use a theme.desktop file which exists in the same directory as the theme.xml file. The files format consists of one key/value pair per line for each visual attribute to be changed. Here is the theme.desktop file for the blondie theme.
[Desktop Entry] Type=MBTheme Name=Blondie Comment=Blondie theme PanelBgColor=#e2dec6 PanelFgColor=black MenuBgColor=#e2dec6 MenuFgColor=black MenuBdColor=#9d9a8a MenuHlColor=black
The following keys are valid;
Sets the background color used by matchbox-panel. Can be either a color name or specified in the form #RRGGBB.
Sets the transparency of matchbox-panel. Ranges from 0-255, 0 being totally transparent. This option is UNSUPPORTED, use at your own risk.
Sets a titled background image for matchbox-panel. Set to the full path of a supported image file.
Like the above but used by panels reparented in the titlebar.
Sets colors for panel 'message bubbles'.
Sets the font for panel 'message bubbles'.
Sets the foreground color to be used by panel applets such as minitime.
Sets the background color of any matchbox menu's.
Sets the foreground color ( eg text ) of any matchbox menu's.
Sets the border color of any matchbox menu's.
Sets highlighted text color of any selected menu items.
Sets the font used by any menus. Like font definitions in theme.xml files, it can be GTK2 or Xft style font definition.
This option will make the menu transparent. This option is UNSUPPORTED. Use at your own risk.
Set the desktop background. For infomation on format, run 'mbdesktop --help'.
Icons used by mbmenu, mbdesktop and most of the included matchbox panel/dock apps are also theme-able. They follow a basic implementation of the icon theme spec found at freedesktop.org.
The basic mechanism works by 'overriding' the applications default icon. For example before checking $PREFIX/share/pixmaps for a specified icon file, matchbox applications will check the following;
$HOME/.icons/ $HOME/.icons/[theme_name]/[size]x[size]/[type]/ $PREFIX/share/icons/[theme_name]/[size]x[size]/[type]/
Where [size] is usually one of 48, 36, 32, 24 or 16 and [type] can be anything ( usually 'apps', 'emblems' etc ).
So as long as you know the image filename an application wants ( hint: look at its .desktop file ), a theme can change its icons appearance.
Here is a list of icon names used by the various parts of matchbox. If matchbox is compiled without png support assume an xpm extension.Icons used by menus and matchbox-desktop; === mbdesktop.png mbfolder.png mbfolderprev.png mbnoapp.png mbup.png mbdown.png mbadd.png mbremove.png mbexit.png mblock.png Icons used by the various panel apps; === miniapm-power.png miniapm.png mbmenu.png mbmenu-active.png # Optional mbterm.png minisys.png minitime.png minivol-high.png minivol-low.png minivol-mid.png minivol-zero.png miniwave-icon.png broken-0.png no-link-0.png signal-1-40.png signal-41-60.png signal-61-80.png signal-81-100.png