Re: Versions browser, file access, revertToSaved
Re: Versions browser, file access, revertToSaved
- Subject: Re: Versions browser, file access, revertToSaved
- From: Jerry Krinock <email@hidden>
- Date: Thu, 08 Mar 2012 19:27:43 -0800
On 2012 Mar 07, at 23:48, Martin Hewitson wrote:
> I have an app which works with autosave and Versions browser.
Oh, so you've implemented +[NSDocument autosavesInPlace] ;)
> I have a file-monitor in the app which reloads the document if it changes on disk.
Great feature. I've done that too.
> For the reloading I was simply calling -revertDocumentToSaved: …
If your document is Core Data, forget it. You'll need to close and re-open. Ugly, but at least it doesn't display any errors and you'll be able to ship sometime this year.
> "The document “foo.txt” could not be saved. The file has been changed by another application."
I've successfully beaten that monster a couple times with the following method. It looks silly, but it works. Try sprinkling one in during your reload somewhere…
@implementation NSDocument (SyncModDate)
- (void)syncFileModificationDate {
NSFileManger* fm = [NSFileManager defaultManager] ;
NSDictionary* fileAttributes = [fm attributesOfItemAtPath:[[self fileURL] path]
error:NULL] ;
NSDate* newDate = [fileAttributes objectForKey:NSFileModificationDate] ;
[self setFileModificationDate:newDate] ;
}
@end
I think I got the idea from here:
http://stackoverflow.com/questions/380076/manual-core-data-schema-migration-without-document-changed-warning
_______________________________________________
Cocoa-dev mailing list (email@hidden)
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:
This email sent to email@hidden