On 15 Aug 2011, at 14:52, McLaughlin, Michael P. wrote:

> I managed to find this solution shortly after sending a request to this list 
> for help.  I show the code below so that future programmers might find this 
> more easily that I did.  This solution has not been tested with Lion.  [Note: 
> This app does not have a File/New command and does not open an untitled 
> document.]
> 
> ________________________________
> 1. Subclass NSDocumentController --> myDocController

Cocoa class names should generally begin with an uppercase character

> 2. Add the code below to myDocController

You didn't call super, which I'd highly advise. Then apply your custom logic 
only if the selector is openDocument: and super returned YES.

> 3. Connect File/Open menu command to myDocController's openDocument IBAction 
> (in IB or Xcode 4).

There should be no need for this step. By default the action is sent to the 
First Responder, which means it'll wind up at the document controller 
eventually.
> 
> 
> - (IBAction)openDocument:(id)sender
> 
> {
> 
>   [super openDocument:sender];
> 
> }
> 
> 
> -(BOOL)validateMenuItem:(id)sender
> 
> {
> 
>   BOOL ok = YES;
> 
>   extern BOOL haveData;
> 
> 
>   if ([sender action] == @selector(openDocument:))
> 
>      ok = (haveData == NO);
> 
> 
> 
>   return ok;
> 
> }
> 
> --
> Mike McLaughlin
> _______________________________________________
> 
> 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/cocoadev%40mikeabdullah.net
> 
> This email sent to cocoa...@mikeabdullah.net

_______________________________________________

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