ddraw: Add a test for IDirectDrawSurface_SetColorKey.
This commit is contained in:
parent
42d372eb4a
commit
8485eb02dc
|
@ -167,6 +167,7 @@ static void SrcColorKey32BlitTest(void)
|
||||||
LPDIRECTDRAWSURFACE lpDst;
|
LPDIRECTDRAWSURFACE lpDst;
|
||||||
DDSURFACEDESC ddsd;
|
DDSURFACEDESC ddsd;
|
||||||
DDSURFACEDESC ddsd2;
|
DDSURFACEDESC ddsd2;
|
||||||
|
DDCOLORKEY DDColorKey;
|
||||||
LPDWORD lpData;
|
LPDWORD lpData;
|
||||||
HRESULT rc;
|
HRESULT rc;
|
||||||
|
|
||||||
|
@ -223,6 +224,27 @@ static void SrcColorKey32BlitTest(void)
|
||||||
rc = IDirectDrawSurface_Unlock(lpDst, NULL);
|
rc = IDirectDrawSurface_Unlock(lpDst, NULL);
|
||||||
ok(rc==DD_OK,"Unlock returned: %x\n",rc);
|
ok(rc==DD_OK,"Unlock returned: %x\n",rc);
|
||||||
|
|
||||||
|
/* Also test SetColorKey */
|
||||||
|
IDirectDrawSurface_GetColorKey(lpSrc, DDCKEY_SRCBLT, &DDColorKey);
|
||||||
|
ok(DDColorKey.dwColorSpaceLowValue == 0xFF00FF && DDColorKey.dwColorSpaceHighValue == 0xFF00FF,
|
||||||
|
"GetColorKey does not return the colorkey used at surface creation\n");
|
||||||
|
|
||||||
|
DDColorKey.dwColorSpaceLowValue = 0x00FF00;
|
||||||
|
DDColorKey.dwColorSpaceHighValue = 0x00FF00;
|
||||||
|
IDirectDrawSurface_SetColorKey(lpSrc, DDCKEY_SRCBLT, &DDColorKey);
|
||||||
|
|
||||||
|
DDColorKey.dwColorSpaceLowValue = 0;
|
||||||
|
DDColorKey.dwColorSpaceHighValue = 0;
|
||||||
|
IDirectDrawSurface_GetColorKey(lpSrc, DDCKEY_SRCBLT, &DDColorKey);
|
||||||
|
ok(DDColorKey.dwColorSpaceLowValue == 0x00FF00 && DDColorKey.dwColorSpaceHighValue == 0x00FF00,
|
||||||
|
"GetColorKey does not return the colorkey set with SetColorKey\n");
|
||||||
|
|
||||||
|
ddsd.ddckCKSrcBlt.dwColorSpaceLowValue = 0;
|
||||||
|
ddsd.ddckCKSrcBlt.dwColorSpaceHighValue = 0;
|
||||||
|
IDirectDrawSurface_GetSurfaceDesc(lpSrc, &ddsd);
|
||||||
|
ok(ddsd.ddckCKSrcBlt.dwColorSpaceLowValue == 0x00FF00 && ddsd.ddckCKSrcBlt.dwColorSpaceHighValue == 0x00FF00,
|
||||||
|
"GetSurfaceDesc does not return the colorkey set with SetColorKey\n");
|
||||||
|
|
||||||
IDirectDrawSurface_Release(lpSrc);
|
IDirectDrawSurface_Release(lpSrc);
|
||||||
IDirectDrawSurface_Release(lpDst);
|
IDirectDrawSurface_Release(lpDst);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue