1 2 #include "DibLib.h" 3 4 #define __USES_SOURCE 0 5 #define __USES_PATTERN 1 6 #define __USES_DEST 0 7 #define __USES_MASK 0 8 9 #define __FUNCTIONNAME BitBlt_NOTPATCOPY 10 11 #define _DibDoRop(pBltData, M, D, S, P) (~(P)) 12 13 #include "DibLib_AllDstBPP.h" 14 15 extern PFN_DIBFUNCTION gapfnBitBlt_PATCOPY_Solid[]; 16 17 VOID 18 FASTCALL 19 Dib_BitBlt_NOTPATCOPY(PBLTDATA pBltData) 20 { 21 /* Check for solid brush */ 22 if (pBltData->ulSolidColor != 0xFFFFFFFF) 23 { 24 /* Prepare inverted colot */ 25 pBltData->ulSolidColor = ~pBltData->ulSolidColor; 26 27 /* Use the solid version of PATCOPY! */ 28 gapfnBitBlt_PATCOPY_Solid[pBltData->siDst.iFormat](pBltData); 29 } 30 else 31 { 32 /* Use the pattern version */ 33 gapfnBitBlt_NOTPATCOPY[pBltData->siDst.iFormat](pBltData); 34 } 35 } 36 37