comctl32/button: Implement BCM_GETSPLITINFO.

Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Gabriel Ivăncescu 2019-04-01 15:19:39 +03:00 committed by Alexandre Julliard
parent 82d39e1817
commit 4e08a7e5d7
1 changed files with 19 additions and 0 deletions

View File

@ -466,6 +466,9 @@ static LRESULT CALLBACK BUTTON_WindowProc(HWND hWnd, UINT uMsg, WPARAM wParam, L
infoPtr->hwnd = hWnd;
infoPtr->parent = cs->hwndParent;
infoPtr->style = cs->style;
infoPtr->split_style = BCSS_STRETCH;
infoPtr->glyph = (HIMAGELIST)0x36; /* Marlett down arrow char code */
infoPtr->glyph_size.cx = get_default_glyph_size(infoPtr);
return DefWindowProcW(hWnd, uMsg, wParam, lParam);
}
@ -880,6 +883,22 @@ static LRESULT CALLBACK BUTTON_WindowProc(HWND hWnd, UINT uMsg, WPARAM wParam, L
return TRUE;
}
case BCM_GETSPLITINFO:
{
BUTTON_SPLITINFO *info = (BUTTON_SPLITINFO*)lParam;
if (!info) return FALSE;
if (info->mask & BCSIF_STYLE)
info->uSplitStyle = infoPtr->split_style;
if (info->mask & (BCSIF_GLYPH | BCSIF_IMAGE))
info->himlGlyph = infoPtr->glyph;
if (info->mask & BCSIF_SIZE)
info->size = infoPtr->glyph_size;
return TRUE;
}
case BM_GETCHECK:
return infoPtr->state & 3;