From: James Crook <crookj@in...> - 2006-06-14 23:57:37
I'd like to talk through exactly how to handle the use of platform
specific images in theming. The problem is that we don't want users
picking up the Aqua theme and using it on Linux or WindowsXP.
My preference is that we keep the ImageCache to the same layout for all
platforms. For platform specific images, each platform will only use
the image that is in the position for its platform. The ImageCache
stays generic that way.
This is desirable for many reasons. It means that we can use a single
ThemeAsCeeCode.h in CVS. It means that we can distribute collections of
themes without making different versions for each platform.
Also it gives better protection against misuse of a theme than having
platform specific ImageCaches would. If instead we distributed a Mac
Theme and a PC Theme separately, and only with those versions of
Audacity, people would still try out the ImageCaches on the other
platforms. As a combined theme they can't do that.
The specific choice is:
The only use ever made by Audacity of a non-platform image is to write
it to the ImageCache in the designated position. The program does not
use the image from that position in any other way. Nor will it write
the image out as a single component.
I think this is the right solution and covers the problem sufficiently.
Do you agree?