mirror of https://github.com/xemu-project/xemu.git
ui/cocoa: Factor out initial menu creation
Factor out the long code sequence in main() which creates the initial set of menus. This will make later patches which move initialization code around a bit clearer. Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Reviewed-by: BALATON Zoltan <balaton@eik.bme.hu> Reviewed-by: Roman Bolshakov <r.bolshakov@yadro.com> Tested-by: Roman Bolshakov <r.bolshakov@yadro.com> Message-id: 20190225102433.22401-4-peter.maydell@linaro.org Message-id: 20190214102816.3393-4-peter.maydell@linaro.org
This commit is contained in:
parent
72a3e316da
commit
c6fd6c705d
78
ui/cocoa.m
78
ui/cocoa.m
|
@ -1465,43 +1465,8 @@ QemuCocoaView *cocoaView;
|
||||||
|
|
||||||
@end
|
@end
|
||||||
|
|
||||||
|
static void create_initial_menus(void)
|
||||||
int main (int argc, const char * argv[]) {
|
{
|
||||||
|
|
||||||
gArgc = argc;
|
|
||||||
gArgv = (char **)argv;
|
|
||||||
int i;
|
|
||||||
|
|
||||||
/* In case we don't need to display a window, let's not do that */
|
|
||||||
for (i = 1; i < argc; i++) {
|
|
||||||
const char *opt = argv[i];
|
|
||||||
|
|
||||||
if (opt[0] == '-') {
|
|
||||||
/* Treat --foo the same as -foo. */
|
|
||||||
if (opt[1] == '-') {
|
|
||||||
opt++;
|
|
||||||
}
|
|
||||||
if (!strcmp(opt, "-h") || !strcmp(opt, "-help") ||
|
|
||||||
!strcmp(opt, "-vnc") ||
|
|
||||||
!strcmp(opt, "-nographic") ||
|
|
||||||
!strcmp(opt, "-version") ||
|
|
||||||
!strcmp(opt, "-curses") ||
|
|
||||||
!strcmp(opt, "-display") ||
|
|
||||||
!strcmp(opt, "-qtest")) {
|
|
||||||
return qemu_main(gArgc, gArgv, *_NSGetEnviron());
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
|
|
||||||
|
|
||||||
// Pull this console process up to being a fully-fledged graphical
|
|
||||||
// app with a menubar and Dock icon
|
|
||||||
ProcessSerialNumber psn = { 0, kCurrentProcess };
|
|
||||||
TransformProcessType(&psn, kProcessTransformToForegroundApplication);
|
|
||||||
|
|
||||||
[NSApplication sharedApplication];
|
|
||||||
|
|
||||||
// Add menus
|
// Add menus
|
||||||
NSMenu *menu;
|
NSMenu *menu;
|
||||||
NSMenuItem *menuItem;
|
NSMenuItem *menuItem;
|
||||||
|
@ -1585,6 +1550,45 @@ int main (int argc, const char * argv[]) {
|
||||||
menuItem = [[[NSMenuItem alloc] initWithTitle:@"Window" action:nil keyEquivalent:@""] autorelease];
|
menuItem = [[[NSMenuItem alloc] initWithTitle:@"Window" action:nil keyEquivalent:@""] autorelease];
|
||||||
[menuItem setSubmenu:menu];
|
[menuItem setSubmenu:menu];
|
||||||
[[NSApp mainMenu] addItem:menuItem];
|
[[NSApp mainMenu] addItem:menuItem];
|
||||||
|
}
|
||||||
|
|
||||||
|
int main (int argc, const char * argv[]) {
|
||||||
|
|
||||||
|
gArgc = argc;
|
||||||
|
gArgv = (char **)argv;
|
||||||
|
int i;
|
||||||
|
|
||||||
|
/* In case we don't need to display a window, let's not do that */
|
||||||
|
for (i = 1; i < argc; i++) {
|
||||||
|
const char *opt = argv[i];
|
||||||
|
|
||||||
|
if (opt[0] == '-') {
|
||||||
|
/* Treat --foo the same as -foo. */
|
||||||
|
if (opt[1] == '-') {
|
||||||
|
opt++;
|
||||||
|
}
|
||||||
|
if (!strcmp(opt, "-h") || !strcmp(opt, "-help") ||
|
||||||
|
!strcmp(opt, "-vnc") ||
|
||||||
|
!strcmp(opt, "-nographic") ||
|
||||||
|
!strcmp(opt, "-version") ||
|
||||||
|
!strcmp(opt, "-curses") ||
|
||||||
|
!strcmp(opt, "-display") ||
|
||||||
|
!strcmp(opt, "-qtest")) {
|
||||||
|
return qemu_main(gArgc, gArgv, *_NSGetEnviron());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
|
||||||
|
|
||||||
|
// Pull this console process up to being a fully-fledged graphical
|
||||||
|
// app with a menubar and Dock icon
|
||||||
|
ProcessSerialNumber psn = { 0, kCurrentProcess };
|
||||||
|
TransformProcessType(&psn, kProcessTransformToForegroundApplication);
|
||||||
|
|
||||||
|
[NSApplication sharedApplication];
|
||||||
|
|
||||||
|
create_initial_menus();
|
||||||
|
|
||||||
// Create an Application controller
|
// Create an Application controller
|
||||||
QemuCocoaAppController *appController = [[QemuCocoaAppController alloc] init];
|
QemuCocoaAppController *appController = [[QemuCocoaAppController alloc] init];
|
||||||
|
|
Loading…
Reference in New Issue