Re: Help with Undo and MVC
Re: Help with Undo and MVC
- Subject: Re: Help with Undo and MVC
- From: Stephen Magyari <email@hidden>
- Date: Mon, 03 Nov 2003 20:24:11 -0800
Thank you to Laurent and Drew for the responses, which helped me clarify my
question --
How do I get my model to know that an NSUndoManager exists in my document?
I think I need to either pass the undo manager "down" to the model or have
the model keep a pointer "up" to the document, but I'm lost in either case
in that I can't figure out exactly how to do it in a way that works.
Currently I have in my document's header:
- (NSUndoManager *)undoManager;
and in the implementation:
- (NSUndoManager *)undoManager {
return [self undoManager];
}
Is that correct? If not, how should I do it? If it is correct, then what
should I do differently in the set method below (from my model's
implementation) to get it to recognize "undoManager" (which Xcode says is
undeclared)?
- (void)setBookTitle:(NSString *)title;
{
[[undoManager prepareWithInvocationTarget:self]
setBookTitle:newBookTitle];
[newBookTitle release];
newBookTitle = title;
}
I've tried Drew's suggestion:
[[[doc undoManager] prepareWithInvocationTarget:self]];
But then Xcode says "doc" is undeclared, etc...
I'm clearly missing something or am doing something wrong and need a nudge
(violent shove?) in the right direction. Thank you for the assistance thus
far...
--Stephen
on 11/3/03 12:04 AM, Laurent Daudelin at email@hidden wrote:
>
on 11/3/03 2:31 AM, Stephen Magyari at email@hidden wrote:
>
>
> - (void)setBookTitle:(NSString *)title;
>
> {
>
> [[undoManager prepareWithInvocationTarget:self]
>
> setBookTitle:newBookTitle];
>
> [newBookTitle release];
>
> newBookTitle = title;
>
> }
>
>
>
> I think the code above is correct (based on the examples I've seen) but my
>
> app won't compile (under Xcode), stating, "error: 'undoManager' undeclared
>
> (first use in this function....)"
>
>
Well, I think you should fix the first error you get before trying to get
>
going with Undo/Redo. Did you declare that 'undoManager' variable? It
>
doesn't seem like you did in the method above. Is it because it's an
>
instance variable of the class that implements 'setBookTitle:'?
>
>
-Laurent.
_______________________________________________
cocoa-dev mailing list | email@hidden
Help/Unsubscribe/Archives:
http://www.lists.apple.com/mailman/listinfo/cocoa-dev
Do not post admin requests to the list. They will be ignored.