It seems from the bits and pieces I can scrape together that the answer to this one will be "no", so I'll broadly explain what I'm trying to achieve in (the likely) case that I'm trying to hammer in a screw.
What I have in my app is a list of valid file extensions to read in, which I'm recursing through a directory for. I want this to be a preference, so I've got the following:
NSMutableDictionary *dic = [NSMutableDictionary dictionary];
[dic setObject:[NSMutableArray arrayWithObjects:@"pdf", @"rtf", @"txt", nil] forKey:@"validExtensions"];
[[NSUserDefaults standardUserDefaults] registerDefaults:dic];
and I'm binding the NSTableView to an NSArrayController which is bound to the Shared User Defaults controller...
Is this completely the wrong approach to having a user-customisable list of valid extensions? Have I misunderstood the role of NSUserDefaults?