[7/8] gdiplus: GdipGetDpiX/GdipGetDpiY

Nikolay Sivov bunglehead at gmail.com
Mon Apr 28 15:10:20 CDT 2008


Changelog:
    - implemented GdipGetDpiX/GdipGetDpiY
    
---
 dlls/gdiplus/gdiplus.spec |    4 ++--
 dlls/gdiplus/graphics.c   |   20 ++++++++++++++++++++
 include/gdiplusflat.h     |    3 +++
 3 files changed, 25 insertions(+), 2 deletions(-)

diff --git a/dlls/gdiplus/gdiplus.spec b/dlls/gdiplus/gdiplus.spec
index 0aca002..c06fa2e 100644
--- a/dlls/gdiplus/gdiplus.spec
+++ b/dlls/gdiplus/gdiplus.spec
@@ -256,8 +256,8 @@
 @ stub GdipGetCustomLineCapType
 @ stub GdipGetCustomLineCapWidthScale
 @ stub GdipGetDC
-@ stub GdipGetDpiX
-@ stub GdipGetDpiY
+@ stdcall GdipGetDpiX(ptr ptr)
+@ stdcall GdipGetDpiY(ptr ptr)
 @ stub GdipGetEffectParameterSize
 @ stub GdipGetEffectParameters
 @ stub GdipGetEmHeight
diff --git a/dlls/gdiplus/graphics.c b/dlls/gdiplus/graphics.c
index 2db8735..75be6ef 100644
--- a/dlls/gdiplus/graphics.c
+++ b/dlls/gdiplus/graphics.c
@@ -2398,3 +2398,23 @@ GpStatus WINGDIPAPI GdipDrawPolygonI(GpGraphics *graphics,GpPen *pen,GDIPCONST G
 
     return ret;
 }
+
+GpStatus WINGDIPAPI GdipGetDpiX(GpGraphics *graphics, REAL* dpi)
+{
+    if(!graphics || !dpi)
+        return InvalidParameter;
+
+    *dpi = (REAL)GetDeviceCaps(graphics->hdc, LOGPIXELSX);
+    
+    return Ok;
+}
+
+GpStatus WINGDIPAPI GdipGetDpiY(GpGraphics *graphics, REAL* dpi)
+{
+    if(!graphics || !dpi)
+        return InvalidParameter;
+
+    *dpi = (REAL)GetDeviceCaps(graphics->hdc, LOGPIXELSY);
+    
+    return Ok;
+}
diff --git a/include/gdiplusflat.h b/include/gdiplusflat.h
index 5c9e0f9..dbf1c85 100644
--- a/include/gdiplusflat.h
+++ b/include/gdiplusflat.h
@@ -343,6 +343,9 @@ GpStatus WINGDIPAPI GdipSetStringFormatLineAlign(GpStringFormat*,StringAlignment
 GpStatus WINGDIPAPI GdipSetStringFormatTrimming(GpStringFormat*,StringTrimming);
 GpStatus WINGDIPAPI GdipCloneStringFormat(GDIPCONST GpStringFormat*,GpStringFormat**);
 
+GpStatus WINGDIPAPI GdipGetDpiX(GpGraphics*,REAL*);
+GpStatus WINGDIPAPI GdipGetDpiY(GpGraphics*,REAL*);
+
 #ifdef __cplusplus
 }
 #endif
-- 
1.4.4.4






More information about the wine-patches mailing list