wined3d: Implement wined3d_swapchain_set_gamma_ramp() on top of wined3d_output_set_gamma_ramp().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
parent
e27ea1e03a
commit
bd9aca2cc8
|
@ -1509,6 +1509,19 @@ HRESULT CDECL wined3d_output_set_gamma_ramp(struct wined3d_output *output, const
|
||||||
return WINED3D_OK;
|
return WINED3D_OK;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
HRESULT wined3d_output_get_gamma_ramp(struct wined3d_output *output, struct wined3d_gamma_ramp *ramp)
|
||||||
|
{
|
||||||
|
HDC dc;
|
||||||
|
|
||||||
|
TRACE("output %p, ramp %p.\n", output, ramp);
|
||||||
|
|
||||||
|
dc = CreateDCW(output->device_name, NULL, NULL, NULL);
|
||||||
|
GetDeviceGammaRamp(dc, ramp);
|
||||||
|
DeleteDC(dc);
|
||||||
|
|
||||||
|
return WINED3D_OK;
|
||||||
|
}
|
||||||
|
|
||||||
HRESULT CDECL wined3d_adapter_get_identifier(const struct wined3d_adapter *adapter,
|
HRESULT CDECL wined3d_adapter_get_identifier(const struct wined3d_adapter *adapter,
|
||||||
DWORD flags, struct wined3d_adapter_identifier *identifier)
|
DWORD flags, struct wined3d_adapter_identifier *identifier)
|
||||||
{
|
{
|
||||||
|
|
|
@ -363,18 +363,20 @@ void CDECL wined3d_swapchain_get_desc(const struct wined3d_swapchain *swapchain,
|
||||||
HRESULT CDECL wined3d_swapchain_set_gamma_ramp(const struct wined3d_swapchain *swapchain,
|
HRESULT CDECL wined3d_swapchain_set_gamma_ramp(const struct wined3d_swapchain *swapchain,
|
||||||
DWORD flags, const struct wined3d_gamma_ramp *ramp)
|
DWORD flags, const struct wined3d_gamma_ramp *ramp)
|
||||||
{
|
{
|
||||||
HDC dc;
|
struct wined3d_output *output;
|
||||||
|
|
||||||
TRACE("swapchain %p, flags %#x, ramp %p.\n", swapchain, flags, ramp);
|
TRACE("swapchain %p, flags %#x, ramp %p.\n", swapchain, flags, ramp);
|
||||||
|
|
||||||
if (flags)
|
if (flags)
|
||||||
FIXME("Ignoring flags %#x.\n", flags);
|
FIXME("Ignoring flags %#x.\n", flags);
|
||||||
|
|
||||||
dc = GetDCEx(swapchain->state.device_window, 0, DCX_USESTYLE | DCX_CACHE);
|
if (!(output = wined3d_swapchain_get_output(swapchain)))
|
||||||
SetDeviceGammaRamp(dc, (void *)ramp);
|
{
|
||||||
ReleaseDC(swapchain->state.device_window, dc);
|
ERR("Failed to get output from swapchain %p.\n", swapchain);
|
||||||
|
return E_FAIL;
|
||||||
|
}
|
||||||
|
|
||||||
return WINED3D_OK;
|
return wined3d_output_set_gamma_ramp(output, ramp);
|
||||||
}
|
}
|
||||||
|
|
||||||
void CDECL wined3d_swapchain_set_palette(struct wined3d_swapchain *swapchain, struct wined3d_palette *palette)
|
void CDECL wined3d_swapchain_set_palette(struct wined3d_swapchain *swapchain, struct wined3d_palette *palette)
|
||||||
|
@ -389,15 +391,17 @@ void CDECL wined3d_swapchain_set_palette(struct wined3d_swapchain *swapchain, st
|
||||||
HRESULT CDECL wined3d_swapchain_get_gamma_ramp(const struct wined3d_swapchain *swapchain,
|
HRESULT CDECL wined3d_swapchain_get_gamma_ramp(const struct wined3d_swapchain *swapchain,
|
||||||
struct wined3d_gamma_ramp *ramp)
|
struct wined3d_gamma_ramp *ramp)
|
||||||
{
|
{
|
||||||
HDC dc;
|
struct wined3d_output *output;
|
||||||
|
|
||||||
TRACE("swapchain %p, ramp %p.\n", swapchain, ramp);
|
TRACE("swapchain %p, ramp %p.\n", swapchain, ramp);
|
||||||
|
|
||||||
dc = GetDCEx(swapchain->state.device_window, 0, DCX_USESTYLE | DCX_CACHE);
|
if (!(output = wined3d_swapchain_get_output(swapchain)))
|
||||||
GetDeviceGammaRamp(dc, ramp);
|
{
|
||||||
ReleaseDC(swapchain->state.device_window, dc);
|
ERR("Failed to get output from swapchain %p.\n", swapchain);
|
||||||
|
return E_FAIL;
|
||||||
|
}
|
||||||
|
|
||||||
return WINED3D_OK;
|
return wined3d_output_get_gamma_ramp(output, ramp);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* The is a fallback for cases where we e.g. can't create a GL context or
|
/* The is a fallback for cases where we e.g. can't create a GL context or
|
||||||
|
|
|
@ -3367,6 +3367,8 @@ struct wined3d_output
|
||||||
D3DDDI_VIDEO_PRESENT_SOURCE_ID vidpn_source_id;
|
D3DDDI_VIDEO_PRESENT_SOURCE_ID vidpn_source_id;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
HRESULT wined3d_output_get_gamma_ramp(struct wined3d_output *output, struct wined3d_gamma_ramp *ramp) DECLSPEC_HIDDEN;
|
||||||
|
|
||||||
/* The adapter structure */
|
/* The adapter structure */
|
||||||
struct wined3d_adapter
|
struct wined3d_adapter
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in New Issue