Ashley,

Thanks for your advice. I think you are right, I have implemented Graham's recommendation but even though undo/redo works fine, as you mention, there seems to be no effect on the window's dirty state.

Regards,

Huibert


On 03/04/2009, at 10:22 a.m., Ashley Clark wrote:

On Apr 2, 2009, at 10:57 PM, Huibert Aalbers wrote:

Hi everyone,

I am writing an application that offers support for Undo/Redo. Everything works fine, except for a small detail that bothers me.

Since I set the document edited flag manually, using the [theWindow setDocumentEdited:YES] instruction each time the document is modified, I have no way to remove the flag when a user undoes all the changes.

The solution would be to set the document edited flag based on the status of the Undo menu item state. Is there a simple way to do this?

Register an observer on your undo manager's NSUndoManagerDidUndoChangeNotification and NSUndoManagerDidRedoChangeNotification and set your dirty flag there.

As far as I know returning the undo manager via your window delegate's windowWillReturnUndoManager: only keeps the window from creating its' own undo manager, it does not set up the mechanisms to update the window's dirty state.


Ashley

_______________________________________________

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 arch...@mail-archive.com

Reply via email to