From f57112a9f86b3507657acb9bc201db0ceddebe1f Mon Sep 17 00:00:00 2001 From: Rein Klazes <rklazes@xs4all.nl> Date: Tue, 15 Jan 2002 20:26:47 +0000 Subject: [PATCH] Make DM_SETDEFID message work for owner drawn buttons as well. --- windows/defdlg.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/windows/defdlg.c b/windows/defdlg.c index d63c9e33039..a8d10cf1117 100644 --- a/windows/defdlg.c +++ b/windows/defdlg.c @@ -119,8 +119,10 @@ static HWND DEFDLG_FindDefButton( HWND hwndDlg ) static BOOL DEFDLG_SetDefButton( HWND hwndDlg, DIALOGINFO *dlgInfo, HWND hwndNew ) { + DWORD dlgcode; if (hwndNew && - !(SendMessageW(hwndNew, WM_GETDLGCODE, 0, 0 ) & DLGC_UNDEFPUSHBUTTON)) + !((dlgcode=SendMessageW(hwndNew, WM_GETDLGCODE, 0, 0 )) + & (DLGC_UNDEFPUSHBUTTON | DLGC_BUTTON))) return FALSE; /* Destination is not a push button */ if (dlgInfo->idResult) /* There's already a default pushbutton */ @@ -131,7 +133,8 @@ static BOOL DEFDLG_SetDefButton( HWND hwndDlg, DIALOGINFO *dlgInfo, } if (hwndNew) { - SendMessageA( hwndNew, BM_SETSTYLE, BS_DEFPUSHBUTTON, TRUE ); + if(dlgcode==DLGC_UNDEFPUSHBUTTON) + SendMessageA( hwndNew, BM_SETSTYLE, BS_DEFPUSHBUTTON, TRUE ); dlgInfo->idResult = GetDlgCtrlID( hwndNew ); } else dlgInfo->idResult = 0; -- GitLab