aboutsummaryrefslogtreecommitdiff
path: root/osx.m
diff options
context:
space:
mode:
authorSimon Tatham <anakin@pobox.com>2005-01-24 12:05:21 +0000
committerSimon Tatham <anakin@pobox.com>2005-01-24 12:05:21 +0000
commit2040ff96317be6b93ca459c44bfea5d775a18692 (patch)
tree7f8d186b326a0dc6ec06d0f47fce1db8da49c8fc /osx.m
parentd8eb0de7c2210070adcf085e968658cbd00958d6 (diff)
downloadpuzzles-2040ff96317be6b93ca459c44bfea5d775a18692.zip
puzzles-2040ff96317be6b93ca459c44bfea5d775a18692.tar.gz
puzzles-2040ff96317be6b93ca459c44bfea5d775a18692.tar.bz2
puzzles-2040ff96317be6b93ca459c44bfea5d775a18692.tar.xz
First cut at online help under OS X. I just built the HTML version
of the manual using Halibut (with one additional magic tag in the <HEAD> section), stuck it in the right part of the application bundle, referenced it in Info.plist, and added a Help menu. Everything else was automatic. Not bad! [originally from svn r5190]
Diffstat (limited to 'osx.m')
-rw-r--r--osx.m23
1 files changed, 15 insertions, 8 deletions
diff --git a/osx.m b/osx.m
index d5fab20..245672a 100644
--- a/osx.m
+++ b/osx.m
@@ -1,12 +1,15 @@
/*
* Mac OS X / Cocoa front end to puzzles.
*
- * Actually unfinished things left to do:
- *
- * - Find out how to do help, and do some. We have a help file; at
- * _worst_ this should involve a new Halibut back end, but I
- * think help is HTML round here anyway so perhaps we can work
- * with what we already have.
+ * Still to do:
+ *
+ * - Improve the help. For a start I probably ought to split it
+ * into pieces (which means Halibut needs to acquire a mechanism
+ * of putting something in the head section of _only one_ HTML
+ * file); then I'd also like to be able to call up context help
+ * for a specific game at a time. Also I just idly wonder
+ * whether changing font might be nice, to match up to Apple
+ * norms.
*
* Mac interface issues that possibly could be done better:
*
@@ -1113,12 +1116,12 @@ void status_bar(frontend *fe, char *text)
@interface AppController : NSObject
{
}
-- (IBAction)newGame:(id)sender;
+- (void)newGame:(id)sender;
@end
@implementation AppController
-- (IBAction)newGame:(id)sender
+- (void)newGame:(id)sender
{
const game *g = [sender getPayload];
id win;
@@ -1209,6 +1212,10 @@ int main(int argc, char **argv)
[NSApp setWindowsMenu: menu];
item = newitem(menu, "Minimise Window", "m", NULL, @selector(performMiniaturize:));
+ menu = newsubmenu([NSApp mainMenu], "Help");
+ typemenu = menu;
+ item = newitem(menu, "Puzzles Help", "", NSApp, @selector(showHelp:));
+
[NSApp run];
[pool release];
}