Take a look at Apple’s Switch to Mac OS X page, a “guide to key user experience differences between Microsoft Windows and Mac OS X”. Top of the list of 14 points to remember when developing for OS X:
1. Use the Aqua Human Interface Guidelines
Updated for Mac OS X 10.2 Jaguar: The definitive guide to designing an application that will offer a great Mac OS X user experience, available in PDF and on the web. Apple strongly recommends that you follow these guidelines to create an intuitive interface for your application, enabling your users to accomplish their tasks and goals quickly and efficiently, and maintaining the consistency and ease of learning that is characteristic of Macintosh software.
Then move on down to point number 4:
4. Avoid Custom Controls
Microsoft Windows applications often utilize custom controls (such as nonstandard buttons, scroll bars, and other interface elements) in their user interfaces. In the Cocoa, Carbon, and Java frameworks, Mac OS X provides a comprehensive suite of standard Mac OS X interface elements and controls, and is constantly improving that suite to meet developer needs.
Custom controls can be confusing to your users, and more importantly, they may look out of place, especially as Aqua is refined as Mac OS X evolves. If you must use custom controls, be sure to use them for unique interface elements; for example, avoid replacing a standard checkbox, for example, with a custom one.
When porting your Microsoft Windows application to Mac OS X, develop a standard, Aqua-compliant Mac OS X interface: You’ll find that product reviews are more positive and users are more satisfied. If branding your product’s UI is important, consider integrating brand identity, perhaps by using a watermark in window backgrounds.
Now, you can take that both ways. You can say “Look, man: it says they’re constantly improving the controls – there’s your carte blanche, explaining away Apple’s recent UI decisions”. Alternatively, you can say “Blimey. That’s decidedly hypocritical, if you don’t mind my saying.” (You might also draw attention to the fact that they say “for example” twice in the sentence about the checkboxes, but that would be a little churlish!)
What you can’t really explain away, however, is (1) the advice about, say, not “replacing a standard checkbox with a custom one”,
and also (2) berating Windows for being awash with “nonstandard buttons”, and such evils.
But, look on the bright side: at least they do understand that these custom controls “can be confusing to users”
(Erm… is this thing on?)
and “more importantly, they may look out of place”.
Pot, meet kettle. Play nice, now.