git.ithinksw.org
/
MenuTunes.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Lots of fun changes. Reworked the hotkeys in prefs. Fixed bugs in
[MenuTunes.git]
/
MenuController.m
diff --git
a/MenuController.m
b/MenuController.m
index
b1ed0db
..
0344308
100755
(executable)
--- a/
MenuController.m
+++ b/
MenuController.m
@@
-8,12
+8,16
@@
#import "MenuController.h"
#import "NewMainController.h"
#import "MenuController.h"
#import "NewMainController.h"
+#import "HotKeyCenter.h"
+#import "KeyCombo.h"
@interface MenuController (SubmenuMethods)
- (NSMenu *)ratingMenu;
- (NSMenu *)upcomingSongsMenu;
- (NSMenu *)playlistsMenu;
- (NSMenu *)eqMenu;
@interface MenuController (SubmenuMethods)
- (NSMenu *)ratingMenu;
- (NSMenu *)upcomingSongsMenu;
- (NSMenu *)playlistsMenu;
- (NSMenu *)eqMenu;
+- (void)setKeyEquivalentForCode:(short)code andModifiers:(long)modifiers
+ onItem:(NSMenuItem *)item;
@end
@implementation MenuController
@end
@implementation MenuController
@@
-33,6
+37,8
@@
NSEnumerator *enumerator = [menuArray objectEnumerator];
NSString *nextObject;
NSMenuItem *tempItem;
NSEnumerator *enumerator = [menuArray objectEnumerator];
NSString *nextObject;
NSMenuItem *tempItem;
+ NSEnumerator *itemEnum;
+ KeyCombo *keyCombo;
//Get the information
_currentPlaylist = [currentRemote currentPlaylistIndex];
//Get the information
_currentPlaylist = [currentRemote currentPlaylistIndex];
@@
-65,6
+71,12
@@
[tempItem setTag:MTMenuPlayPauseItem];
[tempItem setTarget:self];
[tempItem setTag:MTMenuPlayPauseItem];
[tempItem setTarget:self];
+ if ( (keyCombo = [[HotKeyCenter sharedCenter] keyComboForName:@"PlayPause"]) ) {
+ [self setKeyEquivalentForCode:[keyCombo keyCode]
+ andModifiers:[keyCombo modifiers]
+ onItem:tempItem];
+ }
+
switch ([currentRemote playerPlayingState]) {
case ITMTRemotePlayerPlaying:
[tempItem setTitle:@"Pause"];
switch ([currentRemote playerPlayingState]) {
case ITMTRemotePlayerPlaying:
[tempItem setTitle:@"Pause"];
@@
-80,6
+92,13
@@
tempItem = [menu addItemWithTitle:@"Next Track"
action:@selector(performMainMenuAction:)
keyEquivalent:@""];
tempItem = [menu addItemWithTitle:@"Next Track"
action:@selector(performMainMenuAction:)
keyEquivalent:@""];
+
+ if ( (keyCombo = [[HotKeyCenter sharedCenter] keyComboForName:@"NextTrack"]) ) {
+ [self setKeyEquivalentForCode:[keyCombo keyCode]
+ andModifiers:[keyCombo modifiers]
+ onItem:tempItem];
+ }
+
if (_currentPlaylist) {
[tempItem setTag:MTMenuNextTrackItem];
[tempItem setTarget:self];
if (_currentPlaylist) {
[tempItem setTag:MTMenuNextTrackItem];
[tempItem setTarget:self];
@@
-88,6
+107,13
@@
tempItem = [menu addItemWithTitle:@"Previous Track"
action:@selector(performMainMenuAction:)
keyEquivalent:@""];
tempItem = [menu addItemWithTitle:@"Previous Track"
action:@selector(performMainMenuAction:)
keyEquivalent:@""];
+
+ if ( (keyCombo = [[HotKeyCenter sharedCenter] keyComboForName:@"PrevTrack"]) ) {
+ [self setKeyEquivalentForCode:[keyCombo keyCode]
+ andModifiers:[keyCombo modifiers]
+ onItem:tempItem];
+ }
+
if (_currentPlaylist) {
[tempItem setTag:MTMenuPreviousTrackItem];
[tempItem setTarget:self];
if (_currentPlaylist) {
[tempItem setTag:MTMenuPreviousTrackItem];
[tempItem setTarget:self];
@@
-143,6
+169,13
@@
keyEquivalent:@""];
[tempItem setSubmenu:_ratingMenu];
[tempItem setTag:1];
keyEquivalent:@""];
[tempItem setSubmenu:_ratingMenu];
[tempItem setTag:1];
+
+ itemEnum = [[_ratingMenu itemArray] objectEnumerator];
+ while ( (tempItem = [itemEnum nextObject]) ) {
+ [tempItem setState:NSOffState];
+ }
+
+ [[_ratingMenu itemAtIndex:([currentRemote currentSongRating] * 5)] setState:NSOnState];
if (_playingRadio || !_currentPlaylist) {
[tempItem setEnabled:NO];
}
if (_playingRadio || !_currentPlaylist) {
[tempItem setEnabled:NO];
}
@@
-167,6
+200,12
@@
keyEquivalent:@""];
[tempItem setSubmenu:_eqMenu];
[tempItem setTag:4];
keyEquivalent:@""];
[tempItem setSubmenu:_eqMenu];
[tempItem setTag:4];
+
+ itemEnum = [[_eqMenu itemArray] objectEnumerator];
+ while ( (tempItem = [itemEnum nextObject]) ) {
+ [tempItem setState:NSOffState];
+ }
+ [[_eqMenu itemAtIndex:([currentRemote currentEQPresetIndex] - 1)] setState:NSOnState];
}
}
[_currentMenu release];
}
}
[_currentMenu release];
@@
-224,8
+263,6
@@
[ratingMenu addItemWithTitle:[NSString stringWithUTF8String:"★★★★☆"] action:nil keyEquivalent:@""];
[ratingMenu addItemWithTitle:[NSString stringWithUTF8String:"★★★★★"] action:nil keyEquivalent:@""];
[ratingMenu addItemWithTitle:[NSString stringWithUTF8String:"★★★★☆"] action:nil keyEquivalent:@""];
[ratingMenu addItemWithTitle:[NSString stringWithUTF8String:"★★★★★"] action:nil keyEquivalent:@""];
- [[ratingMenu itemAtIndex:([currentRemote currentSongRating] * 5)] setState:NSOnState];
-
itemEnum = [[ratingMenu itemArray] objectEnumerator];
while ( (anItem = [itemEnum nextObject]) ) {
[anItem setAction:itemSelector];
itemEnum = [[ratingMenu itemArray] objectEnumerator];
while ( (anItem = [itemEnum nextObject]) ) {
[anItem setAction:itemSelector];
@@
-297,7
+334,6
@@
[tempItem setTarget:self];
}
}
[tempItem setTarget:self];
}
}
- [[eqMenu itemAtIndex:([currentRemote currentEQPresetIndex] - 1)] setState:NSOnState];
return eqMenu;
}
return eqMenu;
}
@@
-308,17
+344,14
@@
case MTMenuPlayPauseItem:
NSLog(@"MenuController: Play/Pause");
[[MainController sharedController] playPause];
case MTMenuPlayPauseItem:
NSLog(@"MenuController: Play/Pause");
[[MainController sharedController] playPause];
- //We're gonna have to change the Play menu item to Pause here too.
break;
case MTMenuFastForwardItem:
NSLog(@"MenuController: Fast Forward");
[[MainController sharedController] fastForward];
break;
case MTMenuFastForwardItem:
NSLog(@"MenuController: Fast Forward");
[[MainController sharedController] fastForward];
- //make sure play/pause item says sane through this
break;
case MTMenuRewindItem:
NSLog(@"MenuController: Rewind");
[[MainController sharedController] rewind];
break;
case MTMenuRewindItem:
NSLog(@"MenuController: Rewind");
[[MainController sharedController] rewind];
- //make sure play/pause item says sane through this
break;
case MTMenuPreviousTrackItem:
NSLog(@"MenuController: Previous Track");
break;
case MTMenuPreviousTrackItem:
NSLog(@"MenuController: Previous Track");