From 1527a78c2e1b1cc525a5c4621077844989aab6fd Mon Sep 17 00:00:00 2001 From: Kent Sutherland Date: Thu, 1 Jul 2004 02:48:47 +0000 Subject: [PATCH] Added hotkeys for setting individual song ratings 0-5 stars. --- .../Preferences.nib/keyedobjects.nib | Bin 46446 -> 46424 bytes MainController.m | 22 ++++++++++++++++++ PreferencesController.m | 13 +++++++++++ 3 files changed, 35 insertions(+) diff --git a/English.lproj/Preferences.nib/keyedobjects.nib b/English.lproj/Preferences.nib/keyedobjects.nib index d1689b08d7270621d365000c5540eeb0c140ed1e..e8852a5dcb78e840e9e96ba3fefec93bdb844703 100755 GIT binary patch delta 8200 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 diff --git a/MainController.m b/MainController.m index 8cb2643..2517c39 100755 --- a/MainController.m +++ b/MainController.m @@ -6,6 +6,7 @@ #import #import #import +#import #import "StatusWindow.h" #import "StatusWindowController.h" #import "StatusItemHack.h" @@ -810,6 +811,20 @@ static MainController *sharedController; [hotKey setAction:@selector(popupMenu)]; [[ITHotKeyCenter sharedCenter] registerHotKey:[hotKey autorelease]]; } + + int i; + for (i = 0; i <= 5; i++) { + NSString *curName = [NSString stringWithFormat:@"SetRating%i", i]; + if ([df objectForKey:curName] != nil) { + ITDebugLog(@"Setting up set rating %i hot key.", i); + hotKey = [[ITHotKey alloc] init]; + [hotKey setName:curName]; + [hotKey setKeyCombo:[ITKeyCombo keyComboWithPlistRepresentation:[df objectForKey:curName]]]; + [hotKey setTarget:self]; + [hotKey setAction:@selector(setRating:)]; + [[ITHotKeyCenter sharedCenter] registerHotKey:[hotKey autorelease]]; + } + } ITDebugLog(@"Finished setting up hot keys."); } @@ -1078,6 +1093,13 @@ static MainController *sharedController; NS_ENDHANDLER } +- (void)setRating:(ITHotKey *)sender +{ + float rating = ([[sender name] characterAtIndex:9] - 48) / 5.0; + [self selectSongRating:rating]; + [statusWindowController showRatingWindowWithRating:rating]; +} + - (void)toggleLoop { NS_DURING diff --git a/PreferencesController.m b/PreferencesController.m index 76bbc23..b1c2432 100755 --- a/PreferencesController.m +++ b/PreferencesController.m @@ -98,6 +98,12 @@ static PreferencesController *prefs = nil; @"ToggleShuffle", @"ToggleLoop", @"PopupMenu", + @"SetRating0", + @"SetRating1", + @"SetRating2", + @"SetRating3", + @"SetRating4", + @"SetRating5", nil]; hotKeyNamesArray = [[NSArray alloc] initWithObjects:@"Play/Pause", @@ -115,6 +121,12 @@ static PreferencesController *prefs = nil; @"Toggle Shuffle", @"Toggle Loop", @"Pop-up status menu", + [NSString stringWithUTF8String:"Set Rating: ☆☆☆☆☆"], + [NSString stringWithUTF8String:"Set Rating: ★☆☆☆☆"], + [NSString stringWithUTF8String:"Set Rating: ★★☆☆☆"], + [NSString stringWithUTF8String:"Set Rating: ★★★☆☆"], + [NSString stringWithUTF8String:"Set Rating: ★★★★☆"], + [NSString stringWithUTF8String:"Set Rating: ★★★★★"], nil]; hotKeysDictionary = [[NSMutableDictionary alloc] init]; controller = nil; @@ -194,6 +206,7 @@ static PreferencesController *prefs = nil; [self setupUI]; // Sets up additional UI [window setDelegate:self]; [menuTableView reloadData]; + [hotKeysTableView reloadData]; [hotKeysTableView setDoubleAction:@selector(hotKeysTableViewDoubleClicked:)]; //Change the launch player checkbox to the proper name -- 2.20.1