Here's the Gtk+ screenshot. As it turns out, I needed to make use of RadioGroupManager, but in a different way. In Gtk+, the first radio button in the group is created with a NULL group, and subsequent radio buttons are added to the group by querying the radio group of that first radio button. Some minor changes to RadioGroupManager were made to support this, without breaking Cocoa. I also factored RadioGroupManager out of Cocoa, and removed all Cocoa-isms that it contained.