From c092722a147940532b08f62403e182ef279f2c74 Mon Sep 17 00:00:00 2001 From: Sean Hall Date: Wed, 27 Oct 2021 15:30:02 -0500 Subject: Add CS_HREDRAW and CS_VREDRAW to fix painting issues when resizing. --- src/libs/dutil/WixToolset.DUtil/inc/thmutil.h | 13 +++++++++++++ src/libs/dutil/WixToolset.DUtil/thmutil.cpp | 20 ++++++++++++++++++++ 2 files changed, 33 insertions(+) (limited to 'src/libs/dutil') diff --git a/src/libs/dutil/WixToolset.DUtil/inc/thmutil.h b/src/libs/dutil/WixToolset.DUtil/inc/thmutil.h index eda81485..cd286854 100644 --- a/src/libs/dutil/WixToolset.DUtil/inc/thmutil.h +++ b/src/libs/dutil/WixToolset.DUtil/inc/thmutil.h @@ -529,6 +529,19 @@ HRESULT DAPI ThemeRegisterVariableCallbacks( __in_opt LPVOID pvContext ); +/******************************************************************** + ThemeInitializeWindowClass - sets defaults for the window class + from the given theme. + +*******************************************************************/ +void DAPI ThemeInitializeWindowClass( + __in THEME* pTheme, + __in WNDCLASSW* pWndClass, + __in WNDPROC pfnWndProc, + __in HINSTANCE hInstance, + __in LPCWSTR wzClassName + ); + /******************************************************************** ThemeCreateParentWindow - creates a parent window for the theme. diff --git a/src/libs/dutil/WixToolset.DUtil/thmutil.cpp b/src/libs/dutil/WixToolset.DUtil/thmutil.cpp index 068638f6..e8c23b6c 100644 --- a/src/libs/dutil/WixToolset.DUtil/thmutil.cpp +++ b/src/libs/dutil/WixToolset.DUtil/thmutil.cpp @@ -824,6 +824,26 @@ LExit: } +DAPI_(void) ThemeInitializeWindowClass( + __in THEME* pTheme, + __in WNDCLASSW* pWndClass, + __in WNDPROC pfnWndProc, + __in HINSTANCE hInstance, + __in LPCWSTR wzClassName + ) +{ + pWndClass->style = CS_HREDRAW | CS_VREDRAW; + pWndClass->hCursor = ::LoadCursorW(NULL, (LPCWSTR)IDC_ARROW); + + pWndClass->lpfnWndProc = pfnWndProc; + pWndClass->hInstance = hInstance; + pWndClass->lpszClassName = wzClassName; + + pWndClass->hIcon = reinterpret_cast(pTheme->hIcon); + pWndClass->hbrBackground = pTheme->rgFonts[pTheme->dwFontId].hBackground; +} + + DAPI_(HRESULT) ThemeCreateParentWindow( __in THEME* pTheme, __in DWORD dwExStyle, -- cgit v1.2.3-55-g6feb