From 9c1bb0cf094162991688ddcbba5c52633f941935 Mon Sep 17 00:00:00 2001 From: NanoTech Date: Wed, 1 Feb 2012 15:56:56 -0600 Subject: [PATCH] Add OS X help menu items for the man page and scripting docs. --- 3rdparty/SDL/mac/SDLMain.m | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/3rdparty/SDL/mac/SDLMain.m b/3rdparty/SDL/mac/SDLMain.m index 947b271cf..80f61d984 100644 --- a/3rdparty/SDL/mac/SDLMain.m +++ b/3rdparty/SDL/mac/SDLMain.m @@ -9,6 +9,7 @@ #include "SDLMain.h" #include /* for MAXPATHLEN */ #include +#include /* For some reaon, Apple removed setAppleMenu from the headers in 10.4, but the method still is there and works. To avoid warnings, we declare @@ -123,6 +124,22 @@ static NSString *getApplicationName(void) #else +void openHelpPage(NSString *pagePath, NSString *anchorName) +{ + NSString *helpBookName = [[NSBundle mainBundle] objectForInfoDictionaryKey:@"CFBundleHelpBookName"]; + AHGotoPage((CFStringRef)helpBookName, (CFStringRef)pagePath, (CFStringRef)anchorName); +} + +- (void)openManPage +{ + openHelpPage(@"warzone2100.6.html", nil); +} + +- (void)openScriptingDocs +{ + openHelpPage(@"javascript.pdf", nil); +} + static void setupWindowMenu(void); static void setApplicationMenu(void) @@ -171,6 +188,8 @@ static void setApplicationMenu(void) title = [appName stringByAppendingString:@" Help"]; menuItem = [helpMenu addItemWithTitle:title action:@selector(showHelp:) keyEquivalent:@"?"]; [menuItem setKeyEquivalentModifierMask:NSCommandKeyMask]; + [helpMenu addItemWithTitle:@"Man Page" action:@selector(openManPage) keyEquivalent:@""]; + [helpMenu addItemWithTitle:@"Scripting Documentation" action:@selector(openScriptingDocs) keyEquivalent:@""]; menuItem = [[NSMenuItem alloc] initWithTitle:@"Help" action:nil keyEquivalent:@""]; [menuItem setSubmenu:helpMenu]; [[NSApp mainMenu] addItem:menuItem];