return self;
}
-- (NJMapping *)objectForKeyedSubscript:(NSString *)name {
+- (NJMapping *)mappingForKey:(NSString *)name {
for (NJMapping *mapping in _mappings)
if ([name isEqualToString:mapping.name])
return mapping;
return nil;
}
-- (NJMapping *)objectAtIndexedSubscript:(NSUInteger)idx {
- return idx < _mappings.count ? _mappings[idx] : nil;
-}
-
- (void)mappingsSet {
[self postLoadProcess];
[NSNotificationCenter.defaultCenter
[self mappingsSet];
}
-- (NSUInteger)countByEnumeratingWithState:(NSFastEnumerationState *)state
- objects:(__unsafe_unretained id [])buffer
- count:(NSUInteger)len {
- return [_mappings countByEnumeratingWithState:state
- objects:buffer
- count:len];
-}
-
- (void)activateMappingForProcess:(NSRunningApplication *)app {
NJMapping *oldMapping = _manualMapping;
NSArray *names = app.possibleMappingNames;
BOOL found = NO;
for (NSString *name in names) {
- NJMapping *mapping = self[name];
+ NJMapping *mapping = [self mappingForKey:name];
if (mapping) {
[self activateMapping:mapping];
found = YES;
}
- (void)postLoadProcess {
- for (NJMapping *mapping in self)
- [mapping postLoadProcess:self];
+ for (NJMapping *mapping in self.mappings)
+ [mapping postLoadProcess:self.mappings];
}
- (void)load {
- (void)removeMappingAtIndex:(NSInteger)idx {
NSInteger currentIdx = [self indexOfMapping:_currentMapping];
[_mappings removeObjectAtIndex:idx];
- [self activateMapping:self[MIN(currentIdx, _mappings.count - 1)]];
+ [self activateMapping:self.mappings[MIN(currentIdx, _mappings.count - 1)]];
[self mappingsChanged];
}
[self mappingsChanged];
}
-- (NSUInteger)count {
- return _mappings.count;
-}
-
@end