ginden at email.com
Wed Mar 9 04:58:09 CST 2005
Ulrich Czekalla wrote:
>Yes. Currently the code always removes its internal WS_BORDER flag so it
>doesn't paint its own border. Basically it leaves it to the default
>nonclient handler. But it should only do this if WS_EX_CLIENTEDGE is
>set. Otherwise it removes the WS_BORDER style and paints the border itself.
>The SetWindowLong call is necessary otherwise the default non-client code
>will allocate non-client space for the border and we don't want that. We
>want to handle the border ourselves.
>I'm working on an app that relies on this behaviour.
Hi Ulrich, how is it going with this issue ?
I've noticed that this code paints a perfect edit control, with its
background color (for the whole area).
4545 es->style &= ~WS_BORDER;
While the following code in place of the line above, doesn't fill the
whole edit with the background color, but the area behind the text
inside the control ONLY.
4554 if (lpcs->dwExStyle & WS_EX_CLIENTEDGE)
4555 es->style &= ~WS_BORDER;
4556 else if (es->style & WS_BORDER)
4557 SetWindowLongW(hwnd, GWL_STYLE, es->style & ~WS_BORDER);
This is also reletad to 2695.
More information about the wine-devel