Fixed a leak in status windows. Fixed a timer bug in checking for server.
[MenuTunes.git] / StatusWindow.m
index 8e88f47..c116c09 100755 (executable)
 {
     if ( ! _locked ) {
 
+        float         divisor       = 1.0;
         float         textWidth     = 0.0;
         float         textHeight    = 0.0;
         float         okWidth       = 0.0;
         NSArray      *lines         = [message componentsSeparatedByString:@"\n"];
         id                       oneLine       = nil;
         NSEnumerator *lineEnum      = [lines objectEnumerator];
+        float         baseFontSize  = 18.0;
         ITTextField  *textField;
         ITButton     *okButton;
         ITButton     *cancelButton;
         NSColor      *textColor     = [NSColor whiteColor];
-        NSFont       *font          = [NSFont fontWithName:@"Lucida Grande Bold" size:18];
-        NSDictionary *attr          = [NSDictionary dictionaryWithObject:font forKey:NSFontAttributeName];
-        NSFont       *buttonFont    = [NSFont fontWithName:@"Lucida Grande Bold" size:14];
-        NSDictionary *buttonAttr    = [NSDictionary dictionaryWithObjectsAndKeys:
+        NSFont       *font;
+        NSDictionary *attr;
+        NSFont       *buttonFont;
+        NSDictionary *buttonAttr;
+        
+        if ( _sizing == ITTransientStatusWindowSmall ) {
+            divisor = SMALL_DIVISOR;
+        } else if ( _sizing == ITTransientStatusWindowMini ) {
+            divisor = MINI_DIVISOR;
+        }
+        
+        font = [NSFont fontWithName:@"Lucida Grande Bold" size:(baseFontSize / divisor)];
+        attr = [NSDictionary dictionaryWithObject:font forKey:NSFontAttributeName];
+        buttonFont = [NSFont fontWithName:@"Lucida Grande Bold" size:(14 / divisor)];
+        buttonAttr = [NSDictionary dictionaryWithObjectsAndKeys:
             buttonFont , NSFontAttributeName,
             textColor  , NSForegroundColorAttributeName, 
             nil];
         }
         
 //      Make the buttons, set the titles, and size them to fit their titles
-        okButton     = [[ITButton alloc] initWithFrame:NSMakeRect(0, 0, 300, 24)];
-        cancelButton = [[ITButton alloc] initWithFrame:NSMakeRect(0, 0, 300, 24)];
+        okButton     = [[[ITButton alloc] initWithFrame:NSMakeRect(0, 0, 300, 24)] autorelease];
+        cancelButton = [[[ITButton alloc] initWithFrame:NSMakeRect(0, 0, 300, 24)] autorelease];
         [okButton     setTarget:target];
         [cancelButton setTarget:target];
         [okButton     setAction:okAction];
                                            wideButtonW,
                                            24.0)];
         [[self contentView] addSubview:okButton];
-        [[self contentView] addSubview:cancelButton];
+        if (alternateTitle) {
+            [[self contentView] addSubview:cancelButton];
+        }
 
         [self setIgnoresMouseEvents:NO];