\r
/* 1. make mask bitmap's dc */\r
hDCMask = NtGdiCreateCompatibleDC(hdcDest);\r
- hOldMaskBitmap = (HBITMAP)NtGdiSelectObject(hDCMask, hbmMask);\r
+ hOldMaskBitmap = (HBITMAP)NtGdiSelectBitmap(hDCMask, hbmMask);\r
\r
/* 2. make masked Background bitmap */\r
\r
/* 2.1 make bitmap */\r
hDC1 = NtGdiCreateCompatibleDC(hdcDest);\r
hBitmap2 = NtGdiCreateCompatibleBitmap(hdcDest, nWidth, nHeight);\r
- hOldBitmap2 = (HBITMAP)NtGdiSelectObject(hDC1, hBitmap2);\r
+ hOldBitmap2 = (HBITMAP)NtGdiSelectBitmap(hDC1, hBitmap2);\r
\r
/* 2.2 draw dest bitmap and mask */\r
NtGdiBitBlt(hDC1, 0, 0, nWidth, nHeight, hdcSrc, nXSrc, nYSrc, SRCCOPY, 0, 0);\r
/* 3.1 make bitmap */\r
hDC2 = NtGdiCreateCompatibleDC(hdcDest);\r
hBitmap3 = NtGdiCreateCompatibleBitmap(hdcDest, nWidth, nHeight);\r
- hOldBitmap3 = (HBITMAP)NtGdiSelectObject(hDC2, hBitmap3);\r
+ hOldBitmap3 = (HBITMAP)NtGdiSelectBitmap(hDC2, hBitmap3);\r
\r
/* 3.2 draw src bitmap and mask */\r
NtGdiBitBlt(hDC2, 0, 0, nWidth, nHeight, hdcDest, nXDest, nYDest, SRCCOPY, 0, 0);\r
NtGdiBitBlt(hdcDest, nXDest, nYDest, nWidth, nHeight, hDC1, 0, 0, SRCCOPY, 0, 0);\r
\r
/* 5. restore all object */\r
- NtGdiSelectObject(hDCMask, hOldMaskBitmap);\r
- NtGdiSelectObject(hDC1, hOldBitmap2);\r
- NtGdiSelectObject(hDC2, hOldBitmap3);\r
+ NtGdiSelectBitmap(hDCMask, hOldMaskBitmap);\r
+ NtGdiSelectBitmap(hDC1, hOldBitmap2);\r
+ NtGdiSelectBitmap(hDC2, hOldBitmap3);\r
\r
/* 6. delete all temp object */\r
NtGdiDeleteObject(hBitmap2);\r