diff options
| author | Hannes Schulze <haschu0103@outlook.de> | 2025-01-30 16:43:06 +0100 |
|---|---|---|
| committer | Hannes Schulze <haschu0103@outlook.de> | 2025-01-31 00:02:26 +0100 |
| commit | 307e07d6513f9524b7fcab5134494bd175465cd1 (patch) | |
| tree | ce025db2ea998bdcd8980a0ed443083f0daf8d35 /app/mac/controller-adapter-keyboard.mm | |
| parent | 5959349f341a2380c0c3f41ec40a1e8e0d969d00 (diff) | |
handle input devices in the c++ application
Diffstat (limited to 'app/mac/controller-adapter-keyboard.mm')
| -rw-r--r-- | app/mac/controller-adapter-keyboard.mm | 44 |
1 files changed, 0 insertions, 44 deletions
diff --git a/app/mac/controller-adapter-keyboard.mm b/app/mac/controller-adapter-keyboard.mm deleted file mode 100644 index ad3dda8..0000000 --- a/app/mac/controller-adapter-keyboard.mm +++ /dev/null @@ -1,44 +0,0 @@ -#import "controller-adapter-keyboard.hh" - -@implementation ControllerAdapterKeyboard - -- (instancetype)init -{ - self = [super init]; - if (self) - { - [[NSNotificationCenter defaultCenter] addObserver:self - selector:@selector(handleKeyboardConnected:) - name:GCKeyboardDidConnectNotification - object:nil]; - } - return self; -} - -- (void)dealloc -{ - [[NSNotificationCenter defaultCenter] removeObserver:self]; -} - -- (void)handleKeyboardConnected:(NSNotification*)notification -{ - _keyboard = [GCKeyboard coalescedKeyboard]; -} - -- (nes::button_mask)readPressedButtons -{ - auto profile = [[self keyboard] keyboardInput]; - - auto res = nes::button_mask{}; - if ([[profile buttonForKeyCode:GCKeyCodeUpArrow] isPressed]) { res.add(nes::buttons::up); } - if ([[profile buttonForKeyCode:GCKeyCodeDownArrow] isPressed]) { res.add(nes::buttons::down); } - if ([[profile buttonForKeyCode:GCKeyCodeLeftArrow] isPressed]) { res.add(nes::buttons::left); } - if ([[profile buttonForKeyCode:GCKeyCodeRightArrow] isPressed]) { res.add(nes::buttons::right); } - if ([[profile buttonForKeyCode:GCKeyCodeKeyZ] isPressed]) { res.add(nes::buttons::a); } - if ([[profile buttonForKeyCode:GCKeyCodeKeyX] isPressed]) { res.add(nes::buttons::b); } - if ([[profile buttonForKeyCode:GCKeyCodeReturnOrEnter] isPressed]) { res.add(nes::buttons::start); } - if ([[profile buttonForKeyCode:GCKeyCodeSpacebar] isPressed]) { res.add(nes::buttons::select); } - return res; -} - -@end
\ No newline at end of file |
