If you add all the columns (and remove old ones) before calling setAutosaveName:, or setAutosaveTableColumns:, then it should work out okay; it will restore all of the widths, positions, etc.

corbin

On Aug 4, 2008, at 2:03 PM, Rick Hoge wrote:


I'm working on an application that will allow users to add columns of descriptive information to an NSTableView - the available columns are determined at launch time by loading a dictionary.

In my test app, I can add columns to my table no problem. Now I am trying to decide on a robust and efficient way to make sure that the set of columns chosen by the user, and their geometry, is saved when quitting the app and restored at the next launch.

I can think of a number of brute force ways to do it - save an array of column identifiers and/or value bindings to user preferences, for example.

I know it's possible to autosave column layout information under Leopard through the framework, and this appears to work. The autosave info appears to restore the geometry of columns defined in the nib file, but it won't force a reload of columns created programatically in the last session. I suspect that the autosave file may actually contain the identifiers of all columns displayed as of the last application quit, and wonder if there is a way, during nib loading, to access this list so I can initialize the table.

I don't like having the same information stored multiple places (i.e. my own NSArray in user prefs replicating info that might be more complete in the NSTableView autosave file) if I can avoid it, but can't seem to find a way to get at all the info in this file.

If anyone has some good examples of how this can be done, or some past experience to share on what works well, I'd be very grateful.

_______________________________________________

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to [EMAIL PROTECTED]

Reply via email to