[GDI32_APITEST] Add a PCH.
[reactos.git] / modules / rostests / apitests / gdi32 / GdiGetCharDimensions.c
1 /*
2 * PROJECT: ReactOS api tests
3 * LICENSE: GPL - See COPYING in the top level directory
4 * PURPOSE: Test for GdiGetCharDimensions
5 * PROGRAMMERS: Timo Kreuzer
6 */
7
8 #include "precomp.h"
9
10 void Test_GdiGetCharDimensions()
11 {
12 LOGFONT logfont = {-11, 0, 0, 0, 400,
13 0, 0, 0, 0, 0, 0, 0, 0,
14 "MS Shell Dlg 2"};
15 HFONT hFont, hOldFont;
16 HDC hdc;
17 LONG x, y, x2;
18 TEXTMETRICW tm;
19 SIZE size;
20 static const WCHAR alphabet[] = {
21 'a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q',
22 'r','s','t','u','v','w','x','y','z','A','B','C','D','E','F','G','H',
23 'I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z',0};
24
25 hFont = CreateFontIndirect(&logfont);
26 hdc = CreateCompatibleDC(NULL);
27 hOldFont = SelectObject(hdc, hFont);
28
29 x = GdiGetCharDimensions(hdc, &tm, &y);
30 GetTextExtentPointW(hdc, alphabet, 52, &size);
31 x2 = (size.cx / 26 + 1) / 2;
32
33 ok(x == x2, "x=%ld, x2=%ld\n", x, x2);
34 ok(y == tm.tmHeight, "y = %ld, tm.tmHeight = %ld\n", y, tm.tmHeight);
35
36 SelectObject(hdc, hOldFont);
37 DeleteObject(hFont);
38 DeleteDC(hdc);
39 }
40
41 START_TEST(GdiGetCharDimensions)
42 {
43 Test_GdiGetCharDimensions();
44 }
45