mirror of
https://github.com/reactos/reactos.git
synced 2025-08-04 04:45:45 +00:00
[WIN32K]
- Get rid of old code, when surfaces didn't have palettes by default svn path=/branches/reactos-yarotows/; revision=48670
This commit is contained in:
parent
98006d55b6
commit
00b7f54d2e
4 changed files with 7 additions and 65 deletions
|
@ -328,7 +328,6 @@ NtGdiTransparentBlt(
|
||||||
PGDIOBJ apObj[2];
|
PGDIOBJ apObj[2];
|
||||||
RECTL rcDest, rcSrc;
|
RECTL rcDest, rcSrc;
|
||||||
SURFACE *BitmapDest, *BitmapSrc = NULL;
|
SURFACE *BitmapDest, *BitmapSrc = NULL;
|
||||||
PPALETTE PalSourceGDI;
|
|
||||||
ULONG TransparentColor = 0;
|
ULONG TransparentColor = 0;
|
||||||
BOOL Ret = FALSE;
|
BOOL Ret = FALSE;
|
||||||
EXLATEOBJ exlo;
|
EXLATEOBJ exlo;
|
||||||
|
@ -394,25 +393,10 @@ NtGdiTransparentBlt(
|
||||||
goto done;
|
goto done;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (BitmapSrc->ppal)
|
|
||||||
{
|
|
||||||
GDIOBJ_IncrementShareCount(&BitmapSrc->ppal->BaseObject);
|
|
||||||
PalSourceGDI = BitmapSrc->ppal ;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
PalSourceGDI = PALETTE_ShareLockPalette(pPrimarySurface->devinfo.hpalDefault) ;
|
|
||||||
|
|
||||||
if(!PalSourceGDI)
|
|
||||||
{
|
|
||||||
SetLastWin32Error(ERROR_INVALID_HANDLE);
|
|
||||||
goto done;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Translate Transparent (RGB) Color to the source palette */
|
/* Translate Transparent (RGB) Color to the source palette */
|
||||||
EXLATEOBJ_vInitialize(&exlo, &gpalRGB, PalSourceGDI, 0, 0, 0);
|
EXLATEOBJ_vInitialize(&exlo, &gpalRGB, BitmapSrc->ppal, 0, 0, 0);
|
||||||
TransparentColor = XLATEOBJ_iXlate(&exlo.xlo, (ULONG)TransColor);
|
TransparentColor = XLATEOBJ_iXlate(&exlo.xlo, (ULONG)TransColor);
|
||||||
EXLATEOBJ_vCleanup(&exlo);
|
EXLATEOBJ_vCleanup(&exlo);
|
||||||
PALETTE_ShareUnlockPalette(PalSourceGDI);
|
|
||||||
|
|
||||||
EXLATEOBJ_vInitXlateFromDCs(&exlo, DCSrc, DCDest);
|
EXLATEOBJ_vInitXlateFromDCs(&exlo, DCSrc, DCDest);
|
||||||
|
|
||||||
|
|
|
@ -430,7 +430,6 @@ NtGdiGetPixel(HDC hDC, INT XPos, INT YPos)
|
||||||
BOOL bInRect = FALSE;
|
BOOL bInRect = FALSE;
|
||||||
SURFACE *psurf;
|
SURFACE *psurf;
|
||||||
SURFOBJ *pso;
|
SURFOBJ *pso;
|
||||||
PPALETTE ppal;
|
|
||||||
EXLATEOBJ exlo;
|
EXLATEOBJ exlo;
|
||||||
HBITMAP hBmpTmp;
|
HBITMAP hBmpTmp;
|
||||||
|
|
||||||
|
@ -456,25 +455,8 @@ NtGdiGetPixel(HDC hDC, INT XPos, INT YPos)
|
||||||
psurf = dc->dclevel.pSurface;
|
psurf = dc->dclevel.pSurface;
|
||||||
if (psurf)
|
if (psurf)
|
||||||
{
|
{
|
||||||
pso = &psurf->SurfObj;
|
pso = &psurf->SurfObj;
|
||||||
if (psurf->ppal)
|
EXLATEOBJ_vInitialize(&exlo, psurf->ppal, &gpalRGB, 0, 0xffffff, 0);
|
||||||
{
|
|
||||||
ppal = psurf->ppal;
|
|
||||||
GDIOBJ_IncrementShareCount(&ppal->BaseObject);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
ppal = PALETTE_ShareLockPalette(dc->ppdev->devinfo.hpalDefault);
|
|
||||||
|
|
||||||
if (psurf->SurfObj.iBitmapFormat == BMF_1BPP && !psurf->hSecure)
|
|
||||||
{
|
|
||||||
/* FIXME: palette should be gpalMono already ! */
|
|
||||||
EXLATEOBJ_vInitialize(&exlo, &gpalMono, &gpalRGB, 0, 0xffffff, 0);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
EXLATEOBJ_vInitialize(&exlo, ppal, &gpalRGB, 0, 0xffffff, 0);
|
|
||||||
}
|
|
||||||
|
|
||||||
// check if this DC has a DIB behind it...
|
// check if this DC has a DIB behind it...
|
||||||
if (pso->pvScan0) // STYPE_BITMAP == pso->iType
|
if (pso->pvScan0) // STYPE_BITMAP == pso->iType
|
||||||
{
|
{
|
||||||
|
@ -484,7 +466,6 @@ NtGdiGetPixel(HDC hDC, INT XPos, INT YPos)
|
||||||
}
|
}
|
||||||
|
|
||||||
EXLATEOBJ_vCleanup(&exlo);
|
EXLATEOBJ_vCleanup(&exlo);
|
||||||
PALETTE_ShareUnlockPalette(ppal);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
DC_UnlockDc(dc);
|
DC_UnlockDc(dc);
|
||||||
|
|
|
@ -1061,7 +1061,6 @@ NtGdiExtFloodFill(
|
||||||
PDC dc;
|
PDC dc;
|
||||||
PDC_ATTR pdcattr;
|
PDC_ATTR pdcattr;
|
||||||
SURFACE *psurf = NULL;
|
SURFACE *psurf = NULL;
|
||||||
PPALETTE ppal;
|
|
||||||
EXLATEOBJ exlo;
|
EXLATEOBJ exlo;
|
||||||
BOOL Ret = FALSE;
|
BOOL Ret = FALSE;
|
||||||
RECTL DestRect;
|
RECTL DestRect;
|
||||||
|
@ -1106,16 +1105,7 @@ NtGdiExtFloodFill(
|
||||||
goto cleanup;
|
goto cleanup;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (psurf->ppal)
|
EXLATEOBJ_vInitialize(&exlo, &gpalRGB, psurf->ppal, 0, 0xffffff, 0);
|
||||||
{
|
|
||||||
ppal = psurf->ppal;
|
|
||||||
GDIOBJ_IncrementShareCount(&ppal->BaseObject);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
// Destination palette obtained from the hDC
|
|
||||||
ppal = PALETTE_ShareLockPalette(dc->ppdev->devinfo.hpalDefault);
|
|
||||||
|
|
||||||
EXLATEOBJ_vInitialize(&exlo, &gpalRGB, ppal, 0, 0xffffff, 0);
|
|
||||||
|
|
||||||
/* Only solid fills supported for now
|
/* Only solid fills supported for now
|
||||||
* How to support pattern brushes and non standard surfaces (not offering dib functions):
|
* How to support pattern brushes and non standard surfaces (not offering dib functions):
|
||||||
|
@ -1125,7 +1115,6 @@ NtGdiExtFloodFill(
|
||||||
Ret = DIB_XXBPP_FloodFillSolid(&psurf->SurfObj, &dc->eboFill.BrushObject, &DestRect, &Pt, ConvColor, FillType);
|
Ret = DIB_XXBPP_FloodFillSolid(&psurf->SurfObj, &dc->eboFill.BrushObject, &DestRect, &Pt, ConvColor, FillType);
|
||||||
|
|
||||||
EXLATEOBJ_vCleanup(&exlo);
|
EXLATEOBJ_vCleanup(&exlo);
|
||||||
PALETTE_ShareUnlockPalette(ppal);
|
|
||||||
|
|
||||||
cleanup:
|
cleanup:
|
||||||
DC_UnlockDc(dc);
|
DC_UnlockDc(dc);
|
||||||
|
|
|
@ -3173,7 +3173,6 @@ GreExtTextOutW(
|
||||||
BOOLEAN Render;
|
BOOLEAN Render;
|
||||||
POINT Start;
|
POINT Start;
|
||||||
BOOL DoBreak = FALSE;
|
BOOL DoBreak = FALSE;
|
||||||
PPALETTE ppalDst;
|
|
||||||
USHORT DxShift;
|
USHORT DxShift;
|
||||||
|
|
||||||
// TODO: Write test-cases to exactly match real Windows in different
|
// TODO: Write test-cases to exactly match real Windows in different
|
||||||
|
@ -3443,21 +3442,10 @@ GreExtTextOutW(
|
||||||
psurf = dc->dclevel.pSurface ;
|
psurf = dc->dclevel.pSurface ;
|
||||||
SurfObj = &psurf->SurfObj ;
|
SurfObj = &psurf->SurfObj ;
|
||||||
|
|
||||||
/* Create the xlateobj */
|
EXLATEOBJ_vInitialize(&exloRGB2Dst, &gpalRGB, psurf->ppal, 0, 0, 0);
|
||||||
if (psurf->ppal)
|
EXLATEOBJ_vInitialize(&exloDst2RGB, psurf->ppal, &gpalRGB, 0, 0, 0);
|
||||||
{
|
|
||||||
ppalDst = psurf->ppal;
|
|
||||||
GDIOBJ_IncrementShareCount(&ppalDst->BaseObject);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
// Destination palette obtained from the hDC
|
|
||||||
ppalDst = PALETTE_ShareLockPalette(dc->ppdev->devinfo.hpalDefault);
|
|
||||||
ASSERT(ppalDst);
|
|
||||||
EXLATEOBJ_vInitialize(&exloRGB2Dst, &gpalRGB, ppalDst, 0, 0, 0);
|
|
||||||
EXLATEOBJ_vInitialize(&exloDst2RGB, ppalDst, &gpalRGB, 0, 0, 0);
|
|
||||||
PALETTE_ShareUnlockPalette(ppalDst);
|
|
||||||
|
|
||||||
if ((fuOptions & ETO_OPAQUE) && (dc->pdcattr->ulDirty_ & DIRTY_BACKGROUND))
|
if ((fuOptions & ETO_OPAQUE) && (dc->pdcattr->ulDirty_ & DIRTY_BACKGROUND))
|
||||||
DC_vUpdateBackgroundBrush(dc) ;
|
DC_vUpdateBackgroundBrush(dc) ;
|
||||||
|
|
||||||
if(dc->pdcattr->ulDirty_ & DIRTY_TEXT)
|
if(dc->pdcattr->ulDirty_ & DIRTY_TEXT)
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue