X-Git-Url: https://git.yukkurigames.com/?p=enjoyable.git;a=blobdiff_plain;f=TargetController.m;h=14f81a94dd4ab317d302cfd55ef57047f43cd498;hp=9f85fd989913d0ec25db1974fdbf8d4854eb5352;hb=08c920c47d68423c16a6deba2a59488772066f6b;hpb=51ca12b552a9c17c4d4029b0340e193b273044a8 diff --git a/TargetController.m b/TargetController.m index 9f85fd9..14f81a9 100644 --- a/TargetController.m +++ b/TargetController.m @@ -5,6 +5,21 @@ // Created by Sam McCall on 5/05/09. // +#import "TargetController.h" + +#import "ConfigsController.h" +#import "Config.h" +#import "JSAction.h" +#import "JoystickController.h" +#import "KeyInputTextView.h" +#import "TargetConfig.h" +#import "TargetController.h" +#import "TargetKeyboard.h" +#import "TargetMouseBtn.h" +#import "TargetMouseMove.h" +#import "TargetMouseScroll.h" +#import "TargetToggleMouseScope.h" + @implementation TargetController -(void) keyChanged { @@ -37,10 +52,9 @@ case 0: // none return NULL; case 1: // key - if([keyInput hasKey]) { + if(keyInput.hasKey) { TargetKeyboard* k = [[TargetKeyboard alloc] init]; [k setVk: [keyInput vk]]; - [k setDescr: [keyInput descr]]; return k; } break; @@ -93,10 +107,9 @@ } -(void) commit { - id action = [joystickController selectedAction]; - if(action) { - Target* target = [self state]; - [[configsController currentConfig] setTarget: target forAction: action]; + JSAction *action = [joystickController selectedAction]; + if (action) { + configsController.currentConfig[action] = self.state; } } @@ -131,7 +144,7 @@ } else { [self setEnabled: YES]; } - Target* target = [[configsController currentConfig] getTargetForAction: jsaction]; + Target* target = configsController.currentConfig[jsaction]; id act = jsaction; NSString* actFullName = [act name]; @@ -176,7 +189,11 @@ } -(void) focusKey { - [[[NSApplication sharedApplication] mainWindow] makeFirstResponder: keyInput]; + Target *currentTarget = configsController.currentConfig[currentJsaction]; + if (!currentTarget || [currentTarget isKindOfClass:[TargetKeyboard class]]) + [[[NSApplication sharedApplication] mainWindow] makeFirstResponder: keyInput]; + else + [keyInput resignFirstResponder]; } -(void) refreshConfigsPreservingSelection: (BOOL) preserve {