For fun I looked a bit at the format. An msstyles file is just a win32 resource file. It contains various sections each containing strings, colors or bitmaps. Colors are just stored in a text file. Uxtheme parses this text file and loads the colors 1:1 from this section into the registry.
The main issue is creating a resource file it can either be compiled using wrc or it could an empty file could be created from a program and then updated using UpdateResource and friends. The first solution is the nicest way but not everyone might install wrc.
Anyway desktops will never move to this microsoft format. I think both gtk and qt are now moving to xml based formats. We could define our own spec for that but I doubt they will move to this. They attempted before to use the same theme format but it didn't work out well.
Roderick
On Sun, Nov 2, 2008 at 3:01 PM, Dan Kegel dank@kegel.com wrote:
FWIW, my opinion is that any deep integration is going to be hard, and that for the moment we should go with something much simpler: simply support mstheme files well, and provide themes that look like the default themes on Ubuntu / OpenSuse / Fedora.
I agree. I simply think any outside tools we develop should be used in conjunction with a proposed formal standard. If the MS formats are open there is no reason we cannot propose the usage of them, or a variation on them as part of FreeDesktop making Wine play nicer with everyone (mono and moonlight prove MS standards and formats can be of use for Linux). I'll spend some of the copious amounts of free-time I have at work researching for formats and we can continue the propose standard discussion off list later in the week.
-- Steven Edwards
"There is one thing stronger than all the armies in the world, and that is an idea whose time has come." - Victor Hugo