Use NSStringFromRect() and NSRectFromString() to convert to/from a string to
store in the defaults. However, it might be easier to set frameAutosaveName and
let the window save and restore the frame itself. Just enter the key in the
autosave attribute in Interface Builder and it should work.
Aaron
On Apr 28, 2011, at 4:50 AM, Vyacheslav Karamov wrote:
> Hi All!
>
> I need to save main window size and position to user defaults:
>
> NSValue * rect = [NSValue valueWithRect: [[NSApp mainWindow] frame]];
> [[NSUserDefaults standardUserDefaults] setObject:rect forKey:@"MainWndFrame"];
>
> but console output is:
>
> 2011-04-28 11:45:00.139 UserDefaults[32801:a0f] *** -[NSUserDefaults
> setObject:forKey:]: Attempt to insert non-property value 'NSRect: {{525,
> 701}, {303, 99}}' of class 'NSConcreteValue'.
> _______________________________________________
>
> Cocoa-dev mailing list ([email protected])
>
> 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/aaron.burghardt%40gmail.com
>
> This email sent to [email protected]
_______________________________________________
Cocoa-dev mailing list ([email protected])
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]