Article View: comp.windows.ms.programmer
Article #2793Re: Palettes
From: Paul Bonneau
Date: Wed, 22 May 1991 16:57
Date: Wed, 22 May 1991 16:57
43 lines
1782 bytes
1782 bytes
In article <29582@hydra.gatech.EDU> gt3070b@prism.gatech.EDU
(Jeff Watkins) writes:
>I have a problem with using windows palettes.
>
>What I am trying to do is to define two pens with palette relative colors.
>These two pens live in a dll where functions make use of them with user
>defined palettes or the dll's default palette. If I use the default
>palette, and never use an application defined palette, all seems to work
>ok. However, if I do use an application palette, those pens will be
>forever the colors from that palette. If I happen to use the default
>palette first, then the user palette will never show.
>
>What I need to know is, does windows fix-up palette relative references
>when they are selected? And if so, is there any other way to do what I am
>trying to do?
>
I had similar problems. Mine were due to not catching the
WM_QUERYNEWPALETTE message. Each app that wants to use its
own palette needs to have this case in its main window proc
and respond with code something like:
case WM_QUERYNEWPALETTE:
{
HDC hdc;
int centMapped;
hdc = GetDC(hwnd);
SelectPalette(hdc, hPalette, 0);
centMapped = RealizePalette(hdc);
ReleaseDC(hwnd, hdc);
if (centMapped != 0)
{
InvalidateRect(hwnd, lprectNull, fTrue);
return fTrue;
}
}
break;
cheers - Paul Bonneau.
P.S. You're welcome Brett.
return fFalse;
}
Technical Details
Message-ID:
<1991May22.165744.27572@hyper.hyper.com>Path:
arc1-ca.pugleaf.net!utzoo!utgpu!watserv1!watmath!hyper.hyper.com!bonneauReferences:
<29582@hydra.gatech.EDU>Show Full Headers
Complete Article Headers
Newsgroups: comp.windows.ms.programmer Path: arc1-ca.pugleaf.net!utzoo!utgpu!watserv1!watmath!hyper.hyper.com!bonneau From: bonneau@hyper.hyper.com (Paul Bonneau) Subject: Re: Palettes Message-ID: <1991May22.165744.27572@hyper.hyper.com> Reply-To: bonneau@hyper.UUCP (Paul Bonneau,,) Organization: HyperCube Inc. References: <29582@hydra.gatech.EDU> Date: Wed, 22 May 1991 16:57:44 GMT