Hmm. strange. If we could use SVG's, then it might be simple to change the color of every button. Look at this sample code for a round button:
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:cc="http://web.resource.org/cc/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" version="1.1" viewBox="0 0 50 50" width="1000" height="1000" id="svg2" sodipodi:version="0.32" inkscape:version="0.45.1" sodipodi:docname="Button-Lightblue.svg" inkscape:output_extension="org.inkscape.output.svg.inkscape" sodipodi:docbase="/home/azatoth/img">
<metadata id="metadata24">
<rdf:RDF>
<cc:Work rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/>
</cc:Work>
</rdf:RDF>
</metadata>
<sodipodi:namedview inkscape:window-height="978" inkscape:window-width="1177" inkscape:pageshadow="2" inkscape:pageopacity="0.0" guidetolerance="10.0" gridtolerance="10.0" objecttolerance="10.0" borderopacity="1.0" bordercolor="#666666" pagecolor="#ffffff" id="base" inkscape:zoom="1" inkscape:cx="679.6237" inkscape:cy="984.92543" inkscape:window-x="373" inkscape:window-y="31" inkscape:current-layer="svg2"/>
<style type="text/css" id="style4">
#P0,P1 {stroke:#000;stroke-width:.99999958}
#P0 {fill:url(#L0)}
#P1 {fill:url(#R0)}
#P2 {fill:#fff}
</style>
<defs id="defs6">
<linearGradient id="L0" gradientUnits="userSpaceOnUse" x1="9.94695" y1="6.3660479" x2="38.992043" y2="44.297081">
<stop style="stop-color: rgb(136, 136, 255); stop-opacity: 1;" id="stop9" offset="0"/>
<stop style="stop-color: rgb(16, 16, 48); stop-opacity: 1;" offset="1" id="stop11"/>
</linearGradient>
<radialGradient id="R0" gradientUnits="userSpaceOnUse" cx="24.933687" cy="25.066313" fx="24.933687" fy="25.066313" r="23">
<stop style="stop-color: rgb(96, 96, 160); stop-opacity: 1;" id="stop14" offset="0"/>
<stop style="stop-color: rgb(96, 96, 160); stop-opacity: 1;" offset="0.78571427" id="stop16"/>
<stop style="stop-color: rgb(96, 96, 160); stop-opacity: 0;" offset="1" id="stop18"/>
</radialGradient>
</defs>
<path id="P0" d="M49.634373,24.99999C 49.634373,38.530961 38.665353,49.499981 25.134382,49.499981C 11.603411,49.499981 .63439133,38.530961 .63439133,24.99999C .63439133,11.469019 11.603411,0.49999979 25.134382,0.49999979C 38.665353,0.49999979 49.634373,11.469019 49.634373,24.99999z" transform="translate(-0.134407, -1.53761e-05)" style="stroke-width: 0.25; stroke-miterlimit: 4; stroke-dasharray: none;"/>
<path id="P1" d="M49.499981,24.99999C 49.499981,38.530961 38.530961,49.499981 24.99999,49.499981C 11.469019,49.499981 .49999979,38.530961 .49999979,24.99999C .49999979,11.469019 11.469019,0.49999979 24.99999,0.49999979C 38.530961,0.49999979 49.499981,11.469019 49.499981,24.99999z" transform="translate(-1.50294e-05, -1.53761e-05)"/>
</svg>
http://upload.wikimedia.org/wikipedia/commons/c/ca/Button-Lightblue.svg to see what it looks like (sorry, it's pretty big. I just wanted a copyright free version for a sample)
This button is completely round, has a gradient and an outline, and is completely text. The top part (metadata) is all about inkscape, the creator of this image. The very bottom part (path) is the shape of the button. You can see in the middle (the defs) where the gradient and fill are. It has RGB colors in a very script-editable place. If we used SVG's for all button backgrounds, it would be trivial to create a webamin page that included a color picker and a sample button. Then, when you click "submit" to your color choices, it would just edit the SVG files and change the RGB values to the user selected ones. Also, when you re-gen the oribiters, the _scalable_ vector graphics would all look pixel perfect.
Any thoughts? I'm going to download all the code tonight and start looking at the backend of this. I've been wanting to dig my teeth into something as cool and meaty as LinuxMCE, and this is something that is a "small" change that could effect a bunch of the user experience.
tschak999, do you happen to know where in the code I should start looking?
EDIT: caveat: I've only used SVG's on webpages and in a catalog I designed, never in software. I've seen all the open source libraries that deal with SVG's, so I figure we could bolt it on. I'll take a gander when I get home.