115{
117 BITMAPINFO bmi1 = {{
sizeof(
BITMAPINFOHEADER), 8, 1, 1, 1,
BI_RGB, 0, 10, 10, 0,0}};
118 BITMAPINFO bmi32 = {{
sizeof(
BITMAPINFOHEADER), 8, 1, 1, 16,
BI_RGB, 0, 10, 10, 0,0}};
119 HBITMAP hbmDst, hbmSrc, hbmMsk;
121 PUSHORT pusBitsDst, pusBitsSrc;
123
124
128
129
134
135
137 ok(hbmMsk != 0,
"CreateDIBSection failed\n");
138
139
140 pusBitsDst[0] = 0x1234;
141 pusBitsDst[1] = 0x5678;
142 pusBitsSrc[0] = 0x4321;
143 pusBitsSrc[1] = 0x8765;
144 pjBitsMsk[0] = 0x80;
145 ret =
MaskBlt(
hdcDst, 0, 0, 8, 1,
hdcSrc, 0, 0, hbmMsk, 0, 0,
MAKEROP4(
SRCCOPY, 0xAA0000));
146 ok(
ret == 1,
"MaskBlt failed (%d)\n",
ret);
147 ok (pusBitsDst[0] == 0x4321,
"pusBitsDst[0] == 0x%x\n", pusBitsDst[0]);
148 ok (pusBitsDst[1] == 0x5678,
"pusBitsDst[0] == 0x%x\n", pusBitsDst[1]);
149
150 pusBitsDst[0] = 0x1234;
151 pusBitsDst[1] = 0x5678;
152 ret =
MaskBlt(
hdcDst, 0, 0, 8, 1,
hdcSrc, 0, 0, hbmMsk, 0, 0,
MAKEROP4(
SRCPAINT,
MERGEPAINT));
153 ok(
ret == 1,
"MaskBlt failed (%d)\n",
ret);
154 ok (pusBitsDst[0] == 0x5335,
"pusBitsDst[0] == 0x%x\n", pusBitsDst[0]);
155 ok (pusBitsDst[1] == 0x7efa,
"pusBitsDst[0] == 0x%x\n", pusBitsDst[1]);
156}
HBITMAP WINAPI CreateDIBSection(HDC hDC, CONST BITMAPINFO *BitmapInfo, UINT Usage, VOID **Bits, HANDLE hSection, DWORD dwOffset)
HGDIOBJ WINAPI SelectObject(_In_ HDC, _In_ HGDIOBJ)
BOOL WINAPI MaskBlt(_In_ HDC, _In_ int, _In_ int, _In_ int, _In_ int, _In_ HDC, _In_ int, _In_ int, _In_ HBITMAP, _In_ int, _In_ int, _In_ DWORD)
HDC WINAPI CreateCompatibleDC(_In_opt_ HDC hdc)