X-Git-Url: http://git.ithinksw.org/MenuTunes.git/blobdiff_plain/50485da2e6ae0642e4dfb55ef4c0556ed6ef2a80..68dce30ee215d5614aff29c67733f9d71cfd033a:/MenuController.m diff --git a/MenuController.m b/MenuController.m index 508237e..6ae64a3 100755 --- a/MenuController.m +++ b/MenuController.m @@ -8,6 +8,7 @@ #import "MenuController.h" #import "MainController.h" +#import "NetworkController.h" #import "ITMTRemote.h" #import #import @@ -338,6 +339,23 @@ NS_HANDLER [[MainController sharedController] networkError:localException]; NS_ENDHANDLER + + /*if ([tempItem respondsToSelector:@selector(setAttributedTitle:)] && [defaults boolForKey:@"showAlbumArtwork"] && ![[NetworkController sharedController] isConnectedToServer]) { + NSImage *image = [[[MainController sharedController] currentRemote] currentSongAlbumArt]; + if (image) { + NSSize oldSize, newSize; + oldSize = [image size]; + if (oldSize.width > oldSize.height) newSize = NSMakeSize(110,oldSize.height * (110.0f / oldSize.width)); + else newSize = NSMakeSize(oldSize.width * (110.0f / oldSize.height),110); + image = [[[[NSImage alloc] initWithData:[image TIFFRepresentation]] autorelease] imageScaledSmoothlyToSize:newSize]; + + tempItem = [menu addItemWithTitle:@"" action:nil keyEquivalent:@""]; + NSTextAttachment *attachment = [[[NSTextAttachment alloc] init] autorelease]; + [[attachment attachmentCell] setImage:image]; + NSAttributedString *attrString = [NSAttributedString attributedStringWithAttachment:attachment]; + [tempItem setAttributedTitle:attrString]; + } + }*/ } } else { ITDebugLog(@"No Track is Playing, Add \"No Song\" menu item."); @@ -607,35 +625,42 @@ ITDebugLog(@"Adding index to the index array."); [indices addObject:[curPlaylist objectAtIndex:2]]; } - [indices addObject:[[playlists objectAtIndex:1] objectAtIndex:2]]; - if ( (source == ITMTRemoteRadioSource) || ([playlists count] - 2 > 0) ) { - [playlistsMenu addItem:[NSMenuItem separatorItem]]; - } - - if (source == ITMTRemoteRadioSource) { - [[playlistsMenu addItemWithTitle:NSLocalizedString(@"radio", @"Radio") action:@selector(performPlaylistMenuAction:) keyEquivalent:@""] setState:NSOnState]; + if ([playlists count] > 1) { + if ([[[playlists objectAtIndex:1] objectAtIndex:1] intValue] == ITMTRemoteRadioSource) { + [indices addObject:[[playlists objectAtIndex:1] objectAtIndex:2]]; + if (source == ITMTRemoteRadioSource) { + [playlistsMenu addItem:[NSMenuItem separatorItem]]; + [[playlistsMenu addItemWithTitle:NSLocalizedString(@"radio", @"Radio") action:@selector(performPlaylistMenuAction:) keyEquivalent:@""] setState:NSOnState]; + } + } else { + [playlistsMenu addItem:[NSMenuItem separatorItem]]; + } } - for (i = 2; i < [playlists count]; i++) { - NSArray *curPlaylist = [playlists objectAtIndex:i]; - NSString *name = [curPlaylist objectAtIndex:0]; - NSMenu *submenu = [[NSMenu alloc] init]; - ITDebugLog(@"Adding source: %@", name); - - if ( ([[curPlaylist objectAtIndex:1] intValue] == ITMTRemoteiPodSource) && [self iPodWithNameAutomaticallyUpdates:name] ) { - ITDebugLog(@"Invalid iPod source."); - [playlistsMenu addItemWithTitle:name action:NULL keyEquivalent:@""]; - } else { - for (j = 3; j < [curPlaylist count]; j++) { - ITDebugLog(@"Adding playlist: %@", [curPlaylist objectAtIndex:j]); - tempItem = [submenu addItemWithTitle:[curPlaylist objectAtIndex:j] action:@selector(performPlaylistMenuAction:) keyEquivalent:@""]; - [tempItem setTag:(i * 1000) + j - 1]; - [tempItem setTarget:self]; + if ([playlists count] > 1) { + for (i = 1; i < [playlists count]; i++) { + NSArray *curPlaylist = [playlists objectAtIndex:i]; + if ([[curPlaylist objectAtIndex:1] intValue] != ITMTRemoteRadioSource) { + NSString *name = [curPlaylist objectAtIndex:0]; + NSMenu *submenu = [[NSMenu alloc] init]; + ITDebugLog(@"Adding source: %@", name); + + if ( ([[curPlaylist objectAtIndex:1] intValue] == ITMTRemoteiPodSource) && [self iPodWithNameAutomaticallyUpdates:name] ) { + ITDebugLog(@"Invalid iPod source."); + [playlistsMenu addItemWithTitle:name action:NULL keyEquivalent:@""]; + } else { + for (j = 3; j < [curPlaylist count]; j++) { + ITDebugLog(@"Adding playlist: %@", [curPlaylist objectAtIndex:j]); + tempItem = [submenu addItemWithTitle:[curPlaylist objectAtIndex:j] action:@selector(performPlaylistMenuAction:) keyEquivalent:@""]; + [tempItem setTag:(i * 1000) + j - 1]; + [tempItem setTarget:self]; + } + [[playlistsMenu addItemWithTitle:name action:NULL keyEquivalent:@""] setSubmenu:[submenu autorelease]]; + } + ITDebugLog(@"Adding index to the index array."); + [indices addObject:[curPlaylist objectAtIndex:2]]; } - [[playlistsMenu addItemWithTitle:name action:NULL keyEquivalent:@""] setSubmenu:[submenu autorelease]]; } - ITDebugLog(@"Adding index to the index array."); - [indices addObject:[curPlaylist objectAtIndex:2]]; } ITDebugLog(@"Checking the current source."); if ( (source == ITMTRemoteSharedLibrarySource) || (source == ITMTRemoteiPodSource) || (source == ITMTRemoteGenericDeviceSource) || (source == ITMTRemoteCDSource) ) {