Author: gnorton
Date: 2008-02-14 12:24:01 -0500 (Thu, 14 Feb 2008)
New Revision: 95661

Modified:
   trunk/libgdiplus/src/ChangeLog
   trunk/libgdiplus/src/carbon-private.c
Log:
In .:
2008-02-14  Geoff Norton  <[EMAIL PROTECTED]>

        * carbon-private.c: Display automatic dpi detection for now, its
        causing too many problems.



Modified: trunk/libgdiplus/src/ChangeLog
===================================================================
--- trunk/libgdiplus/src/ChangeLog      2008-02-14 17:21:54 UTC (rev 95660)
+++ trunk/libgdiplus/src/ChangeLog      2008-02-14 17:24:01 UTC (rev 95661)
@@ -1,3 +1,8 @@
+2008-02-14  Geoff Norton  <[EMAIL PROTECTED]>
+
+       * carbon-private.c: Display automatic dpi detection for now, its
+       causing too many problems.
+
 2008-01-23  Geoff Norton  <[EMAIL PROTECTED]>
 
        * Makefile.am: Add carbon-private.* to the build.

Modified: trunk/libgdiplus/src/carbon-private.c
===================================================================
--- trunk/libgdiplus/src/carbon-private.c       2008-02-14 17:21:54 UTC (rev 
95660)
+++ trunk/libgdiplus/src/carbon-private.c       2008-02-14 17:24:01 UTC (rev 
95661)
@@ -39,16 +39,20 @@
 }
 
 void gdip_get_display_dpi_carbon (float *h_dpi, float *v_dpi) {
-       CFDictionaryRef mode_dict = CGDisplayCurrentMode (kCGDirectMainDisplay);
-       io_connect_t display_port = CGDisplayIOServicePort 
(kCGDirectMainDisplay);
-       CFDictionaryRef display_dict = IOCreateDisplayInfoDictionary 
(display_port, 0);
-       const float mmpi = 25.4;
-       float h_size = (float) gdip_get_int_from_dict_for_key (display_dict, 
CFSTR (kDisplayHorizontalImageSize)) / mmpi;
-       float v_size = (float) gdip_get_int_from_dict_for_key (display_dict, 
CFSTR (kDisplayVerticalImageSize)) / mmpi;
+       if (getenv ("MONO_MWF_MAC_DETECT_DPI") != NULL) {
+               CFDictionaryRef mode_dict = CGDisplayCurrentMode 
(kCGDirectMainDisplay);
+               io_connect_t display_port = CGDisplayIOServicePort 
(kCGDirectMainDisplay);
+               CFDictionaryRef display_dict = IOCreateDisplayInfoDictionary 
(display_port, 0);
+               const float mmpi = 25.4;
+               float h_size = (float) gdip_get_int_from_dict_for_key 
(display_dict, CFSTR (kDisplayHorizontalImageSize)) / mmpi;
+               float v_size = (float) gdip_get_int_from_dict_for_key 
(display_dict, CFSTR (kDisplayVerticalImageSize)) / mmpi;
 
-       *h_dpi = (float) gdip_get_int_from_dict_for_key (mode_dict, 
kCGDisplayWidth) / h_size; 
-       *v_dpi = (float) gdip_get_int_from_dict_for_key (mode_dict, 
kCGDisplayHeight) / v_size; 
+               *h_dpi = (float) gdip_get_int_from_dict_for_key (mode_dict, 
kCGDisplayWidth) / h_size; 
+               *v_dpi = (float) gdip_get_int_from_dict_for_key (mode_dict, 
kCGDisplayHeight) / v_size; 
 
-       CFRelease (display_dict);
+               CFRelease (display_dict);
+       } else {
+               *h_dpi = *v_dpi = 96.0f;
+       }
 }
 #endif

_______________________________________________
Mono-patches maillist  -  [email protected]
http://lists.ximian.com/mailman/listinfo/mono-patches

Reply via email to