Mostly just moving files around for organizational puroposes. Created a Deprecated...
[MenuTunes.git] / Deprecated / StatusWindowController.m
diff --git a/Deprecated/StatusWindowController.m b/Deprecated/StatusWindowController.m
new file mode 100755 (executable)
index 0000000..b57fa1e
--- /dev/null
@@ -0,0 +1,77 @@
+#import "StatusWindowController.h"
+#import "StatusWindow.h"
+
+@implementation StatusWindowController
+
+- (id)init
+{
+    if ( (self = [super init]) ) {
+        [NSBundle loadNibNamed:@"StatusWindow" owner:self];
+        [statusWindow center];
+    }
+    return self;
+}
+
+- (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, size + 45, 40 + ([lines count] * 15)) display:YES];
+    [statusWindow center];
+    [statusWindow makeKeyAndOrderFront:nil];
+}
+
+- (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, size + 45, 40 + ([lines count] * 16)) display:NO];
+    [statusWindow center];
+    [statusWindow makeKeyAndOrderFront:nil];
+}
+
+- (void)fadeWindowOut
+{
+    [NSThread detachNewThreadSelector:@selector(fadeOutAux) toTarget:self withObject:nil];
+}
+
+- (void)fadeOutAux
+{
+    NSAutoreleasePool *p00l = [[NSAutoreleasePool alloc] init];
+    float i;
+    for (i = 0.6; i > 0; i -= .004) {
+        [statusWindow setAlphaValue:i];
+    }
+    [statusWindow close];
+    [p00l release];
+}
+
+@end