Module: wine Branch: master Commit: abc3769ad2a4b717b404b006d7fc9728d10a635a URL: http://source.winehq.org/git/wine.git/?a=commit;h=abc3769ad2a4b717b404b006d7...
Author: Andrey Turkin pancha@mail.nnov.ru Date: Mon Oct 30 18:57:48 2006 +0300
atl: Implement AtlPixelToHiMetric and AtlHiMetricToPixel.
---
dlls/atl/Makefile.in | 2 +- dlls/atl/atl.spec | 4 ++-- dlls/atl/atl_main.c | 17 +++++++++++++++++ 3 files changed, 20 insertions(+), 3 deletions(-)
diff --git a/dlls/atl/Makefile.in b/dlls/atl/Makefile.in index e54cf64..fc20950 100644 --- a/dlls/atl/Makefile.in +++ b/dlls/atl/Makefile.in @@ -4,7 +4,7 @@ SRCDIR = @srcdir@ VPATH = @srcdir@ MODULE = atl.dll IMPORTLIB = libatl.$(IMPLIBEXT) -IMPORTS = ole32 shlwapi user32 advapi32 kernel32 +IMPORTS = ole32 shlwapi user32 gdi32 advapi32 kernel32 EXTRALIBS = -luuid
C_SRCS = \ diff --git a/dlls/atl/atl.spec b/dlls/atl/atl.spec index f7f46fe..c8f0199 100644 --- a/dlls/atl/atl.spec +++ b/dlls/atl/atl.spec @@ -19,8 +19,8 @@ 24 stub AtlWaitWithMessageLoop 25 stub AtlSetErrorInfo 26 stub AtlCreateTargetDC -27 stub AtlHiMetricToPixel -28 stub AtlPixelToHiMetric +27 stdcall AtlHiMetricToPixel(ptr ptr) +28 stdcall AtlPixelToHiMetric(ptr ptr) 29 stub AtlDevModeW2A 30 stdcall AtlComPtrAssign(ptr ptr) 31 stub AtlComQIPtrAssign diff --git a/dlls/atl/atl_main.c b/dlls/atl/atl_main.c index 2fdf901..f7a6fc4 100644 --- a/dlls/atl/atl_main.c +++ b/dlls/atl/atl_main.c @@ -26,6 +26,7 @@ #define COBJMACROS #include "windef.h" #include "winbase.h" #include "winerror.h" +#include "wingdi.h" #include "winuser.h" #include "wine/debug.h" #include "objbase.h" @@ -421,3 +422,19 @@ ATOM WINAPI AtlModuleRegisterWndClassInf TRACE("returning 0x%04x\n", atom); return atom; } + +void WINAPI AtlHiMetricToPixel(const SIZEL* lpHiMetric, SIZEL* lpPix) +{ + HDC dc = GetDC(NULL); + lpPix->cx = lpHiMetric->cx * GetDeviceCaps( dc, LOGPIXELSX ) / 100; + lpPix->cy = lpHiMetric->cy * GetDeviceCaps( dc, LOGPIXELSY ) / 100; + ReleaseDC( NULL, dc ); +} + +void WINAPI AtlPixelToHiMetric(const SIZEL* lpPix, SIZEL* lpHiMetric) +{ + HDC dc = GetDC(NULL); + lpHiMetric->cx = 100 * lpPix->cx / GetDeviceCaps( dc, LOGPIXELSX ); + lpHiMetric->cy = 100 * lpPix->cy / GetDeviceCaps( dc, LOGPIXELSY ); + ReleaseDC( NULL, dc ); +}