reactos/win32ss/gdi/diblib/MaskCopy.c
Amine Khaldi 527f2f9057 [SHELL/EXPERIMENTS]
* Create a branch for some evul shell experiments.

svn path=/branches/shell-experiments/; revision=61927
2014-02-02 19:37:27 +00:00

36 lines
887 B
C

#include "DibLib.h"
extern PFN_DIBFUNCTION gapfnBitBlt_SRCCOPY[7][7];
extern PFN_DIBFUNCTION gapfnBitBlt_SRCINVERT[7][7];
VOID
FASTCALL
Dib_MaskCopy(PBLTDATA pBltData)
{
pBltData->siSrc = pBltData->siMsk;
/* Create an XLATEOBJ */
pBltData->pxlo = 0;// FIXME: use 1bpp -> destbpp
/* 4 possibilities... */
if (pBltData->rop4 == MAKEROP4(BLACKNESS, WHITENESS))
{
gapfnBitBlt_SRCCOPY[pBltData->siDst.iFormat][pBltData->siSrc.iFormat](pBltData);
}
else if (pBltData->rop4 == MAKEROP4(WHITENESS, BLACKNESS))
{
gapfnBitBlt_SRCINVERT[pBltData->siDst.iFormat][pBltData->siSrc.iFormat](pBltData);
}
else if (pBltData->rop4 == MAKEROP4(BLACKNESS, BLACKNESS))
{
Dib_BitBlt_BLACKNESS(pBltData);
}
else // if (pBltData->rop4 == MAKEROP4(WHITENESS, WHITENESS))
{
Dib_BitBlt_WHITENESS(pBltData);
}
}