Depends on what you mean by preference pannels, If you mean the actuall Pannel you put up for the user, that is just done in IB, or you can use the OmniAppkit to get a Prefs pannel like OmniWeb has.
If you are talking about handleing the actuall preferences and setting and reading values, you wnat to look at the docs for NSUserDefaults (cocoa) or the CF PreferenceServices.
Tinker tool works mostly by setting and reading values int the NSUserDefaults database using the command line tool 'defaults' but if you are writing an app and want to do prefs for your own application then you should use the specified API's.