Synchronize up to trunk's revision r57784.
[reactos.git] / win32ss / gdi / diblib / BitBlt.c
1
2 #include "DibLib.h"
3
4 #define __USES_SOURCE 1
5 #define __USES_PATTERN 1
6 #define __USES_DEST 1
7 #define __USES_MASK 0
8
9 #define __FUNCTIONNAME BitBlt
10
11 #define _DibDoRop(pBltData, M, D, S, P) pBltData->apfnDoRop[0](D,S,P)
12
13 #include "DibLib_AllSrcBPP.h"
14
15 #undef __FUNCTIONNAME
16 #define __FUNCTIONNAME BitBlt_Solid
17 #define __USES_SOLID_BRUSH 1
18 #include "DibLib_AllSrcBPP.h"
19
20 VOID
21 FASTCALL
22 Dib_BitBlt(PBLTDATA pBltData)
23 {
24 /* Check for solid brush */
25 if (pBltData->ulSolidColor != 0xFFFFFFFF)
26 {
27 /* Use the solid version of PATCOPY! */
28 gapfnBitBlt_Solid[pBltData->siDst.iFormat][pBltData->siSrc.iFormat](pBltData);
29 }
30 else
31 {
32 /* Use the pattern version */
33 gapfnBitBlt[pBltData->siDst.iFormat][pBltData->siSrc.iFormat](pBltData);
34 }
35 }
36
37
38