Question

I am writing an application in Cocoa which allows the user to export data in 3 different formats: CSV, JSON, and XML. I have added the allowed extensions to an NSSavePanel:

NSSavePanel* saveFile = [NSSavePanel savePanel];
NSArray* extensions = [[NSArray alloc] initWithObjects:@"csv", @"json" @"xml", nil];
[saveFile setAllowedFileTypes:extensions];

However, how can I set up the NSSavePanel to allow the user to select which format to save in, such as in TextEdit where a "File format" list box is offered? If this is possible, how would I then determine which format had been selected?

Was it helpful?

Solution

You can add a user-defined NSView to the NSSavePanel using setAccessoryView:, see Apple's docs. There is also an Apple sample Custom Save. You add your format selection controls to this accessory view.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top