-+(Target*) unstringify: (NSString*) str withConfigList: (NSArray*) configs {
- NSArray* components = [str componentsSeparatedByString:@"~"];
- NSParameterAssert([components count]);
- NSString* typeTag = [components objectAtIndex:0];
- if([typeTag isEqualToString:@"key"])
- return [TargetKeyboard unstringifyImpl:components];
- if([typeTag isEqualToString:@"cfg"])
- return [TargetConfig unstringifyImpl:components withConfigList:configs];
- if([typeTag isEqualToString:@"mmove"])
- return [TargetMouseMove unstringifyImpl:components];
- if([typeTag isEqualToString:@"mbtn"])
- return [TargetMouseBtn unstringifyImpl:components];
- if([typeTag isEqualToString:@"mscroll"])
- return [TargetMouseScroll unstringifyImpl:components];
- if([typeTag isEqualToString:@"mtoggle"])
- return [TargetToggleMouseScope unstringifyImpl:components];
-
- NSParameterAssert(NO);
- return NULL;
+#import "TargetKeyboard.h"
+#import "TargetConfig.h"
+#import "TargetMouseMove.h"
+#import "TargetMouseBtn.h"
+#import "TargetMouseScroll.h"
+#import "TargetToggleMouseScope.h"
+
+@implementation Target {
+ BOOL running;