INF: How to Determine If a Device Is Palette Capable

ID Number: Q72387

3.00 3.10

WINDOWS

Summary:

On a device that supports the Windows palette management function, an

application can create a logical palette, select the palette into a

device context (DC), and realize the palette, which maps its colors

into the system (hardware) palette. The GetDeviceCaps function informs

an application whether a given device is capable of performing palette

manipulation and, if so, the size of the palette. This article

discusses the GetDeviceCaps function and how it is used.

More Information:

To determine whether a device can perform palette operations, call the

GetDeviceCaps function with the RASTERCAPS parameter. If the

RC_PALETTE bit of the return is set, the device supports the palette

management functions.

To determine how many colors in the system palette are available for

the application to use, the following parameters can be used in a

GetDeviceCaps function call:

Parameter Description

--------- -----------

SIZEPALETTE Total number of entries in the system palette

NUMRESERVED Number of reserved (static) colors in the system

palette

This functionality is demonstrated in the MyPal sample code that is

included on the Windows version 3.x Software Development Kit (SDK)

Source Code 2 disk. For a demonstration, start MyPal and click the

right mouse button.

The reserved colors are entries in the system palette that are used by

Windows and cannot be changed by an application [except by using the

SetSystemPaletteUse function, which is not recommended]. The reserved

colors are used for the following purposes:

Active border

Active caption

Background color MDI applications

Desktop background color

Push button faces

Push button edges

Push button text

Caption text

Disabled (gray) text

Highlight color in controls (to highlight items in the control)

Highlight text color

Inactive border

Inactive caption

Inactive caption text (new to Windows version 3.1)

Menu background

Menu text

Scroll-bar gray area

Window background

Window frame

Window text

Additional reference words: 3.00 3.10 3.x dim unavailable