the world is a complicated place isn't it?

This needs some explanation; A good fellow named Isaac Feitler (ike at created an excellent blackbox to sawfish convertor (thanks),after trying to convert some themes that weren't going to work, to see what would happen, i decided to make a new one, some of the colours are from the "spliff" blackbox theme (even though this looks nothing like it). All the complicated lisp stuff is from Isaac Feitler.

This is Isaac's brief note to the convertor he wrote:

this is a theme written to implement a blackbox style in sawfish, purely through rendering stuff. the layout and function of the frame and it's buttons are designed to be exactly like they are in blackbox. it might be fun to make the button layout customizable, though.

so far, the code I've written can only do blackbox styles that use solid textures or ones with horizontal, vertical, or diagonal gradients, and only with regular beveling (Bevel1 style in blackbox). this is enough for a few themes, but not all of them. to be able to do all of them, I need functions for rendering the rest of blackbox's types of gradients, and for rendering blackbox's Bevel2 style bevels.

to get pixel-for pixel duplication, I may also need new gradient rendering functions, and I will need to learn exactly how blackbox interlaces it's textures; my interlacing function is a crude approximation.

unfortunately, I don't know c/c++, so I haven't been able to decipher algorithms from the functions in in the blackbox source, which seems to be where blackbox's gradient, bevel, and interlacing functions are.