X-Git-Url: https://git.yukkurigames.com/?p=enjoyable.git;a=blobdiff_plain;f=TargetConfig.m;h=1fef7a9231d1274a3f1977536a2a8ecbe3132de3;hp=469edabe0bb9898386c1705b9987b06361b34111;hb=0a402879ee3beb79bb4d2270f909ad75eead0c96;hpb=d9d15b3f8729758f19b21918fee758b856921673 diff --git a/TargetConfig.m b/TargetConfig.m index 469edab..1fef7a9 100644 --- a/TargetConfig.m +++ b/TargetConfig.m @@ -7,14 +7,25 @@ #import "TargetConfig.h" +#import "ApplicationController.h" +#import "Config.h" +#import "ConfigsController.h" + @implementation TargetConfig -- (NSString *)stringify { - return [[NSString alloc] initWithFormat: @"cfg~%@", self.config.name]; ++ (NSString *)serializationCode { + return @"cfg"; +} + +- (NSDictionary *)serialize { + return self.config + ? @{ @"type": @"cfg", @"name": self.config.name } + : @{}; } -+ (TargetConfig *)unstringifyImpl:(NSArray *)comps withConfigList:(NSArray *)configs { - NSString *name = comps[1]; ++ (TargetConfig *)targetDeserialize:(NSDictionary *)serialization + withConfigs:(NSArray *)configs { + NSString *name = serialization[@"name"]; TargetConfig *target = [[TargetConfig alloc] init]; for (Config *config in configs) { if ([config.name isEqualToString:name]) { @@ -22,7 +33,6 @@ return target; } } - NSLog(@"Warning: couldn't find matching config to restore from: %@", name); return nil; }