Thanks everyone. In the end, since this is a shoebox app like iPhoto where the user doesn't access their data via File->Open and the file name doesn't necessarily make sense to the user I suppressed the Open Recently menu (the user has a History menu like Safari for that purpose). For the dock menu I made my own which allowed me to give the user menu item titles that would mean something to them. I did it two parts. First I did this to suppress the default functionality:
- (NSUInteger)maximumRecentDocumentCount { return 0; } and then I provide my own using - (NSMenu *)applicationDockMenu:(NSApplication *)sender. I'm not doing a lot of calculations here so it comes up quickly for the user. On Jan 28, 2012, at 5:58 PM, James Merkel wrote: > On 28 Jan 2012 08:46:48 -0800 Quincey Morris wrote: > >> On Jan 28, 2012, at 08:19 , Brad Stone wrote: >> >>> I have a shoebox app like iPhoto where the actual filename is irrelevant to >>> the user. I control the file name. >>> >>> What I'd like to do is just capture the menu items before they're displayed >>> and change the menu titles into something relevant to the user. In the >>> scheme of things it's a minor way to access the info in my app so if I >>> could eliminate them that would be OK too. Changing the filename is not an >>> option at this point. >> >> It seems to me you can subclass NSDocumentController, then override >> 'noteNewRecentDocument:' to do nothing. Presumably this will keep your >> filename off the "Open Recent" submenu, the "Recent Items" item on the Apple >> menu, and the dock menu. Then you should be able to delete the "Open Recent" >> item itself, and be left with no traces of recent items from your app. >> >> If you wanted to go the extra mile, you could create your own recent-items >> implementation, driven from your 'noteNewRecentDocument:' override, and >> using the 'applicationDockMenu:' application delegate method, with whatever >> document identifiers you want. > > > My app is not document based so I call noteNewRecentDocumentURL: directly to > add the filename to the Open Recent submenu list. > If I comment that line of code out then the document is not added to the list > as expected. Also, the Dock menu "Show Recents" shows nothing and the > filename is not added to the Dock menu list. > > So yes, noteNewRecentDocument; (which calls noteNewRecentDocumentURL: ) is > the key to the whole thing. > > Jim Merkel _______________________________________________ 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: https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com