X-Git-Url: http://git.ithinksw.org/ITKit.git/blobdiff_plain/2decf87be669b9e65e76abff193b2013ee41b86f..HEAD:/ITKeyCombo.m diff --git a/ITKeyCombo.m b/ITKeyCombo.m old mode 100755 new mode 100644 index c0111a1..0c53641 --- a/ITKeyCombo.m +++ b/ITKeyCombo.m @@ -1,182 +1,131 @@ -// -// ITKeyCombo.m -// -// Created by Quentin Carnicelli on Sat Aug 02 2003. -// Copyright (c) 2003 iThink Software. All rights reserved. -// - #import "ITKeyCombo.h" - #import @implementation ITKeyCombo -+ (id)clearKeyCombo -{ - return [self keyComboWithKeyCode: -1 modifiers: -1]; ++ (id)clearKeyCombo { + return [self keyComboWithKeyCode:-1 modifiers:-1]; } -+ (id)keyComboWithKeyCode: (int)keyCode modifiers: (int)modifiers -{ - return [[[self alloc] initWithKeyCode: keyCode modifiers: modifiers] autorelease]; ++ (id)keyComboWithKeyCode:(int)keyCode modifiers:(int)modifiers { + return [[[self alloc] initWithKeyCode:keyCode modifiers:modifiers] autorelease]; } -+ (id)keyComboWithPlistRepresentation: (id)plist -{ - return [[[self alloc] initWithPlistRepresentation: plist] autorelease]; ++ (id)keyComboWithPlistRepresentation:(id)plist { + return [[[self alloc] initWithPlistRepresentation:plist] autorelease]; } -- (id)initWithKeyCode: (int)keyCode modifiers: (int)modifiers -{ - self = [super init]; - - if( self ) - { +- (id)initWithKeyCode:(int)keyCode modifiers:(int)modifiers { + if ((self = [super init])) { mKeyCode = keyCode; mModifiers = modifiers; } - return self; } -- (id)initWithPlistRepresentation: (id)plist -{ +- (id)initWithPlistRepresentation:(id)plist { int keyCode, modifiers; - - keyCode = [[plist objectForKey: @"keyCode"] intValue]; - if( keyCode <= 0 ) keyCode = -1; - - modifiers = [[plist objectForKey: @"modifiers"] intValue]; - if( modifiers <= 0 ) modifiers = -1; - - return [self initWithKeyCode: keyCode modifiers: modifiers]; + + keyCode = [[plist objectForKey:@"keyCode"] intValue]; + if (keyCode <= 0) { + keyCode = -1; + } + + modifiers = [[plist objectForKey:@"modifiers"] intValue]; + if (modifiers <= 0) { + modifiers = -1; + } + + return [self initWithKeyCode:keyCode modifiers:modifiers]; } -- (id)plistRepresentation -{ - return [NSDictionary dictionaryWithObjectsAndKeys: - [NSNumber numberWithInt: [self keyCode]], @"keyCode", - [NSNumber numberWithInt: [self modifiers]], @"modifiers", - nil]; +- (id)plistRepresentation { + return [NSDictionary dictionaryWithObjectsAndKeys:[NSNumber numberWithInt:[self keyCode]], @"keyCode", [NSNumber numberWithInt:[self modifiers]], @"modifiers", nil]; } -- (id)copyWithZone:(NSZone*)zone; -{ +- (id)copyWithZone:(NSZone *)zone { return [self retain]; } -- (BOOL)isEqual: (ITKeyCombo*)combo -{ - return [self keyCode] == [combo keyCode] && - [self modifiers] == [combo modifiers]; +- (BOOL)isEqual:(ITKeyCombo *)combo { + return (([self keyCode] == [combo keyCode]) && ([self modifiers] == [combo modifiers])); } -#pragma mark - - -- (int)keyCode -{ +- (int)keyCode { return mKeyCode; } -- (int)modifiers -{ +- (int)modifiers { return mModifiers; } -- (BOOL)isValidHotKeyCombo -{ - return mKeyCode >= 0 && mModifiers > 0; +- (BOOL)isValidHotKeyCombo { + return ((mKeyCode >= 0) && (mModifiers > 0)); } -- (BOOL)isClearCombo -{ - return mKeyCode == -1 && mModifiers == -1; +- (BOOL)isClearCombo { + return ((mKeyCode == -1) && (mModifiers == -1)); } @end -#pragma mark - - @implementation ITKeyCombo (UserDisplayAdditions) -+ (NSDictionary*)_keyCodesDictionary -{ - static NSDictionary* keyCodes = nil; ++ (NSDictionary *)_keyCodesDictionary { + static NSDictionary *keyCodes = nil; - if( keyCodes == nil ) - { - NSString* path; - NSString* contents; + if (!keyCodes) { + NSString *path; + NSString *contents; - path = [[NSBundle bundleForClass: self] pathForResource: @"ITKeyCodes" ofType: @"plist"]; - contents = [NSString stringWithContentsOfFile: path]; + path = [[NSBundle bundleForClass:self] pathForResource:@"ITKeyCodes" ofType:@"plist"]; + contents = [NSString stringWithContentsOfFile:path]; keyCodes = [[contents propertyList] retain]; } return keyCodes; } -+ (NSString*)_stringForModifiers: (long)modifiers -{ - static long modToChar[4][2] = - { - { cmdKey, 0x23180000 }, - { optionKey, 0x23250000 }, - { controlKey, 0x005E0000 }, - { shiftKey, 0x21e70000 } ++ (NSString *)_stringForModifiers:(long)modifiers { + static long modToChar[4][2] = { + { cmdKey, 0x23180000 }, + { optionKey, 0x23250000 }, + { controlKey, 0x23030000 }, + { shiftKey, 0x21e70000 } }; - - NSString* str = nil; - NSString* charStr; + + NSString *str = @""; + NSString *charStr; long i; - - str = [NSString string]; - - for( i = 0; i < 4; i++ ) - { - if( modifiers & modToChar[i][0] ) - { - charStr = [NSString stringWithCharacters: (const unichar*)&modToChar[i][1] length: 1]; - str = [str stringByAppendingString: charStr]; + + for (i = 0;i < 4;i++) { + if (modifiers & modToChar[i][0]) { + charStr = [NSString stringWithCharacters:(const unichar *)&modToChar[i][1] length:1]; + str = [str stringByAppendingString:charStr]; } } - if( !str ) - str = @""; - return str; } -+ (NSString*)_stringForKeyCode: (short)keyCode -{ - NSDictionary* dict; - id key; - NSString* str; - - dict = [self _keyCodesDictionary]; - key = [NSString stringWithFormat: @"%d", keyCode]; - str = [dict objectForKey: key]; ++ (NSString *)_stringForKeyCode:(short)keyCode { + NSDictionary *dict = [self _keyCodesDictionary]; + NSString *key = [NSString stringWithFormat:@"%d", keyCode]; + NSString *str = [dict objectForKey:key]; - if( !str ) - str = [NSString stringWithFormat: @"%X", keyCode]; + if (!str) { + str = [NSString stringWithFormat:@"%X", keyCode]; + } return str; } -- (NSString*)description -{ - NSString* desc; - - if( [self isValidHotKeyCombo] ) //This might have to change - { - desc = [NSString stringWithFormat: @"%@%@", - [[self class] _stringForModifiers: [self modifiers]], - [[self class] _stringForKeyCode: [self keyCode]]]; +- (NSString *)description { + if ([self isValidHotKeyCombo]) { //This might have to change + return [NSString stringWithFormat:@"%@%@", [[self class] _stringForModifiers:[self modifiers]], [[self class] _stringForKeyCode:[self keyCode]]]; } - else - desc = NSLocalizedString( @"(None)", @"Hot Keys: Key Combo text for 'empty' combo" ); - - return desc; + + return NSLocalizedString(@"(None)", @"Hot Keys: Key Combo text for 'empty' combo"); } @end \ No newline at end of file