On Nov 14, 2008, at 4:52 PM, Quincey Morris wrote:
On Nov 14, 2008, at 15:21, Randall Meadows wrote:
Is there something I can do to tell NSDocument (or whomever) that these changes that it thinks are made by another application are on purpose, and that it needs to keep its opinions regarding them to itself? If <whatever> ends up marking the file as "dirty", that's fine by me. I'll go continue scouring the docs, but if someone has a pointer, I'd appreciate it.

For changing the extension, you could try -[NSDocument setFileURL:] after you change the extension (both to and from the temporary one). You might also have to override -[NSDocument displayName] if you don't want to show the temporary extension in the window title, but that's purely cosmetic.

So, to "lock" the document, I get the current name, change the extension, use NSFileManager to move the file from the "unlocked" name to the "locked" name, call -setFileType: to the locked type, and call - setFileURL: with the new, locked pathname converted to an NSURL. When I then save the document, I get the following:

"This document has been renamed to "newname"
It will be saved under this new name, or you can provide another name.
[Save As]    [Cancel] [Save]"

The code used to use -setFileName: instead, but that's deprecated in 10.5 (as of 10.4 actually).

Shirley there must be some way to tell the system "yes, I'm changing this file name, yes, the user is already aware of it and would appreciate you not annoying the living snot out of him by informing him of this useless detail."


Calling -setFileModificationDate: had a similar affect on my other issue (that is, nothing) but I used the other suggestion and moved the actually modification of the bundle contents to the save function, and that took care of that problem.
_______________________________________________

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]

Reply via email to