X-Git-Url: http://git.ithinksw.org/MenuTunes.git/blobdiff_plain/c7fd0c06dcd4976525ffab0f0f0f13f15e4fc118..418a547d5daa457e97c3964224af5d703df5a19f:/StatusWindowController.m diff --git a/StatusWindowController.m b/StatusWindowController.m index c6a2397..d7bd2ff 100755 --- a/StatusWindowController.m +++ b/StatusWindowController.m @@ -12,18 +12,48 @@ return self; } -- (void)setUpcomingSongs:(NSString *)string numSongs:(int)songs +- (void)setUpcomingSongs:(NSString *)string { + int size = 0, i; + NSArray *lines = [string componentsSeparatedByString:@"\n"]; + + for (i = 0; i < [lines count]; i++) { + int temp = [[lines objectAtIndex:i] sizeWithAttributes:[NSDictionary dictionaryWithObject:[NSFont fontWithName:@"Lucida Grande" size:12] forKey:NSFontAttributeName]].width; + + if (temp > size) { + size = temp; + } + } + + if (size < 255) { + size = 255; + } + [statusField setStringValue:string]; - [statusWindow setFrame:NSMakeRect(0, 0, 300, 40 + (songs * 17)) display:NO]; + [statusWindow setFrame:NSMakeRect(0, 0, size + 45, 40 + ([lines count] * 17)) display:NO]; [statusWindow center]; [statusWindow makeKeyAndOrderFront:nil]; } -- (void)setTrackInfo:(NSString *)string lines:(int)lines +- (void)setTrackInfo:(NSString *)string { + int size = 0, i; + NSArray *lines = [string componentsSeparatedByString:@"\n"]; + + for (i = 0; i < [lines count]; i++) { + int temp = [[lines objectAtIndex:i] sizeWithAttributes:[NSDictionary dictionaryWithObject:[NSFont fontWithName:@"Lucida Grande" size:12] forKey:NSFontAttributeName]].width; + + if (temp > size) { + size = temp; + } + } + + if (size < 285) { + size = 285; + } + [statusField setStringValue:string]; - [statusWindow setFrame:NSMakeRect(0, 0, 316, 40 + (lines * 17)) display:NO]; + [statusWindow setFrame:NSMakeRect(0, 0, size + 45, 40 + ([lines count] * 17)) display:NO]; [statusWindow center]; [statusWindow makeKeyAndOrderFront:nil]; }