From d1be0b5dce72a3bc355e915916955b1a9a267c47 Mon Sep 17 00:00:00 2001 From: Jonas Kümmerlin Date: Mon, 25 May 2020 21:13:07 +0200 Subject: toplevel window: make it a dialog when you're reimplementing parts of the dialog manager, might as well just use the real thing --- alf/alf.cpp | 16 ++++++---------- 1 file changed, 6 insertions(+), 10 deletions(-) (limited to 'alf/alf.cpp') diff --git a/alf/alf.cpp b/alf/alf.cpp index 0ab1901..7047e89 100644 --- a/alf/alf.cpp +++ b/alf/alf.cpp @@ -51,6 +51,7 @@ ALF_Initialize(void) ALF_RegisterNotebookClass(); ALF_RegisterButtonClass(); ALF_RegisterGroupBoxClass(); + ALF_RegisterWindowClass(); ALF_Compat_BufferedPaintInit(); } @@ -77,6 +78,7 @@ ALF_UnInitialize(void) UnregisterClass(_alf_notebookClass, ALF_HINSTANCE); UnregisterClass(_alf_buttonClass, ALF_HINSTANCE); UnregisterClass(_alf_groupboxClass, ALF_HINSTANCE); + UnregisterClass(_alf_windowClass, ALF_HINSTANCE); ALF_UnloadCompatFunctions(); } @@ -148,12 +150,6 @@ ALF_DestroyWindow(HWND win) DestroyWindow(win); } -BOOL -ALF_PreTranslateMessage(HWND hwnd, MSG *message) -{ - return (BOOL)SendMessage(hwnd, ALF_WM_PRETRANSLATEMSG, 0, (LPARAM)message); -} - int ALF_ShowModal(HWND win) { @@ -168,7 +164,7 @@ ALF_ShowModal(HWND win) // TODO: call application message hooks // TODO: call preprocess message hook - if (!ALF_PreTranslateMessage(win, &msg)) { + if (!IsDialogMessage(win, &msg)) { TranslateMessage(&msg); DispatchMessage(&msg); } @@ -442,7 +438,7 @@ ALF_ShouldMessageBubble(HWND hwnd, UINT msg, WPARAM wparam, LPARAM lparam) || msg == WM_MEASUREITEM || msg == WM_DRAWITEM || msg == WM_CTLCOLORBTN || msg == WM_CTLCOLOREDIT || msg == WM_CTLCOLORLISTBOX || msg == WM_CTLCOLORSCROLLBAR - || msg == WM_CTLCOLORSTATIC || msg == ALF_WM_SETFOCUS; + || msg == WM_CTLCOLORSTATIC || msg == WM_NEXTDLGCTL; } void @@ -508,7 +504,7 @@ void ALF_SetFocus(HWND target) { if (GetWindowStyle(target) & WS_CHILD) - PostMessage(GetParent(target), ALF_WM_SETFOCUS, 0, (LPARAM)target); + PostMessage(GetParent(target), WM_NEXTDLGCTL, (WPARAM)target, TRUE); else - PostMessage(target, ALF_WM_SETFOCUS, 0, (LPARAM)target); + PostMessage(target, WM_NEXTDLGCTL, (WPARAM)target, TRUE); } -- cgit v1.2.3