mirror of
https://github.com/reactos/reactos.git
synced 2024-10-04 16:36:11 +00:00
- Commit the correct changes to HEAD.
svn path=/trunk/; revision=9062
This commit is contained in:
parent
12b4cb63bf
commit
97635093cd
|
@ -12,12 +12,12 @@ VOID DIB_1BPP_VLine(SURFOBJ* SurfObj, LONG x, LONG y1, LONG y2, ULONG c);
|
||||||
BOOLEAN DIB_1BPP_BitBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
BOOLEAN DIB_1BPP_BitBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
||||||
SURFGDI *DestGDI, SURFGDI *SourceGDI,
|
SURFGDI *DestGDI, SURFGDI *SourceGDI,
|
||||||
RECTL* DestRect, POINTL *SourcePoint,
|
RECTL* DestRect, POINTL *SourcePoint,
|
||||||
BRUSHOBJ* Brush, POINTL* BrushOrigin,
|
BRUSHOBJ* Brush, POINTL BrushOrigin,
|
||||||
XLATEOBJ *ColorTranslation, ULONG Rop4);
|
XLATEOBJ *ColorTranslation, ULONG Rop4);
|
||||||
BOOLEAN DIB_1BPP_StretchBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
BOOLEAN DIB_1BPP_StretchBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
||||||
SURFGDI *DestGDI, SURFGDI *SourceGDI,
|
SURFGDI *DestGDI, SURFGDI *SourceGDI,
|
||||||
RECTL* DestRect, RECTL *SourceRect,
|
RECTL* DestRect, RECTL *SourceRect,
|
||||||
POINTL* MaskOrigin, POINTL* BrushOrigin,
|
POINTL* MaskOrigin, POINTL BrushOrigin,
|
||||||
XLATEOBJ *ColorTranslation, ULONG Mode);
|
XLATEOBJ *ColorTranslation, ULONG Mode);
|
||||||
BOOLEAN DIB_1BPP_TransparentBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
BOOLEAN DIB_1BPP_TransparentBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
||||||
PSURFGDI DestGDI, PSURFGDI SourceGDI,
|
PSURFGDI DestGDI, PSURFGDI SourceGDI,
|
||||||
|
@ -31,12 +31,12 @@ VOID DIB_4BPP_VLine(SURFOBJ* SurfObj, LONG x, LONG y1, LONG y2, ULONG c);
|
||||||
BOOLEAN DIB_4BPP_BitBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
BOOLEAN DIB_4BPP_BitBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
||||||
SURFGDI *DestGDI, SURFGDI *SourceGDI,
|
SURFGDI *DestGDI, SURFGDI *SourceGDI,
|
||||||
RECTL* DestRect, POINTL *SourcePoint,
|
RECTL* DestRect, POINTL *SourcePoint,
|
||||||
BRUSHOBJ* Brush, POINTL* BrushOrigin,
|
BRUSHOBJ* Brush, POINTL BrushOrigin,
|
||||||
XLATEOBJ *ColorTranslation, ULONG Rop4);
|
XLATEOBJ *ColorTranslation, ULONG Rop4);
|
||||||
BOOLEAN DIB_4BPP_StretchBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
BOOLEAN DIB_4BPP_StretchBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
||||||
SURFGDI *DestGDI, SURFGDI *SourceGDI,
|
SURFGDI *DestGDI, SURFGDI *SourceGDI,
|
||||||
RECTL* DestRect, RECTL *SourceRect,
|
RECTL* DestRect, RECTL *SourceRect,
|
||||||
POINTL* MaskOrigin, POINTL* BrushOrigin,
|
POINTL* MaskOrigin, POINTL BrushOrigin,
|
||||||
XLATEOBJ *ColorTranslation, ULONG Mode);
|
XLATEOBJ *ColorTranslation, ULONG Mode);
|
||||||
BOOLEAN DIB_4BPP_TransparentBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
BOOLEAN DIB_4BPP_TransparentBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
||||||
PSURFGDI DestGDI, PSURFGDI SourceGDI,
|
PSURFGDI DestGDI, PSURFGDI SourceGDI,
|
||||||
|
@ -50,12 +50,12 @@ VOID DIB_8BPP_VLine(SURFOBJ* SurfObj, LONG x, LONG y1, LONG y2, ULONG c);
|
||||||
BOOLEAN DIB_8BPP_BitBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
BOOLEAN DIB_8BPP_BitBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
||||||
SURFGDI *DestGDI, SURFGDI *SourceGDI,
|
SURFGDI *DestGDI, SURFGDI *SourceGDI,
|
||||||
RECTL* DestRect, POINTL *SourcePoint,
|
RECTL* DestRect, POINTL *SourcePoint,
|
||||||
BRUSHOBJ* Brush, POINTL* BrushOrigin,
|
BRUSHOBJ* Brush, POINTL BrushOrigin,
|
||||||
XLATEOBJ *ColorTranslation, ULONG Rop4);
|
XLATEOBJ *ColorTranslation, ULONG Rop4);
|
||||||
BOOLEAN DIB_8BPP_StretchBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
BOOLEAN DIB_8BPP_StretchBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
||||||
SURFGDI *DestGDI, SURFGDI *SourceGDI,
|
SURFGDI *DestGDI, SURFGDI *SourceGDI,
|
||||||
RECTL* DestRect, RECTL *SourceRect,
|
RECTL* DestRect, RECTL *SourceRect,
|
||||||
POINTL* MaskOrigin, POINTL* BrushOrigin,
|
POINTL* MaskOrigin, POINTL BrushOrigin,
|
||||||
XLATEOBJ *ColorTranslation, ULONG Mode);
|
XLATEOBJ *ColorTranslation, ULONG Mode);
|
||||||
BOOLEAN DIB_8BPP_TransparentBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
BOOLEAN DIB_8BPP_TransparentBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
||||||
PSURFGDI DestGDI, PSURFGDI SourceGDI,
|
PSURFGDI DestGDI, PSURFGDI SourceGDI,
|
||||||
|
@ -69,12 +69,12 @@ VOID DIB_16BPP_VLine(SURFOBJ* SurfObj, LONG x, LONG y1, LONG y2, ULONG c);
|
||||||
BOOLEAN DIB_16BPP_BitBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
BOOLEAN DIB_16BPP_BitBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
||||||
SURFGDI *DestGDI, SURFGDI *SourceGDI,
|
SURFGDI *DestGDI, SURFGDI *SourceGDI,
|
||||||
RECTL* DestRect, POINTL *SourcePoint,
|
RECTL* DestRect, POINTL *SourcePoint,
|
||||||
BRUSHOBJ* Brush, POINTL* BrushOrigin,
|
BRUSHOBJ* Brush, POINTL BrushOrigin,
|
||||||
XLATEOBJ *ColorTranslation, ULONG Rop4);
|
XLATEOBJ *ColorTranslation, ULONG Rop4);
|
||||||
BOOLEAN DIB_16BPP_StretchBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
BOOLEAN DIB_16BPP_StretchBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
||||||
SURFGDI *DestGDI, SURFGDI *SourceGDI,
|
SURFGDI *DestGDI, SURFGDI *SourceGDI,
|
||||||
RECTL* DestRect, RECTL *SourceRect,
|
RECTL* DestRect, RECTL *SourceRect,
|
||||||
POINTL* MaskOrigin, POINTL* BrushOrigin,
|
POINTL* MaskOrigin, POINTL BrushOrigin,
|
||||||
XLATEOBJ *ColorTranslation, ULONG Mode);
|
XLATEOBJ *ColorTranslation, ULONG Mode);
|
||||||
BOOLEAN DIB_16BPP_TransparentBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
BOOLEAN DIB_16BPP_TransparentBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
||||||
PSURFGDI DestGDI, PSURFGDI SourceGDI,
|
PSURFGDI DestGDI, PSURFGDI SourceGDI,
|
||||||
|
@ -88,12 +88,12 @@ VOID DIB_24BPP_VLine(SURFOBJ* SurfObj, LONG x, LONG y1, LONG y2, ULONG c);
|
||||||
BOOLEAN DIB_24BPP_BitBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
BOOLEAN DIB_24BPP_BitBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
||||||
SURFGDI *DestGDI, SURFGDI *SourceGDI,
|
SURFGDI *DestGDI, SURFGDI *SourceGDI,
|
||||||
RECTL* DestRect, POINTL *SourcePoint,
|
RECTL* DestRect, POINTL *SourcePoint,
|
||||||
BRUSHOBJ* Brush, POINTL* BrushOrigin,
|
BRUSHOBJ* Brush, POINTL BrushOrigin,
|
||||||
XLATEOBJ *ColorTranslation, ULONG Rop4);
|
XLATEOBJ *ColorTranslation, ULONG Rop4);
|
||||||
BOOLEAN DIB_24BPP_StretchBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
BOOLEAN DIB_24BPP_StretchBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
||||||
SURFGDI *DestGDI, SURFGDI *SourceGDI,
|
SURFGDI *DestGDI, SURFGDI *SourceGDI,
|
||||||
RECTL* DestRect, RECTL *SourceRect,
|
RECTL* DestRect, RECTL *SourceRect,
|
||||||
POINTL* MaskOrigin, POINTL* BrushOrigin,
|
POINTL* MaskOrigin, POINTL BrushOrigin,
|
||||||
XLATEOBJ *ColorTranslation, ULONG Mode);
|
XLATEOBJ *ColorTranslation, ULONG Mode);
|
||||||
BOOLEAN DIB_24BPP_TransparentBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
BOOLEAN DIB_24BPP_TransparentBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
||||||
PSURFGDI DestGDI, PSURFGDI SourceGDI,
|
PSURFGDI DestGDI, PSURFGDI SourceGDI,
|
||||||
|
@ -107,12 +107,12 @@ VOID DIB_32BPP_VLine(SURFOBJ* SurfObj, LONG x, LONG y1, LONG y2, ULONG c);
|
||||||
BOOLEAN DIB_32BPP_BitBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
BOOLEAN DIB_32BPP_BitBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
||||||
SURFGDI *DestGDI, SURFGDI *SourceGDI,
|
SURFGDI *DestGDI, SURFGDI *SourceGDI,
|
||||||
RECTL* DestRect, POINTL *SourcePoint,
|
RECTL* DestRect, POINTL *SourcePoint,
|
||||||
BRUSHOBJ* Brush, POINTL* BrushOrigin,
|
BRUSHOBJ* Brush, POINTL BrushOrigin,
|
||||||
XLATEOBJ *ColorTranslation, ULONG Rop4);
|
XLATEOBJ *ColorTranslation, ULONG Rop4);
|
||||||
BOOLEAN DIB_32BPP_StretchBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
BOOLEAN DIB_32BPP_StretchBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
||||||
SURFGDI *DestGDI, SURFGDI *SourceGDI,
|
SURFGDI *DestGDI, SURFGDI *SourceGDI,
|
||||||
RECTL* DestRect, RECTL *SourceRect,
|
RECTL* DestRect, RECTL *SourceRect,
|
||||||
POINTL* MaskOrigin, POINTL* BrushOrigin,
|
POINTL* MaskOrigin, POINTL BrushOrigin,
|
||||||
XLATEOBJ *ColorTranslation, ULONG Mode);
|
XLATEOBJ *ColorTranslation, ULONG Mode);
|
||||||
BOOLEAN DIB_32BPP_TransparentBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
BOOLEAN DIB_32BPP_TransparentBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
||||||
PSURFGDI DestGDI, PSURFGDI SourceGDI,
|
PSURFGDI DestGDI, PSURFGDI SourceGDI,
|
||||||
|
|
|
@ -16,7 +16,7 @@
|
||||||
* along with this program; if not, write to the Free Software
|
* along with this program; if not, write to the Free Software
|
||||||
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||||
*/
|
*/
|
||||||
/* $Id: dib16bpp.c,v 1.28 2004/04/07 22:09:09 weiden Exp $ */
|
/* $Id: dib16bpp.c,v 1.29 2004/04/09 22:00:38 navaraf Exp $ */
|
||||||
#undef WIN32_LEAN_AND_MEAN
|
#undef WIN32_LEAN_AND_MEAN
|
||||||
#include <windows.h>
|
#include <windows.h>
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
|
@ -31,7 +31,7 @@
|
||||||
#include "dib.h"
|
#include "dib.h"
|
||||||
|
|
||||||
VOID
|
VOID
|
||||||
DIB_16BPP_PutPixel(PSURFOBJ SurfObj, LONG x, LONG y, ULONG c)
|
DIB_16BPP_PutPixel(SURFOBJ *SurfObj, LONG x, LONG y, ULONG c)
|
||||||
{
|
{
|
||||||
PBYTE byteaddr = SurfObj->pvScan0 + y * SurfObj->lDelta;
|
PBYTE byteaddr = SurfObj->pvScan0 + y * SurfObj->lDelta;
|
||||||
PWORD addr = (PWORD)byteaddr + x;
|
PWORD addr = (PWORD)byteaddr + x;
|
||||||
|
@ -40,7 +40,7 @@ DIB_16BPP_PutPixel(PSURFOBJ SurfObj, LONG x, LONG y, ULONG c)
|
||||||
}
|
}
|
||||||
|
|
||||||
ULONG
|
ULONG
|
||||||
DIB_16BPP_GetPixel(PSURFOBJ SurfObj, LONG x, LONG y)
|
DIB_16BPP_GetPixel(SURFOBJ *SurfObj, LONG x, LONG y)
|
||||||
{
|
{
|
||||||
PBYTE byteaddr = SurfObj->pvScan0 + y * SurfObj->lDelta;
|
PBYTE byteaddr = SurfObj->pvScan0 + y * SurfObj->lDelta;
|
||||||
PWORD addr = (PWORD)byteaddr + x;
|
PWORD addr = (PWORD)byteaddr + x;
|
||||||
|
@ -49,7 +49,7 @@ DIB_16BPP_GetPixel(PSURFOBJ SurfObj, LONG x, LONG y)
|
||||||
}
|
}
|
||||||
|
|
||||||
VOID
|
VOID
|
||||||
DIB_16BPP_HLine(PSURFOBJ SurfObj, LONG x1, LONG x2, LONG y, ULONG c)
|
DIB_16BPP_HLine(SURFOBJ *SurfObj, LONG x1, LONG x2, LONG y, ULONG c)
|
||||||
{
|
{
|
||||||
PBYTE byteaddr = SurfObj->pvScan0 + y * SurfObj->lDelta;
|
PBYTE byteaddr = SurfObj->pvScan0 + y * SurfObj->lDelta;
|
||||||
PWORD addr = (PWORD)byteaddr + x1;
|
PWORD addr = (PWORD)byteaddr + x1;
|
||||||
|
@ -63,7 +63,7 @@ DIB_16BPP_HLine(PSURFOBJ SurfObj, LONG x1, LONG x2, LONG y, ULONG c)
|
||||||
}
|
}
|
||||||
|
|
||||||
VOID
|
VOID
|
||||||
DIB_16BPP_VLine(PSURFOBJ SurfObj, LONG x, LONG y1, LONG y2, ULONG c)
|
DIB_16BPP_VLine(SURFOBJ *SurfObj, LONG x, LONG y1, LONG y2, ULONG c)
|
||||||
{
|
{
|
||||||
PBYTE byteaddr = SurfObj->pvScan0 + y1 * SurfObj->lDelta;
|
PBYTE byteaddr = SurfObj->pvScan0 + y1 * SurfObj->lDelta;
|
||||||
PWORD addr = (PWORD)byteaddr + x;
|
PWORD addr = (PWORD)byteaddr + x;
|
||||||
|
@ -278,7 +278,7 @@ BOOLEAN
|
||||||
DIB_16BPP_BitBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
DIB_16BPP_BitBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
||||||
SURFGDI *DestGDI, SURFGDI *SourceGDI,
|
SURFGDI *DestGDI, SURFGDI *SourceGDI,
|
||||||
PRECTL DestRect, POINTL *SourcePoint,
|
PRECTL DestRect, POINTL *SourcePoint,
|
||||||
PBRUSHOBJ Brush, PPOINTL BrushOrigin,
|
BRUSHOBJ *Brush, POINTL BrushOrigin,
|
||||||
XLATEOBJ *ColorTranslation, ULONG Rop4)
|
XLATEOBJ *ColorTranslation, ULONG Rop4)
|
||||||
{
|
{
|
||||||
ULONG X, Y;
|
ULONG X, Y;
|
||||||
|
@ -291,7 +291,7 @@ DIB_16BPP_BitBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
||||||
/* Pattern brushes */
|
/* Pattern brushes */
|
||||||
PGDIBRUSHOBJ GdiBrush;
|
PGDIBRUSHOBJ GdiBrush;
|
||||||
HBITMAP PatternSurface = NULL;
|
HBITMAP PatternSurface = NULL;
|
||||||
PSURFOBJ PatternObj;
|
SURFOBJ *PatternObj;
|
||||||
ULONG PatternWidth, PatternHeight;
|
ULONG PatternWidth, PatternHeight;
|
||||||
|
|
||||||
if (Rop4 == SRCCOPY)
|
if (Rop4 == SRCCOPY)
|
||||||
|
@ -324,7 +324,7 @@ DIB_16BPP_BitBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
||||||
PatternSurface = BitmapToSurf(PatternBitmap, NULL);
|
PatternSurface = BitmapToSurf(PatternBitmap, NULL);
|
||||||
BITMAPOBJ_UnlockBitmap(GdiBrush->hbmPattern);
|
BITMAPOBJ_UnlockBitmap(GdiBrush->hbmPattern);
|
||||||
|
|
||||||
PatternObj = (PSURFOBJ)AccessUserObject((ULONG)PatternSurface);
|
PatternObj = (SURFOBJ*)AccessUserObject((ULONG)PatternSurface);
|
||||||
PatternWidth = PatternObj->sizlBitmap.cx;
|
PatternWidth = PatternObj->sizlBitmap.cx;
|
||||||
PatternHeight = PatternObj->sizlBitmap.cy;
|
PatternHeight = PatternObj->sizlBitmap.cy;
|
||||||
|
|
||||||
|
@ -396,7 +396,7 @@ DIB_16BPP_BitBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
||||||
}
|
}
|
||||||
|
|
||||||
if (PatternSurface != NULL)
|
if (PatternSurface != NULL)
|
||||||
EngDeleteSurface(PatternSurface);
|
EngDeleteSurface((HSURF)PatternSurface);
|
||||||
|
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
@ -548,7 +548,7 @@ void ScaleRectAvg16(PIXEL *Target, PIXEL *Source, int SrcWidth, int SrcHeight,
|
||||||
BOOLEAN DIB_16BPP_StretchBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
BOOLEAN DIB_16BPP_StretchBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
||||||
SURFGDI *DestGDI, SURFGDI *SourceGDI,
|
SURFGDI *DestGDI, SURFGDI *SourceGDI,
|
||||||
RECTL* DestRect, RECTL *SourceRect,
|
RECTL* DestRect, RECTL *SourceRect,
|
||||||
POINTL* MaskOrigin, POINTL* BrushOrigin,
|
POINTL* MaskOrigin, POINTL BrushOrigin,
|
||||||
XLATEOBJ *ColorTranslation, ULONG Mode)
|
XLATEOBJ *ColorTranslation, ULONG Mode)
|
||||||
{
|
{
|
||||||
BYTE *SourceLine, *DestLine;
|
BYTE *SourceLine, *DestLine;
|
||||||
|
|
|
@ -16,7 +16,7 @@
|
||||||
* along with this program; if not, write to the Free Software
|
* along with this program; if not, write to the Free Software
|
||||||
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||||
*/
|
*/
|
||||||
/* $Id: dib1bpp.c,v 1.23 2004/04/08 15:45:17 navaraf Exp $ */
|
/* $Id: dib1bpp.c,v 1.24 2004/04/09 22:00:38 navaraf Exp $ */
|
||||||
|
|
||||||
#undef WIN32_LEAN_AND_MEAN
|
#undef WIN32_LEAN_AND_MEAN
|
||||||
#include <windows.h>
|
#include <windows.h>
|
||||||
|
@ -31,7 +31,7 @@
|
||||||
#include "dib.h"
|
#include "dib.h"
|
||||||
|
|
||||||
VOID
|
VOID
|
||||||
DIB_1BPP_PutPixel(PSURFOBJ SurfObj, LONG x, LONG y, ULONG c)
|
DIB_1BPP_PutPixel(SURFOBJ *SurfObj, LONG x, LONG y, ULONG c)
|
||||||
{
|
{
|
||||||
PBYTE addr = SurfObj->pvScan0 + y * SurfObj->lDelta + (x >> 3);
|
PBYTE addr = SurfObj->pvScan0 + y * SurfObj->lDelta + (x >> 3);
|
||||||
|
|
||||||
|
@ -42,7 +42,7 @@ DIB_1BPP_PutPixel(PSURFOBJ SurfObj, LONG x, LONG y, ULONG c)
|
||||||
}
|
}
|
||||||
|
|
||||||
ULONG
|
ULONG
|
||||||
DIB_1BPP_GetPixel(PSURFOBJ SurfObj, LONG x, LONG y)
|
DIB_1BPP_GetPixel(SURFOBJ *SurfObj, LONG x, LONG y)
|
||||||
{
|
{
|
||||||
PBYTE addr = SurfObj->pvScan0 + y * SurfObj->lDelta + (x >> 3);
|
PBYTE addr = SurfObj->pvScan0 + y * SurfObj->lDelta + (x >> 3);
|
||||||
|
|
||||||
|
@ -50,7 +50,7 @@ DIB_1BPP_GetPixel(PSURFOBJ SurfObj, LONG x, LONG y)
|
||||||
}
|
}
|
||||||
|
|
||||||
VOID
|
VOID
|
||||||
DIB_1BPP_HLine(PSURFOBJ SurfObj, LONG x1, LONG x2, LONG y, ULONG c)
|
DIB_1BPP_HLine(SURFOBJ *SurfObj, LONG x1, LONG x2, LONG y, ULONG c)
|
||||||
{
|
{
|
||||||
while(x1 < x2) {
|
while(x1 < x2) {
|
||||||
DIB_1BPP_PutPixel(SurfObj, x1, y, c);
|
DIB_1BPP_PutPixel(SurfObj, x1, y, c);
|
||||||
|
@ -59,7 +59,7 @@ DIB_1BPP_HLine(PSURFOBJ SurfObj, LONG x1, LONG x2, LONG y, ULONG c)
|
||||||
}
|
}
|
||||||
|
|
||||||
VOID
|
VOID
|
||||||
DIB_1BPP_VLine(PSURFOBJ SurfObj, LONG x, LONG y1, LONG y2, ULONG c)
|
DIB_1BPP_VLine(SURFOBJ *SurfObj, LONG x, LONG y1, LONG y2, ULONG c)
|
||||||
{
|
{
|
||||||
while(y1 < y2) {
|
while(y1 < y2) {
|
||||||
DIB_1BPP_PutPixel(SurfObj, x, y1, c);
|
DIB_1BPP_PutPixel(SurfObj, x, y1, c);
|
||||||
|
@ -350,7 +350,7 @@ DIB_1BPP_BitBlt(
|
||||||
SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
||||||
SURFGDI *DestGDI, SURFGDI *SourceGDI,
|
SURFGDI *DestGDI, SURFGDI *SourceGDI,
|
||||||
PRECTL DestRect, POINTL *SourcePoint,
|
PRECTL DestRect, POINTL *SourcePoint,
|
||||||
PBRUSHOBJ Brush, PPOINTL BrushOrigin,
|
BRUSHOBJ *Brush, POINTL BrushOrigin,
|
||||||
XLATEOBJ *ColorTranslation, ULONG Rop4)
|
XLATEOBJ *ColorTranslation, ULONG Rop4)
|
||||||
{
|
{
|
||||||
ULONG X, Y, SourceX, SourceY, k;
|
ULONG X, Y, SourceX, SourceY, k;
|
||||||
|
@ -363,7 +363,7 @@ DIB_1BPP_BitBlt(
|
||||||
/* Pattern brushes */
|
/* Pattern brushes */
|
||||||
PGDIBRUSHOBJ GdiBrush;
|
PGDIBRUSHOBJ GdiBrush;
|
||||||
HBITMAP PatternSurface = NULL;
|
HBITMAP PatternSurface = NULL;
|
||||||
PSURFOBJ PatternObj;
|
SURFOBJ *PatternObj;
|
||||||
ULONG PatternWidth, PatternHeight;
|
ULONG PatternWidth, PatternHeight;
|
||||||
|
|
||||||
if (Rop4 == SRCCOPY)
|
if (Rop4 == SRCCOPY)
|
||||||
|
@ -396,7 +396,7 @@ DIB_1BPP_BitBlt(
|
||||||
PatternSurface = BitmapToSurf(PatternBitmap, NULL);
|
PatternSurface = BitmapToSurf(PatternBitmap, NULL);
|
||||||
BITMAPOBJ_UnlockBitmap(GdiBrush->hbmPattern);
|
BITMAPOBJ_UnlockBitmap(GdiBrush->hbmPattern);
|
||||||
|
|
||||||
PatternObj = (PSURFOBJ)AccessUserObject((ULONG)PatternSurface);
|
PatternObj = (SURFOBJ*)AccessUserObject((ULONG)PatternSurface);
|
||||||
PatternWidth = PatternObj->sizlBitmap.cx;
|
PatternWidth = PatternObj->sizlBitmap.cx;
|
||||||
PatternHeight = PatternObj->sizlBitmap.cy;
|
PatternHeight = PatternObj->sizlBitmap.cy;
|
||||||
|
|
||||||
|
@ -515,7 +515,7 @@ DIB_1BPP_BitBlt(
|
||||||
}
|
}
|
||||||
|
|
||||||
if (PatternSurface != NULL)
|
if (PatternSurface != NULL)
|
||||||
EngDeleteSurface(PatternSurface);
|
EngDeleteSurface((HSURF)PatternSurface);
|
||||||
|
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
@ -525,7 +525,7 @@ DIB_1BPP_StretchBlt (
|
||||||
SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
||||||
SURFGDI *DestGDI, SURFGDI *SourceGDI,
|
SURFGDI *DestGDI, SURFGDI *SourceGDI,
|
||||||
RECTL* DestRect, RECTL *SourceRect,
|
RECTL* DestRect, RECTL *SourceRect,
|
||||||
POINTL* MaskOrigin, POINTL* BrushOrigin,
|
POINTL* MaskOrigin, POINTL BrushOrigin,
|
||||||
XLATEOBJ *ColorTranslation, ULONG Mode)
|
XLATEOBJ *ColorTranslation, ULONG Mode)
|
||||||
{
|
{
|
||||||
DbgPrint("DIB_1BPP_StretchBlt: Source BPP: %u\n", SourceGDI->BitsPerPixel);
|
DbgPrint("DIB_1BPP_StretchBlt: Source BPP: %u\n", SourceGDI->BitsPerPixel);
|
||||||
|
|
|
@ -16,7 +16,7 @@
|
||||||
* along with this program; if not, write to the Free Software
|
* along with this program; if not, write to the Free Software
|
||||||
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||||
*/
|
*/
|
||||||
/* $Id: dib24bpp.c,v 1.23 2004/04/07 15:37:50 weiden Exp $ */
|
/* $Id: dib24bpp.c,v 1.24 2004/04/09 22:00:38 navaraf Exp $ */
|
||||||
#undef WIN32_LEAN_AND_MEAN
|
#undef WIN32_LEAN_AND_MEAN
|
||||||
#include <windows.h>
|
#include <windows.h>
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
|
@ -30,7 +30,7 @@
|
||||||
#include "dib.h"
|
#include "dib.h"
|
||||||
|
|
||||||
VOID
|
VOID
|
||||||
DIB_24BPP_PutPixel(PSURFOBJ SurfObj, LONG x, LONG y, ULONG c)
|
DIB_24BPP_PutPixel(SURFOBJ *SurfObj, LONG x, LONG y, ULONG c)
|
||||||
{
|
{
|
||||||
PBYTE addr = SurfObj->pvScan0 + (y * SurfObj->lDelta) + (x << 1) + x;
|
PBYTE addr = SurfObj->pvScan0 + (y * SurfObj->lDelta) + (x << 1) + x;
|
||||||
*(PUSHORT)(addr) = c & 0xFFFF;
|
*(PUSHORT)(addr) = c & 0xFFFF;
|
||||||
|
@ -38,14 +38,14 @@ DIB_24BPP_PutPixel(PSURFOBJ SurfObj, LONG x, LONG y, ULONG c)
|
||||||
}
|
}
|
||||||
|
|
||||||
ULONG
|
ULONG
|
||||||
DIB_24BPP_GetPixel(PSURFOBJ SurfObj, LONG x, LONG y)
|
DIB_24BPP_GetPixel(SURFOBJ *SurfObj, LONG x, LONG y)
|
||||||
{
|
{
|
||||||
PBYTE addr = SurfObj->pvScan0 + y * SurfObj->lDelta + (x << 1) + x;
|
PBYTE addr = SurfObj->pvScan0 + y * SurfObj->lDelta + (x << 1) + x;
|
||||||
return *(PUSHORT)(addr) + (*(addr + 2) << 16);
|
return *(PUSHORT)(addr) + (*(addr + 2) << 16);
|
||||||
}
|
}
|
||||||
|
|
||||||
VOID
|
VOID
|
||||||
DIB_24BPP_HLine(PSURFOBJ SurfObj, LONG x1, LONG x2, LONG y, ULONG c)
|
DIB_24BPP_HLine(SURFOBJ *SurfObj, LONG x1, LONG x2, LONG y, ULONG c)
|
||||||
{
|
{
|
||||||
PBYTE addr = SurfObj->pvScan0 + y * SurfObj->lDelta + (x1 << 1) + x1;
|
PBYTE addr = SurfObj->pvScan0 + y * SurfObj->lDelta + (x1 << 1) + x1;
|
||||||
LONG cx = x1;
|
LONG cx = x1;
|
||||||
|
@ -61,7 +61,7 @@ DIB_24BPP_HLine(PSURFOBJ SurfObj, LONG x1, LONG x2, LONG y, ULONG c)
|
||||||
}
|
}
|
||||||
|
|
||||||
VOID
|
VOID
|
||||||
DIB_24BPP_VLine(PSURFOBJ SurfObj, LONG x, LONG y1, LONG y2, ULONG c)
|
DIB_24BPP_VLine(SURFOBJ *SurfObj, LONG x, LONG y1, LONG y2, ULONG c)
|
||||||
{
|
{
|
||||||
PBYTE addr = SurfObj->pvScan0 + y1 * SurfObj->lDelta + (x << 1) + x;
|
PBYTE addr = SurfObj->pvScan0 + y1 * SurfObj->lDelta + (x << 1) + x;
|
||||||
LONG lDelta = SurfObj->lDelta;
|
LONG lDelta = SurfObj->lDelta;
|
||||||
|
@ -250,7 +250,7 @@ BOOLEAN
|
||||||
DIB_24BPP_BitBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
DIB_24BPP_BitBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
||||||
SURFGDI *DestGDI, SURFGDI *SourceGDI,
|
SURFGDI *DestGDI, SURFGDI *SourceGDI,
|
||||||
PRECTL DestRect, POINTL *SourcePoint,
|
PRECTL DestRect, POINTL *SourcePoint,
|
||||||
PBRUSHOBJ Brush, PPOINTL BrushOrigin,
|
BRUSHOBJ *Brush, POINTL BrushOrigin,
|
||||||
XLATEOBJ *ColorTranslation, ULONG Rop4)
|
XLATEOBJ *ColorTranslation, ULONG Rop4)
|
||||||
{
|
{
|
||||||
ULONG X, Y;
|
ULONG X, Y;
|
||||||
|
@ -262,7 +262,7 @@ DIB_24BPP_BitBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
||||||
/* Pattern brushes */
|
/* Pattern brushes */
|
||||||
PGDIBRUSHOBJ GdiBrush;
|
PGDIBRUSHOBJ GdiBrush;
|
||||||
HBITMAP PatternSurface = NULL;
|
HBITMAP PatternSurface = NULL;
|
||||||
PSURFOBJ PatternObj;
|
SURFOBJ *PatternObj;
|
||||||
ULONG PatternWidth, PatternHeight;
|
ULONG PatternWidth, PatternHeight;
|
||||||
|
|
||||||
if (Rop4 == SRCCOPY)
|
if (Rop4 == SRCCOPY)
|
||||||
|
@ -295,7 +295,7 @@ DIB_24BPP_BitBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
||||||
PatternSurface = BitmapToSurf(PatternBitmap, NULL);
|
PatternSurface = BitmapToSurf(PatternBitmap, NULL);
|
||||||
BITMAPOBJ_UnlockBitmap(GdiBrush->hbmPattern);
|
BITMAPOBJ_UnlockBitmap(GdiBrush->hbmPattern);
|
||||||
|
|
||||||
PatternObj = (PSURFOBJ)AccessUserObject((ULONG)PatternSurface);
|
PatternObj = (SURFOBJ*)AccessUserObject((ULONG)PatternSurface);
|
||||||
PatternWidth = PatternObj->sizlBitmap.cx;
|
PatternWidth = PatternObj->sizlBitmap.cx;
|
||||||
PatternHeight = PatternObj->sizlBitmap.cy;
|
PatternHeight = PatternObj->sizlBitmap.cy;
|
||||||
|
|
||||||
|
@ -346,7 +346,7 @@ DIB_24BPP_BitBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
||||||
}
|
}
|
||||||
|
|
||||||
if (PatternSurface != NULL)
|
if (PatternSurface != NULL)
|
||||||
EngDeleteSurface(PatternSurface);
|
EngDeleteSurface((HSURF)PatternSurface);
|
||||||
|
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
@ -354,7 +354,7 @@ DIB_24BPP_BitBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
||||||
BOOLEAN DIB_24BPP_StretchBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
BOOLEAN DIB_24BPP_StretchBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
||||||
SURFGDI *DestGDI, SURFGDI *SourceGDI,
|
SURFGDI *DestGDI, SURFGDI *SourceGDI,
|
||||||
RECTL* DestRect, RECTL *SourceRect,
|
RECTL* DestRect, RECTL *SourceRect,
|
||||||
POINTL* MaskOrigin, POINTL* BrushOrigin,
|
POINTL* MaskOrigin, POINTL BrushOrigin,
|
||||||
XLATEOBJ *ColorTranslation, ULONG Mode)
|
XLATEOBJ *ColorTranslation, ULONG Mode)
|
||||||
{
|
{
|
||||||
DbgPrint("DIB_24BPP_StretchBlt: Source BPP: %u\n", SourceGDI->BitsPerPixel);
|
DbgPrint("DIB_24BPP_StretchBlt: Source BPP: %u\n", SourceGDI->BitsPerPixel);
|
||||||
|
|
|
@ -16,7 +16,7 @@
|
||||||
* along with this program; if not, write to the Free Software
|
* along with this program; if not, write to the Free Software
|
||||||
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||||
*/
|
*/
|
||||||
/* $Id: dib32bpp.c,v 1.23 2004/04/07 15:37:50 weiden Exp $ */
|
/* $Id: dib32bpp.c,v 1.24 2004/04/09 22:00:38 navaraf Exp $ */
|
||||||
#undef WIN32_LEAN_AND_MEAN
|
#undef WIN32_LEAN_AND_MEAN
|
||||||
#include <windows.h>
|
#include <windows.h>
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
|
@ -30,7 +30,7 @@
|
||||||
#include "dib.h"
|
#include "dib.h"
|
||||||
|
|
||||||
VOID
|
VOID
|
||||||
DIB_32BPP_PutPixel(PSURFOBJ SurfObj, LONG x, LONG y, ULONG c)
|
DIB_32BPP_PutPixel(SURFOBJ *SurfObj, LONG x, LONG y, ULONG c)
|
||||||
{
|
{
|
||||||
PBYTE byteaddr = SurfObj->pvScan0 + y * SurfObj->lDelta;
|
PBYTE byteaddr = SurfObj->pvScan0 + y * SurfObj->lDelta;
|
||||||
PDWORD addr = (PDWORD)byteaddr + x;
|
PDWORD addr = (PDWORD)byteaddr + x;
|
||||||
|
@ -39,7 +39,7 @@ DIB_32BPP_PutPixel(PSURFOBJ SurfObj, LONG x, LONG y, ULONG c)
|
||||||
}
|
}
|
||||||
|
|
||||||
ULONG
|
ULONG
|
||||||
DIB_32BPP_GetPixel(PSURFOBJ SurfObj, LONG x, LONG y)
|
DIB_32BPP_GetPixel(SURFOBJ *SurfObj, LONG x, LONG y)
|
||||||
{
|
{
|
||||||
PBYTE byteaddr = SurfObj->pvScan0 + y * SurfObj->lDelta;
|
PBYTE byteaddr = SurfObj->pvScan0 + y * SurfObj->lDelta;
|
||||||
PDWORD addr = (PDWORD)byteaddr + x;
|
PDWORD addr = (PDWORD)byteaddr + x;
|
||||||
|
@ -48,7 +48,7 @@ DIB_32BPP_GetPixel(PSURFOBJ SurfObj, LONG x, LONG y)
|
||||||
}
|
}
|
||||||
|
|
||||||
VOID
|
VOID
|
||||||
DIB_32BPP_HLine(PSURFOBJ SurfObj, LONG x1, LONG x2, LONG y, ULONG c)
|
DIB_32BPP_HLine(SURFOBJ *SurfObj, LONG x1, LONG x2, LONG y, ULONG c)
|
||||||
{
|
{
|
||||||
PBYTE byteaddr = SurfObj->pvScan0 + y * SurfObj->lDelta;
|
PBYTE byteaddr = SurfObj->pvScan0 + y * SurfObj->lDelta;
|
||||||
PDWORD addr = (PDWORD)byteaddr + x1;
|
PDWORD addr = (PDWORD)byteaddr + x1;
|
||||||
|
@ -62,7 +62,7 @@ DIB_32BPP_HLine(PSURFOBJ SurfObj, LONG x1, LONG x2, LONG y, ULONG c)
|
||||||
}
|
}
|
||||||
|
|
||||||
VOID
|
VOID
|
||||||
DIB_32BPP_VLine(PSURFOBJ SurfObj, LONG x, LONG y1, LONG y2, ULONG c)
|
DIB_32BPP_VLine(SURFOBJ *SurfObj, LONG x, LONG y1, LONG y2, ULONG c)
|
||||||
{
|
{
|
||||||
PBYTE byteaddr = SurfObj->pvScan0 + y1 * SurfObj->lDelta;
|
PBYTE byteaddr = SurfObj->pvScan0 + y1 * SurfObj->lDelta;
|
||||||
PDWORD addr = (PDWORD)byteaddr + x;
|
PDWORD addr = (PDWORD)byteaddr + x;
|
||||||
|
@ -299,7 +299,7 @@ BOOLEAN
|
||||||
DIB_32BPP_BitBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
DIB_32BPP_BitBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
||||||
SURFGDI *DestGDI, SURFGDI *SourceGDI,
|
SURFGDI *DestGDI, SURFGDI *SourceGDI,
|
||||||
PRECTL DestRect, POINTL *SourcePoint,
|
PRECTL DestRect, POINTL *SourcePoint,
|
||||||
PBRUSHOBJ Brush, PPOINTL BrushOrigin,
|
BRUSHOBJ *Brush, POINTL BrushOrigin,
|
||||||
XLATEOBJ *ColorTranslation, ULONG Rop4)
|
XLATEOBJ *ColorTranslation, ULONG Rop4)
|
||||||
{
|
{
|
||||||
ULONG X, Y;
|
ULONG X, Y;
|
||||||
|
@ -311,7 +311,7 @@ DIB_32BPP_BitBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
||||||
/* Pattern brushes */
|
/* Pattern brushes */
|
||||||
PGDIBRUSHOBJ GdiBrush;
|
PGDIBRUSHOBJ GdiBrush;
|
||||||
HBITMAP PatternSurface = NULL;
|
HBITMAP PatternSurface = NULL;
|
||||||
PSURFOBJ PatternObj;
|
SURFOBJ *PatternObj;
|
||||||
ULONG PatternWidth, PatternHeight;
|
ULONG PatternWidth, PatternHeight;
|
||||||
|
|
||||||
if (Rop4 == SRCCOPY)
|
if (Rop4 == SRCCOPY)
|
||||||
|
@ -344,7 +344,7 @@ DIB_32BPP_BitBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
||||||
PatternSurface = BitmapToSurf(PatternBitmap, NULL);
|
PatternSurface = BitmapToSurf(PatternBitmap, NULL);
|
||||||
BITMAPOBJ_UnlockBitmap(GdiBrush->hbmPattern);
|
BITMAPOBJ_UnlockBitmap(GdiBrush->hbmPattern);
|
||||||
|
|
||||||
PatternObj = (PSURFOBJ)AccessUserObject((ULONG)PatternSurface);
|
PatternObj = (SURFOBJ*)AccessUserObject((ULONG)PatternSurface);
|
||||||
PatternWidth = PatternObj->sizlBitmap.cx;
|
PatternWidth = PatternObj->sizlBitmap.cx;
|
||||||
PatternHeight = PatternObj->sizlBitmap.cy;
|
PatternHeight = PatternObj->sizlBitmap.cy;
|
||||||
|
|
||||||
|
@ -395,7 +395,7 @@ DIB_32BPP_BitBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
||||||
}
|
}
|
||||||
|
|
||||||
if (PatternSurface != NULL)
|
if (PatternSurface != NULL)
|
||||||
EngDeleteSurface(PatternSurface);
|
EngDeleteSurface((HSURF)PatternSurface);
|
||||||
|
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
@ -517,7 +517,7 @@ void ScaleRectAvg32(PIXEL *Target, PIXEL *Source, int SrcWidth, int SrcHeight,
|
||||||
BOOLEAN DIB_32BPP_StretchBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
BOOLEAN DIB_32BPP_StretchBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
||||||
SURFGDI *DestGDI, SURFGDI *SourceGDI,
|
SURFGDI *DestGDI, SURFGDI *SourceGDI,
|
||||||
RECTL* DestRect, RECTL *SourceRect,
|
RECTL* DestRect, RECTL *SourceRect,
|
||||||
POINTL* MaskOrigin, POINTL* BrushOrigin,
|
POINTL* MaskOrigin, POINTL BrushOrigin,
|
||||||
XLATEOBJ *ColorTranslation, ULONG Mode)
|
XLATEOBJ *ColorTranslation, ULONG Mode)
|
||||||
{
|
{
|
||||||
BYTE *SourceLine, *DestLine;
|
BYTE *SourceLine, *DestLine;
|
||||||
|
|
|
@ -16,7 +16,7 @@
|
||||||
* along with this program; if not, write to the Free Software
|
* along with this program; if not, write to the Free Software
|
||||||
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||||
*/
|
*/
|
||||||
/* $Id: dib4bpp.c,v 1.32 2004/04/08 09:44:21 navaraf Exp $ */
|
/* $Id: dib4bpp.c,v 1.33 2004/04/09 22:00:38 navaraf Exp $ */
|
||||||
#undef WIN32_LEAN_AND_MEAN
|
#undef WIN32_LEAN_AND_MEAN
|
||||||
#include <windows.h>
|
#include <windows.h>
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
|
@ -30,21 +30,21 @@
|
||||||
#include "dib.h"
|
#include "dib.h"
|
||||||
|
|
||||||
VOID
|
VOID
|
||||||
DIB_4BPP_PutPixel(PSURFOBJ SurfObj, LONG x, LONG y, ULONG c)
|
DIB_4BPP_PutPixel(SURFOBJ *SurfObj, LONG x, LONG y, ULONG c)
|
||||||
{
|
{
|
||||||
PBYTE addr = SurfObj->pvScan0 + (x>>1) + y * SurfObj->lDelta;
|
PBYTE addr = SurfObj->pvScan0 + (x>>1) + y * SurfObj->lDelta;
|
||||||
*addr = (*addr & notmask[x&1]) | (c << ((1-(x&1))<<2));
|
*addr = (*addr & notmask[x&1]) | (c << ((1-(x&1))<<2));
|
||||||
}
|
}
|
||||||
|
|
||||||
ULONG
|
ULONG
|
||||||
DIB_4BPP_GetPixel(PSURFOBJ SurfObj, LONG x, LONG y)
|
DIB_4BPP_GetPixel(SURFOBJ *SurfObj, LONG x, LONG y)
|
||||||
{
|
{
|
||||||
PBYTE addr = SurfObj->pvScan0 + (x>>1) + y * SurfObj->lDelta;
|
PBYTE addr = SurfObj->pvScan0 + (x>>1) + y * SurfObj->lDelta;
|
||||||
return (*addr >> ((1-(x&1))<<2)) & 0x0f;
|
return (*addr >> ((1-(x&1))<<2)) & 0x0f;
|
||||||
}
|
}
|
||||||
|
|
||||||
VOID
|
VOID
|
||||||
DIB_4BPP_HLine(PSURFOBJ SurfObj, LONG x1, LONG x2, LONG y, ULONG c)
|
DIB_4BPP_HLine(SURFOBJ *SurfObj, LONG x1, LONG x2, LONG y, ULONG c)
|
||||||
{
|
{
|
||||||
PBYTE addr = SurfObj->pvScan0 + (x1>>1) + y * SurfObj->lDelta;
|
PBYTE addr = SurfObj->pvScan0 + (x1>>1) + y * SurfObj->lDelta;
|
||||||
LONG cx = x1;
|
LONG cx = x1;
|
||||||
|
@ -58,7 +58,7 @@ DIB_4BPP_HLine(PSURFOBJ SurfObj, LONG x1, LONG x2, LONG y, ULONG c)
|
||||||
}
|
}
|
||||||
|
|
||||||
VOID
|
VOID
|
||||||
DIB_4BPP_VLine(PSURFOBJ SurfObj, LONG x, LONG y1, LONG y2, ULONG c)
|
DIB_4BPP_VLine(SURFOBJ *SurfObj, LONG x, LONG y1, LONG y2, ULONG c)
|
||||||
{
|
{
|
||||||
PBYTE addr = SurfObj->pvScan0;
|
PBYTE addr = SurfObj->pvScan0;
|
||||||
int lDelta = SurfObj->lDelta;
|
int lDelta = SurfObj->lDelta;
|
||||||
|
@ -235,7 +235,7 @@ BOOLEAN
|
||||||
DIB_4BPP_BitBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
DIB_4BPP_BitBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
||||||
SURFGDI *DestGDI, SURFGDI *SourceGDI,
|
SURFGDI *DestGDI, SURFGDI *SourceGDI,
|
||||||
PRECTL DestRect, POINTL *SourcePoint,
|
PRECTL DestRect, POINTL *SourcePoint,
|
||||||
PBRUSHOBJ Brush, PPOINTL BrushOrigin,
|
BRUSHOBJ *Brush, POINTL BrushOrigin,
|
||||||
XLATEOBJ *ColorTranslation, ULONG Rop4)
|
XLATEOBJ *ColorTranslation, ULONG Rop4)
|
||||||
{
|
{
|
||||||
LONG i, j, sx, sy;
|
LONG i, j, sx, sy;
|
||||||
|
@ -247,9 +247,8 @@ DIB_4BPP_BitBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
||||||
/* Pattern brushes */
|
/* Pattern brushes */
|
||||||
PGDIBRUSHOBJ GdiBrush;
|
PGDIBRUSHOBJ GdiBrush;
|
||||||
HBITMAP PatternSurface = NULL;
|
HBITMAP PatternSurface = NULL;
|
||||||
PSURFOBJ PatternObj;
|
SURFOBJ *PatternObj;
|
||||||
ULONG PatternWidth, PatternHeight;
|
ULONG PatternWidth, PatternHeight;
|
||||||
POINTL PatternOrigin;
|
|
||||||
static const ULONG ExpandSolidColor[16] =
|
static const ULONG ExpandSolidColor[16] =
|
||||||
{
|
{
|
||||||
0x00000000 /* 0 */,
|
0x00000000 /* 0 */,
|
||||||
|
@ -300,19 +299,10 @@ DIB_4BPP_BitBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
||||||
PatternSurface = BitmapToSurf(PatternBitmap, NULL);
|
PatternSurface = BitmapToSurf(PatternBitmap, NULL);
|
||||||
BITMAPOBJ_UnlockBitmap(GdiBrush->hbmPattern);
|
BITMAPOBJ_UnlockBitmap(GdiBrush->hbmPattern);
|
||||||
|
|
||||||
PatternObj = (PSURFOBJ)AccessUserObject((ULONG)PatternSurface);
|
PatternObj = (SURFOBJ*)AccessUserObject((ULONG)PatternSurface);
|
||||||
PatternWidth = PatternObj->sizlBitmap.cx;
|
PatternWidth = PatternObj->sizlBitmap.cx;
|
||||||
PatternHeight = PatternObj->sizlBitmap.cy;
|
PatternHeight = PatternObj->sizlBitmap.cy;
|
||||||
|
|
||||||
if (BrushOrigin != NULL)
|
|
||||||
{
|
|
||||||
PatternOrigin = *BrushOrigin;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
PatternOrigin.x = PatternOrigin.y = 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
UsesPattern = TRUE;
|
UsesPattern = TRUE;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
@ -332,7 +322,7 @@ DIB_4BPP_BitBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
||||||
i = DestRect->left;
|
i = DestRect->left;
|
||||||
|
|
||||||
if (UsesPattern)
|
if (UsesPattern)
|
||||||
PatternY = (j + PatternOrigin.y) % PatternHeight;
|
PatternY = (j + BrushOrigin.y) % PatternHeight;
|
||||||
|
|
||||||
if (i & 0x1)
|
if (i & 0x1)
|
||||||
{
|
{
|
||||||
|
@ -345,7 +335,7 @@ DIB_4BPP_BitBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
||||||
|
|
||||||
if (UsesPattern)
|
if (UsesPattern)
|
||||||
{
|
{
|
||||||
Pattern = DIB_1BPP_GetPixel(PatternObj, (i + PatternOrigin.x) % PatternWidth, PatternY) ? GdiBrush->crFore : GdiBrush->crBack;
|
Pattern = DIB_1BPP_GetPixel(PatternObj, (i + BrushOrigin.x) % PatternWidth, PatternY) ? GdiBrush->crFore : GdiBrush->crBack;
|
||||||
}
|
}
|
||||||
|
|
||||||
DIB_4BPP_PutPixel(DestSurf, i, j, DIB_DoRop(Rop4, Dest, Source, Pattern) & 0xF);
|
DIB_4BPP_PutPixel(DestSurf, i, j, DIB_DoRop(Rop4, Dest, Source, Pattern) & 0xF);
|
||||||
|
@ -372,14 +362,14 @@ DIB_4BPP_BitBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
||||||
}
|
}
|
||||||
if (UsesPattern)
|
if (UsesPattern)
|
||||||
{
|
{
|
||||||
Pattern = DIB_1BPP_GetPixel(PatternObj, (i + PatternOrigin.x + 1) % PatternWidth, PatternY) ? GdiBrush->crFore : GdiBrush->crBack;
|
Pattern = DIB_1BPP_GetPixel(PatternObj, (i + BrushOrigin.x + 1) % PatternWidth, PatternY) ? GdiBrush->crFore : GdiBrush->crBack;
|
||||||
Pattern |= (DIB_1BPP_GetPixel(PatternObj, (i + PatternOrigin.x + 0) % PatternWidth, PatternY) ? GdiBrush->crFore : GdiBrush->crBack) << 4;
|
Pattern |= (DIB_1BPP_GetPixel(PatternObj, (i + BrushOrigin.x + 0) % PatternWidth, PatternY) ? GdiBrush->crFore : GdiBrush->crBack) << 4;
|
||||||
Pattern |= (DIB_1BPP_GetPixel(PatternObj, (i + PatternOrigin.x + 3) % PatternWidth, PatternY) ? GdiBrush->crFore : GdiBrush->crBack) << 8;
|
Pattern |= (DIB_1BPP_GetPixel(PatternObj, (i + BrushOrigin.x + 3) % PatternWidth, PatternY) ? GdiBrush->crFore : GdiBrush->crBack) << 8;
|
||||||
Pattern |= (DIB_1BPP_GetPixel(PatternObj, (i + PatternOrigin.x + 2) % PatternWidth, PatternY) ? GdiBrush->crFore : GdiBrush->crBack) << 12;
|
Pattern |= (DIB_1BPP_GetPixel(PatternObj, (i + BrushOrigin.x + 2) % PatternWidth, PatternY) ? GdiBrush->crFore : GdiBrush->crBack) << 12;
|
||||||
Pattern |= (DIB_1BPP_GetPixel(PatternObj, (i + PatternOrigin.x + 5) % PatternWidth, PatternY) ? GdiBrush->crFore : GdiBrush->crBack) << 16;
|
Pattern |= (DIB_1BPP_GetPixel(PatternObj, (i + BrushOrigin.x + 5) % PatternWidth, PatternY) ? GdiBrush->crFore : GdiBrush->crBack) << 16;
|
||||||
Pattern |= (DIB_1BPP_GetPixel(PatternObj, (i + PatternOrigin.x + 4) % PatternWidth, PatternY) ? GdiBrush->crFore : GdiBrush->crBack) << 20;
|
Pattern |= (DIB_1BPP_GetPixel(PatternObj, (i + BrushOrigin.x + 4) % PatternWidth, PatternY) ? GdiBrush->crFore : GdiBrush->crBack) << 20;
|
||||||
Pattern |= (DIB_1BPP_GetPixel(PatternObj, (i + PatternOrigin.x + 7) % PatternWidth, PatternY) ? GdiBrush->crFore : GdiBrush->crBack) << 24;
|
Pattern |= (DIB_1BPP_GetPixel(PatternObj, (i + BrushOrigin.x + 7) % PatternWidth, PatternY) ? GdiBrush->crFore : GdiBrush->crBack) << 24;
|
||||||
Pattern |= (DIB_1BPP_GetPixel(PatternObj, (i + PatternOrigin.x + 6) % PatternWidth, PatternY) ? GdiBrush->crFore : GdiBrush->crBack) << 28;
|
Pattern |= (DIB_1BPP_GetPixel(PatternObj, (i + BrushOrigin.x + 6) % PatternWidth, PatternY) ? GdiBrush->crFore : GdiBrush->crBack) << 28;
|
||||||
}
|
}
|
||||||
*DestBits = DIB_DoRop(Rop4, Dest, Source, Pattern);
|
*DestBits = DIB_DoRop(Rop4, Dest, Source, Pattern);
|
||||||
}
|
}
|
||||||
|
@ -394,14 +384,14 @@ DIB_4BPP_BitBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
||||||
}
|
}
|
||||||
if (UsesPattern)
|
if (UsesPattern)
|
||||||
{
|
{
|
||||||
Pattern = DIB_1BPP_GetPixel(PatternObj, (i + PatternOrigin.x) % PatternWidth, PatternY) ? GdiBrush->crFore : GdiBrush->crBack;
|
Pattern = DIB_1BPP_GetPixel(PatternObj, (i + BrushOrigin.x) % PatternWidth, PatternY) ? GdiBrush->crFore : GdiBrush->crBack;
|
||||||
}
|
}
|
||||||
DIB_4BPP_PutPixel(DestSurf, i, j, DIB_DoRop(Rop4, Dest, Source, Pattern) & 0xF);
|
DIB_4BPP_PutPixel(DestSurf, i, j, DIB_DoRop(Rop4, Dest, Source, Pattern) & 0xF);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (PatternSurface != NULL)
|
if (PatternSurface != NULL)
|
||||||
EngDeleteSurface(PatternSurface);
|
EngDeleteSurface((HSURF)PatternSurface);
|
||||||
|
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
@ -409,7 +399,7 @@ DIB_4BPP_BitBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
||||||
BOOLEAN DIB_4BPP_StretchBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
BOOLEAN DIB_4BPP_StretchBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
||||||
SURFGDI *DestGDI, SURFGDI *SourceGDI,
|
SURFGDI *DestGDI, SURFGDI *SourceGDI,
|
||||||
RECTL* DestRect, RECTL *SourceRect,
|
RECTL* DestRect, RECTL *SourceRect,
|
||||||
POINTL* MaskOrigin, POINTL* BrushOrigin,
|
POINTL* MaskOrigin, POINTL BrushOrigin,
|
||||||
XLATEOBJ *ColorTranslation, ULONG Mode)
|
XLATEOBJ *ColorTranslation, ULONG Mode)
|
||||||
{
|
{
|
||||||
DbgPrint("DIB_4BPP_StretchBlt: Source BPP: %u\n", SourceGDI->BitsPerPixel);
|
DbgPrint("DIB_4BPP_StretchBlt: Source BPP: %u\n", SourceGDI->BitsPerPixel);
|
||||||
|
|
|
@ -16,7 +16,7 @@
|
||||||
* along with this program; if not, write to the Free Software
|
* along with this program; if not, write to the Free Software
|
||||||
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||||
*/
|
*/
|
||||||
/* $Id: dib8bpp.c,v 1.21 2004/04/07 15:37:50 weiden Exp $ */
|
/* $Id: dib8bpp.c,v 1.22 2004/04/09 22:00:38 navaraf Exp $ */
|
||||||
#undef WIN32_LEAN_AND_MEAN
|
#undef WIN32_LEAN_AND_MEAN
|
||||||
#include <windows.h>
|
#include <windows.h>
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
|
@ -30,7 +30,7 @@
|
||||||
#include "dib.h"
|
#include "dib.h"
|
||||||
|
|
||||||
VOID
|
VOID
|
||||||
DIB_8BPP_PutPixel(PSURFOBJ SurfObj, LONG x, LONG y, ULONG c)
|
DIB_8BPP_PutPixel(SURFOBJ *SurfObj, LONG x, LONG y, ULONG c)
|
||||||
{
|
{
|
||||||
PBYTE byteaddr = SurfObj->pvScan0 + y * SurfObj->lDelta + x;
|
PBYTE byteaddr = SurfObj->pvScan0 + y * SurfObj->lDelta + x;
|
||||||
|
|
||||||
|
@ -38,7 +38,7 @@ DIB_8BPP_PutPixel(PSURFOBJ SurfObj, LONG x, LONG y, ULONG c)
|
||||||
}
|
}
|
||||||
|
|
||||||
ULONG
|
ULONG
|
||||||
DIB_8BPP_GetPixel(PSURFOBJ SurfObj, LONG x, LONG y)
|
DIB_8BPP_GetPixel(SURFOBJ *SurfObj, LONG x, LONG y)
|
||||||
{
|
{
|
||||||
PBYTE byteaddr = SurfObj->pvScan0 + y * SurfObj->lDelta + x;
|
PBYTE byteaddr = SurfObj->pvScan0 + y * SurfObj->lDelta + x;
|
||||||
|
|
||||||
|
@ -46,7 +46,7 @@ DIB_8BPP_GetPixel(PSURFOBJ SurfObj, LONG x, LONG y)
|
||||||
}
|
}
|
||||||
|
|
||||||
VOID
|
VOID
|
||||||
DIB_8BPP_HLine(PSURFOBJ SurfObj, LONG x1, LONG x2, LONG y, ULONG c)
|
DIB_8BPP_HLine(SURFOBJ *SurfObj, LONG x1, LONG x2, LONG y, ULONG c)
|
||||||
{
|
{
|
||||||
PBYTE byteaddr = SurfObj->pvScan0 + y * SurfObj->lDelta;
|
PBYTE byteaddr = SurfObj->pvScan0 + y * SurfObj->lDelta;
|
||||||
PBYTE addr = byteaddr + x1;
|
PBYTE addr = byteaddr + x1;
|
||||||
|
@ -60,7 +60,7 @@ DIB_8BPP_HLine(PSURFOBJ SurfObj, LONG x1, LONG x2, LONG y, ULONG c)
|
||||||
}
|
}
|
||||||
|
|
||||||
VOID
|
VOID
|
||||||
DIB_8BPP_VLine(PSURFOBJ SurfObj, LONG x, LONG y1, LONG y2, ULONG c)
|
DIB_8BPP_VLine(SURFOBJ *SurfObj, LONG x, LONG y1, LONG y2, ULONG c)
|
||||||
{
|
{
|
||||||
PBYTE byteaddr = SurfObj->pvScan0 + y1 * SurfObj->lDelta;
|
PBYTE byteaddr = SurfObj->pvScan0 + y1 * SurfObj->lDelta;
|
||||||
PBYTE addr = byteaddr + x;
|
PBYTE addr = byteaddr + x;
|
||||||
|
@ -273,7 +273,7 @@ BOOLEAN
|
||||||
DIB_8BPP_BitBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
DIB_8BPP_BitBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
||||||
SURFGDI *DestGDI, SURFGDI *SourceGDI,
|
SURFGDI *DestGDI, SURFGDI *SourceGDI,
|
||||||
PRECTL DestRect, POINTL *SourcePoint,
|
PRECTL DestRect, POINTL *SourcePoint,
|
||||||
PBRUSHOBJ Brush, PPOINTL BrushOrigin,
|
BRUSHOBJ *Brush, POINTL BrushOrigin,
|
||||||
XLATEOBJ *ColorTranslation, ULONG Rop4)
|
XLATEOBJ *ColorTranslation, ULONG Rop4)
|
||||||
{
|
{
|
||||||
LONG i, j, k, sx, sy;
|
LONG i, j, k, sx, sy;
|
||||||
|
@ -285,7 +285,7 @@ DIB_8BPP_BitBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
||||||
/* Pattern brushes */
|
/* Pattern brushes */
|
||||||
PGDIBRUSHOBJ GdiBrush;
|
PGDIBRUSHOBJ GdiBrush;
|
||||||
HBITMAP PatternSurface = NULL;
|
HBITMAP PatternSurface = NULL;
|
||||||
PSURFOBJ PatternObj;
|
SURFOBJ *PatternObj;
|
||||||
ULONG PatternWidth, PatternHeight;
|
ULONG PatternWidth, PatternHeight;
|
||||||
|
|
||||||
if (Rop4 == SRCCOPY)
|
if (Rop4 == SRCCOPY)
|
||||||
|
@ -318,7 +318,7 @@ DIB_8BPP_BitBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
||||||
PatternSurface = BitmapToSurf(PatternBitmap, NULL);
|
PatternSurface = BitmapToSurf(PatternBitmap, NULL);
|
||||||
BITMAPOBJ_UnlockBitmap(GdiBrush->hbmPattern);
|
BITMAPOBJ_UnlockBitmap(GdiBrush->hbmPattern);
|
||||||
|
|
||||||
PatternObj = (PSURFOBJ)AccessUserObject((ULONG)PatternSurface);
|
PatternObj = (SURFOBJ*)AccessUserObject((ULONG)PatternSurface);
|
||||||
PatternWidth = PatternObj->sizlBitmap.cx;
|
PatternWidth = PatternObj->sizlBitmap.cx;
|
||||||
PatternHeight = PatternObj->sizlBitmap.cy;
|
PatternHeight = PatternObj->sizlBitmap.cy;
|
||||||
|
|
||||||
|
@ -390,7 +390,7 @@ DIB_8BPP_BitBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
||||||
}
|
}
|
||||||
|
|
||||||
if (PatternSurface != NULL)
|
if (PatternSurface != NULL)
|
||||||
EngDeleteSurface(PatternSurface);
|
EngDeleteSurface((HSURF)PatternSurface);
|
||||||
|
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
@ -510,7 +510,7 @@ void ScaleRectAvg8(PIXEL *Target, PIXEL *Source, int SrcWidth, int SrcHeight,
|
||||||
BOOLEAN DIB_8BPP_StretchBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
BOOLEAN DIB_8BPP_StretchBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
|
||||||
SURFGDI *DestGDI, SURFGDI *SourceGDI,
|
SURFGDI *DestGDI, SURFGDI *SourceGDI,
|
||||||
RECTL* DestRect, RECTL *SourceRect,
|
RECTL* DestRect, RECTL *SourceRect,
|
||||||
POINTL* MaskOrigin, POINTL* BrushOrigin,
|
POINTL* MaskOrigin, POINTL BrushOrigin,
|
||||||
XLATEOBJ *ColorTranslation, ULONG Mode)
|
XLATEOBJ *ColorTranslation, ULONG Mode)
|
||||||
{
|
{
|
||||||
BYTE *SourceLine, *DestLine;
|
BYTE *SourceLine, *DestLine;
|
||||||
|
|
Loading…
Reference in a new issue