Fix a bugin strechblt. it can now zoom in or out in any bpp still this need todo /* FIXME : MaskOrigin, BrushOrigin, ClipRegion, Mode ? */ /* This is a reference implementation, it hasn't been optimized for speed */ Modified: trunk/reactos/subsys/win32k/dib/dib16bpp.c Modified: trunk/reactos/subsys/win32k/dib/dib1bpp.c Modified: trunk/reactos/subsys/win32k/dib/dib24bpp.c Modified: trunk/reactos/subsys/win32k/dib/dib32bpp.c Modified: trunk/reactos/subsys/win32k/dib/dib4bpp.c Modified: trunk/reactos/subsys/win32k/dib/dib8bpp.c _____
Modified: trunk/reactos/subsys/win32k/dib/dib16bpp.c --- trunk/reactos/subsys/win32k/dib/dib16bpp.c 2005-05-31 15:01:29 UTC (rev 15700) +++ trunk/reactos/subsys/win32k/dib/dib16bpp.c 2005-05-31 15:19:10 UTC (rev 15701) @@ -655,7 +655,7 @@
for (DesX=0; DesX<DestRect->right; DesX++) { - if (DesSizeY>SrcSizeY) + if (DesSizeX>SrcSizeX) sx = (int) ((ULONG) SrcSizeX * (ULONG) DesX) / ((ULONG) DesSizeX); else sx = (int) ((ULONG) DesSizeX * (ULONG) DesX) / ((ULONG) SrcSizeX); @@ -689,7 +689,7 @@
for (DesX=0; DesX<DestRect->right; DesX++) { - if (DesSizeY>SrcSizeY) + if (DesSizeX>SrcSizeX) sx = (int) ((ULONG) SrcSizeX * (ULONG) DesX) / ((ULONG) DesSizeX); else sx = (int) ((ULONG) DesSizeX * (ULONG) DesX) / ((ULONG) SrcSizeX); @@ -717,7 +717,7 @@
for (DesX=0; DesX<DestRect->right; DesX++) { - if (DesSizeY>SrcSizeY) + if (DesSizeX>SrcSizeX) sx = (int) ((ULONG) SrcSizeX * (ULONG) DesX) / ((ULONG) DesSizeX); else sx = (int) ((ULONG) DesSizeX * (ULONG) DesX) / ((ULONG) SrcSizeX); @@ -745,7 +745,7 @@
for (DesX=0; DesX<DestRect->right; DesX++) { - if (DesSizeY>SrcSizeY) + if (DesSizeX>SrcSizeX) sx = (int) ((ULONG) SrcSizeX * (ULONG) DesX) / ((ULONG) DesSizeX); else sx = (int) ((ULONG) DesSizeX * (ULONG) DesX) / ((ULONG) SrcSizeX); @@ -773,7 +773,7 @@
for (DesX=0; DesX<DestRect->right; DesX++) { - if (DesSizeY>SrcSizeY) + if (DesSizeX>SrcSizeX) sx = (int) ((ULONG) SrcSizeX * (ULONG) DesX) / ((ULONG) DesSizeX); else sx = (int) ((ULONG) DesSizeX * (ULONG) DesX) / ((ULONG) SrcSizeX); _____
Modified: trunk/reactos/subsys/win32k/dib/dib1bpp.c --- trunk/reactos/subsys/win32k/dib/dib1bpp.c 2005-05-31 15:01:29 UTC (rev 15700) +++ trunk/reactos/subsys/win32k/dib/dib1bpp.c 2005-05-31 15:19:10 UTC (rev 15701) @@ -520,7 +520,7 @@
for (DesX=0; DesX<DestRect->right; DesX++) { - if (DesSizeY>SrcSizeY) + if (DesSizeX>SrcSizeX) sx = (int) ((ULONG) SrcSizeX * (ULONG) DesX) / ((ULONG) DesSizeX); else sx = (int) ((ULONG) DesSizeX * (ULONG) DesX) / ((ULONG) SrcSizeX); @@ -550,7 +550,7 @@
for (DesX=0; DesX<DestRect->right; DesX++) { - if (DesSizeY>SrcSizeY) + if (DesSizeX>SrcSizeX) sx = (int) ((ULONG) SrcSizeX * (ULONG) DesX) / ((ULONG) DesSizeX); else sx = (int) ((ULONG) DesSizeX * (ULONG) DesX) / ((ULONG) SrcSizeX); @@ -578,7 +578,7 @@
for (DesX=0; DesX<DestRect->right; DesX++) { - if (DesSizeY>SrcSizeY) + if (DesSizeX>SrcSizeX) sx = (int) ((ULONG) SrcSizeX * (ULONG) DesX) / ((ULONG) DesSizeX); else sx = (int) ((ULONG) DesSizeX * (ULONG) DesX) / ((ULONG) SrcSizeX); @@ -606,7 +606,7 @@
for (DesX=0; DesX<DestRect->right; DesX++) { - if (DesSizeY>SrcSizeY) + if (DesSizeX>SrcSizeX) sx = (int) ((ULONG) SrcSizeX * (ULONG) DesX) / ((ULONG) DesSizeX); else sx = (int) ((ULONG) DesSizeX * (ULONG) DesX) / ((ULONG) SrcSizeX); @@ -634,7 +634,7 @@
for (DesX=0; DesX<DestRect->right; DesX++) { - if (DesSizeY>SrcSizeY) + if (DesSizeX>SrcSizeX) sx = (int) ((ULONG) SrcSizeX * (ULONG) DesX) / ((ULONG) DesSizeX); else sx = (int) ((ULONG) DesSizeX * (ULONG) DesX) / ((ULONG) SrcSizeX); @@ -661,7 +661,7 @@
for (DesX=0; DesX<DestRect->right; DesX++) { - if (DesSizeY>SrcSizeY) + if (DesSizeX>SrcSizeX) sx = (int) ((ULONG) SrcSizeX * (ULONG) DesX) / ((ULONG) DesSizeX); else sx = (int) ((ULONG) DesSizeX * (ULONG) DesX) / ((ULONG) SrcSizeX); _____
Modified: trunk/reactos/subsys/win32k/dib/dib24bpp.c --- trunk/reactos/subsys/win32k/dib/dib24bpp.c 2005-05-31 15:01:29 UTC (rev 15700) +++ trunk/reactos/subsys/win32k/dib/dib24bpp.c 2005-05-31 15:19:10 UTC (rev 15701) @@ -342,7 +342,7 @@
for (DesX=0; DesX<DestRect->right; DesX++) { - if (DesSizeY>SrcSizeY) + if (DesSizeX>SrcSizeX) sx = (int) ((ULONG) SrcSizeX * (ULONG) DesX) / ((ULONG) DesSizeX); else sx = (int) ((ULONG) DesSizeX * (ULONG) DesX) / ((ULONG) SrcSizeX); @@ -376,7 +376,7 @@
for (DesX=0; DesX<DestRect->right; DesX++) { - if (DesSizeY>SrcSizeY) + if (DesSizeX>SrcSizeX) sx = (int) ((ULONG) SrcSizeX * (ULONG) DesX) / ((ULONG) DesSizeX); else sx = (int) ((ULONG) DesSizeX * (ULONG) DesX) / ((ULONG) SrcSizeX); @@ -404,7 +404,7 @@
for (DesX=0; DesX<DestRect->right; DesX++) { - if (DesSizeY>SrcSizeY) + if (DesSizeX>SrcSizeX) sx = (int) ((ULONG) SrcSizeX * (ULONG) DesX) / ((ULONG) DesSizeX); else sx = (int) ((ULONG) DesSizeX * (ULONG) DesX) / ((ULONG) SrcSizeX); @@ -432,7 +432,7 @@
for (DesX=0; DesX<DestRect->right; DesX++) { - if (DesSizeY>SrcSizeY) + if (DesSizeX>SrcSizeX) sx = (int) ((ULONG) SrcSizeX * (ULONG) DesX) / ((ULONG) DesSizeX); else sx = (int) ((ULONG) DesSizeX * (ULONG) DesX) / ((ULONG) SrcSizeX); @@ -460,7 +460,7 @@
for (DesX=0; DesX<DestRect->right; DesX++) { - if (DesSizeY>SrcSizeY) + if (DesSizeX>SrcSizeX) sx = (int) ((ULONG) SrcSizeX * (ULONG) DesX) / ((ULONG) DesSizeX); else sx = (int) ((ULONG) DesSizeX * (ULONG) DesX) / ((ULONG) SrcSizeX); @@ -488,7 +488,7 @@
for (DesX=0; DesX<DestRect->right; DesX++) { - if (DesSizeY>SrcSizeY) + if (DesSizeX>SrcSizeX) sx = (int) ((ULONG) SrcSizeX * (ULONG) DesX) / ((ULONG) DesSizeX); else sx = (int) ((ULONG) DesSizeX * (ULONG) DesX) / ((ULONG) SrcSizeX); _____
Modified: trunk/reactos/subsys/win32k/dib/dib32bpp.c --- trunk/reactos/subsys/win32k/dib/dib32bpp.c 2005-05-31 15:01:29 UTC (rev 15700) +++ trunk/reactos/subsys/win32k/dib/dib32bpp.c 2005-05-31 15:19:10 UTC (rev 15701) @@ -588,7 +588,7 @@
for (DesX=0; DesX<DestRect->right; DesX++) { - if (DesSizeY>SrcSizeY) + if (DesSizeX>SrcSizeX) sx = (int) ((ULONG) SrcSizeX * (ULONG) DesX) / ((ULONG) DesSizeX); else sx = (int) ((ULONG) DesSizeX * (ULONG) DesX) / ((ULONG) SrcSizeX); @@ -622,7 +622,7 @@
for (DesX=0; DesX<DestRect->right; DesX++) { - if (DesSizeY>SrcSizeY) + if (DesSizeX>SrcSizeX) sx = (int) ((ULONG) SrcSizeX * (ULONG) DesX) / ((ULONG) DesSizeX); else sx = (int) ((ULONG) DesSizeX * (ULONG) DesX) / ((ULONG) SrcSizeX); @@ -650,7 +650,7 @@
for (DesX=0; DesX<DestRect->right; DesX++) { - if (DesSizeY>SrcSizeY) + if (DesSizeX>SrcSizeX) sx = (int) ((ULONG) SrcSizeX * (ULONG) DesX) / ((ULONG) DesSizeX); else sx = (int) ((ULONG) DesSizeX * (ULONG) DesX) / ((ULONG) SrcSizeX); @@ -678,7 +678,7 @@
for (DesX=0; DesX<DestRect->right; DesX++) { - if (DesSizeY>SrcSizeY) + if (DesSizeX>SrcSizeX) sx = (int) ((ULONG) SrcSizeX * (ULONG) DesX) / ((ULONG) DesSizeX); else sx = (int) ((ULONG) DesSizeX * (ULONG) DesX) / ((ULONG) SrcSizeX); @@ -706,7 +706,7 @@
for (DesX=0; DesX<DestRect->right; DesX++) { - if (DesSizeY>SrcSizeY) + if (DesSizeX>SrcSizeX) sx = (int) ((ULONG) SrcSizeX * (ULONG) DesX) / ((ULONG) DesSizeX); else sx = (int) ((ULONG) DesSizeX * (ULONG) DesX) / ((ULONG) SrcSizeX); _____
Modified: trunk/reactos/subsys/win32k/dib/dib4bpp.c --- trunk/reactos/subsys/win32k/dib/dib4bpp.c 2005-05-31 15:01:29 UTC (rev 15700) +++ trunk/reactos/subsys/win32k/dib/dib4bpp.c 2005-05-31 15:19:10 UTC (rev 15701) @@ -396,7 +396,7 @@
for (DesX=0; DesX<DestRect->right; DesX++) { - if (DesSizeY>SrcSizeY) + if (DesSizeX>SrcSizeX) sx = (int) ((ULONG) SrcSizeX * (ULONG) DesX) / ((ULONG) DesSizeX); else sx = (int) ((ULONG) DesSizeX * (ULONG) DesX) / ((ULONG) SrcSizeX); @@ -430,7 +430,7 @@
for (DesX=0; DesX<DestRect->right; DesX++) { - if (DesSizeY>SrcSizeY) + if (DesSizeX>SrcSizeX) sx = (int) ((ULONG) SrcSizeX * (ULONG) DesX) / ((ULONG) DesSizeX); else sx = (int) ((ULONG) DesSizeX * (ULONG) DesX) / ((ULONG) SrcSizeX); @@ -458,7 +458,7 @@
for (DesX=0; DesX<DestRect->right; DesX++) { - if (DesSizeY>SrcSizeY) + if (DesSizeX>SrcSizeX) sx = (int) ((ULONG) SrcSizeX * (ULONG) DesX) / ((ULONG) DesSizeX); else sx = (int) ((ULONG) DesSizeX * (ULONG) DesX) / ((ULONG) SrcSizeX); @@ -486,7 +486,7 @@
for (DesX=0; DesX<DestRect->right; DesX++) { - if (DesSizeY>SrcSizeY) + if (DesSizeX>SrcSizeX) sx = (int) ((ULONG) SrcSizeX * (ULONG) DesX) / ((ULONG) DesSizeX); else sx = (int) ((ULONG) DesSizeX * (ULONG) DesX) / ((ULONG) SrcSizeX); @@ -514,7 +514,7 @@
for (DesX=0; DesX<DestRect->right; DesX++) { - if (DesSizeY>SrcSizeY) + if (DesSizeX>SrcSizeX) sx = (int) ((ULONG) SrcSizeX * (ULONG) DesX) / ((ULONG) DesSizeX); else sx = (int) ((ULONG) DesSizeX * (ULONG) DesX) / ((ULONG) SrcSizeX); @@ -542,7 +542,7 @@
for (DesX=0; DesX<DestRect->right; DesX++) { - if (DesSizeY>SrcSizeY) + if (DesSizeX>SrcSizeX) sx = (int) ((ULONG) SrcSizeX * (ULONG) DesX) / ((ULONG) DesSizeX); else sx = (int) ((ULONG) DesSizeX * (ULONG) DesX) / ((ULONG) SrcSizeX); _____
Modified: trunk/reactos/subsys/win32k/dib/dib8bpp.c --- trunk/reactos/subsys/win32k/dib/dib8bpp.c 2005-05-31 15:01:29 UTC (rev 15700) +++ trunk/reactos/subsys/win32k/dib/dib8bpp.c 2005-05-31 15:19:10 UTC (rev 15701) @@ -572,7 +572,7 @@
for (DesX=0; DesX<DestRect->right; DesX++) { - if (DesSizeY>SrcSizeY) + if (DesSizeX>SrcSizeX) sx = (int) ((ULONG) SrcSizeX * (ULONG) DesX) / ((ULONG) DesSizeX); else sx = (int) ((ULONG) DesSizeX * (ULONG) DesX) / ((ULONG) SrcSizeX); @@ -606,7 +606,7 @@
for (DesX=0; DesX<DestRect->right; DesX++) { - if (DesSizeY>SrcSizeY) + if (DesSizeX>SrcSizeX) sx = (int) ((ULONG) SrcSizeX * (ULONG) DesX) / ((ULONG) DesSizeX); else sx = (int) ((ULONG) DesSizeX * (ULONG) DesX) / ((ULONG) SrcSizeX); @@ -634,7 +634,7 @@
for (DesX=0; DesX<DestRect->right; DesX++) { - if (DesSizeY>SrcSizeY) + if (DesSizeX>SrcSizeX) sx = (int) ((ULONG) SrcSizeX * (ULONG) DesX) / ((ULONG) DesSizeX); else sx = (int) ((ULONG) DesSizeX * (ULONG) DesX) / ((ULONG) SrcSizeX); @@ -662,7 +662,7 @@
for (DesX=0; DesX<DestRect->right; DesX++) { - if (DesSizeY>SrcSizeY) + if (DesSizeX>SrcSizeX) sx = (int) ((ULONG) SrcSizeX * (ULONG) DesX) / ((ULONG) DesSizeX); else sx = (int) ((ULONG) DesSizeX * (ULONG) DesX) / ((ULONG) SrcSizeX); @@ -690,7 +690,7 @@
for (DesX=0; DesX<DestRect->right; DesX++) { - if (DesSizeY>SrcSizeY) + if (DesSizeX>SrcSizeX) sx = (int) ((ULONG) SrcSizeX * (ULONG) DesX) / ((ULONG) DesSizeX); else sx = (int) ((ULONG) DesSizeX * (ULONG) DesX) / ((ULONG) SrcSizeX);