views:

347

answers:

2

I have created a simple NSWindow with an NSTextField and an NSButton in Interface Builder on Leopard. I set the window background color in my program. Everything looks fine when I run the program in Leopard. But when I run it in Tiger, the background color of the window is not set. It has a default Tiger look with horizontal stripes.

Weirdly, the background colors of the NSTextField and NSButton controls are set to the specified window color, so they look really awful.

How can I convince Tiger to respect the color I choose in the setBackgroundColor call?

A: 

I guess the interface builder is generating some Leopard only styling code somewhere (valid but non functional in api or somesuch), tried creating it on the Tiger machine and see what it looks like in Leopard?

ewanm89
Interface Builder does not generate code; it generates archived objects.
Peter Hosey
+2  A: 

If I recall correctly, under Tiger you had to set the background pattern of the window if you wanted to change its color - the 'color' was overridden by the (ugly) default aqua pattern.

On the other hand, why the heck are you writing code for Tiger? Something like 0.3% of machines out there run Tiger, and something like 100% of those are run by luddites.

-Wil

Wil Shipley
I love all my customers, even the luddites. But now that Tiger is two major releases old we will be phasing out support for it.
gauss256