Author: manolo
Date: 2011-01-07 06:47:02 -0800 (Fri, 07 Jan 2011)
New Revision: 8212
Log:
Removed requirement of Mac OS 10.4 because of use of [NSScreen 
userSpaceScaleFactor]

Modified:
   branches/branch-1.3/src/Fl_cocoa.mm

Modified: branches/branch-1.3/src/Fl_cocoa.mm
===================================================================
--- branches/branch-1.3/src/Fl_cocoa.mm 2011-01-07 13:28:42 UTC (rev 8211)
+++ branches/branch-1.3/src/Fl_cocoa.mm 2011-01-07 14:47:02 UTC (rev 8212)
@@ -2719,16 +2719,26 @@
 {
   NSAutoreleasePool *localPool = [[NSAutoreleasePool alloc] init]; 
   NSArray *a = [NSScreen screens]; 
+  NSScreen *object;
   int count = (int)[a count]; 
   NSRect r; 
   int i, num_screens = 0;
   for( i = 0; i < count; i++) {
-    r = [[a objectAtIndex:i] frame];
+    object = (NSScreen*)[a objectAtIndex:i];
+    r = [object frame];
     screens[num_screens].x      = int(r.origin.x);
     screens[num_screens].y      = int(r.size.height - (r.origin.y + 
r.size.height));
     screens[num_screens].width  = int(r.size.width);
     screens[num_screens].height = int(r.size.height);
-    dpi[num_screens]            = float([[a objectAtIndex:i] 
userSpaceScaleFactor])*72.0f;
+#if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_4
+    if ([object respondsToSelector:@selector(userSpaceScaleFactor)]) {
+      dpi[num_screens] = float([object userSpaceScaleFactor])*72.0f;
+    } else 
+#endif
+    {
+      dpi[num_screens] = 72.0f;
+    }
+       
     num_screens ++;
     if (num_screens >= 16) break;
   }

_______________________________________________
fltk-commit mailing list
[email protected]
http://lists.easysw.com/mailman/listinfo/fltk-commit

Reply via email to