d3drm: Implement IDirect3DRMLight_[Get|Set]Type.

This commit is contained in:
André Hentschel 2012-05-27 15:52:03 +02:00 committed by Alexandre Julliard
parent fde35902a7
commit 8fa6a0b4fd
2 changed files with 10 additions and 7 deletions

View File

@ -32,6 +32,7 @@ WINE_DEFAULT_DEBUG_CHANNEL(d3drm);
typedef struct {
IDirect3DRMLight IDirect3DRMLight_iface;
LONG ref;
D3DRMLIGHTTYPE type;
} IDirect3DRMLightImpl;
static inline IDirect3DRMLightImpl *impl_from_IDirect3DRMLight(IDirect3DRMLight *iface)
@ -174,9 +175,11 @@ static HRESULT WINAPI IDirect3DRMLightImpl_SetType(IDirect3DRMLight* iface, D3DR
{
IDirect3DRMLightImpl *This = impl_from_IDirect3DRMLight(iface);
FIXME("(%p/%p)->(%u): stub\n", iface, This, type);
TRACE("(%p/%p)->(%u)\n", iface, This, type);
return E_NOTIMPL;
This->type = type;
return D3DRM_OK;
}
static HRESULT WINAPI IDirect3DRMLightImpl_SetColor(IDirect3DRMLight* iface, D3DCOLOR color)
@ -322,9 +325,9 @@ static D3DRMLIGHTTYPE WINAPI IDirect3DRMLightImpl_GetType(IDirect3DRMLight* ifac
{
IDirect3DRMLightImpl *This = impl_from_IDirect3DRMLight(iface);
FIXME("(%p/%p)->(): stub\n", iface, This);
TRACE("(%p/%p)->()\n", iface, This);
return D3DRMLIGHT_AMBIENT;
return This->type;
}
static HRESULT WINAPI IDirect3DRMLightImpl_SetEnableFrame(IDirect3DRMLight* iface,

View File

@ -839,15 +839,15 @@ static void test_Light(void)
ok(hr == D3DRM_OK, "Cannot get IDirect3DRMLight interface (hr = %x)\n", hr);
type = IDirect3DRMLight_GetType(pLight);
todo_wine ok(type == D3DRMLIGHT_SPOT, "wrong type (%u)\n", type);
ok(type == D3DRMLIGHT_SPOT, "wrong type (%u)\n", type);
color = IDirect3DRMLight_GetColor(pLight);
todo_wine ok(color == 0xff7f7f7f, "wrong color (%x)\n", color);
hr = IDirect3DRMLight_SetType(pLight, D3DRMLIGHT_POINT);
todo_wine ok(hr == D3DRM_OK, "Cannot set type (hr = %x)\n", hr);
ok(hr == D3DRM_OK, "Cannot set type (hr = %x)\n", hr);
type = IDirect3DRMLight_GetType(pLight);
todo_wine ok(type == D3DRMLIGHT_POINT, "wrong type (%u)\n", type);
ok(type == D3DRMLIGHT_POINT, "wrong type (%u)\n", type);
hr = IDirect3DRMLight_SetColor(pLight, 0xff180587);
todo_wine ok(hr == D3DRM_OK, "Cannot set color (hr = %x)\n", hr);