git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@35736
c3d73ce0-8a6f-49c7-b76d-
6d57e0e08775
#endif
// Needed by toplevel.cpp
#endif
// Needed by toplevel.cpp
+#ifndef UIS_SET
+ #define UIS_SET 1
+ #define UIS_CLEAR 2
#define UIS_INITIALIZE 3
#endif
#define UIS_INITIALIZE 3
#endif
bool DoEraseBackground(WXHDC hDC);
// generate WM_UPDATEUISTATE if it's needed for the OS we're running under
bool DoEraseBackground(WXHDC hDC);
// generate WM_UPDATEUISTATE if it's needed for the OS we're running under
- void MSWUpdateUIState();
+ //
+ // the parameter should be one of UIS_XXX constants
+ void MSWUpdateUIState(int action);
private:
// common part of all ctors
private:
// common part of all ctors
// focus rectangles) work under Win2k+
if ( ret )
{
// focus rectangles) work under Win2k+
if ( ret )
{
+ MSWUpdateUIState(UIS_INITIALIZE);
}
// Note: if we include PocketPC in this test, dialogs can fail to show up,
}
// Note: if we include PocketPC in this test, dialogs can fail to show up,
-void wxWindowMSW::MSWUpdateUIState()
+void wxWindowMSW::MSWUpdateUIState(int action)
{
// WM_UPDATEUISTATE only appeared in Windows 2000 so it can do us no good
// to use it on older systems -- and could possibly do some harm
{
// WM_UPDATEUISTATE only appeared in Windows 2000 so it can do us no good
// to use it on older systems -- and could possibly do some harm
// include just one UISF_XXX or both, both are affected, no idea
// why
::SendMessage(GetHwnd(), WM_UPDATEUISTATE,
// include just one UISF_XXX or both, both are affected, no idea
// why
::SendMessage(GetHwnd(), WM_UPDATEUISTATE,
- MAKEWPARAM(UIS_INITIALIZE,
- UISF_HIDEFOCUS | UISF_HIDEACCEL), 0);
+ MAKEWPARAM(action, UISF_HIDEFOCUS | UISF_HIDEACCEL), 0);
// this by default, we need to manually send this message
// so that controls could change their appearance
// appropriately
// this by default, we need to manually send this message
// so that controls could change their appearance
// appropriately
+ MSWUpdateUIState(UIS_CLEAR);