Update macOS NSMenu actions

This commit is contained in:
scawful
2023-11-25 22:46:34 -05:00
parent 6f77b1f4d8
commit e4a5514540

View File

@@ -1,9 +1,11 @@
// AppDelegate.mm // AppDelegate.mm
#import <Cocoa/Cocoa.h> #import <Cocoa/Cocoa.h>
#import "app/core/controller.h"
#import "app/core/editor.h"
#import "app/core/platform/app_delegate.h"
#import "app/core/platform/file_dialog.h" #import "app/core/platform/file_dialog.h"
#import "app/rom.h" #import "app/rom.h"
#import "app_delegate.h"
@interface AppDelegate : NSObject <NSApplicationDelegate> @interface AppDelegate : NSObject <NSApplicationDelegate>
- (void)setupMenus; - (void)setupMenus;
@@ -47,9 +49,7 @@
[fileMenu addItem:[NSMenuItem separatorItem]]; [fileMenu addItem:[NSMenuItem separatorItem]];
// Save // Save
NSMenuItem *saveItem = [[NSMenuItem alloc] initWithTitle:@"Save" NSMenuItem *saveItem = [[NSMenuItem alloc] initWithTitle:@"Save" action:nil keyEquivalent:@"s"];
action:@selector(openFileAction:)
keyEquivalent:@"s"];
[fileMenu addItem:saveItem]; [fileMenu addItem:saveItem];
// Separator // Separator
@@ -80,15 +80,11 @@
editMenuItem = [[NSMenuItem alloc] initWithTitle:@"Edit" action:nil keyEquivalent:@""]; editMenuItem = [[NSMenuItem alloc] initWithTitle:@"Edit" action:nil keyEquivalent:@""];
[editMenuItem setSubmenu:editMenu]; [editMenuItem setSubmenu:editMenu];
NSMenuItem *undoItem = [[NSMenuItem alloc] initWithTitle:@"Undo" NSMenuItem *undoItem = [[NSMenuItem alloc] initWithTitle:@"Undo" action:nil keyEquivalent:@"z"];
action:@selector(openFileAction:)
keyEquivalent:@"z"];
[editMenu addItem:undoItem]; [editMenu addItem:undoItem];
NSMenuItem *redoItem = [[NSMenuItem alloc] initWithTitle:@"Redo" NSMenuItem *redoItem = [[NSMenuItem alloc] initWithTitle:@"Redo" action:nil keyEquivalent:@"Z"];
action:@selector(openFileAction:)
keyEquivalent:@"Z"];
[editMenu addItem:redoItem]; [editMenu addItem:redoItem];
@@ -96,17 +92,15 @@
[editMenu addItem:[NSMenuItem separatorItem]]; [editMenu addItem:[NSMenuItem separatorItem]];
NSMenuItem *cutItem = [[NSMenuItem alloc] initWithTitle:@"Cut" NSMenuItem *cutItem = [[NSMenuItem alloc] initWithTitle:@"Cut"
action:@selector(openFileAction:) action:@selector(cutAction:)
keyEquivalent:@"x"]; keyEquivalent:@"x"];
[editMenu addItem:cutItem]; [editMenu addItem:cutItem];
NSMenuItem *copyItem = [[NSMenuItem alloc] initWithTitle:@"Copy" NSMenuItem *copyItem = [[NSMenuItem alloc] initWithTitle:@"Copy" action:nil keyEquivalent:@"c"];
action:@selector(openFileAction:)
keyEquivalent:@"c"];
[editMenu addItem:copyItem]; [editMenu addItem:copyItem];
NSMenuItem *pasteItem = [[NSMenuItem alloc] initWithTitle:@"Paste" NSMenuItem *pasteItem = [[NSMenuItem alloc] initWithTitle:@"Paste"
action:@selector(openFileAction:) action:nil
keyEquivalent:@"v"]; keyEquivalent:@"v"];
[editMenu addItem:pasteItem]; [editMenu addItem:pasteItem];
@@ -115,7 +109,7 @@
[editMenu addItem:[NSMenuItem separatorItem]]; [editMenu addItem:[NSMenuItem separatorItem]];
NSMenuItem *selectAllItem = [[NSMenuItem alloc] initWithTitle:@"Select All" NSMenuItem *selectAllItem = [[NSMenuItem alloc] initWithTitle:@"Select All"
action:@selector(openFileAction:) action:nil
keyEquivalent:@"a"]; keyEquivalent:@"a"];
[editMenu addItem:selectAllItem]; [editMenu addItem:selectAllItem];
@@ -131,41 +125,38 @@
// Emulator view button // Emulator view button
NSMenuItem *emulatorViewItem = [[NSMenuItem alloc] initWithTitle:@"Emulator View" NSMenuItem *emulatorViewItem = [[NSMenuItem alloc] initWithTitle:@"Emulator View"
action:@selector(openFileAction:) action:nil
keyEquivalent:@"1"]; keyEquivalent:@"1"];
[viewMenu addItem:emulatorViewItem]; [viewMenu addItem:emulatorViewItem];
// Hex Editor View // Hex Editor View
NSMenuItem *hexEditorViewItem = [[NSMenuItem alloc] initWithTitle:@"Hex Editor View" NSMenuItem *hexEditorViewItem = [[NSMenuItem alloc] initWithTitle:@"Hex Editor View"
action:@selector(openFileAction:) action:nil
keyEquivalent:@"2"]; keyEquivalent:@"2"];
[viewMenu addItem:hexEditorViewItem]; [viewMenu addItem:hexEditorViewItem];
// Disassembly view button // Disassembly view button
NSMenuItem *disassemblyViewItem = [[NSMenuItem alloc] initWithTitle:@"Disassembly View" NSMenuItem *disassemblyViewItem = [[NSMenuItem alloc] initWithTitle:@"Disassembly View"
action:@selector(openFileAction:) action:nil
keyEquivalent:@"3"]; keyEquivalent:@"3"];
[viewMenu addItem:disassemblyViewItem]; [viewMenu addItem:disassemblyViewItem];
// Memory view button // Memory view button
NSMenuItem *memoryViewItem = [[NSMenuItem alloc] initWithTitle:@"Memory View" NSMenuItem *memoryViewItem = [[NSMenuItem alloc] initWithTitle:@"Memory View"
action:@selector(openFileAction:) action:nil
keyEquivalent:@"4"]; keyEquivalent:@"4"];
[viewMenu addItem:memoryViewItem]; [viewMenu addItem:memoryViewItem];
// Add a separator // Add a separator
[viewMenu addItem:[NSMenuItem separatorItem]]; [viewMenu addItem:[NSMenuItem separatorItem]];
// Toggle fullscreen button // Toggle fullscreen button
NSMenuItem *toggleFullscreenItem = [[NSMenuItem alloc] initWithTitle:@"Toggle Fullscreen" NSMenuItem *toggleFullscreenItem = [[NSMenuItem alloc] initWithTitle:@"Toggle Fullscreen"
action:@selector(openFileAction:) action:nil
keyEquivalent:@"f"]; keyEquivalent:@"f"];
[viewMenu addItem:toggleFullscreenItem]; [viewMenu addItem:toggleFullscreenItem];
@@ -181,7 +172,7 @@
// URL to online documentation // URL to online documentation
NSMenuItem *documentationItem = [[NSMenuItem alloc] initWithTitle:@"Documentation" NSMenuItem *documentationItem = [[NSMenuItem alloc] initWithTitle:@"Documentation"
action:@selector(openFileAction:) action:nil
keyEquivalent:@"?"]; keyEquivalent:@"?"];
[helpMenu addItem:documentationItem]; [helpMenu addItem:documentationItem];
@@ -207,6 +198,10 @@
yaze::app::SharedROM::shared_rom_->LoadFromFile(FileDialogWrapper::ShowOpenFileDialog()); yaze::app::SharedROM::shared_rom_->LoadFromFile(FileDialogWrapper::ShowOpenFileDialog());
} }
- (void)cutAction:(id)sender {
// TODO: Implement
}
- (void)openRecentFileAction:(id)sender { - (void)openRecentFileAction:(id)sender {
NSLog(@"Open Recent File action triggered"); NSLog(@"Open Recent File action triggered");
} }