Localization support. Change many names in NJKeyInputField to standard keyboard short...
[enjoyable.git] / Classes / NJMapping.m
index 355dbcc..0e67cd3 100644 (file)
 // Extra checks during initialization because the data is often loaded
 // from untrusted serializations.
 
-- (id)initWithName:(NSString *)name {
+- (id)init {
     if ((self = [super init])) {
-        self.name = [name isKindOfClass:NSString.class] ? name : @"Untitled";
+        self.name = NSLocalizedString(@"Untitled", @"name for new mappings");
         _entries = [[NSMutableDictionary alloc] init];
     }
     return self;
 }
 
+- (id)initWithName:(NSString *)name {
+    if ((self = [self init])) {
+        if ([name isKindOfClass:NSString.class])
+            self.name = name;
+    }
+    return self;
+}
+
 - (id)initWithSerialization:(NSDictionary *)serialization
                    mappings:(NSArray *)mappings {
     if ((self = [self initWithName:serialization[@"name"]])) {
           && [serialization[@"entries"] isKindOfClass:NSDictionary.class])) {
         *error = [NSError errorWithDomain:@"Enjoyable"
                                      code:0
-                              description:@"This isn't a valid mapping file."];
+                              description:NSLocalizedString(@"invalid mapping file",
+                                                            @"error when imported file was JSON but not a mapping")];
         return nil;
     }