Well i'm not sure on the official process but here's how I got things working.
1. Copy folder AppKit/Themes/Aristo and rename as appropriate (eg AppKit/Themes/MyTheme)
2. Place my versions of all the images in the Resources folder (to keep it simple I used the same file names as in aristo but this isn't strictly necessary)
3. Edit info.plist (in the MyTheme folder) - most important is changing the CPBundleName to the name of your theme
4. Edit ThemeDescriptors.j to reference the fonts and colours of my theme - if you change the image file names you will need to change these in ThemeDescriptors.j too)
5. compile MyTheme using blend (i had to rebuilt blend from source to work on Windows)
6. Copy the output folder from blend (eg MyTheme.blend) to Frameworks/AppKit/Resources for the application you want to use it in
7. modify AppController.j to load the theme - eg:
- (void)applicationDidFinishLaunching:(CPNotification)aNotification
{
var theWindow = [[CPWindow alloc] initWithContentRect:CGRectMakeZero() styleMask:CPBorderlessBridgeWindowMask];
var blend_mytheme = [[CPThemeBlend alloc] initWithContentsOfURL:[[CPBundle bundleForClass:[CPApplication class]] pathForResource:@"MyTheme.blend"]];
[blend_mytheme loadWithDelegate:self];
[theWindow orderFront:self];
}
- (void)blendDidFinishLoading:(CPBundle)aBundle
{
[CPTheme setDefaultTheme:[CPTheme themeNamed:@"MyTheme"]];
[self continueProcessing]; //continueProcessing function does everything else in the app that needs to happen AFTER the theme is loaded
}
Hope that helps
Holly