Author: tkreuzer
Date: Wed Aug 5 00:19:24 2009
New Revision: 42394
URL:
http://svn.reactos.org/svn/reactos?rev=42394&view=rev
Log:
Patch by Amine Khaldi: Get rid of XlatePatternToDest in BLTINFO and in the DIB code.
Modified:
trunk/reactos/subsystems/win32/win32k/dib/dib.c
trunk/reactos/subsystems/win32/win32k/dib/dib.h
trunk/reactos/subsystems/win32/win32k/dib/dib1bpp.c
trunk/reactos/subsystems/win32/win32k/dib/dib24bpp.c
trunk/reactos/subsystems/win32/win32k/dib/dib4bpp.c
trunk/reactos/subsystems/win32/win32k/dib/stretchblt.c
trunk/reactos/subsystems/win32/win32k/eng/bitblt.c
trunk/reactos/subsystems/win32/win32k/eng/copybits.c
trunk/reactos/subsystems/win32/win32k/eng/stretchblt.c
Modified: trunk/reactos/subsystems/win32/win32k/dib/dib.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/win32/win32k/di…
==============================================================================
--- trunk/reactos/subsystems/win32/win32k/dib/dib.c [iso-8859-1] (original)
+++ trunk/reactos/subsystems/win32/win32k/dib/dib.c [iso-8859-1] Wed Aug 5 00:19:24 2009
@@ -218,7 +218,7 @@
POINTL* MaskOrigin, BRUSHOBJ* Brush,
POINTL* BrushOrign,
XLATEOBJ *ColorTranslation,
- XLATEOBJ *XlatePatternToDest, ROP4 Rop)
+ ROP4 Rop)
{
return FALSE;
}
Modified: trunk/reactos/subsystems/win32/win32k/dib/dib.h
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/win32/win32k/di…
==============================================================================
--- trunk/reactos/subsystems/win32/win32k/dib/dib.h [iso-8859-1] (original)
+++ trunk/reactos/subsystems/win32/win32k/dib/dib.h [iso-8859-1] Wed Aug 5 00:19:24 2009
@@ -28,7 +28,6 @@
SURFOBJ *SourceSurface;
SURFOBJ *PatternSurface;
XLATEOBJ *XlateSourceToDest;
- XLATEOBJ *XlatePatternToDest;
RECTL DestRect;
POINTL SourcePoint;
BRUSHOBJ *Brush;
@@ -41,7 +40,7 @@
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*,SURFOBJ*,SURFOBJ*,RECTL*,RECTL*,POINTL*,BRUSHOBJ*,POINTL*,XLATEOBJ*,XLATEOBJ*,ROP4);
+typedef BOOLEAN
(*PFN_DIB_StretchBlt)(SURFOBJ*,SURFOBJ*,SURFOBJ*,SURFOBJ*,RECTL*,RECTL*,POINTL*,BRUSHOBJ*,POINTL*,XLATEOBJ*,ROP4);
typedef BOOLEAN
(*PFN_DIB_TransparentBlt)(SURFOBJ*,SURFOBJ*,RECTL*,RECTL*,XLATEOBJ*,ULONG);
typedef BOOLEAN (*PFN_DIB_ColorFill)(SURFOBJ*, RECTL*, ULONG);
typedef BOOLEAN (*PFN_DIB_AlphaBlend)(SURFOBJ*, SURFOBJ*, RECTL*, RECTL*, CLIPOBJ*,
XLATEOBJ*, BLENDOBJ*);
@@ -67,7 +66,7 @@
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*,SURFOBJ*,SURFOBJ*,RECTL*,RECTL*,POINTL*,BRUSHOBJ*,POINTL*,XLATEOBJ*,XLATEOBJ*,ROP4);
+BOOLEAN
Dummy_StretchBlt(SURFOBJ*,SURFOBJ*,SURFOBJ*,SURFOBJ*,RECTL*,RECTL*,POINTL*,BRUSHOBJ*,POINTL*,XLATEOBJ*,ROP4);
BOOLEAN Dummy_TransparentBlt(SURFOBJ*,SURFOBJ*,RECTL*,RECTL*,XLATEOBJ*,ULONG);
BOOLEAN Dummy_ColorFill(SURFOBJ*, RECTL*, ULONG);
BOOLEAN Dummy_AlphaBlend(SURFOBJ*, SURFOBJ*, RECTL*, RECTL*, CLIPOBJ*, XLATEOBJ*,
BLENDOBJ*);
@@ -132,7 +131,7 @@
BOOLEAN DIB_32BPP_ColorFill(SURFOBJ*, RECTL*, ULONG);
BOOLEAN DIB_32BPP_AlphaBlend(SURFOBJ*, SURFOBJ*, RECTL*, RECTL*, CLIPOBJ*, XLATEOBJ*,
BLENDOBJ*);
-BOOLEAN
DIB_XXBPP_StretchBlt(SURFOBJ*,SURFOBJ*,SURFOBJ*,SURFOBJ*,RECTL*,RECTL*,POINTL*,BRUSHOBJ*,POINTL*,XLATEOBJ*,XLATEOBJ*,ROP4);
+BOOLEAN
DIB_XXBPP_StretchBlt(SURFOBJ*,SURFOBJ*,SURFOBJ*,SURFOBJ*,RECTL*,RECTL*,POINTL*,BRUSHOBJ*,POINTL*,XLATEOBJ*,ROP4);
BOOLEAN DIB_XXBPP_FloodFillSolid(SURFOBJ*, BRUSHOBJ*, RECTL*, POINTL*, ULONG, UINT);
extern unsigned char notmask[2];
Modified: trunk/reactos/subsystems/win32/win32k/dib/dib1bpp.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/win32/win32k/di…
==============================================================================
--- trunk/reactos/subsystems/win32/win32k/dib/dib1bpp.c [iso-8859-1] (original)
+++ trunk/reactos/subsystems/win32/win32k/dib/dib1bpp.c [iso-8859-1] Wed Aug 5 00:19:24
2009
@@ -380,7 +380,7 @@
{
Pattern = 0;
for (k = 31 - NoBits; k >= 0; k++)
- Pattern |= (DIB_GetSource(PatternObj, (X + BrushOrigin.x + k) % PatternWidth,
PatternY, BltInfo->XlatePatternToDest) << (31 - k));
+ Pattern |= (DIB_GetSourceIndex(PatternObj, (X + BrushOrigin.x + k) %
PatternWidth, PatternY) << (31 - k));
}
Dest = DIB_DoRop(Rop4, Dest, Source, Pattern);
@@ -415,10 +415,10 @@
Pattern = 0;
for (Index = 0; Index < 8; Index++)
{
- Pattern |= DIB_GetSource(BltInfo->PatternSurface, (DestX +
BltInfo->BrushOrigin.x + Index) % BltInfo->PatternSurface->sizlBitmap.cx,
PatternY, BltInfo->XlatePatternToDest) << (7 - Index);
- Pattern |= DIB_GetSource(BltInfo->PatternSurface, (DestX +
BltInfo->BrushOrigin.x + Index + 8) % BltInfo->PatternSurface->sizlBitmap.cx,
PatternY, BltInfo->XlatePatternToDest) << (8 + (7 - Index));
- Pattern |= DIB_GetSource(BltInfo->PatternSurface, (DestX +
BltInfo->BrushOrigin.x + Index + 16) % BltInfo->PatternSurface->sizlBitmap.cx,
PatternY, BltInfo->XlatePatternToDest) << (16 + (7 - Index));
- Pattern |= DIB_GetSource(BltInfo->PatternSurface, (DestX +
BltInfo->BrushOrigin.x + Index + 24) % BltInfo->PatternSurface->sizlBitmap.cx,
PatternY, BltInfo->XlatePatternToDest) << (24 + (7 - Index));
+ Pattern |= DIB_GetSourceIndex(BltInfo->PatternSurface, (DestX +
BltInfo->BrushOrigin.x + Index) % BltInfo->PatternSurface->sizlBitmap.cx,
PatternY) << (7 - Index);
+ Pattern |= DIB_GetSourceIndex(BltInfo->PatternSurface, (DestX +
BltInfo->BrushOrigin.x + Index + 8) % BltInfo->PatternSurface->sizlBitmap.cx,
PatternY) << (8 + (7 - Index));
+ Pattern |= DIB_GetSourceIndex(BltInfo->PatternSurface, (DestX +
BltInfo->BrushOrigin.x + Index + 16) % BltInfo->PatternSurface->sizlBitmap.cx,
PatternY) << (16 + (7 - Index));
+ Pattern |= DIB_GetSourceIndex(BltInfo->PatternSurface, (DestX +
BltInfo->BrushOrigin.x + Index + 24) % BltInfo->PatternSurface->sizlBitmap.cx,
PatternY) << (24 + (7 - Index));
}
}
@@ -438,7 +438,7 @@
if (BltInfo->PatternSurface)
{
- Pattern = DIB_GetSource(BltInfo->PatternSurface, (DestX +
BltInfo->BrushOrigin.x) % BltInfo->PatternSurface->sizlBitmap.cx, PatternY,
BltInfo->XlatePatternToDest);
+ Pattern = DIB_GetSourceIndex(BltInfo->PatternSurface, (DestX +
BltInfo->BrushOrigin.x) % BltInfo->PatternSurface->sizlBitmap.cx, PatternY);
}
DIB_1BPP_PutPixel(BltInfo->DestSurface, DestX, DestY,
DIB_DoRop(BltInfo->Rop4, Dest, Source, Pattern) & 0xF);
Modified: trunk/reactos/subsystems/win32/win32k/dib/dib24bpp.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/win32/win32k/di…
==============================================================================
--- trunk/reactos/subsystems/win32/win32k/dib/dib24bpp.c [iso-8859-1] (original)
+++ trunk/reactos/subsystems/win32/win32k/dib/dib24bpp.c [iso-8859-1] Wed Aug 5 00:19:24
2009
@@ -274,7 +274,7 @@
if (BltInfo->PatternSurface)
{
- Pattern = DIB_GetSource(BltInfo->PatternSurface, (DestX -
BltInfo->BrushOrigin.x) % BltInfo->PatternSurface->sizlBitmap.cx, PatternY,
BltInfo->XlatePatternToDest);
+ Pattern = DIB_GetSourceIndex(BltInfo->PatternSurface, (DestX -
BltInfo->BrushOrigin.x) % BltInfo->PatternSurface->sizlBitmap.cx, PatternY);
}
Dest = DIB_DoRop(BltInfo->Rop4, Dest, Source, Pattern) & 0xFFFFFF;
Modified: trunk/reactos/subsystems/win32/win32k/dib/dib4bpp.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/win32/win32k/di…
==============================================================================
--- trunk/reactos/subsystems/win32/win32k/dib/dib4bpp.c [iso-8859-1] (original)
+++ trunk/reactos/subsystems/win32/win32k/dib/dib4bpp.c [iso-8859-1] Wed Aug 5 00:19:24
2009
@@ -289,7 +289,7 @@
if (BltInfo->PatternSurface)
{
- Pattern = DIB_GetSource(BltInfo->PatternSurface, (DestX +
BltInfo->BrushOrigin.x) % BltInfo->PatternSurface->sizlBitmap.cx, PatternY,
BltInfo->XlatePatternToDest);
+ Pattern = DIB_GetSourceIndex(BltInfo->PatternSurface, (DestX +
BltInfo->BrushOrigin.x) % BltInfo->PatternSurface->sizlBitmap.cx, PatternY);
}
DIB_4BPP_PutPixel(BltInfo->DestSurface, DestX, DestY,
DIB_DoRop(BltInfo->Rop4, Dest, Source, Pattern) & 0xF);
@@ -316,14 +316,14 @@
}
if (BltInfo->PatternSurface)
{
- Pattern = DIB_GetSource(BltInfo->PatternSurface, (DestX +
BltInfo->BrushOrigin.x + 1) % BltInfo->PatternSurface->sizlBitmap.cx, PatternY,
BltInfo->XlatePatternToDest);
- Pattern |= DIB_GetSource(BltInfo->PatternSurface, (DestX +
BltInfo->BrushOrigin.x + 0) % BltInfo->PatternSurface->sizlBitmap.cx, PatternY,
BltInfo->XlatePatternToDest) << 4;
- Pattern |= DIB_GetSource(BltInfo->PatternSurface, (DestX +
BltInfo->BrushOrigin.x + 3) % BltInfo->PatternSurface->sizlBitmap.cx, PatternY,
BltInfo->XlatePatternToDest) << 8;
- Pattern |= DIB_GetSource(BltInfo->PatternSurface, (DestX +
BltInfo->BrushOrigin.x + 2) % BltInfo->PatternSurface->sizlBitmap.cx, PatternY,
BltInfo->XlatePatternToDest) << 12;
- Pattern |= DIB_GetSource(BltInfo->PatternSurface, (DestX +
BltInfo->BrushOrigin.x + 5) % BltInfo->PatternSurface->sizlBitmap.cx, PatternY,
BltInfo->XlatePatternToDest) << 16;
- Pattern |= DIB_GetSource(BltInfo->PatternSurface, (DestX +
BltInfo->BrushOrigin.x + 4) % BltInfo->PatternSurface->sizlBitmap.cx, PatternY,
BltInfo->XlatePatternToDest) << 20;
- Pattern |= DIB_GetSource(BltInfo->PatternSurface, (DestX +
BltInfo->BrushOrigin.x + 7) % BltInfo->PatternSurface->sizlBitmap.cx, PatternY,
BltInfo->XlatePatternToDest) << 24;
- Pattern |= DIB_GetSource(BltInfo->PatternSurface, (DestX +
BltInfo->BrushOrigin.x + 6) % BltInfo->PatternSurface->sizlBitmap.cx, PatternY,
BltInfo->XlatePatternToDest) << 28;
+ Pattern = DIB_GetSourceIndex(BltInfo->PatternSurface, (DestX +
BltInfo->BrushOrigin.x + 1) % BltInfo->PatternSurface->sizlBitmap.cx, PatternY);
+ Pattern |= DIB_GetSourceIndex(BltInfo->PatternSurface, (DestX +
BltInfo->BrushOrigin.x + 0) % BltInfo->PatternSurface->sizlBitmap.cx, PatternY)
<< 4;
+ Pattern |= DIB_GetSourceIndex(BltInfo->PatternSurface, (DestX +
BltInfo->BrushOrigin.x + 3) % BltInfo->PatternSurface->sizlBitmap.cx, PatternY)
<< 8;
+ Pattern |= DIB_GetSourceIndex(BltInfo->PatternSurface, (DestX +
BltInfo->BrushOrigin.x + 2) % BltInfo->PatternSurface->sizlBitmap.cx, PatternY)
<< 12;
+ Pattern |= DIB_GetSourceIndex(BltInfo->PatternSurface, (DestX +
BltInfo->BrushOrigin.x + 5) % BltInfo->PatternSurface->sizlBitmap.cx, PatternY)
<< 16;
+ Pattern |= DIB_GetSourceIndex(BltInfo->PatternSurface, (DestX +
BltInfo->BrushOrigin.x + 4) % BltInfo->PatternSurface->sizlBitmap.cx, PatternY)
<< 20;
+ Pattern |= DIB_GetSourceIndex(BltInfo->PatternSurface, (DestX +
BltInfo->BrushOrigin.x + 7) % BltInfo->PatternSurface->sizlBitmap.cx, PatternY)
<< 24;
+ Pattern |= DIB_GetSourceIndex(BltInfo->PatternSurface, (DestX +
BltInfo->BrushOrigin.x + 6) % BltInfo->PatternSurface->sizlBitmap.cx, PatternY)
<< 28;
}
*DestBits = DIB_DoRop(BltInfo->Rop4, Dest, Source, Pattern);
}
@@ -338,7 +338,7 @@
}
if (BltInfo->PatternSurface)
{
- Pattern = DIB_GetSource(BltInfo->PatternSurface, (DestX +
BltInfo->BrushOrigin.x) % BltInfo->PatternSurface->sizlBitmap.cx, PatternY,
BltInfo->XlatePatternToDest);
+ Pattern = DIB_GetSourceIndex(BltInfo->PatternSurface, (DestX +
BltInfo->BrushOrigin.x) % BltInfo->PatternSurface->sizlBitmap.cx, PatternY);
}
DIB_4BPP_PutPixel(BltInfo->DestSurface, DestX, DestY,
DIB_DoRop(BltInfo->Rop4, Dest, Source, Pattern) & 0xF);
}
Modified: trunk/reactos/subsystems/win32/win32k/dib/stretchblt.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/win32/win32k/di…
==============================================================================
--- trunk/reactos/subsystems/win32/win32k/dib/stretchblt.c [iso-8859-1] (original)
+++ trunk/reactos/subsystems/win32/win32k/dib/stretchblt.c [iso-8859-1] Wed Aug 5
00:19:24 2009
@@ -18,7 +18,7 @@
RECTL *DestRect, RECTL *SourceRect,
POINTL *MaskOrigin, BRUSHOBJ *Brush,
POINTL *BrushOrigin, XLATEOBJ *ColorTranslation,
- XLATEOBJ *XlatePatternToDest, ROP4 ROP)
+ ROP4 ROP)
{
LONG sx = 0;
LONG sy = 0;
@@ -148,7 +148,7 @@
{
if (PatternSurface)
{
- Pattern = XLATEOBJ_iXlate(XlatePatternToDest,
fnPattern_GetPixel(PatternSurface, PatternX, PatternY));
+ Pattern = fnPattern_GetPixel(PatternSurface, PatternX, PatternY);
PatternX++;
PatternX %= PatternSurface->sizlBitmap.cx;
}
Modified: trunk/reactos/subsystems/win32/win32k/eng/bitblt.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/win32/win32k/en…
==============================================================================
--- trunk/reactos/subsystems/win32/win32k/eng/bitblt.c [iso-8859-1] (original)
+++ trunk/reactos/subsystems/win32/win32k/eng/bitblt.c [iso-8859-1] Wed Aug 5 00:19:24
2009
@@ -188,7 +188,6 @@
if (ROP3_TO_ROP4(SRCCOPY) == Rop4)
return
DibFunctionsForBitmapFormat[OutputObj->iBitmapFormat].DIB_BitBltSrcCopy(&BltInfo);
- BltInfo.XlatePatternToDest = NULL;
BltInfo.Brush = pbo;
BltInfo.BrushOrigin = *BrushOrigin;
BltInfo.Rop4 = Rop4;
Modified: trunk/reactos/subsystems/win32/win32k/eng/copybits.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/win32/win32k/en…
==============================================================================
--- trunk/reactos/subsystems/win32/win32k/eng/copybits.c [iso-8859-1] (original)
+++ trunk/reactos/subsystems/win32/win32k/eng/copybits.c [iso-8859-1] Wed Aug 5 00:19:24
2009
@@ -133,7 +133,6 @@
BltInfo.SourceSurface = psoSource;
BltInfo.PatternSurface = NULL;
BltInfo.XlateSourceToDest = ColorTranslation;
- BltInfo.XlatePatternToDest = NULL;
BltInfo.Rop4 = SRCCOPY;
switch(clippingType)
Modified: trunk/reactos/subsystems/win32/win32k/eng/stretchblt.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/win32/win32k/en…
==============================================================================
--- trunk/reactos/subsystems/win32/win32k/eng/stretchblt.c [iso-8859-1] (original)
+++ trunk/reactos/subsystems/win32/win32k/eng/stretchblt.c [iso-8859-1] Wed Aug 5
00:19:24 2009
@@ -73,7 +73,7 @@
bResult = DibFunctionsForBitmapFormat[psoDest->iBitmapFormat].DIB_StretchBlt(
psoDest, psoSource, Mask, PatternSurface,
OutputRect, InputRect, MaskOrigin, pbo, &RealBrushOrigin,
- ColorTranslation, NULL, Rop4);
+ ColorTranslation, Rop4);
/* Pattern brush */
if (psurfPattern)