Module: wine Branch: master Commit: 4e08a7e5d700a5796ccd4873a8c715748d09c5e8 URL: https://source.winehq.org/git/wine.git/?a=commit;h=4e08a7e5d700a5796ccd4873a...
Author: Gabriel Ivăncescu gabrielopcode@gmail.com Date: Mon Apr 1 15:19:39 2019 +0300
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
---
dlls/comctl32/button.c | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+)
diff --git a/dlls/comctl32/button.c b/dlls/comctl32/button.c index 4b8a8f4..213ab29 100644 --- a/dlls/comctl32/button.c +++ b/dlls/comctl32/button.c @@ -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;