IDirectDrawSurface::SetColorKey (Compact 2013)

3/26/2014

This method sets the color key value for the DirectDrawSurface object if the hardware supports color keys on a per-surface basis.

Syntax

HRESULT SetColorKey(
  DWORD dwFlags, 
  LPDDCOLORKEY lpDDColorKey
); 

Parameters

  • dwFlags
    Determines which color key is requested. The following table shows the possible flags.

    Flag

    Description

    DDCKEY_COLORSPACE

    Set if the structure contains a color space. Not set if the structure contains a single color key.

    DDCKEY_DESTBLT

    Set if the structure specifies a color key or color space to be used as a destination color key for blit operations.

    DDCKEY_DESTOVERLAY

    Set if the structure specifies a color key or color space to be used as a destination color key for overlay operations.

    DDCKEY_SRCBLT

    Set if the structure specifies a color key or color space to be used as a source color key for blit operations.

    DDCKEY_SRCOVERLAY

    Set if the structure specifies a color key or color space to be used as a source color key for overlay operations.

  • lpDDColorKey
    Address of the DDCOLORKEY structure that contains the new color key values for the DirectDrawSurface object. This value can be NULL to remove a previously set color key.

Return Value

If the method succeeds, the return value is DD_OK.

If the method fails, the return value may be one of the following error values:

DDERR_GENERIC

DDERR_INVALIDOBJECT

DDERR_INVALIDPARAMS

DDERR_NOOVERLAYHW

DDERR_NOTAOVERLAYSURFACE

DDERR_SURFACELOST

DDERR_UNSUPPORTED

DDERR_WASSTILLDRAWING

For more information on these error codes see DirectDraw Return Values.

Remarks

For transparent blits and overlays, you should set destination color on the destination surface and source color on the source surface.

Requirements

Header

ddraw.h

Library

ddraw.lib

See Also

Reference

IDirectDrawSurface
DirectDraw Reference
DirectDraw Interfaces
IDirectDrawSurface::GetColorKey

Other Resources

DirectDraw