1 /* Example for use of GNU gettext.
2 This file is in the public domain.
4 Source code of the main program. */
6 #include <AppKit/AppKit.h>
7 #include "AppController.h"
9 #define APP_NAME @"Hello"
11 /* Create the application's menu. */
21 SEL action = @selector(method:);
23 menu = [[NSMenu alloc] initWithTitle: APP_NAME];
24 [menu addItemWithTitle: @"Info"
27 [menu addItemWithTitle: @"Edit"
30 [menu addItemWithTitle: @"Hello..."
31 action: @selector(showHelloWindow:)
33 [menu addItemWithTitle: @"Windows"
36 [menu addItemWithTitle: @"Services"
39 [menu addItemWithTitle: @"Hide"
40 action: @selector(hide:)
42 [menu addItemWithTitle: @"Quit"
43 action: @selector(terminate:)
46 info = AUTORELEASE ([[NSMenu alloc] init]);
47 [info addItemWithTitle: @"Info Panel..."
48 action: @selector(showInfoPanel:)
50 [info addItemWithTitle: @"Preferences"
51 action: @selector(showPrefPanel:)
53 [info addItemWithTitle: @"Help"
56 [menu setSubmenu: info forItem: [menu itemWithTitle: @"Info"]];
58 edit = AUTORELEASE ([[NSMenu alloc] init]);
59 [edit addItemWithTitle: @"Cut"
60 action: @selector(cut:)
62 [edit addItemWithTitle: @"Copy"
63 action: @selector(copy:)
65 [edit addItemWithTitle: @"Paste"
66 action: @selector(paste:)
68 [edit addItemWithTitle: @"Delete"
69 action: @selector(delete:)
71 [edit addItemWithTitle: @"Select All"
72 action: @selector(selectAll:)
74 [menu setSubmenu: edit forItem: [menu itemWithTitle: @"Edit"]];
76 windows = AUTORELEASE ([[NSMenu alloc] init]);
77 [windows addItemWithTitle: @"Arrange"
78 action: @selector(arrangeInFront:)
80 [windows addItemWithTitle: @"Miniaturize"
81 action: @selector(performMiniaturize:)
83 [windows addItemWithTitle: @"Close"
84 action: @selector(performClose:)
86 [menu setSubmenu: windows forItem: [menu itemWithTitle: @"Windows"]];
88 services = AUTORELEASE ([[NSMenu alloc] init]);
89 [menu setSubmenu: services forItem: [menu itemWithTitle: @"Services"]];
91 [[NSApplication sharedApplication] setMainMenu: menu];
92 [[NSApplication sharedApplication] setServicesMenu: services];
93 [[NSApplication sharedApplication] setWindowsMenu: windows];
96 /* Initialise and go! */
98 main(int argc, const char *argv[])
100 NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
101 AppController *controller;
103 [NSApplication sharedApplication];
107 controller = [[AppController alloc] init];
108 [NSApp setDelegate:controller];
112 return NSApplicationMain (argc, argv);