mirror of
https://github.com/reactos/reactos.git
synced 2024-07-06 04:35:07 +00:00
Preparation for StretchBlt pattern support (2):
- Modify CallDibStretchBlt for brush support, adjust function pointers - Add BrushObj to DibFunctions, fix BrushOrigin parameter type, qualify ROP properly svn path=/trunk/; revision=39506
This commit is contained in:
parent
6399747995
commit
c4d49789a6
|
@ -225,9 +225,9 @@ BOOLEAN Dummy_BitBlt(PBLTINFO BltInfo)
|
|||
|
||||
BOOLEAN Dummy_StretchBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
||||
RECTL* DestRect, RECTL *SourceRect,
|
||||
POINTL* MaskOrigin, POINTL BrushOrign,
|
||||
CLIPOBJ *ClipRegion, XLATEOBJ *ColorTranslation,
|
||||
ULONG Mode)
|
||||
POINTL* MaskOrigin, BRUSHOBJ* Brush,
|
||||
POINTL* BrushOrign, CLIPOBJ *ClipRegion,
|
||||
XLATEOBJ *ColorTranslation, ROP4 Rop)
|
||||
{
|
||||
return FALSE;
|
||||
}
|
||||
|
|
|
@ -41,7 +41,7 @@ typedef ULONG (*PFN_DIB_GetPixel)(SURFOBJ*,LONG,LONG);
|
|||
typedef VOID (*PFN_DIB_HLine)(SURFOBJ*,LONG,LONG,LONG,ULONG);
|
||||
typedef VOID (*PFN_DIB_VLine)(SURFOBJ*,LONG,LONG,LONG,ULONG);
|
||||
typedef BOOLEAN (*PFN_DIB_BitBlt)(PBLTINFO);
|
||||
typedef BOOLEAN (*PFN_DIB_StretchBlt)(SURFOBJ*,SURFOBJ*,RECTL*,RECTL*,POINTL*,POINTL,CLIPOBJ*,XLATEOBJ*,ULONG);
|
||||
typedef BOOLEAN (*PFN_DIB_StretchBlt)(SURFOBJ*,SURFOBJ*,RECTL*,RECTL*,POINTL*,BRUSHOBJ*,POINTL*,CLIPOBJ*,XLATEOBJ*,ROP4);
|
||||
typedef BOOLEAN (*PFN_DIB_TransparentBlt)(SURFOBJ*,SURFOBJ*,RECTL*,POINTL*,XLATEOBJ*,ULONG);
|
||||
typedef BOOLEAN (*PFN_DIB_ColorFill)(SURFOBJ*, RECTL*, ULONG);
|
||||
typedef BOOLEAN (*PFN_DIB_AlphaBlend)(SURFOBJ*, SURFOBJ*, RECTL*, RECTL*, CLIPOBJ*, XLATEOBJ*, BLENDOBJ*);
|
||||
|
@ -67,7 +67,7 @@ ULONG Dummy_GetPixel(SURFOBJ*,LONG,LONG);
|
|||
VOID Dummy_HLine(SURFOBJ*,LONG,LONG,LONG,ULONG);
|
||||
VOID Dummy_VLine(SURFOBJ*,LONG,LONG,LONG,ULONG);
|
||||
BOOLEAN Dummy_BitBlt(PBLTINFO);
|
||||
BOOLEAN Dummy_StretchBlt(SURFOBJ*,SURFOBJ*,RECTL*,RECTL*,POINTL*,POINTL,CLIPOBJ*,XLATEOBJ*,ULONG);
|
||||
BOOLEAN Dummy_StretchBlt(SURFOBJ*,SURFOBJ*,RECTL*,RECTL*,POINTL*,BRUSHOBJ*,POINTL*,CLIPOBJ*,XLATEOBJ*,ROP4);
|
||||
BOOLEAN Dummy_TransparentBlt(SURFOBJ*,SURFOBJ*,RECTL*,POINTL*,XLATEOBJ*,ULONG);
|
||||
BOOLEAN Dummy_ColorFill(SURFOBJ*, RECTL*, ULONG);
|
||||
BOOLEAN Dummy_AlphaBlend(SURFOBJ*, SURFOBJ*, RECTL*, RECTL*, CLIPOBJ*, XLATEOBJ*, BLENDOBJ*);
|
||||
|
@ -132,7 +132,7 @@ BOOLEAN DIB_32BPP_TransparentBlt(SURFOBJ*,SURFOBJ*,RECTL*,POINTL*,XLATEOBJ*,ULON
|
|||
BOOLEAN DIB_32BPP_ColorFill(SURFOBJ*, RECTL*, ULONG);
|
||||
BOOLEAN DIB_32BPP_AlphaBlend(SURFOBJ*, SURFOBJ*, RECTL*, RECTL*, CLIPOBJ*, XLATEOBJ*, BLENDOBJ*);
|
||||
|
||||
BOOLEAN DIB_XXBPP_StretchBlt(SURFOBJ*,SURFOBJ*,RECTL*,RECTL*,POINTL*,POINTL,CLIPOBJ*,XLATEOBJ*,ULONG);
|
||||
BOOLEAN DIB_XXBPP_StretchBlt(SURFOBJ*,SURFOBJ*,RECTL*,RECTL*,POINTL*,BRUSHOBJ*,POINTL*,CLIPOBJ*,XLATEOBJ*,ROP4);
|
||||
|
||||
extern unsigned char notmask[2];
|
||||
extern unsigned char altnotmask[2];
|
||||
|
|
|
@ -23,10 +23,10 @@
|
|||
#include <debug.h>
|
||||
|
||||
BOOLEAN DIB_XXBPP_StretchBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
||||
RECTL* DestRect, RECTL *SourceRect,
|
||||
POINTL* MaskOrigin, POINTL BrushOrigin,
|
||||
CLIPOBJ *ClipRegion, XLATEOBJ *ColorTranslation,
|
||||
ULONG ROP)
|
||||
RECTL *DestRect, RECTL *SourceRect,
|
||||
POINTL *MaskOrigin, BRUSHOBJ *Brush,
|
||||
POINTL *BrushOrigin, CLIPOBJ *ClipRegion,
|
||||
XLATEOBJ *ColorTranslation, ROP4 ROP)
|
||||
{
|
||||
LONG SrcSizeY;
|
||||
LONG SrcSizeX;
|
||||
|
|
|
@ -50,8 +50,9 @@ typedef BOOLEAN (APIENTRY *PSTRETCHRECTFUNC)(SURFOBJ* OutputObj,
|
|||
RECTL* OutputRect,
|
||||
RECTL* InputRect,
|
||||
POINTL* MaskOrigin,
|
||||
BRUSHOBJ* BrushObj,
|
||||
POINTL* BrushOrigin,
|
||||
ULONG Mode);
|
||||
ROP4 Rop4);
|
||||
|
||||
BOOL APIENTRY EngIntersectRect(RECTL* prcDst, RECTL* prcSrc1, RECTL* prcSrc2)
|
||||
{
|
||||
|
@ -741,8 +742,9 @@ CallDibStretchBlt(SURFOBJ* psoDest,
|
|||
RECTL* OutputRect,
|
||||
RECTL* InputRect,
|
||||
POINTL* MaskOrigin,
|
||||
BRUSHOBJ* Brush,
|
||||
POINTL* BrushOrigin,
|
||||
ULONG Mode)
|
||||
ROP4 Rop4)
|
||||
{
|
||||
POINTL RealBrushOrigin;
|
||||
if (BrushOrigin == NULL)
|
||||
|
@ -754,7 +756,7 @@ CallDibStretchBlt(SURFOBJ* psoDest,
|
|||
RealBrushOrigin = *BrushOrigin;
|
||||
}
|
||||
return DibFunctionsForBitmapFormat[psoDest->iBitmapFormat].DIB_StretchBlt(
|
||||
psoDest, psoSource, OutputRect, InputRect, MaskOrigin, RealBrushOrigin, ClipRegion, ColorTranslation, Mode);
|
||||
psoDest, psoSource, OutputRect, InputRect, MaskOrigin, Brush, &RealBrushOrigin, ClipRegion, ColorTranslation, Rop4);
|
||||
}
|
||||
|
||||
|
||||
|
@ -965,7 +967,7 @@ EngStretchBltROP(
|
|||
|
||||
Ret = (*BltRectFunc)(psoOutput, psoInput, Mask, ClipRegion,
|
||||
ColorTranslation, &OutputRect, &InputRect, MaskOrigin,
|
||||
&AdjustedBrushOrigin, ROP4);
|
||||
Brush, &AdjustedBrushOrigin, ROP4);
|
||||
|
||||
IntEngLeave(&EnterLeaveDest);
|
||||
if (UsesSource)
|
||||
|
|
Loading…
Reference in a new issue