Both implementations don't add any additional features to the base
functions and therefore are not needed. wxPropertyGrid and other wxPG
controls are children of wxPropertyGridManager and DoFreeze/DoThaw calls
are forwarded directly to them in wxWindowBase::Freeze()/Thaw().
Closes#22269.
This fixes a regression introduced in d311c705d7 (Make native dialogs
application-modal in wxMSW, 2022-04-01) which resulted in a focus loss
after showing a modal dialog, as the parent window was still disabled
when the native modal dialog was closed and so focus couldn't be set to
any of its children and was simply lost as the result.
Fix this by not disabling the dialog parent ourselves, but leaving
handling the parent status to the native modal dialog, which already
takes care of disabling the parent it uses when it is shown and
re-enabling it when it is dismissed. Still use wxWindowDisabler to
disable all the other top level windows, if any, to ensure that the
modal dialogs are truly app-modal and not just window-modal, i.e. ensure
that #11887 still remains fixed.
Closes#22285.
This is not implemented yet, but this commit changes DoDisable() to
disable all windows except those in the list of the windows not to be
disabled instead of explicitly checking for just a single window to
skip.
Rename m_winDisabled to m_windowsToSkip to better describe its purpose
and also because it's a vector, and so should use plural form in its
name.
Finally note that AfterDisable() is called with NULL argument from the
ctor not taking the window to skip for compatibility with the old code,
but it's not clear if it's really the right thing to do and perhaps this
shouldn't be done.
No real changes yet.
Simplify the code translating from screen to client coordinates and make
it correct by using ScreenToClient() directly instead of emulating it
manually, which doesn't work quite right, at least in wxGTK.
Closes#22289.
Add a placeholder for the changes in the next release, restoring the
text removed in d8ec020109 (Copy the changes in 3.1.6 from Git notes to
the change log, 2022-04-04).
Use m_sign[XY] to determine if axes are inverted, as the full device transformation
may have negative scale for things like text rotation. Broken by
eafa248117 (Avoid mirroring text when wxDC axes are inverted with GTK3, 2022-02-13)
See #22278
Remove the instructions for applying the cherry-picked commit on
docs.wxwidgets.org as it's not used any more.
These instructions are probably insufficiently detailed, but we'll
probably switch to using GitHub Actions for updating the documentation
soon, so they won't be necessary for much longer anyhow and it's not
worth expanding them.
This ensures that we use correct font sizes with the DCs and, in
particular, fixes the font size in wxAutoBufferedPaintDC when using DPI
scaling different from 100% after the changes of e3557b8c0a (Respect
bitmap content scale factor in wxMSW wxMemoryDC, 2022-03-26).
See #22234.
It was wrongly guarded by wxUSE_OWNER_DRAWN but there are wxCheckListBox
implementations available for most platforms. Use correct
wxUSE_CHECKLISTBOX instead.
Closes#22263.
Recognize strings returned by setlocale() when using MSVC under MSW too,
if only because it was possible to construct wxLocale using them in the
previous versions and so doing this avoids breaking the existing code.
Also don't assert in FromTag(), even if the input is incorrect, as it is
potentially user-defined (e.g. can come from environment variables under
Unix).
Closes#22247, #22252.
This simple function allows to simplify the code by avoid to test for
CanonicalRef before using either it or CanonicalName in multiple places.
No real changes.
See #22252.
Being able to use other application windows while a modal dialog was
shown was unexpected and could easily result in nasty reentrancies, and
was also inconsistent with the behaviour of ShowModal() for the dialogs
defined in wx, so disable all the windows, not just the parent one,
while showing the native modal dialogs too.
Closes#11887.