IOleObject::SetColorScheme
This method specifies the color palette that the object application should use when it edits the specified object.
HRESULT SetColorScheme(
LOGPALETTE* pLogpal
);
Parameters
- pLogpal
[in] Pointer to a LOGPALETTE structure that specifies the recommended palette.
Return Values
One of the values described in the following table is returned.
Value | Description |
---|---|
S_OK | Color palette received successfully. |
E_NOTIMPL | Object does not support setting palettes. |
OLE_E_PALETTE | Invalid LOGPALETTE structure pointed to by lpLogPal. |
OLE_E_NOTRUNNING | Object must be running to perform this operation. |
Remarks
The SetColorScheme method sends the container application's recommended color palette to the object application, which is not obliged to use it.
To determine whether the platform supports this interface, see Determining Supported COM APIs.
Notes to Implementers
Upon receiving the palette, the object application should:
- Allocate and fill in its own LOGPALETTE structure with the colors specified in the container application's LOGPALETTE structure.
- Call CreatePalette to create a palette from the resulting LOGPALETTE structure. This palette can be used to render objects and color menus as the user edits objects in the document.
The first palette entry in the LOGPALETTE structure specifies the foreground color recommended by the container. The second palette entry specifies the recommended background color. The first half of the remaining palette entries are fill colors and the second half are colors for the lines and text.
Container applications typically specify an even number of palette entries. If a container specifies an odd number of entries, the object application should assume that the first half of the total entries plus one designate fill colors, while the remainder designate line and text colors. For example, if there are five entries, the first three should be interpreted as fill colors and the last two as line and text colors.
Requirements
OS Versions: Windows CE 2.0 and later.
Header: Oleidl.h, Oleidl.idl.
Link Library: Oleaut32.lib, Uuid.lib.
See Also
IOleObject | CreatePalette | Determining Supported COM APIs | LOGPALETTE
Last updated on Wednesday, April 13, 2005
© 2005 Microsoft Corporation. All rights reserved.